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:
@@ -0,0 +1,54 @@
|
||||
# Conversation - 2026-03-10 18:01:00
|
||||
|
||||
## Prompt
|
||||
|
||||
创建组件 HjfAssetCard.vue:
|
||||
|
||||
文件路径: /Users/apple/scott2026/huangjingfen/pro_v3.5.1/view/uniapp/components/HjfAssetCard.vue
|
||||
|
||||
内容要求:
|
||||
1. 使用 Vue 2 Options API
|
||||
2. Props: nowMoney(String), frozenPoints(Number), availablePoints(Number), todayRelease(Number)
|
||||
3. 模板: 渐变背景卡片,三栏展示:现金余额(¥) / 待释放积分 / 已释放积分 + 今日预计释放
|
||||
4. 样式: <style scoped lang="scss">,渐变背景使用 linear-gradient,rpx 单位
|
||||
5. 参考: docs/frontend-new-pages-spec.md 第 3.2.3 节,参考 pro_v3.5.1/view/uniapp/pages/users/user_money/index.vue
|
||||
|
||||
完整 JSDoc 注释。
|
||||
|
||||
## Response
|
||||
|
||||
|
||||
已按规范写好并保存 `HjfAssetCard.vue`,主要如下:
|
||||
|
||||
**1. Vue 2 Options API**
|
||||
- `name: 'HjfAssetCard'`,`props`、`computed` 定义完整。
|
||||
|
||||
**2. Props(含 JSDoc)**
|
||||
- `nowMoney` (String),默认 `'0.00'`
|
||||
- `frozenPoints` (Number),默认 `0`
|
||||
- `availablePoints` (Number),默认 `0`
|
||||
- `todayRelease` (Number),默认 `null`(为 null 时不显示底部“今日预计释放”)
|
||||
|
||||
**3. 模板**
|
||||
- 渐变背景卡片内三栏:**现金余额(¥)**、**待释放积分**、**已释放积分**。
|
||||
- 有 `todayRelease` 时在底部展示:“今日预计释放 X 积分”。
|
||||
|
||||
**4. 样式(scoped SCSS、rpx)**
|
||||
- 与 `user_money/index.vue` 一致:`linear-gradient(90deg, var(--view-theme) 0%, var(--view-gradient) 100%)`,`border-radius: 32rpx`,宽度 `710rpx`。
|
||||
- 底部提示条使用 `rgba(255,255,255,0.1)`,与参考页 `.cumulative` 一致。
|
||||
- 金额保留两位小数;积分为整数展示(`toLocaleString()`)。
|
||||
|
||||
**5. JSDoc**
|
||||
- 文件头:`@file`、`@description`、`@see` 指向 `docs/frontend-new-pages-spec.md` 3.2.3 与 `user_money/index.vue`。
|
||||
- 每个 prop 有 `@type`、`@default` 说明。
|
||||
|
||||
使用示例:
|
||||
|
||||
```vue
|
||||
<HjfAssetCard
|
||||
now-money="7200.00"
|
||||
:frozen-points="15000"
|
||||
:available-points="3200"
|
||||
:today-release="6"
|
||||
/>
|
||||
```
|
||||
@@ -0,0 +1,57 @@
|
||||
# Conversation - 2026-03-10 18:02:44
|
||||
|
||||
## Prompt
|
||||
|
||||
创建组件 HjfMemberBadge.vue:
|
||||
|
||||
文件路径: /Users/apple/scott2026/huangjingfen/pro_v3.5.1/view/uniapp/components/HjfMemberBadge.vue
|
||||
|
||||
内容要求:
|
||||
1. 使用 Vue 2 Options API
|
||||
2. Props: level(Number), levelName(String), size(String 默认'normal',可选'small'/'normal'/'large')
|
||||
3. 模板: 显示会员等级图标 + 等级名称
|
||||
4. 等级颜色映射:
|
||||
- 0(普通): 灰色 #999999
|
||||
- 1(创客): 铜色 #CD7F32
|
||||
- 2(云店): 银色 #C0C0C0
|
||||
- 3(服务商): 金色 #FFD700
|
||||
- 4(分公司): 紫色 #8B5CF6
|
||||
5. 三种尺寸样式: small/normal/large
|
||||
6. 参考: docs/frontend-new-pages-spec.md 第 3.2.4 节
|
||||
|
||||
完整 JSDoc 注释。
|
||||
|
||||
## Response
|
||||
|
||||
|
||||
已按你的要求补全并整理 `HjfMemberBadge.vue`,当前实现如下。
|
||||
|
||||
**1. Vue 2 Options API**
|
||||
- 使用 `export default { name, props, computed }`,无 `setup`。
|
||||
|
||||
**2. Props**
|
||||
- `level`:Number,0–4,默认 0,带 validator。
|
||||
- `levelName`:String,默认 `''`。
|
||||
- `size`:String,默认 `'normal'`,可选 `'small'` / `'normal'` / `'large'`,带 validator。
|
||||
|
||||
**3. 模板**
|
||||
- 会员等级图标(圆形徽章内显示等级数字)+ 右侧等级名称 `displayName`。
|
||||
|
||||
**4. 等级颜色**
|
||||
- 0 普通 `#999999`
|
||||
- 1 创客 `#CD7F32`
|
||||
- 2 云店 `#C0C0C0`
|
||||
- 3 服务商 `#FFD700`
|
||||
- 4 分公司 `#8B5CF6`
|
||||
|
||||
**5. 三种尺寸**
|
||||
- `size-small`:图标 32rpx,名称 22rpx。
|
||||
- `size-normal`:图标 40rpx,名称 26rpx。
|
||||
- `size-large`:图标 52rpx,名称 30rpx。
|
||||
|
||||
**6. 规范与 JSDoc**
|
||||
- 与 `docs/frontend-new-pages-spec.md` 第 3.2.4 节一致。
|
||||
- 已补充完整 JSDoc:组件说明、`@component`、`@example`;常量 `LEVEL_COLORS`、`LEVEL_NAMES` 的 `@constant` / `@type`;每个 prop 的 `@type`、`@default`;computed 的简要说明。
|
||||
|
||||
等级 0 的默认展示名称已与文档统一为「普通」(原为「普通会员」)。
|
||||
文件路径:`/Users/apple/scott2026/huangjingfen/pro_v3.5.1/view/uniapp/components/HjfMemberBadge.vue`。
|
||||
@@ -0,0 +1,57 @@
|
||||
# Conversation - 2026-03-10 18:04:22
|
||||
|
||||
## Prompt
|
||||
|
||||
创建组件 HjfRefundNotice.vue:
|
||||
|
||||
文件路径: /Users/apple/scott2026/huangjingfen/pro_v3.5.1/view/uniapp/components/HjfRefundNotice.vue
|
||||
|
||||
内容要求:
|
||||
1. 使用 Vue 2 Options API
|
||||
2. Props: visible(Boolean), amount(Number), orderId(String)
|
||||
3. Events: @close
|
||||
4. 模板: 弹窗提示'恭喜!您的公排订单已退款',显示退款金额(¥3,600.00格式)和订单号,确认按钮关闭弹窗
|
||||
5. 使用 uni.showModal 或自定义弹窗样式
|
||||
6. 参考: docs/frontend-new-pages-spec.md 第 2.2.3 节
|
||||
|
||||
完整 JSDoc 注释。
|
||||
|
||||
## Response
|
||||
|
||||
|
||||
`HjfRefundNotice.vue` 已按规范更新,主要实现如下:
|
||||
|
||||
### 实现要点
|
||||
|
||||
1. **Vue 2 Options API**:使用 `props`、`computed`、`methods`。
|
||||
|
||||
2. **Props**:
|
||||
- `visible` (Boolean):是否显示弹窗
|
||||
- `amount` (Number):退款金额
|
||||
- `orderId` (String):订单号
|
||||
|
||||
3. **Events**:点击确认或遮罩时触发 `@close`,父组件需在 `@close` 中把 `visible` 设为 `false`。
|
||||
|
||||
4. **模板内容**:
|
||||
- 主文案:`恭喜!您的公排订单已退款`
|
||||
- 副文案:`已入账到现金余额`
|
||||
- 退款金额:`¥3,600.00`(千分位 + 两位小数)
|
||||
- 订单号:有则显示
|
||||
- 确认按钮:点击后关闭弹窗
|
||||
|
||||
5. **自定义弹窗**:使用自定义弹窗样式,符合规范 2.2.3 节。
|
||||
|
||||
6. **JSDoc**:为组件、props、computed、methods 添加了 JSDoc 注释。
|
||||
|
||||
7. **样式**:使用 `rpx`、`scoped`、`lang="scss"`,并支持 `var(--view-gradient)` 主题变量。
|
||||
|
||||
### 使用示例
|
||||
|
||||
```vue
|
||||
<HjfRefundNotice
|
||||
:visible="showRefundNotice"
|
||||
:amount="3600"
|
||||
order-id="HJF202603100001"
|
||||
@close="showRefundNotice = false"
|
||||
/>
|
||||
```
|
||||
@@ -0,0 +1,57 @@
|
||||
# Conversation - 2026-03-10 17:58:54
|
||||
|
||||
## Prompt
|
||||
|
||||
创建组件 HjfQueueProgress.vue:
|
||||
|
||||
文件路径: /Users/apple/scott2026/huangjingfen/pro_v3.5.1/view/uniapp/components/HjfQueueProgress.vue
|
||||
|
||||
内容要求:
|
||||
1. 使用 Vue 2 Options API
|
||||
2. Props: currentCount(Number), triggerMultiple(Number, 默认4), nextRefundNo(Number)
|
||||
3. 计算属性: progressPercent 计算进度百分比
|
||||
4. 模板: 进度条展示 currentCount/triggerMultiple,显示下一个退款序号
|
||||
5. 样式: <style scoped lang="scss">,使用 CSS 变量 var(--view-theme),rpx 单位
|
||||
6. 参考: docs/frontend-new-pages-spec.md 第 2.2.2 节
|
||||
|
||||
完整 JSDoc 注释。
|
||||
|
||||
## Response
|
||||
|
||||
|
||||
已按你的要求和 `docs/frontend-new-pages-spec.md` 第 2.2.2 节写好并覆盖 `HjfQueueProgress.vue`,要点如下:
|
||||
|
||||
**1. Vue 2 Options API**
|
||||
- 使用 `props`、`computed`,无 `data`/`methods`。
|
||||
|
||||
**2. Props**
|
||||
- `currentCount`:Number,默认 `0`
|
||||
- `triggerMultiple`:Number,默认 `4`
|
||||
- `nextRefundNo`:Number,默认 `null`(有值时才显示「下一退款序号」)
|
||||
|
||||
**3. 计算属性 `progressPercent`**
|
||||
- 公式:`(currentCount / triggerMultiple) * 100`,限制在 0–100,保留一位小数。
|
||||
- `ringStyle`、`barStyle` 都基于 `progressPercent` 生成样式。
|
||||
|
||||
**4. 模板**
|
||||
- 环形进度:中间显示 `currentCount/triggerMultiple`
|
||||
- 条形进度:轨道 + 按 `progressPercent` 填充,下方文案同样为 `currentCount/triggerMultiple`
|
||||
- `nextRefundNo != null` 时显示「下一退款序号: {{ nextRefundNo }}」
|
||||
|
||||
**5. 样式**
|
||||
- `<style scoped lang="scss">`,单位用 `rpx`,主题色用 `var(--view-theme)`(环形、条形、进度数值颜色一致)。
|
||||
|
||||
**6. JSDoc**
|
||||
- 文件头:`@file`、`@description`、`@see` 规范 2.2.2
|
||||
- 每个 prop:`@type` 与说明
|
||||
- 每个 computed:`@returns` 与说明
|
||||
|
||||
使用示例:
|
||||
|
||||
```vue
|
||||
<HjfQueueProgress
|
||||
:current-count="2"
|
||||
:trigger-multiple="4"
|
||||
:next-refund-no="39"
|
||||
/>
|
||||
```
|
||||
BIN
pro_v3.5.1_副本/view/uniapp/components/.cursor-cli/sessions.db
Normal file
BIN
pro_v3.5.1_副本/view/uniapp/components/.cursor-cli/sessions.db
Normal file
Binary file not shown.
Reference in New Issue
Block a user