This commit is contained in:
parent
f4872bfe74
commit
4de408c547
|
|
@ -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() {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue