商品可售时间设置校验

This commit is contained in:
苏尹岚
2019-11-18 09:37:52 +08:00
parent 839a344433
commit b31adda4d5
5 changed files with 44 additions and 17 deletions

View File

@@ -122,8 +122,8 @@ type StoreSkuBindInfo struct {
IsFocus int `json:"isFocus"` // -1不关注0忽略1关注
IsSale int `json:"isSale"` // -1不可售0忽略1可售
SubStoreID int `json:"subStoreID,omitempty"`
StatusSaleBegin int16 `json:"statusSaleBegin"` //商品可售时间范围
StatusSaleEnd int16 `json:"statusSaleEnd"`
StatusSaleBegin int16 `json:"statusSaleBegin" validate:"max=2359,min=1,ltfield=StatusSaleEnd"` //商品可售时间范围
StatusSaleEnd int16 `json:"statusSaleEnd" validate:"max=2359,min=1"`
Skus []*StoreSkuBindSkuInfo `json:"skus,omitempty"`
}
@@ -1079,15 +1079,10 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
updateFieldMap["JxPrice"] = 1
}
if skuBindInfo.StatusSaleBegin != 0 && skuBindInfo.StatusSaleEnd != 0 {
if skuBindInfo.StatusSaleBegin < 0 || skuBindInfo.StatusSaleBegin > 2359 ||
skuBindInfo.StatusSaleEnd < 0 || skuBindInfo.StatusSaleEnd > 2359 {
if err := ValidateStruct(skuBindInfo); err != nil {
dao.Rollback(db)
return nil, fmt.Errorf("更改商品:%s, 可售时间不合法!时间范围:[%v] 至 [%v]", allBinds[0].Name, skuBindInfo.StatusSaleBegin, skuBindInfo.StatusSaleEnd)
}
if skuBindInfo.StatusSaleBegin >= skuBindInfo.StatusSaleEnd {
dao.Rollback(db)
return nil, fmt.Errorf("更改商品:%s, 可售时间不允许交叉!时间范围:[%v] 至 [%v]", allBinds[0].Name, skuBindInfo.StatusSaleBegin, skuBindInfo.StatusSaleEnd)
}
updateFieldMap["StatusSaleBegin"] = int(skuBindInfo.StatusSaleBegin)
updateFieldMap["StatusSaleEnd"] = int(skuBindInfo.StatusSaleEnd)
skuBind.StatusSaleBegin = skuBindInfo.StatusSaleBegin