fix(内部): 修复偷卡逻辑并添加订单关联
- 在创建失败订单时添加 IsReplace 字段 - 实现订单关联失败时的错误处理逻辑 - 添加延迟订单处理功能 - 优化偷卡规则常量命名
This commit is contained in:
@@ -11,9 +11,9 @@ const (
|
||||
type StealRuleType int
|
||||
|
||||
const (
|
||||
// StealRuleTypeStealBlank 规则1:延迟
|
||||
// StealRuleTypeStealBlank 规则1:空白
|
||||
StealRuleTypeStealBlank StealRuleType = 1
|
||||
// StealRuleTypeStealDelay 规则2:创建空白订单
|
||||
// StealRuleTypeStealDelay 规则2:延迟订单
|
||||
StealRuleTypeStealDelay StealRuleType = 2
|
||||
// StealRuleTypeStealRandom 规则3:随机
|
||||
StealRuleTypeStealRandom StealRuleType = 3
|
||||
|
||||
@@ -178,11 +178,12 @@ func (c *ScanController) Scan() {
|
||||
otelTrace.Logger.WithContext(ctx).Error("添加订单关联失败【偷卡2】", zap.Error(err2))
|
||||
}
|
||||
//错误订单回调上游
|
||||
//oldBankOrderId := orderInfo.BankOrderId
|
||||
//delayPool.Go(func() {
|
||||
// time.Sleep(time.Duration(delayDuration) * time.Second)
|
||||
// service.SolvePayFail(oldBankOrderId, orderInfo.BankTransId, hiddenCfg.ExtraReturnInfo)
|
||||
//})
|
||||
oldBankOrderId := orderInfo.BankOrderId
|
||||
delayPool.Go(func() {
|
||||
ctx2, span := otelTrace.NewSchedulerTrace().Start(ctx, "Span", trace.WithNewRoot())
|
||||
defer span.End()
|
||||
service.SolvePayFail(ctx2, oldBankOrderId, orderInfo.BankTransId, hiddenCfg.ExtraReturnInfo)
|
||||
})
|
||||
orderInfo.BankOrderId = newBankOrderId
|
||||
}
|
||||
//2.新的错误记录
|
||||
|
||||
@@ -122,6 +122,7 @@ func CreateHiddenBlankOrder(ctx context.Context, orderInfo *order.OrderInfo, dur
|
||||
// 创建一个新的失败订单
|
||||
newOrderInfo.ExValue = "{}"
|
||||
newOrderInfo.Id = 0
|
||||
newOrderInfo.IsReplace = -1
|
||||
order.InsertOrder(ctx, newOrderInfo)
|
||||
// 去掉现有订单的关联数据
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user