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

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,9 @@
{
"component": true,
"usingComponents": {
"empty-page": "/components/emptyPage",
"reply-list": "/components/discoverVideo/replyList",
"tui-modal": "/components/tui-modal/index",
"base-text-more": "/components/BaseTextMore"
}
}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
.video-swiper.data-v-312bb5b6{height:100vh}.z-4000.data-v-312bb5b6{z-index:4000}.avatar-box.data-v-312bb5b6{border:3rpx solid #fff}.bg-transparent.data-v-312bb5b6{background-color:initial}.text-line.data-v-312bb5b6{text-decoration:line-through}.hide-footer.data-v-312bb5b6{padding-bottom:30rpx}.show-footer.data-v-312bb5b6{padding-bottom:calc(30rpx + env(safe-area-inset-bottom))}.right-action.data-v-312bb5b6{position:fixed;right:20rpx;bottom:62rpx;width:88rpx}.action-box.data-v-312bb5b6{bottom:calc(162rpx + env(safe-area-inset-bottom))}.full-action.data-v-312bb5b6{bottom:calc(64rpx + env(safe-area-inset-bottom))!important}.shadow.data-v-312bb5b6{text-shadow:0 2rpx 4rpx rgba(0,0,0,.2)}.fixed-desc.data-v-312bb5b6{position:fixed;left:0;padding-left:20rpx;z-index:10;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.3))}.fixed-desc .box.data-v-312bb5b6{width:584rpx}.fixed-desc .w-584.data-v-312bb5b6{width:584rpx}.content-box.data-v-312bb5b6{max-height:400rpx;overflow-y:auto}.hide-tab.data-v-312bb5b6{bottom:calc(100rpx + env(safe-area-inset-bottom))}.full-tab.data-v-312bb5b6{bottom:env(safe-area-inset-bottom)!important}.dot_item ~ .dot_item.data-v-312bb5b6{margin-left:12rpx}.follow-icon.data-v-312bb5b6{position:absolute;bottom:-10rpx;left:24rpx;width:42rpx;height:42rpx;border-radius:50%;background-color:var(--view-theme)}.like-heart.data-v-312bb5b6{color:#e93323}.pro-item ~ .pro-item.data-v-312bb5b6{margin-top:42rpx}.bubble_box.data-v-312bb5b6{position:absolute;top:-64rpx;left:-208rpx;width:184rpx;z-index:999}.bubble_box .bubble.data-v-312bb5b6{width:184rpx;height:198rpx;background:#fff;box-shadow:0rpx 2rpx 15rpx 0rpx rgba(0,0,0,.102);border-radius:16rpx;padding:30rpx 16rpx 30rpx 16rpx;position:relative}.bubble_box .bubble.data-v-312bb5b6:after{content:"";position:absolute;right:-10px;top:74rpx;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:10px solid #fff}.bubble_box .x-line.data-v-312bb5b6{border-bottom:1rpx solid rgba(0,0,0,.1)}.notice-modal.data-v-312bb5b6{position:fixed;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:690rpx;background:rgba(51,51,51,.7);border-radius:10rpx}.notice-modal .container.data-v-312bb5b6{padding:26rpx 30rpx}.notice-modal .container .icon-icon_clock1.data-v-312bb5b6{color:#fc8327}.notice-modal .container .icon-a-ic_tanhao1.data-v-312bb5b6{color:#e93323}.close-btn.data-v-312bb5b6{position:absolute;right:28rpx;top:28rpx;width:36rpx;height:36rpx;border-radius:50%;background-color:#eee}

View File

@@ -0,0 +1,10 @@
(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["components/discoverVideo/replyList"],{"14a8":function(t,e,i){},"1b74":function(t,e,i){"use strict";i.r(e);var n=i("29e4"),o=i.n(n);for(var r in n)["default"].indexOf(r)<0&&function(t){i.d(e,t,(function(){return n[t]}))}(r);e["default"]=o.a},"29e4":function(t,e,i){"use strict";(function(t){var n=i("47a9");Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var o=n(i("7ca3")),r=i("8f59"),u=i("eb8a");function c(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,n)}return i}var l={props:{visible:{type:Boolean,default:!1},community_id:{type:Number|String,default:""},comment_num:{type:Number|String,default:0},ensureInfo:{type:Object,default:function(){}},showFooter:{type:Boolean,default:!1},addReply:{type:Number,default:1}},data:function(){return{comment:"",comment_reply_id:"",replyIndex:"",replyList:[],placeholder:"快来说点儿什么吧...",showModal:!1,reduceNum:0,focus:!1}},watch:{community_id:function(t){t&&this.getReply()}},components:{baseDrawer:function(){i.e("components/tui-drawer/tui-drawer").then(function(){return resolve(i("af01"))}.bind(null,i)).catch(i.oe)},emptyPage:function(){i.e("components/emptyPage").then(function(){return resolve(i("398a"))}.bind(null,i)).catch(i.oe)},tuiModal:function(){i.e("components/tui-modal/index").then(function(){return resolve(i("6b9f"))}.bind(null,i)).catch(i.oe)}},computed:function(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?c(Object(i),!0).forEach((function(e){(0,o.default)(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):c(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}({},(0,r.mapGetters)(["isLogin","uid"])),methods:{closeDrawer:function(){this.$emit("closeDrawer")},getReply:function(){var t=this,e={community_id:this.community_id,reply_id:""};(0,u.communityReplyListApi)(e).then((function(e){e.data.list.length?(e.data.list.map((function(e){t.$set(e,"show",!1)})),t.replyList=e.data.list):t.replyList=[]})).catch((function(e){return t.$util.Tips({title:e})}))},sendText:function(){var t=this;if(!this.isLogin)return this.$util.Tips({title:"请登录"});if(""==this.comment)return this.$util.Tips({title:"请输入评论内容"});var e={community_id:this.community_id,comment_reply_id:this.comment_reply_id,content:this.comment};(0,u.communityReplySaveApi)(e).then((function(e){return t.comment_reply_id="",t.comment="",t.placeholder="快来说点儿什么吧...",t.$emit("onCommentAdd",{type:1,num:1}),t.getReply(),t.hide(),t.$util.Tips({title:e.msg})})).catch((function(e){return t.$util.Tips({title:e})}))},showReply:function(t,e){this.comment_reply_id=t,this.placeholder="回复:".concat(e)},showMore:function(t,e,i){var n=this;if(this.replyIndex=e,i){var o={community_id:this.community_id,reply_id:t.id};(0,u.communityReplyListApi)(o).then((function(i){n.$set(n.replyList[e],"children",i.data.list),n.$set(t,"show",!0),his.$util.Tips({title:i.msg})})).catch((function(t){return n.$util.Tips({title:t})}))}else this.$set(t,"show",!1)},authTo:function(e){t.navigateTo({url:e})},replyLike:function(t){if(!this.isLogin)return this.$util.Tips({title:"请登录"});var e=t.id,i=1==t.isLike?0:1,n=this;(0,u.communityReplyLikeApi)(e,{status:i}).then((function(e){return t.isLike=i,1==i?t.like_num++:t.like_num--,n.$util.Tips({title:e.msg})})).catch((function(t){return n.$util.Tips({title:t})}))},delReply:function(t,e){this.comment_reply_id=t,this.reduceNum=e,this.showModal=!0},handleClick:function(t){var e=this,i=t.index;1==i?(0,u.communityReplyDeleteApi)(this.comment_reply_id).then((function(t){e.showModal=!1,e.replyList=[],e.comment_reply_id="",e.$emit("commentAdd",{type:2,num:1+e.reduceNum}),e.getReply()})).catch((function(t){return e.showModal=!1,e.$util.Tips({title:t})})):this.showModal=!1}}};e.default=l}).call(this,i("df3c")["default"])},"8d38":function(t,e,i){"use strict";i.r(e);var n=i("e09f"),o=i("1b74");for(var r in o)["default"].indexOf(r)<0&&function(t){i.d(e,t,(function(){return o[t]}))}(r);i("a462");var u=i("828b"),c=Object(u["a"])(o["default"],n["b"],n["c"],!1,null,null,null,!1,n["a"],void 0);e["default"]=c.exports},a462:function(t,e,i){"use strict";var n=i("14a8"),o=i.n(n);o.a},e09f:function(t,e,i){"use strict";i.d(e,"b",(function(){return n})),i.d(e,"c",(function(){return o})),i.d(e,"a",(function(){}));var n=function(){var t=this.$createElement,e=(this._self._c,this.replyList.length);this.$mp.data=Object.assign({},{$root:{g0:e}})},o=[]}}]);
;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
'components/discoverVideo/replyList-create-component',
{
'components/discoverVideo/replyList-create-component':(function(module, exports, __webpack_require__){
__webpack_require__('df3c')['createComponent'](__webpack_require__("8d38"))
})
},
[['components/discoverVideo/replyList-create-component']]
]);

View File

@@ -0,0 +1,8 @@
{
"component": true,
"usingComponents": {
"base-drawer": "/components/tui-drawer/tui-drawer",
"empty-page": "/components/emptyPage",
"tui-modal": "/components/tui-modal/index"
}
}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
.scroll-content{height:900rpx}.hide-bar{bottom:100rpx}.mb-54{margin-bottom:54rpx}.child-reply ~ .child-reply{margin-top:22rpx}.more-line{width:40rpx;height:2rpx;background:#d8d8d8}.comment-author{color:#4a8ac9;padding:0 4rpx}.icon-icon_Like_2{color:#e93323}.close-btn{position:absolute;right:28rpx;top:28rpx;width:36rpx;height:36rpx;border-radius:50%;background-color:#eee}