From d95fb6c23900a847d1d7843780eafa23b96a9989 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 23 Feb 2024 16:56:40 +0800 Subject: [PATCH] 1 --- business/jxstore/act/act.go | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index 722848180..9923bc98e 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -794,12 +794,7 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i ActPrice: jxutils.IntPrice2Standard(int64(v.JdsPrice)), }) } - sort.Slice(actData, func(i, j int) bool { - return actData[i].ActPrice < actData[j].ActPrice - }) - //for i := 1; i <= len(actData); i++ { - // actData[i-1].Sequence = i - //} + actIdResult := make(map[string]int64, 0) actResult, faileInfoList, _ := api.MtwmAPI.RetailDiscountBatchSave2(storeDetail.VendorStoreID, mtwmapi.RetailActTypeDirectDown, actData) for _, v := range actResult { var ( @@ -813,6 +808,25 @@ func CreateActForMtByOrder(ctx *jxcontext.Context, act *model.Act, vendorIDs []i actStoreSkuMapUpdate.VendorActID = utils.Int64ToStr(v.ActID) dao.UpdateEntity(db, actStoreSkuMapUpdate, "VendorActID") } + actIdResult[v.AppFoodCode] = v.ActID + } + // RetailDiscountBatchSave2 创建时无法使用排序,只能更时排序生效所以这样写 + // RetailDiscountBatchSave2 创建时无法使用排序,只能更时排序生效所以这样写,美团恢复可以删除 + actData2 := make([]*mtwmapi.RetailDiscountActData, 0, 0) + if len(actIdResult) != model.NO { + for _, v := range actData { + if actIdResult[v.AppFoodCode] != model.NO { + v.ItemID = actIdResult[v.AppFoodCode] + } + actData2 = append(actData2, v) + } + sort.Slice(actData2, func(i, j int) bool { + return actData2[i].ActPrice < actData2[j].ActPrice + }) + for i := 1; i <= len(actData2); i++ { + actData2[i-1].Sequence = i + } + api.MtwmAPI.RetailDiscountBatchSave2(storeDetail.VendorStoreID, mtwmapi.RetailActTypeDirectDown, actData2) } for _, v := range faileInfoList { err2 += fmt.Sprintf("创建失败!门店ID:[%v],商品ID:[%v],原因:[%v]", storeID, v.AppFoodCode, v.ErrorMsg)