This commit is contained in:
苏尹岚
2020-12-04 14:25:22 +08:00
parent dd5f3c38ac
commit ea6a871246
3 changed files with 234 additions and 236 deletions

View File

@@ -357,38 +357,6 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item
return item
}
func bindSkuAllStore(v *dao.StoreSkuSyncInfo) (err error) {
var (
db = dao.GetDB()
)
storeMaps, _ := dao.GetStoresMapList(db, []int{model.VendorIDJDShop}, nil, nil, model.StoreStatusAll, model.StoreIsSyncAll, "", "", "2")
task := tasksch.NewParallelTask("京东商城门店建商品", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(true), jxcontext.AdminCtx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
storeMap := batchItemList[0].(*model.StoreMap)
if err = api.JdShop2API.StoreSkuBindStore(false, []string{v.VendorSkuID}, []string{storeMap.VendorStoreID}); err == nil {
storeSkus2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{v.SkuID})
if len(storeSkus2) > 0 {
status := storeSkus2[0].Status
stock := storeSkus2[0].Stock
price := storeSkus2[0].Price
if status == model.StoreSkuBindStatusNormal {
api.JdShop2API.StoreWareDoUpdate(status, utils.Str2Int64(v.VendorSkuID), storeMap.VendorStoreID)
}
if stock != 0 {
api.JdShop2API.StoreUpdateStock(stock, utils.Str2Int64(v.VendorSkuID), storeMap.VendorStoreID)
}
api.JdShop2API.StoreUpdatePrice(utils.Float64ToStr(jxutils.IntPrice2Standard(int64(price))), utils.Str2Int64(v.VendorSkuID), storeMap.VendorStoreID)
} else {
return retVal, err
}
}
return retVal, err
}, storeMaps)
tasksch.HandleTask(task, nil, true).Run()
_, err = task.GetResult(0)
return err
}
func updateStoreSku(db *dao.DaoDB, vendorID int, storeSkuList []*dao.StoreSkuSyncInfo, syncStatus int8) (num int64, err error) {
if len(storeSkuList) > 0 {
// defer func() {
@@ -404,9 +372,6 @@ func updateStoreSku(db *dao.DaoDB, vendorID int, storeSkuList []*dao.StoreSkuSyn
for k, vv := range v.StoreSkuSyncInfoJds {
updateItemList[k] = sku2Update(vendorID, vv, syncStatus)
err = updateJdsWareID(db, vv)
if v.VendorOrgCode == "2" {
err = bindSkuAllStore(vv)
}
}
num, err = dao.BatchUpdateEntityByKV(db, updateItemList)
}
@@ -501,9 +466,9 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
var failedList []*partner.StoreSkuInfoWithErr
for _, sku := range skus {
if vendorID == model.VendorIDJDShop && storeID != model.JdShopMainStoreID && storeID != model.JdShopMainStoreID2 {
if model.IsSyncStatusNew(sku.SkuSyncStatus) {
sku.SkuSyncStatus = sku.SkuSyncStatus - model.SyncFlagNewMask
}
// if model.IsSyncStatusNew(sku.SkuSyncStatus) {
// sku.SkuSyncStatus = sku.SkuSyncStatus - model.SyncFlagNewMask
// }
storeDetail2, _ := dao.GetStoreDetail(db, storeID, vendorID, sku.VendorOrgCode)
vendorStoreID = storeDetail2.VendorStoreID
}

View File

@@ -1767,30 +1767,30 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
func(task2 *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
v := batchItemList[0].(*model.StoreSkuBind)
if v.JdsID != 0 && v.SubStoreID == 0 {
task := tasksch.NewParallelTask("京东商城门店建商品2", tasksch.NewParallelConfig().SetParallelCount(2).SetIsContinueWhenError(true), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
storeMap := batchItemList[0].(*model.StoreMap)
if err = api.JdShop2API.StoreSkuBindStore(false, []string{utils.Int64ToStr(v.JdsID)}, []string{storeMap.VendorStoreID}); err == nil {
storeSkus2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{v.SkuID})
if len(storeSkus2) > 0 {
status := storeSkus2[0].Status
stock := storeSkus2[0].Stock
price := storeSkus2[0].Price
if status == model.StoreSkuBindStatusNormal {
api.JdShop2API.StoreWareDoUpdate(status, v.JdsID, storeMap.VendorStoreID)
}
if stock != 0 {
api.JdShop2API.StoreUpdateStock(stock, v.JdsID, storeMap.VendorStoreID)
}
api.JdShop2API.StoreUpdatePrice(utils.Float64ToStr(jxutils.IntPrice2Standard(int64(price))), v.JdsID, storeMap.VendorStoreID)
} else {
return retVal, err
}
}
return retVal, err
}, storeMaps)
tasksch.HandleTask(task, task2, true).Run()
_, err = task.GetResult(0)
if err = api.JdShop2API.StoreSkuBindStore(true, []string{utils.Int64ToStr(v.JdsID)}, nil); err == nil {
// task := tasksch.NewParallelTask("京东商城门店建商品2", tasksch.NewParallelConfig().SetParallelCount(2).SetIsContinueWhenError(true), ctx,
// func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// storeMap := batchItemList[0].(*model.StoreMap)
// storeSkus2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{v.SkuID})
// if len(storeSkus2) > 0 {
// status := storeSkus2[0].Status
// stock := storeSkus2[0].Stock
// price := storeSkus2[0].Price
// if status == model.StoreSkuBindStatusNormal {
// api.JdShop2API.StoreWareDoUpdate(status, v.JdsID, storeMap.VendorStoreID)
// }
// if stock != 0 {
// api.JdShop2API.StoreUpdateStock(stock, v.JdsID, storeMap.VendorStoreID)
// }
// api.JdShop2API.StoreUpdatePrice(utils.Float64ToStr(jxutils.IntPrice2Standard(int64(price))), v.JdsID, storeMap.VendorStoreID)
// } else {
// return retVal, err
// }
// return retVal, err
// }, storeMaps)
// tasksch.HandleTask(task, task2, true).Run()
// _, err = task.GetResult(0)
}
}
v.SubStoreID = 1
dao.UpdateEntity(db, v, "SubStoreID")