feat: 技术债务清理(支付配置动态化、API文档补全、轮询常量提取、废弃代码清理)
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m13s

This commit is contained in:
2026-04-14 11:11:15 +08:00
parent c0b64c9e30
commit 42c5ec912f
63 changed files with 1979 additions and 775 deletions

View File

@@ -43,7 +43,6 @@ const (
// 任务类型常量
const (
TaskTypeEmailSend = "email:send" // 发送邮件
TaskTypeDataSync = "data:sync" // 数据同步
TaskTypeCommission = "commission:calculate" // 分佣计算
TaskTypeIotCardImport = "iot_card:import" // IoT 卡批量导入
TaskTypeDeviceImport = "device:import" // 设备批量导入
@@ -233,3 +232,48 @@ const (
ExchangeAssetTypeIotCard = "iot_card" // 物联网卡
ExchangeAssetTypeDevice = "device" // 设备
)
// GetStatusName 获取通用启用/禁用状态名称
// 用于 status 字段0=禁用, 1=启用
func GetStatusName(status int) string {
switch status {
case StatusDisabled:
return "禁用"
case StatusEnabled:
return "启用"
default:
return "未知"
}
}
// GetShelfStatusName 获取上架状态名称
// 用于 shelf_status 字段1=上架, 2=下架
func GetShelfStatusName(status int) string {
switch status {
case ShelfStatusOn:
return "上架"
case ShelfStatusOff:
return "下架"
default:
return "未知"
}
}
// GetExchangeStatusName 获取换货单状态名称
// 用于 exchange_status 字段
func GetExchangeStatusName(status int) string {
switch status {
case ExchangeStatusPendingInfo:
return "待填写信息"
case ExchangeStatusPendingShip:
return "待发货"
case ExchangeStatusShipped:
return "已发货待确认"
case ExchangeStatusCompleted:
return "已完成"
case ExchangeStatusCancelled:
return "已取消"
default:
return "未知"
}
}

View File

@@ -186,11 +186,11 @@ const (
CommissionStatusPendingReview = 99 // 待人工修正(链路断裂,需平台处理)
)
// 阶梯类型
// 阶梯类型[预留] 用于分佣阶梯功能,待产品规划)
const (
LadderTypeActivation = "activation" // 激活量
LadderTypePickup = "pickup" // 提货量
LadderTypeDeposit = "deposit" // 充值量
LadderTypeActivation = "activation" // 激活量[预留]
LadderTypePickup = "pickup" // 提货量[预留]
LadderTypeDeposit = "deposit" // 充值量[预留]
)
// 卡类型
@@ -199,17 +199,17 @@ const (
CardTypeIotCard = "iot_card" // IoT卡
)
// 审批类型
// 审批类型[预留] 用于审批流程功能,待产品规划)
const (
ApprovalTypeAuto = "auto" // 自动
ApprovalTypeManual = "manual" // 人工
ApprovalTypeAuto = "auto" // 自动[预留]
ApprovalTypeManual = "manual" // 人工[预留]
)
// 审批状态
// 审批状态[预留] 用于审批流程功能,待产品规划)
const (
ApprovalStatusPending = 1 // 待审批
ApprovalStatusApproved = 2 // 已通过
ApprovalStatusRejected = 3 // 已拒绝
ApprovalStatusPending = 1 // 待审批[预留]
ApprovalStatusApproved = 2 // 已通过[预留]
ApprovalStatusRejected = 3 // 已拒绝[预留]
)
// ========================================
@@ -231,23 +231,23 @@ const (
WithdrawalMethodBank = "bank" // 银行卡
)
// 商户类型
// 商户类型[预留] 用于未来商户管理功能,待产品规划)
const (
MerchantTypeAlipay = "alipay" // 支付宝
MerchantTypeWechat = "wechat" // 微信
MerchantTypeBank = "bank" // 银行卡
MerchantTypeAlipay = "alipay" // 支付宝[预留]
MerchantTypeWechat = "wechat" // 微信[预留]
MerchantTypeBank = "bank" // 银行卡[预留]
)
// ========================================
// 5. 系统管理常量
// ========================================
// 换卡申请状态
// 换卡申请状态[预留] 用于换卡申请功能,待产品规划)
const (
ReplacementStatusPending = 1 // 待处理
ReplacementStatusApproved = 2 // 已通过
ReplacementStatusRejected = 3 // 已拒绝
ReplacementStatusCompleted = 4 // 已完成
ReplacementStatusPending = 1 // 待处理[预留]
ReplacementStatusApproved = 2 // 已通过[预留]
ReplacementStatusRejected = 3 // 已拒绝[预留]
ReplacementStatusCompleted = 4 // 已完成[预留]
)
// ========================================
@@ -261,10 +261,137 @@ const (
CarrierCodeCBN = "CBN" // 广电
)
// 换货原因([预留] 用于换卡原因管理功能,待产品规划)
const (
ReplacementReasonDamaged = "damaged"
ReplacementReasonLost = "lost"
ReplacementReasonMalfunction = "malfunction"
ReplacementReasonUpgrade = "upgrade"
ReplacementReasonOther = "other"
ReplacementReasonDamaged = "damaged" // 损坏([预留]
ReplacementReasonLost = "lost" // 丢失([预留]
ReplacementReasonMalfunction = "malfunction" // 故障([预留]
ReplacementReasonUpgrade = "upgrade" // 升级([预留]
ReplacementReasonOther = "other" // 其他([预留]
)
// ========================================
// 状态名称映射函数
// ========================================
// GetIotCardStatusName 获取 IoT 卡业务状态名称
// 对应 IotCardStatus* 常量1=在库, 2=已分销, 3=已激活, 4=已停用
func GetIotCardStatusName(status int) string {
switch status {
case IotCardStatusInStock:
return "在库"
case IotCardStatusDistributed:
return "已分销"
case IotCardStatusActivated:
return "已激活"
case IotCardStatusSuspended:
return "已停用"
default:
return "未知"
}
}
// GetActivationStatusName 获取激活状态名称
// 对应 ActivationStatus* 常量0=未激活, 1=已激活
func GetActivationStatusName(status int) string {
switch status {
case ActivationStatusInactive:
return "未激活"
case ActivationStatusActive:
return "已激活"
default:
return "未知"
}
}
// GetRealNameStatusName 获取实名状态名称
// 对应 RealNameStatus* 常量0=未实名, 1=已实名
func GetRealNameStatusName(status int) string {
switch status {
case RealNameStatusNotVerified:
return "未实名"
case RealNameStatusVerified:
return "已实名"
default:
return "未知"
}
}
// GetNetworkStatusName 获取网络状态名称
// 对应 NetworkStatus* 常量0=停机, 1=开机
func GetNetworkStatusName(status int) string {
switch status {
case NetworkStatusOffline:
return "停机"
case NetworkStatusOnline:
return "开机"
default:
return "未知"
}
}
// GetCommissionRecordStatusName 获取佣金记录状态名称
// 对应 CommissionStatus* 常量1=已冻结, 2=解冻中, 3=已发放, 4=已失效, 99=待人工修正
func GetCommissionRecordStatusName(status int) string {
switch status {
case CommissionStatusFrozen:
return "已冻结"
case CommissionStatusUnfreezing:
return "解冻中"
case CommissionStatusReleased:
return "已发放"
case CommissionStatusInvalid:
return "已失效"
case CommissionStatusPendingReview:
return "待人工修正"
default:
return "未知"
}
}
// GetOrderPaymentStatusName 获取订单支付状态名称
// 1=待支付, 2=已支付, 3=已取消, 4=已退款
func GetOrderPaymentStatusName(status int) string {
switch status {
case 1:
return "待支付"
case 2:
return "已支付"
case 3:
return "已取消"
case 4:
return "已退款"
default:
return "未知"
}
}
// GetOrderCommissionStatusName 获取订单佣金计算状态名称
// 1=待计算, 2=已计算
func GetOrderCommissionStatusName(status int) string {
switch status {
case 1:
return "待计算"
case 2:
return "已计算"
default:
return "未知"
}
}
// GetRefundStatusName 获取退款申请状态名称
// 1=待审批, 2=已通过, 3=已拒绝, 4=已退回
func GetRefundStatusName(status int) string {
switch status {
case 1:
return "待审批"
case 2:
return "已通过"
case 3:
return "已拒绝"
case 4:
return "已退回"
default:
return "未知"
}
}

View File

@@ -21,3 +21,15 @@ const PollingDefaultMaxConcurrency = 300
// PollingConcurrencyKeyTTL 并发计数 key 的过期时间(秒)
// 保证 Worker 意外崩溃defer Decr 未执行)时计数器在此时间内自动归零
const PollingConcurrencyKeyTTL = 600 // 10 分钟
// 轮询手动触发日志状态常量
const (
// PollingManualTriggerStatusPending 轮询手动触发日志状态-待处理
PollingManualTriggerStatusPending = "pending"
// PollingManualTriggerStatusProcessing 轮询手动触发日志状态-处理中
PollingManualTriggerStatusProcessing = "processing"
// PollingManualTriggerStatusCompleted 轮询手动触发日志状态-已完成
PollingManualTriggerStatusCompleted = "completed"
// PollingManualTriggerStatusCancelled 轮询手动触发日志状态-已取消
PollingManualTriggerStatusCancelled = "cancelled"
)

View File

@@ -427,3 +427,15 @@ func RedisPollingShardQueueKey(shardID int, taskType string) string {
func RedisPollingDeviceOpLockKey(deviceID uint) string {
return fmt.Sprintf("polling:device:op_lock:%d", deviceID)
}
// ========================================
// 支付配置缓存 Redis Key
// ========================================
// RedisPaymentConfigKey 支付配置缓存 Key
// 用途:缓存 WechatConfig 数据JSON 格式),避免每次支付时重复查询数据库
// 格式payment:config:{configID}
// TTL1 小时
func RedisPaymentConfigKey(configID uint) string {
return fmt.Sprintf("payment:config:%d", configID)
}

View File

@@ -145,90 +145,3 @@ func RedisAssetWalletBalanceKey(resourceType string, resourceID uint) string {
func RedisAssetWalletLockKey(resourceType string, resourceID uint) string {
return fmt.Sprintf("asset_wallet:lock:%s:%d", resourceType, resourceID)
}
// ========== 兼容性别名(待清理)==========
// 以下常量保留用于向后兼容,待旧代码清理后删除
// WalletTypeMain 主钱包(已废弃,使用 AgentWalletTypeMain
const WalletTypeMain = AgentWalletTypeMain
// WalletTypeCommission 分佣钱包(已废弃,使用 AgentWalletTypeCommission
const WalletTypeCommission = AgentWalletTypeCommission
// WalletResourceTypeIotCard 物联网卡钱包(已废弃,使用 AssetWalletResourceTypeIotCard
const WalletResourceTypeIotCard = AssetWalletResourceTypeIotCard
// WalletResourceTypeDevice 设备钱包(已废弃,使用 AssetWalletResourceTypeDevice
const WalletResourceTypeDevice = AssetWalletResourceTypeDevice
// WalletResourceTypeShop 店铺钱包(已废弃,代理钱包不再使用 resource_type
const WalletResourceTypeShop = "shop"
// WalletStatusNormal 钱包状态-正常(已废弃,使用 AgentWalletStatusNormal 或 AssetWalletStatusNormal
const WalletStatusNormal = AgentWalletStatusNormal
// WalletStatusFrozen 钱包状态-冻结(已废弃,使用 AgentWalletStatusFrozen 或 AssetWalletStatusFrozen
const WalletStatusFrozen = AgentWalletStatusFrozen
// WalletStatusClosed 钱包状态-关闭(已废弃,使用 AgentWalletStatusClosed 或 AssetWalletStatusClosed
const WalletStatusClosed = AgentWalletStatusClosed
// TransactionTypeRecharge 交易类型-充值(已废弃,使用 AgentTransactionTypeRecharge 或 AssetTransactionTypeRecharge
const TransactionTypeRecharge = AgentTransactionTypeRecharge
// TransactionTypeDeduct 交易类型-扣款(已废弃,使用 AgentTransactionTypeDeduct 或 AssetTransactionTypeDeduct
const TransactionTypeDeduct = AgentTransactionTypeDeduct
// TransactionTypeRefund 交易类型-退款(已废弃,使用 AgentTransactionTypeRefund 或 AssetTransactionTypeRefund
const TransactionTypeRefund = AgentTransactionTypeRefund
// TransactionTypeCommission 交易类型-分佣(已废弃,使用 AgentTransactionTypeCommission
const TransactionTypeCommission = AgentTransactionTypeCommission
// TransactionTypeWithdrawal 交易类型-提现(已废弃,使用 AgentTransactionTypeWithdrawal
const TransactionTypeWithdrawal = AgentTransactionTypeWithdrawal
// RechargeOrderPrefix 充值订单号前缀(已废弃,使用 AgentRechargeOrderPrefix 或 AssetRechargeOrderPrefix
const RechargeOrderPrefix = "RCH"
// RechargeMinAmount 最小充值金额(已废弃,使用 AgentRechargeMinAmount 或 AssetRechargeMinAmount
const RechargeMinAmount = AssetRechargeMinAmount
// RechargeMaxAmount 最大充值金额(已废弃,使用 AgentRechargeMaxAmount 或 AssetRechargeMaxAmount
const RechargeMaxAmount = AssetRechargeMaxAmount
// ========== Card* 废弃别名(向后兼容)==========
// Deprecated: 使用 AssetWalletResourceTypeIotCard
const CardWalletResourceTypeIotCard = AssetWalletResourceTypeIotCard
// Deprecated: 使用 AssetWalletResourceTypeDevice
const CardWalletResourceTypeDevice = AssetWalletResourceTypeDevice
// Deprecated: 使用 AssetWalletStatusNormal
const CardWalletStatusNormal = AssetWalletStatusNormal
// Deprecated: 使用 AssetWalletStatusFrozen
const CardWalletStatusFrozen = AssetWalletStatusFrozen
// Deprecated: 使用 AssetWalletStatusClosed
const CardWalletStatusClosed = AssetWalletStatusClosed
// Deprecated: 使用 AssetTransactionTypeRecharge
const CardTransactionTypeRecharge = AssetTransactionTypeRecharge
// Deprecated: 使用 AssetTransactionTypeDeduct
const CardTransactionTypeDeduct = AssetTransactionTypeDeduct
// Deprecated: 使用 AssetTransactionTypeRefund
const CardTransactionTypeRefund = AssetTransactionTypeRefund
// Deprecated: 使用 AssetRechargeOrderPrefix
const CardRechargeOrderPrefix = AssetRechargeOrderPrefix
// Deprecated: 使用 AssetRechargeMinAmount
const CardRechargeMinAmount = AssetRechargeMinAmount
// Deprecated: 使用 AssetRechargeMaxAmount
const CardRechargeMaxAmount = AssetRechargeMaxAmount