diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index 033e99b96..1ffb8dd9c 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -666,10 +666,17 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i //参数有可能传多个店多个商品,先分好组:map = [门店ID1][]{商品ID1,商品ID2},[门店ID2][]{商品ID1,商品ID3,商品ID4} for _, v := range actStoreSku { if resultList, _ := dao.GetStoresSkusInfo(db, []int{v.StoreID}, []int{v.SkuID}); len(resultList) > 0 { + var actPrice int64 + if v.ActPrice != 0 { + actPrice = v.ActPrice + } else { + actPrice = int64(math.Floor(float64(resultList[0].MtwmPrice*act.PricePercentage/100)/10) * 10) + } actStoreSkuMap[v.StoreID] = append(actStoreSkuMap[v.StoreID], &model.StoreSkuBind{ SkuID: v.SkuID, MtwmPrice: resultList[0].MtwmPrice, Price: resultList[0].Price, + JdsPrice: int(actPrice), //暂时把这个jdsprice当成实际活动价 }) } } @@ -677,7 +684,7 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i for _, storeSkus := range actStoreSkuMap { for i := 0; i < len(storeSkus)-1; i++ { for j := 0; j < len(storeSkus)-i-1; j++ { - if storeSkus[j].MtwmPrice < storeSkus[j+1].MtwmPrice { + if storeSkus[j].JdsPrice < storeSkus[j+1].JdsPrice { temp := storeSkus[j] storeSkus[j] = storeSkus[j+1] storeSkus[j+1] = temp @@ -717,6 +724,7 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i StoreID: storeID, SkuID: storeSku.SkuID, Stock: 200, + ActPrice: int64(storeSku.JdsPrice), } dao.WrapAddIDCULDEntity(actStoreSkuModel, ctx.GetUserName()) err = dao.CreateEntityTx(txDB, actStoreSkuModel) @@ -731,7 +739,7 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i SkuID: storeSku.SkuID, VendorID: vendorID, VendorPrice: int64(storeSku.MtwmPrice), - ActualActPrice: int64(storeSku.MtwmPrice * act.PricePercentage / 100), + ActualActPrice: int64(storeSku.JdsPrice), } dao.WrapAddIDCULDEntity(actStoreSkuMapModel, ctx.GetUserName()) err = dao.CreateEntityTx(txDB, actStoreSkuMapModel) @@ -758,7 +766,7 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i DayLimit: -1, SettingType: mtwmapi.SettingTypeAsPrice, //DiscountCoefficient: float64(act.PricePercentage) / float64(10), - ActPrice: jxutils.IntPrice2Standard(int64(math.Floor(float64(v.MtwmPrice*act.PricePercentage/100)/10) * 10)), + ActPrice: jxutils.IntPrice2Standard(int64(v.JdsPrice)), }) } actResult, faileInfoList, _ := api.MtwmAPI.RetailDiscountBatchSave2(storeDetail.VendorStoreID, mtwmapi.RetailActTypeDirectDown, actData)