This commit is contained in:
ziming 2025-05-21 11:05:16 +08:00
parent f4872bfe74
commit 4de408c547
1 changed files with 34 additions and 24 deletions

View File

@ -34,30 +34,8 @@ func (v *VoucherBiz) WechatNotifyConsumer(ctx context.Context, tag string, req *
return err return err
} }
if req.PlainText.ConsumeInformation.ConsumeTime != "" { if err = v.useLog(ctx, order, req); err != nil {
return err
useTime, err2 := time.Parse(time.RFC3339, req.PlainText.ConsumeInformation.ConsumeTime)
if err2 != nil {
return err2
}
useLog, err2 := v.UseLogRepo.GetByUseTimeOrder(ctx, order.OrderNo, &useTime)
if err2 != nil && !errors.Is(err2, gorm.ErrRecordNotFound) {
return err2
}
if useLog == nil {
_, err = v.UseLogRepo.Create(ctx, &bo.UseLogBo{
OrderNo: order.OrderNo,
Amount: req.PlainText.ConsumeInformation.ConsumeAmount,
Type: vo.UseLogTypeUsed,
OperateTime: &useTime,
})
if err != nil {
return err
}
}
} }
return v.wxToBBUse(ctx, order, req) return v.wxToBBUse(ctx, order, req)
@ -72,6 +50,38 @@ func (v *VoucherBiz) WechatNotifyConsumer(ctx context.Context, tag string, req *
}) })
} }
func (v *VoucherBiz) useLog(ctx context.Context, order *bo.OrderBo, req *bo.WechatVoucherNotifyBo) error {
if req.PlainText.ConsumeInformation.ConsumeTime == "" {
return nil
}
useTime, err2 := time.Parse(time.RFC3339, req.PlainText.ConsumeInformation.ConsumeTime)
if err2 != nil {
return err2
}
useLog, err2 := v.UseLogRepo.GetByUseTimeOrder(ctx, order.OrderNo, &useTime)
if err2 != nil && !errors.Is(err2, gorm.ErrRecordNotFound) {
return err2
}
if useLog == nil {
_, err := v.UseLogRepo.Create(ctx, &bo.UseLogBo{
OrderNo: order.OrderNo,
Amount: req.PlainText.ConsumeInformation.ConsumeAmount,
Type: vo.UseLogTypeUsed,
OperateTime: &useTime,
})
if err != nil {
return err
}
}
return nil
}
func (v *VoucherBiz) used(ctx context.Context, order *bo.OrderBo) error { func (v *VoucherBiz) used(ctx context.Context, order *bo.OrderBo) error {
if order.Status.IsUse() { if order.Status.IsUse() {