From 469b3a807ed6077c36d31b3412c8f9743dff9c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 28 Jul 2020 15:49:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E7=B1=BB=E7=9B=AE=E6=98=A0?= =?UTF-8?q?=E5=B0=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/sku.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index cc5f0f731..14563243f 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -949,8 +949,8 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf valid := dao.StrictMakeMapByStructObject(payload, skuName, userName) valid = utils.RemoveGeneralMapKeys(valid, model.FieldSpecQuality, model.FieldSpecUnit) _, hasPlaces := payload["places"] - updateOrCreateSkuVendorCategoryMap(db, ctx, nameID, payload, nil, false) - if len(valid) > 0 || hasPlaces { + flag := updateOrCreateSkuVendorCategoryMap(db, ctx, nameID, payload, nil, false) + if len(valid) > 0 || hasPlaces || flag { if valid["Upc"] != nil { if upc, _ := valid["Upc"].(string); upc == "" { valid["Upc"] = nil @@ -1072,7 +1072,7 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf return num, err } -func updateOrCreateSkuVendorCategoryMap(db *dao.DaoDB, ctx *jxcontext.Context, nameID int, payload map[string]interface{}, skuNameExt *model.SkuNameExt, isDelete bool) { +func updateOrCreateSkuVendorCategoryMap(db *dao.DaoDB, ctx *jxcontext.Context, nameID int, payload map[string]interface{}, skuNameExt *model.SkuNameExt, isDelete bool) (flag bool) { if isDelete { skuVendorCatMaps, _ := dao.GetSkuVendorCategoryMaps(db, []int{nameID}, nil, nil) for _, v := range skuVendorCatMaps { @@ -1080,6 +1080,7 @@ func updateOrCreateSkuVendorCategoryMap(db *dao.DaoDB, ctx *jxcontext.Context, n v.LastOperator = ctx.GetUserName() dao.UpdateEntity(db, v, "DeletedAt", "LastOperator") } + flag = true } else { updateOrCreate := func(vendorID, nameID int, vendorCatID string) { skuVendorCatMaps, _ := dao.GetSkuVendorCategoryMaps(db, []int{nameID}, []int{vendorID}, nil) @@ -1099,31 +1100,40 @@ func updateOrCreateSkuVendorCategoryMap(db *dao.DaoDB, ctx *jxcontext.Context, n if skuNameExt != nil { if skuNameExt.JdCategoryID != "" { updateOrCreate(model.VendorIDJD, nameID, skuNameExt.JdCategoryID) + flag = true } if skuNameExt.JdsCategoryID != "" { updateOrCreate(model.VendorIDJDShop, nameID, skuNameExt.JdsCategoryID) + flag = true } if skuNameExt.EbaiCategoryID != "" { updateOrCreate(model.VendorIDEBAI, nameID, skuNameExt.EbaiCategoryID) + flag = true } if skuNameExt.MtwmCategoryID != "" { updateOrCreate(model.VendorIDMTWM, nameID, skuNameExt.MtwmCategoryID) + flag = true } } else { if payload["jdCategoryID"] != nil { updateOrCreate(model.VendorIDJD, nameID, payload["jdCategoryID"].(string)) + flag = true } if payload["jdsCategoryID"] != nil { updateOrCreate(model.VendorIDJDShop, nameID, payload["jdsCategoryID"].(string)) + flag = true } if payload["ebaiCategoryID"] != nil { updateOrCreate(model.VendorIDEBAI, nameID, payload["ebaiCategoryID"].(string)) + flag = true } if payload["mtwmCategoryID"] != nil { updateOrCreate(model.VendorIDMTWM, nameID, payload["mtwmCategoryID"].(string)) + flag = true } } } + return flag } func SetStoreSkuSyncStatus2(db *dao.DaoDB, storeIDs []int, vendorIDs, skuIDs []int, syncStatus int) (num int64, err error) {