feat: 客户端接口数据模型基础准备

- 新增资产状态、订单来源、操作人类型、实名链接类型常量
- 8个模型新增字段(asset_status/generation/source/retail_price等)
- 数据库迁移000082:7张表15+字段,含存量retail_price回填
- BUG-1修复:代理零售价渠道隔离,cost_price分配锁定
- BUG-2修复:一次性佣金仅客户端订单触发
- BUG-4修复:充值回调Store操作纳入事务
- 新增资产手动停用接口(PATCH /iot-cards/:id/deactivate、/devices/:id/deactivate)
- Carrier管理新增实名链接配置
- 后台订单generation写时快照
- BatchUpdatePricing支持retail_price调价目标
- 清理全部H5旧接口和个人客户旧登录方法
This commit is contained in:
2026-03-19 10:56:50 +08:00
parent 817d0d6e04
commit ec86dbf463
70 changed files with 1438 additions and 1188 deletions

View File

@@ -0,0 +1,11 @@
package constants
// 资产业务状态常量
// 用于 IotCard/Device 的 asset_status 字段,表示资产在 CMP 内部的业务生命周期状态
// 与运营商侧的 network_status 完全独立
const (
AssetStatusInStock = 1 // 在库
AssetStatusSold = 2 // 已销售
AssetStatusExchanged = 3 // 已换货
AssetStatusDeactivated = 4 // 已停用
)

View File

@@ -0,0 +1,8 @@
package constants
// 操作人类型常量
// 用于 AssetRechargeRecord.operator_type 字段,区分操作人的 ID 体系
const (
OperatorTypeAdminUser = "admin_user" // 后台用户
OperatorTypePersonalCustomer = "personal_customer" // 个人客户
)

View File

@@ -0,0 +1,8 @@
package constants
// 订单来源常量
// 用于 Order.source 字段,区分订单创建渠道
const (
OrderSourceAdmin = "admin" // 后台
OrderSourceClient = "client" // 客户端
)

View File

@@ -0,0 +1,9 @@
package constants
// 实名链接类型常量
// 用于 Carrier.realname_link_type 字段,定义运营商实名认证链接的生成方式
const (
RealnameLinkTypeNone = "none" // 不支持实名链接
RealnameLinkTypeTemplate = "template" // 模板URL支持 {iccid}/{msisdn}/{virtual_no} 占位符)
RealnameLinkTypeGateway = "gateway" // Gateway接口
)