diff --git a/app/mix/dao/mongo_vas.go b/app/mix/dao/mongo_vas.go index ba14c2df..9bb97d38 100644 --- a/app/mix/dao/mongo_vas.go +++ b/app/mix/dao/mongo_vas.go @@ -447,6 +447,7 @@ func (m *Mongo) GetRefundAudit(ctx *gin.Context) ([]*dbstruct.RefundInfo, error) "$gte": at - 5*60, // >= "$lte": at, // <= }, + "refunds_status": dbstruct.RefundsApproved, } err := col.Find(ctx, query).All(&list) if errors.Is(err, qmgo.ErrNoSuchDocuments) { diff --git a/app/mix/service/logic/vas_zone.go b/app/mix/service/logic/vas_zone.go index 518f56cd..8acd156a 100644 --- a/app/mix/service/logic/vas_zone.go +++ b/app/mix/service/logic/vas_zone.go @@ -1328,7 +1328,7 @@ func (v *Vas) ZoneRefundAudit(ctx *gin.Context, req *vasproto.ZoneRefundAuditReq info, err := v.store.GetZoneRefundInfo(ctx, req.AuditId) if err != nil { - logger.Error("ZoneRefundAudit GetZoneRefundInfo fail, mid: %v, audit_id: %v, err: %v", req.Mid, req.AuditId, err) + logger.Warn("ZoneRefundAudit GetZoneRefundInfo fail, mid: %v, audit_id: %v, err: %v", req.Mid, req.AuditId, err) return err } @@ -1338,12 +1338,17 @@ func (v *Vas) ZoneRefundAudit(ctx *gin.Context, req *vasproto.ZoneRefundAuditReq } if info.StreamerMid != req.Mid { - logger.Error("ZoneRefundAudit, Not personally audited the order, mid: %v, zid: %v, auditId: %v", req.Mid, req.Zid, req.AuditId) + logger.Warn("ZoneRefundAudit, Not personally audited the order, mid: %v, zid: %v, auditId: %v", req.Mid, req.Zid, req.AuditId) return fmt.Errorf("非本人审核订单") } + if time.Now().Unix()-info.Ct > 24*3600 { + logger.Warn("ZoneRefundAudit, Order review timeout, automatic refund, mid: %v, zid: %v, auditId: %v", req.Mid, req.Zid, req.AuditId) + return fmt.Errorf("审核订单超时,已自动退款") + } + if info.RefundsStatus == dbstruct.RefundsApproved || info.RefundsStatus == dbstruct.RefundsRejected || info.RefundsStatus == dbstruct.RefundsOvertime { - logger.Error("ZoneRefundAudit, refund has been approved, mid: %v, zid: %v, auditId: %v", req.Mid, req.Zid, req.AuditId) + logger.Warn("ZoneRefundAudit, refund has been approved, mid: %v, zid: %v, auditId: %v", req.Mid, req.Zid, req.AuditId) return fmt.Errorf("退款订单已审核") }