diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index 790f7b91a..665ababea 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -412,34 +412,38 @@ func vendorActInfo2Model(ctx *jxcontext.Context, db *dao.DaoDB, act2 *model.Act2 for _, v := range storeSkuList { storeSkuMap[v.VendorStoreID+"/"+v.VendorSkuID] = v } - + storeSkuMap2 := make(map[int64]int) for _, v := range actStoreSku { if storeSkuInfo := storeSkuMap[v.VendorStoreID+"/"+v.VendorSkuID]; storeSkuInfo != nil { - actSku := &model.ActStoreSku{ - ActID: act2.ID, - StoreID: storeSkuInfo.StoreID, - SkuID: storeSkuInfo.SkuID, + index := jxutils.Combine2Int(storeSkuInfo.StoreID, storeSkuInfo.SkuID) + if storeSkuMap2[index] == 0 { + storeSkuMap2[index] = 1 + actSku := &model.ActStoreSku{ + ActID: act2.ID, + StoreID: storeSkuInfo.StoreID, + SkuID: storeSkuInfo.SkuID, - Stock: v.Stock, - ActPrice: v.ActualActPrice, - OriginalPrice: int64(storeSkuInfo.Price), + Stock: v.Stock, + ActPrice: v.ActualActPrice, + OriginalPrice: int64(storeSkuInfo.Price), + } + dao.WrapAddIDCULDEntity(actSku, ctx.GetUserName()) + actStoreSkuList = append(actStoreSkuList, actSku) + + actSkuMap := &model.ActStoreSkuMap{ + ActID: act2.ID, + VendorActID: act2.VendorActID, + StoreID: storeSkuInfo.StoreID, + SkuID: storeSkuInfo.SkuID, + VendorID: vendorID, + + SyncStatus: 0, + VendorPrice: 0, + ActualActPrice: v.ActualActPrice, + } + dao.WrapAddIDCULDEntity(actSkuMap, ctx.GetUserName()) + actStoreSkuMapList = append(actStoreSkuMapList, actSkuMap) } - dao.WrapAddIDCULDEntity(actSku, ctx.GetUserName()) - actStoreSkuList = append(actStoreSkuList, actSku) - - actSkuMap := &model.ActStoreSkuMap{ - ActID: act2.ID, - VendorActID: act2.VendorActID, - StoreID: storeSkuInfo.StoreID, - SkuID: storeSkuInfo.SkuID, - VendorID: vendorID, - - SyncStatus: 0, - VendorPrice: 0, - ActualActPrice: v.ActualActPrice, - } - dao.WrapAddIDCULDEntity(actSkuMap, ctx.GetUserName()) - actStoreSkuMapList = append(actStoreSkuMapList, actSkuMap) } } return actStoreSkuList, actStoreSkuMapList, err