1
This commit is contained in:
@@ -216,11 +216,12 @@ func skuInfo2Param(ctx *jxcontext.Context, sku *dao.StoreSkuSyncInfo) (param *jd
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) CreateSku2(ctx *jxcontext.Context, sku *dao.StoreSkuSyncInfo) (err error) {
|
||||
jdApi := getAPI(sku.VendorOrgCode)
|
||||
param := skuInfo2Param(ctx, sku)
|
||||
if globals.EnableJdStoreWrite {
|
||||
sku.VendorSkuID, err = getAPI(sku.VendorOrgCode).AddSku2(param)
|
||||
sku.VendorSkuID, err = jdApi.AddSku2(param)
|
||||
if err != nil && strings.Contains(err.Error(), jdapi.ErrMustUPC) {
|
||||
result, err2 := getAPI(sku.VendorOrgCode).BatchAddSkuByUPC([]*jdapi.CreateByUpcParam2{
|
||||
result, err2 := jdApi.BatchAddSkuByUPC([]*jdapi.CreateByUpcParam2{
|
||||
&jdapi.CreateByUpcParam2{
|
||||
OutSkuId: utils.Int2Str(sku.SkuID),
|
||||
Upc: sku.Upc,
|
||||
@@ -233,7 +234,29 @@ func (p *PurchaseHandler) CreateSku2(ctx *jxcontext.Context, sku *dao.StoreSkuSy
|
||||
} else {
|
||||
err = err2
|
||||
}
|
||||
} else if err != nil && strings.Contains(err.Error(), "类目ID不存在") {
|
||||
recommendCategory, _ := jdApi.GetSkuCategoryBySkuName(param.SkuName)
|
||||
if recommendCategory != nil && recommendCategory.CategoryId != model.NO {
|
||||
param.CategoryID = int64(recommendCategory.CategoryId)
|
||||
sku.VendorSkuID, _ = jdApi.AddSku2(param)
|
||||
if sku.VendorSkuID != "" {
|
||||
skuVendorCategory := &model.SkuVendorCategoryMap{
|
||||
NameID: sku.NameID,
|
||||
VendorID: model.VendorIDJD,
|
||||
}
|
||||
skuVendorCategory.VendorCategoryID = utils.Int2Str(recommendCategory.CategoryId)
|
||||
if err = dao.GetEntity(dao.GetDB(), skuVendorCategory, "NameID", "VendorID"); err != nil {
|
||||
dao.WrapAddIDCULDEntity(skuVendorCategory, ctx.GetUserName())
|
||||
dao.CreateEntity(dao.GetDB(), skuVendorCategory)
|
||||
} else {
|
||||
dao.UpdateEntity(dao.GetDB(), skuVendorCategory, "VendorCategoryID")
|
||||
}
|
||||
}
|
||||
//dao.ExecuteSQL(dao.GetDB(), ` UPDATE sku_category SET jd_category_id = ? WHERE id = ? `, []interface{}{recommendCategory.CategoryId, sku.LocalCategoryId}...)
|
||||
//dao.ExecuteSQL(dao.GetDB(), ` UPDATE sku_name SET jd_category_id = ? WHERE id = ? `, []interface{}{recommendCategory.CategoryId, sku.NameID})
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
sku.VendorSkuID = utils.Int64ToStr(jxutils.GenFakeID())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user