From 02d0fcc253086b6e8b9f580cf337965869a90fb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Wed, 13 May 2020 16:57:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=95=86=E5=9F=8E=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jdshop/store_sku.go | 30 ++++++++++++------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/business/partner/purchase/jdshop/store_sku.go b/business/partner/purchase/jdshop/store_sku.go index 1c06de74e..059370963 100644 --- a/business/partner/purchase/jdshop/store_sku.go +++ b/business/partner/purchase/jdshop/store_sku.go @@ -1,6 +1,7 @@ package jdshop import ( + "fmt" "regexp" "time" @@ -37,20 +38,27 @@ func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, v failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDJDShop], "εˆ›ε»Ίε•†ε“") return failedList, err } - v.JdsWareID = createSkuResult.WareID - for _, vv2 := range v.StoreSkuSyncInfoJds { - for _, vv := range createSkuParamSkus { - for _, vvv := range vv.SaleAttrs { - for _, vv1 := range createSkuResult.Skus { - for _, vvv1 := range vv1.SaleAttrs { - if vvv1.AttrValues[0] == vvv.AttrValues[0] { - vv2.VendorSkuID = utils.Int64ToStr(vv1.SkuID) - } - } - } + var paramAttrs = make(map[string]*jdshopapi.CreateSkuParamSkus) + var resultAttrs = make(map[string]int64) + for _, vv := range createSkuParamSkus { + for _, vvv := range vv.SaleAttrs { + paramAttrs[vvv.AttrValues[0]] = vv + } + } + for _, vv1 := range createSkuResult.Skus { + for _, vvv1 := range vv1.SaleAttrs { + if paramAttrs[vvv1.AttrValues[0]] != nil { + resultAttrs[paramAttrs[vvv1.AttrValues[0]].OuterID] = vv1.SkuID } } } + fmt.Println("test11111111111111111111111111", utils.Format4Output(resultAttrs, false)) + for _, vv2 := range v.StoreSkuSyncInfoJds { + vv2.JdsWareID = createSkuResult.WareID + if resultAttrs[utils.Int2Str(vv2.SkuID)] != 0 { + vv2.VendorSkuID = utils.Int64ToStr(resultAttrs[utils.Int2Str(vv2.SkuID)]) + } + } } } return failedList, err