From 216175c95be40965bae8fd46c072d761213a73ce Mon Sep 17 00:00:00 2001 From: gazebo Date: Fri, 26 Jul 2019 15:51:28 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E6=A3=80=E6=9F=A5=E6=B4=BB=E5=8A=A8?= =?UTF-8?q?=E4=BB=B7=E6=A0=BC=E5=90=88=E6=B3=95=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/act/act.go | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index f42483e62..a7d944cf7 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -146,7 +146,7 @@ func ActStoreSkuParam2Model(ctx *jxcontext.Context, db *dao.DaoDB, act *model.Ac actSkuMap.ActualActPrice = 1 } } - if actSkuMap.ActualActPrice >= actSkuMap.VendorPrice { + if err2 := checkDiscountValidation(act.Type, int(actSkuMap.ActualActPrice*100/actSkuMap.VendorPrice)); err2 != nil { wrongSkuList = append(wrongSkuList, v) } else { dao.WrapAddIDCULDEntity(actSkuMap, ctx.GetUserName()) @@ -265,6 +265,15 @@ func AddActStoreSkuBind(ctx *jxcontext.Context, db *dao.DaoDB, actID int, actSto return err } +func checkDiscountValidation(actType int, pricePercentage int) (err error) { + if actType == model.ActSkuDirectDown && (pricePercentage <= minDiscount4SkuDirectDown || pricePercentage >= 100) { + err = fmt.Errorf("%s活动折扣必须大于:%d, 且必须有折扣", model.ActTypeName[actType], minDiscount4SkuDirectDown) + } else if actType == model.ActSkuSecKill && pricePercentage >= maxDiscount4SkuSecKill { + err = fmt.Errorf("%s活动折扣必须小于:%d", model.ActTypeName[actType], maxDiscount4SkuSecKill) + } + return err +} + func checkActValidation(act *model.Act, vendorIDs []int) (err error) { var errList []error if utils.IsTimeZero(act.BeginAt) || utils.IsTimeZero(act.EndAt) { @@ -278,17 +287,10 @@ func checkActValidation(act *model.Act, vendorIDs []int) (err error) { if act.Type == model.ActSkuDirectDown || act.Type == model.ActSkuSecKill { if act.PricePercentage == 0 { errList = append(errList, fmt.Errorf("活动必须指定价格折扣")) - } - if act.Type == model.ActSkuDirectDown && (act.PricePercentage <= minDiscount4SkuDirectDown || act.PricePercentage >= 100) { - errList = append(errList, fmt.Errorf("%s活动折扣必须大于:%d, 且必须有折扣", model.ActTypeName[act.Type], minDiscount4SkuDirectDown)) - } - if act.Type == model.ActSkuSecKill { - if vendorIDMap[model.VendorIDMTWM] == 1 { - errList = append(errList, fmt.Errorf("平台%s暂不支持%s活动", model.VendorChineseNames[model.VendorIDMTWM], model.ActTypeName[act.Type])) - } - if act.PricePercentage >= maxDiscount4SkuSecKill { - errList = append(errList, fmt.Errorf("%s活动折扣必须小于:%d", model.ActTypeName[act.Type], maxDiscount4SkuSecKill)) - } + } else if err = checkDiscountValidation(act.Type, act.PricePercentage); err != nil { + errList = append(errList, err) + } else if act.Type == model.ActSkuSecKill && vendorIDMap[model.VendorIDMTWM] == 1 { + errList = append(errList, err) } } else if act.Type == model.ActSkuFake {