diff --git a/internal/biz/cron_notice.go b/internal/biz/cron_notice.go index 1b76846..279e954 100644 --- a/internal/biz/cron_notice.go +++ b/internal/biz/cron_notice.go @@ -163,9 +163,9 @@ func (this *VoucherBiz) notice(ctx context.Context, order *bo.OrderBo, useNum, s return err } - //if order.Status == status { - // return nil // 券状态未改变,忽略不处理 - //} + if order.Status == status { + return nil // 券状态未改变,忽略不处理 + } order.Status = status diff --git a/internal/data/wechatrepoimpl/cpn.go b/internal/data/wechatrepoimpl/cpn.go index f40cbfa..5fd9078 100644 --- a/internal/data/wechatrepoimpl/cpn.go +++ b/internal/data/wechatrepoimpl/cpn.go @@ -122,6 +122,12 @@ func (c *CpnRepoImpl) Query(ctx context.Context, orderWechat *bo.OrderBo) (vo.Or return 0, err } + cpnStatus := CpnStatus(*resp.Status) + + if cpnStatus.IsRevoked() { + + } + return CpnStatus(*resp.Status).GetStatus() } diff --git a/internal/data/wechatrepoimpl/cpn_status.go b/internal/data/wechatrepoimpl/cpn_status.go index 16351ee..d9a72bf 100644 --- a/internal/data/wechatrepoimpl/cpn_status.go +++ b/internal/data/wechatrepoimpl/cpn_status.go @@ -13,12 +13,14 @@ const ( CpnStatusAvailable = "SENDED" CpnStatusUsed = "USED" CpnStatusExpired = "EXPIRED" + CpnStatusRevoked = "REVOKED" ) var CpnStatusTextMap = map[CpnStatus]string{ CpnStatusAvailable: "可用", CpnStatusUsed: "已实扣", CpnStatusExpired: "已过期", + CpnStatusRevoked: "已失效", } var CpnStatusMap = map[CpnStatus]vo.OrderStatus{ @@ -34,6 +36,10 @@ func (o CpnStatus) GetText() string { return "未知" } +func (o CpnStatus) IsRevoked() bool { + return o == CpnStatusRevoked +} + func (o CpnStatus) GetStatus() (vo.OrderStatus, error) { if resultStatus, ok := CpnStatusMap[o]; ok { return resultStatus, nil