2.0 KiB
2.0 KiB
任务任务:统一积分与元比例 (Task List)
0. 预备工作
- 确认数据备份: 提醒用户备份数据库。
- 代码同步: 确保本地代码是最新的。
1. 后端改造 (Backend)
- 修改核心计算包 (
internal/pkg/points/convert.go)- 修改
CentsToPoints为(cents * rate) / 100 - 修改
PointsToCents为(points * 100) / rate - 修改
RefundPointsAmount适配新公式
- 修改
- 业务逻辑适配 (
internal/service/user)- 检查
points_convert.go中的CentsToPoints调用,确保读取配置 Keypoints_exchange_rate(或复用旧 Key 但明确含义)。 - 检查
points_consume.go等文件,确保无其他硬编码。
- 检查
- 单元测试
- 运行
internal/pkg/points的测试,确保 100 分钱在 Rate=1 时转为 1 积分。
- 运行
2. 管理后台改造 (Admin Frontend)
- 更新系统配置页 (
web/admin/src/views/system/configs/index.vue)- 新增 "积分配置" 卡片。
- 添加
points_exchange_rate编辑项。 - 添加说明: "1元 = ? 积分"。
3. 小程序改造 (Mini Program)
- 全局搜索积分展示
- 搜索
/ 100或* 0.01相关的积分代码。
- 搜索
- 修复工具函数
- 修改
utils/format.js或类似文件中的formatPoints。
- 修改
- 修复页面展示
pages-user/points/index.vue(积分明细)pages-user/orders/detail.vue(如果有积分抵扣展示)- 其他涉及积分展示的页面。
4. 数据迁移 (Migration)
- 提供 SQL 脚本
- 存入
docs/standardize_points_ratio/migration.sql。
- 存入
- (Optional) 执行迁移
- 根据用户指示决定是否执行。
5. 验证 (Verification)
- 后端验证
- 重启服务。
- 模拟支付 1 元,查看数据库增加 1 积分。
- 前端验证
- 查看积分列表,显示为 1 (而不是 0.01 或 100)。