结算活动不要求门店关注商品
不自动过滤没有关注的商品,会报错
This commit is contained in:
@@ -120,49 +120,54 @@ func ActStoreSkuParam2Model(ctx *jxcontext.Context, db *dao.DaoDB, act *model.Ac
|
|||||||
storeDetail, err2 := dao.GetStoreDetail(db, storeID, vendorID)
|
storeDetail, err2 := dao.GetStoreDetail(db, storeID, vendorID)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
for _, v := range oneStoreSkuParam {
|
for _, v := range oneStoreSkuParam {
|
||||||
if storeSkuInfo := storeSkuMap[jxutils.Combine2Int(v.StoreID, v.SkuID)]; storeSkuInfo != nil {
|
validVendorMap[vendorID] = 1
|
||||||
validVendorMap[vendorID] = 1
|
validSkuMap[v.SkuID] = 1
|
||||||
validSkuMap[v.SkuID] = 1
|
v.ActID = act.ID
|
||||||
pricePercentage := jxutils.GetPricePercentage(storeDetail.PricePercentagePackObj, storeSkuInfo.Price, int(storeDetail.PricePercentage))
|
actSkuMap := &model.ActStoreSkuMap{
|
||||||
actSkuMap := &model.ActStoreSkuMap{
|
ActID: act.ID,
|
||||||
ActID: act.ID,
|
StoreID: storeID,
|
||||||
StoreID: storeID,
|
SkuID: v.SkuID,
|
||||||
SkuID: v.SkuID,
|
VendorID: vendorID,
|
||||||
VendorID: vendorID,
|
|
||||||
|
|
||||||
SyncStatus: model.SyncFlagNewMask,
|
SyncStatus: model.SyncFlagNewMask,
|
||||||
VendorPrice: int64(jxutils.CaculateSkuVendorPrice(storeSkuInfo.Price, pricePercentage)),
|
}
|
||||||
}
|
v.OriginalPrice = actSkuMap.VendorPrice
|
||||||
v.OriginalPrice = actSkuMap.VendorPrice
|
if storeSkuInfo := storeSkuMap[jxutils.Combine2Int(v.StoreID, v.SkuID)]; storeSkuInfo != nil {
|
||||||
if act.Type == model.ActSkuFake {
|
jxPrice := storeSkuInfo.Price
|
||||||
actSkuMap.ActualActPrice = 0
|
pricePercentage := jxutils.GetPricePercentage(storeDetail.PricePercentagePackObj, jxPrice, int(storeDetail.PricePercentage))
|
||||||
} else {
|
actSkuMap.VendorPrice = int64(jxutils.CaculateSkuVendorPrice(jxPrice, pricePercentage))
|
||||||
if v.ActPrice != 0 {
|
v.OriginalPrice = int64(jxPrice)
|
||||||
actSkuMap.ActualActPrice = v.ActPrice
|
} else if act.Type != model.ActSkuFake {
|
||||||
} else {
|
v.ErrMsg = fmt.Sprintf("门店:%d没有关注商品:%d", v.StoreID, v.SkuID)
|
||||||
percentage := act.PricePercentage
|
wrongSkuList = append(wrongSkuList, v)
|
||||||
if v.PricePercentage != 0 {
|
continue
|
||||||
percentage = v.PricePercentage
|
}
|
||||||
}
|
if act.Type == model.ActSkuFake {
|
||||||
actSkuMap.ActualActPrice = int64(jxutils.CaculateSkuVendorPrice(int(actSkuMap.VendorPrice), percentage))
|
actSkuMap.ActualActPrice = 0
|
||||||
if actSkuMap.ActualActPrice > 10 {
|
|
||||||
actSkuMap.ActualActPrice = int64(math.Round(float64(actSkuMap.ActualActPrice)/10) * 10)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if actSkuMap.ActualActPrice <= 0 {
|
|
||||||
actSkuMap.ActualActPrice = 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if err2 := checkDiscountValidation(act.Type, int(actSkuMap.ActualActPrice*100/actSkuMap.VendorPrice)); err2 != nil {
|
|
||||||
v.ErrMsg = err2.Error()
|
|
||||||
v.ActualActPrice = actSkuMap.ActualActPrice
|
|
||||||
wrongSkuList = append(wrongSkuList, v)
|
|
||||||
} else {
|
|
||||||
dao.WrapAddIDCULDEntity(actSkuMap, ctx.GetUserName())
|
|
||||||
actStoreSkuMapList = append(actStoreSkuMapList, actSkuMap)
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Debugf("ActStoreSkuParam2Model storeID:%d, skuID:%d没有关注", v.StoreID, v.SkuID)
|
if v.ActPrice != 0 {
|
||||||
|
actSkuMap.ActualActPrice = v.ActPrice
|
||||||
|
} else {
|
||||||
|
percentage := act.PricePercentage
|
||||||
|
if v.PricePercentage != 0 {
|
||||||
|
percentage = v.PricePercentage
|
||||||
|
}
|
||||||
|
actSkuMap.ActualActPrice = int64(jxutils.CaculateSkuVendorPrice(int(actSkuMap.VendorPrice), percentage))
|
||||||
|
if actSkuMap.ActualActPrice > 10 {
|
||||||
|
actSkuMap.ActualActPrice = int64(math.Round(float64(actSkuMap.ActualActPrice)/10) * 10)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if actSkuMap.ActualActPrice <= 0 {
|
||||||
|
actSkuMap.ActualActPrice = 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if err2 := checkDiscountValidation(act.Type, int(actSkuMap.ActualActPrice*100/actSkuMap.VendorPrice)); err2 != nil {
|
||||||
|
v.ErrMsg = err2.Error()
|
||||||
|
v.ActualActPrice = actSkuMap.ActualActPrice
|
||||||
|
wrongSkuList = append(wrongSkuList, v)
|
||||||
|
} else {
|
||||||
|
dao.WrapAddIDCULDEntity(actSkuMap, ctx.GetUserName())
|
||||||
|
actStoreSkuMapList = append(actStoreSkuMapList, actSkuMap)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
wholeValidVendorMap[vendorID] = 1
|
wholeValidVendorMap[vendorID] = 1
|
||||||
@@ -175,13 +180,9 @@ func ActStoreSkuParam2Model(ctx *jxcontext.Context, db *dao.DaoDB, act *model.Ac
|
|||||||
if len(wrongSkuList) == 0 {
|
if len(wrongSkuList) == 0 {
|
||||||
for _, v := range oneStoreSkuParam {
|
for _, v := range oneStoreSkuParam {
|
||||||
if validSkuMap[v.SkuID] == 1 { // todo 这里是否需要判断
|
if validSkuMap[v.SkuID] == 1 { // todo 这里是否需要判断
|
||||||
if storeSkuInfo := storeSkuMap[jxutils.Combine2Int(v.StoreID, v.SkuID)]; storeSkuInfo != nil {
|
storeSku := &v.ActStoreSku
|
||||||
storeSku := &v.ActStoreSku
|
dao.WrapAddIDCULDEntity(storeSku, ctx.GetUserName())
|
||||||
storeSku.ActID = act.ID
|
actStoreSkuList = append(actStoreSkuList, storeSku)
|
||||||
storeSku.OriginalPrice = int64(storeSkuInfo.Price)
|
|
||||||
dao.WrapAddIDCULDEntity(storeSku, ctx.GetUserName())
|
|
||||||
actStoreSkuList = append(actStoreSkuList, storeSku)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user