- checkActValidation新增活动检查,开始时间必须小于结束时间

This commit is contained in:
gazebo
2019-07-29 11:25:23 +08:00
parent c00990b2e0
commit 40d96f3342

View File

@@ -2,10 +2,10 @@ package act
import (
"fmt"
"strings"
"time"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/baseapi/utils/errlist"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/partner"
"git.rosy.net.cn/jx-callback/globals"
@@ -279,9 +279,11 @@ func checkDiscountValidation(actType int, pricePercentage int) (err error) {
}
func checkActValidation(act *model.Act, vendorIDs []int) (err error) {
var errList []error
errList := errlist.New()
if utils.IsTimeZero(act.BeginAt) || utils.IsTimeZero(act.EndAt) {
errList = append(errList, fmt.Errorf("活动开始与结束时间必须指定"))
errList.AddErr(fmt.Errorf("活动开始与结束时间必须指定"))
} else if act.EndAt.Sub(act.BeginAt) < 0 {
errList.AddErr(fmt.Errorf("活动开始时间必须小于活动结束时间"))
}
vendorIDMap := make(map[int]int)
for _, vendorID := range vendorIDs {
@@ -290,25 +292,19 @@ 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("活动必须指定价格折扣"))
errList.AddErr(fmt.Errorf("必须指定缺省活动折扣"))
} else if err = checkDiscountValidation(act.Type, act.PricePercentage); err != nil {
errList = append(errList, err)
errList.AddErr(err)
} else if act.Type == model.ActSkuSecKill && vendorIDMap[model.VendorIDMTWM] == 1 {
errList = append(errList, err)
errList.AddErr(fmt.Errorf("%s平台不支持%s活动", model.VendorChineseNames[model.VendorIDMTWM], model.ActTypeName[model.ActSkuSecKill]))
}
} else if act.Type == model.ActSkuFake {
} else {
errList = append(errList, fmt.Errorf("当前只支持直降与秒杀活动"))
errList.AddErr(fmt.Errorf("当前只支持%s与%s活动", model.ActTypeName[model.ActSkuDirectDown], model.ActTypeName[model.ActSkuSecKill]))
}
if errList == nil {
return nil
}
strList := make([]string, len(errList))
for k, v := range errList {
strList[k] = v.Error()
}
return fmt.Errorf("%s", strings.Join(strList, ",\n"))
err = errList.GetErrListAsOne()
return err
}
func setActDefault(act *model.Act) {