- 取消活动时逻辑调整

This commit is contained in:
gazebo
2019-06-20 09:41:00 +08:00
parent 7a4eb0cce3
commit faca22c993

View File

@@ -653,19 +653,24 @@ func CancelJdPromotion(ctx *jxcontext.Context, promotionID int) (err error) {
if err = dao.GetEntity(db, promotion); err != nil { if err = dao.GetEntity(db, promotion); err != nil {
return err return err
} }
if promotion.Status != model.PromotionStatusRemoteCreated { if promotion.Status != model.PromotionStatusCanceled {
return errors.New("当前状态不能进行取消操作") return errors.New("当前状态已经是取消")
} }
if promotion.Status == model.PromotionStatusRemoteCreated {
if promotion.VendorPromotionID != "" {
promotionHandler := getPromotionHander(promotion.Type) promotionHandler := getPromotionHander(promotion.Type)
if promotionHandler == nil { if promotionHandler == nil {
return errors.New("非法的活动类型") return errors.New("非法的活动类型")
} }
if err = promotionHandler.CancelPromotion(utils.Str2Int64(promotion.VendorPromotionID), ""); err == nil { if err = promotionHandler.CancelPromotion(utils.Str2Int64(promotion.VendorPromotionID), ""); err != nil {
return err
}
}
}
if _, err = dao.UpdateEntityLogically(db, promotion, map[string]interface{}{ if _, err = dao.UpdateEntityLogically(db, promotion, map[string]interface{}{
"Status": model.PromotionStatusCanceled, "Status": model.PromotionStatusCanceled,
}, ctx.GetUserName(), nil); err == nil { }, ctx.GetUserName(), nil); err == nil {
RefreshJdPromotionLockStatus(ctx, promotionID) // RefreshJdPromotionLockStatus(ctx, promotionID)
}
} }
return err return err
} }