feat(fsgx): 完成全部24项开发任务 Phase1-7

Phase1 后端核心:
- 新增 fsgx_v1.sql 迁移脚本(is_queue_goods/frozen_points/available_points/no_assess)
- SystemConfigServices 返佣设置扩展(周期人数/分档比例/范围/时机)
- StoreOrderCreateServices 周期循环佣金计算
- StoreOrderTakeServices 佣金发放后同步冻结积分
- StoreProductServices/StoreProduct 保存 is_queue_goods

Phase2 后端接口:
- GET /api/hjf/brokerage/progress 佣金周期进度
- GET /api/hjf/assets/overview 资产总览
- HjfPointsServices 每日 frozen_points 0.4‰ 释放定时任务
- PUT /adminapi/hjf/member/{uid}/no_assess 不考核接口
- GET /adminapi/hjf/points/release_log 积分日志接口

Phase3 前端清理:
- hjfCustom.js 路由精简(仅保留 points/log)
- hjfQueue.js/hjfMember.js API 清理/重定向至 CRMEB 原生接口
- pages.json 公排→推荐佣金/佣金记录/佣金规则

Phase4-5 前端改造:
- queue/status.vue 推荐佣金进度页整体重写
- 商品详情/订单确认/支付结果页文案与逻辑改造
- 个人中心/资产页/引导页/规则页文案改造
- HjfQueueProgress/HjfRefundNotice/HjfAssetCard 组件改造
- 推广中心嵌入佣金进度摘要
- hjfMockData.js 全量更新(公排字段→佣金字段)

Phase6 Admin 增强:
- 用户列表新增 frozen_points/available_points 列及不考核操作按钮
- hjfPoints.js USE_MOCK=false 对接真实积分日志接口

Phase7 配置文档:
- docs/fsgx-phase7-config-checklist.md 后台配置与全链路验收清单

Made-with: Cursor
This commit is contained in:
apple
2026-03-23 22:32:19 +08:00
parent 788ee0c0c0
commit 434aa8c69d
13098 changed files with 2008990 additions and 961 deletions

View File

@@ -0,0 +1,101 @@
<template>
<view class="bg--w111-fff rd-16rpx pt-32 pl-24 pr-24 pb-32 flex-between-center">
<view v-for="(item,index) in list" :key="index" class="item">
<view class="h-32 flex-x-center item relative" >
<view class="iconfont fs-32 text--w111-999" :class="index <= indexActive ? 'icon-a-ic_CompleteSelect' : 'icon-ic-complete1'"></view>
<text class="line"
:style="{'width': lineWidth + 'rpx','right': lineRight}"
:class="index < indexActive ? 'bg-color' : ''"
></text>
</view>
<view class="fs-22 text--w111-999 lh-30rpx mt-16" :class="{active:index <= indexActive}">{{item}}</view>
</view>
</view>
</template>
<script>
export default {
props: {
type: {
type: Number,
default: 0
},
applyType: {
type: Number,
default: 0
}
},
data() {
return {}
},
computed: {
list() {
// 步骤条全部选中
if(this.type == -1){
return ['提交申请', '用户已撤销', '退款完成']
}else if(this.type == 3){
return ['提交申请', '商家已拒绝', '退款失败']
} else if(this.type == 6 && this.applyType == 4){
return ['提交申请', '平台强制退款', '退款完成']
}else if([0,6].includes(this.type) && this.applyType == 1){
return ['提交申请', '商家审核', '退款完成']
}else if([0,4,5,6].includes(this.type) && this.applyType == 2){
return ['提交申请', '商家审核','商品寄回', '退款完成']
}else if([0,4,5,6].includes(this.type) && this.applyType == 3){
return ['提交申请', '商家审核','商家收货', '退款完成']
}else {
return ['提交申请', '商家审核', '退款完成']
}
},
indexActive(){
if(this.type == -1){
return 2
}else if(this.type == 3){
return 2
} else if(this.type == 6 && this.applyType == 4){
return 2
}else if(this.applyType == 1){
if([0,1].includes(this.type)){
return 0
}else{
return 2
}
}else if([2,3].includes(this.applyType)){
if(this.type == 0){
return 0
}else if(this.type == 6){
return 3
}else{
return 1
}
}
},
lineWidth(){
if(this.list.length == 4){
return 132
}else{
return 230
}
},
lineRight(){
return '-' + (this.lineWidth - 14) + 'rpx'
}
},
}
</script>
<style lang="scss">
.line{
height:4rpx;
background: #f5f5f5;
position: absolute;
top:16rpx;
}
.item:last-child .line{
display: none;
}
.icon-a-ic_CompleteSelect{
color: var(--view-theme);
}
.active{
color: #333;
}
</style>