refactor: 出库时间更名为首次购买套餐时间,换货新资产不再按换货完成时间记录
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 38s
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 38s
- 字段 outbound_at → first_purchase_at,记录表 tb_asset_outbound_record → tb_asset_first_purchase_record,接口 /outbound-records → /first-purchase-records,筛选参数与导出列同步更名 - 换货后的新资产不因换货写入,在当前世代真正支付套餐订单时才记录;记录来源只保留 order / backfill,去掉换货单字段 - 迁移 000266 重命名列、表、索引与约束;同步 Spec、设计、任务与前端接口变更说明 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -67,7 +67,7 @@ const (
|
||||
SilencePurchaseAdjustDaysMax = 3650
|
||||
SilenceExtensionOptionsMax = 24
|
||||
SilenceBackfillBatchSize = 500
|
||||
SilenceOutboundBackfillBatchSize = 5000
|
||||
SilenceFirstPurchaseBackfillBatchSize = 5000
|
||||
SilenceSwitchPrecheckUnconfiguredPackages = "unconfigured_packages"
|
||||
SilenceSwitchPrecheckUnbackfilledUsages = "unbackfilled_usages"
|
||||
SilenceSwitchPrecheckDefaultPolicyMissing = "default_policy_missing"
|
||||
@@ -264,25 +264,24 @@ const (
|
||||
AuditActionSilencePolicyCreated = "package_silence_policy.created"
|
||||
AuditActionSilencePolicyUpdated = "package_silence_policy.updated"
|
||||
AuditActionSilencePolicyStatusChanged = "package_silence_policy.status_changed"
|
||||
AuditActionAssetOutboundRecorded = "asset.outbound_recorded"
|
||||
AuditActionAssetOutboundEnded = "asset.outbound_ended"
|
||||
AuditActionAssetFirstPurchaseRecorded = "asset.first_purchase_recorded"
|
||||
AuditActionAssetFirstPurchaseEnded = "asset.first_purchase_ended"
|
||||
)
|
||||
|
||||
// 资产出库记录。
|
||||
// 资产首次购买套餐记录。
|
||||
const (
|
||||
OutboundSourceOrder = "order"
|
||||
OutboundSourceExchange = "exchange"
|
||||
OutboundSourceBackfill = "backfill"
|
||||
OutboundEndReasonExchange = "exchange_return"
|
||||
OutboundAssetTypeIotCard = "iot_card"
|
||||
OutboundAssetTypeDevice = "device"
|
||||
SilenceAssetTypeIotCard = "iot_card"
|
||||
SilenceAssetTypeDevice = "device"
|
||||
SilenceAuditResourceUsage = "package_usage"
|
||||
SilenceAuditResourcePackage = "package"
|
||||
SilenceAuditResourcePolicy = "package_silence_policy"
|
||||
SilenceAuditResourceConfig = "system_config"
|
||||
SilenceAuditResourceAsset = "asset"
|
||||
FirstPurchaseSourceOrder = "order"
|
||||
FirstPurchaseSourceBackfill = "backfill"
|
||||
FirstPurchaseEndReasonExchange = "exchange_return"
|
||||
FirstPurchaseAssetTypeIotCard = "iot_card"
|
||||
FirstPurchaseAssetTypeDevice = "device"
|
||||
SilenceAssetTypeIotCard = "iot_card"
|
||||
SilenceAssetTypeDevice = "device"
|
||||
SilenceAuditResourceUsage = "package_usage"
|
||||
SilenceAuditResourcePackage = "package"
|
||||
SilenceAuditResourcePolicy = "package_silence_policy"
|
||||
SilenceAuditResourceConfig = "system_config"
|
||||
SilenceAuditResourceAsset = "asset"
|
||||
)
|
||||
|
||||
// 沉默期审批业务字段(企微场景配置把模板控件映射到这些字段)。
|
||||
|
||||
@@ -405,7 +405,7 @@ func (h *Handler) registerAutoPurchaseHandler() {
|
||||
)
|
||||
if services := h.workerResult.Services; services != nil {
|
||||
autoPurchaseHandler.SetSilenceSetter(services.SilenceSetter)
|
||||
autoPurchaseHandler.SetOutboundRecorder(services.SilenceOutbound)
|
||||
autoPurchaseHandler.SetFirstPurchaseRecorder(services.SilenceFirstPurchase)
|
||||
}
|
||||
h.mux.HandleFunc(constants.TaskTypeAutoPurchaseAfterRecharge, autoPurchaseHandler.ProcessTask)
|
||||
h.logger.Info("注册自动购包任务处理器", zap.String("task_type", constants.TaskTypeAutoPurchaseAfterRecharge))
|
||||
|
||||
@@ -92,11 +92,11 @@ type WorkerServices struct {
|
||||
AssetPolling *pollingSvc.AssetPollingService
|
||||
// IotCardPolling 是 AssetPolling 使用的卡服务,Worker 启动时注入轮询生命周期回调。
|
||||
IotCardPolling *iotCardSvc.Service
|
||||
// 沉默期:总开关、统一判定、设置与出库时间用例(扫描、自动购包、延期执行共用)。
|
||||
SilenceSwitch *packagesilenceApp.Switch
|
||||
SilenceResolver *packagesilenceApp.Resolver
|
||||
SilenceSetter *packagesilenceApp.Setter
|
||||
SilenceOutbound *packagesilenceApp.OutboundRecorder
|
||||
// 沉默期:总开关、统一判定、设置与首次购买套餐时间用例(扫描、自动购包、延期执行共用)。
|
||||
SilenceSwitch *packagesilenceApp.Switch
|
||||
SilenceResolver *packagesilenceApp.Resolver
|
||||
SilenceSetter *packagesilenceApp.Setter
|
||||
SilenceFirstPurchase *packagesilenceApp.FirstPurchaseRecorder
|
||||
// SilenceExtensions 执行沉默期审批通过后的延期、延期订单查单恢复与异常原路退款。
|
||||
SilenceExtensions *packagesilenceApp.ExtensionService
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user