银豹到京西还是开着

This commit is contained in:
苏尹岚
2020-04-30 15:55:05 +08:00
parent ede983793f
commit 743bc89cbc

View File

@@ -913,14 +913,14 @@ func (v *VendorSync) SyncStoreSkusFromYb(ctx *jxcontext.Context, storeIDs []int,
func syncStoreSkusFromYb(ctx *jxcontext.Context, storeID, vendorID int, vendorStoreID string, isAsync, isContinueWhenError bool) (hint string, err error) { func syncStoreSkusFromYb(ctx *jxcontext.Context, storeID, vendorID int, vendorStoreID string, isAsync, isContinueWhenError bool) (hint string, err error) {
var ( var (
db = dao.GetDB() db = dao.GetDB()
localSkuMap = make(map[string]*dao.StoreSkuSyncInfo) localSkuMap = make(map[string]*dao.StoreSkuSyncInfo)
vendorSkuMap = make(map[string]*partner.SkuNameInfo) vendorSkuMap = make(map[string]*partner.SkuNameInfo)
// skuBindInfosDel []*StoreSkuBindInfo skuBindInfosDel []*StoreSkuBindInfo
// skuBindInfosUpt []*StoreSkuBindInfo skuBindInfosUpt []*StoreSkuBindInfo
addList []*partner.SkuNameInfo addList []*partner.SkuNameInfo
updateList []*partner.SkuNameInfo updateList []*partner.SkuNameInfo
deleteList []*dao.StoreSkuSyncInfo deleteList []*dao.StoreSkuSyncInfo
) )
handler, _ := partner.GetPurchasePlatformFromVendorID(vendorID).(partner.ISingleStoreStoreSkuHandler) handler, _ := partner.GetPurchasePlatformFromVendorID(vendorID).(partner.ISingleStoreStoreSkuHandler)
@@ -953,93 +953,90 @@ func syncStoreSkusFromYb(ctx *jxcontext.Context, storeID, vendorID int, vendorSt
// fmt.Println("remoteSkuList", len(remoteSkuList)) // fmt.Println("remoteSkuList", len(remoteSkuList))
// fmt.Println("addList", len(addList)) // fmt.Println("addList", len(addList))
// fmt.Println("updateList", len(updateList)) // fmt.Println("updateList", len(updateList))
for _, v := range deleteList {
fmt.Println("deleteList", utils.Format4Output(v.SkuID, false))
}
taskSeqFunc := func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) { taskSeqFunc := func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
// store, _ := dao.GetStoreDetail(db, storeID, vendorID) store, _ := dao.GetStoreDetail(db, storeID, vendorID)
switch step { switch step {
case 0: case 0:
// if len(addList) > 0 { if len(addList) > 0 {
// taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// var ( var (
// v = batchItemList[0].(*partner.SkuNameInfo) v = batchItemList[0].(*partner.SkuNameInfo)
// upc = v.YbBarCode upc = v.YbBarCode
// ) )
// err = AddSkuNameByUpc(ctx, upc, store, v) err = AddSkuNameByUpc(ctx, upc, store, v)
// if err != nil { if err != nil {
// task.AddFailedList(putils.GetErrMsg2FailedSingleList(nil, err, storeID, model.VendorChineseNames[vendorID], "根据upc创建京西商品")) task.AddFailedList(putils.GetErrMsg2FailedSingleList(nil, err, storeID, model.VendorChineseNames[vendorID], "根据upc创建京西商品"))
// } }
// return retVal, err return retVal, err
// } }
// taskParallel := tasksch.NewParallelTask("创建商品", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, addList) taskParallel := tasksch.NewParallelTask("创建商品", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, addList)
// tasksch.HandleTask(taskParallel, task, true).Run() tasksch.HandleTask(taskParallel, task, true).Run()
// _, err = taskParallel.GetResult(0) _, err = taskParallel.GetResult(0)
// } }
case 1: case 1:
// if len(deleteList) > 0 { if len(deleteList) > 0 {
// taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// var ( var (
// v = batchItemList[0].(*dao.StoreSkuSyncInfo) v = batchItemList[0].(*dao.StoreSkuSyncInfo)
// ) )
// skuBindInfo := &StoreSkuBindInfo{ skuBindInfo := &StoreSkuBindInfo{
// NameID: v.NameID, NameID: v.NameID,
// IsFocus: -1, IsFocus: -1,
// } }
// retVal = []*StoreSkuBindInfo{skuBindInfo} retVal = []*StoreSkuBindInfo{skuBindInfo}
// return retVal, err return retVal, err
// } }
// taskParallel := tasksch.NewParallelTask("删除商品", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, deleteList) taskParallel := tasksch.NewParallelTask("删除商品", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, deleteList)
// tasksch.HandleTask(taskParallel, task, true).Run() tasksch.HandleTask(taskParallel, task, true).Run()
// resultDel, _ := taskParallel.GetResult(0) resultDel, _ := taskParallel.GetResult(0)
// for _, v := range resultDel { for _, v := range resultDel {
// skuBindInfosDel = append(skuBindInfosDel, v.(*StoreSkuBindInfo)) skuBindInfosDel = append(skuBindInfosDel, v.(*StoreSkuBindInfo))
// } }
// _, err = updateStoresSkusWithoutSync(ctx, db, []int{storeID}, skuBindInfosDel, false) _, err = updateStoresSkusWithoutSync(ctx, db, []int{storeID}, skuBindInfosDel, false)
// } }
case 2: case 2:
// if len(updateList) > 0 { if len(updateList) > 0 {
// taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// var ( var (
// v = batchItemList[0].(*partner.SkuNameInfo) v = batchItemList[0].(*partner.SkuNameInfo)
// skuBindInfo = &StoreSkuBindInfo{} skuBindInfo = &StoreSkuBindInfo{}
// storeSkus []*dao.StoreSkuExt storeSkus []*dao.StoreSkuExt
// pricePercentagePack []*model.PricePercentageItem pricePercentagePack []*model.PricePercentageItem
// ) )
// sql := ` sql := `
// SELECT a.*, c.id name_id SELECT a.*, c.id name_id
// FROM store_sku_bind a FROM store_sku_bind a
// JOIN sku b ON a.sku_id = b.id JOIN sku b ON a.sku_id = b.id
// JOIN sku_name c ON c.id = b.name_id JOIN sku_name c ON c.id = b.name_id
// WHERE a.store_id = ? AND a.yb_id = ? AND a.deleted_at = ? WHERE a.store_id = ? AND a.yb_id = ? AND a.deleted_at = ?
// ` `
// sqlParams := []interface{}{storeID, v.SkuList[0].VendorSkuID, utils.DefaultTimeValue} sqlParams := []interface{}{storeID, v.SkuList[0].VendorSkuID, utils.DefaultTimeValue}
// err = dao.GetRows(db, &storeSkus, sql, sqlParams) err = dao.GetRows(db, &storeSkus, sql, sqlParams)
// if len(storeSkus) > 0 { if len(storeSkus) > 0 {
// if storeSkus[0].YbPrice != int(v.SkuList[0].VendorPrice) { if storeSkus[0].YbPrice != int(v.SkuList[0].VendorPrice) {
// err = jxutils.Strings2Objs(store.PricePercentagePackStr, &pricePercentagePack) err = jxutils.Strings2Objs(store.PricePercentagePackStr, &pricePercentagePack)
// skuBindInfo.UnitPrice = jxutils.CaculateJxPriceByPricePack(pricePercentagePack, 0, int(v.SkuList[0].VendorPrice)) skuBindInfo.UnitPrice = jxutils.CaculateJxPriceByPricePack(pricePercentagePack, 0, int(v.SkuList[0].VendorPrice))
// } }
// } else { } else {
// return retVal, fmt.Errorf("未查询到门店商品yb_id [%v]", v.SkuList[0].VendorSkuID) return retVal, fmt.Errorf("未查询到门店商品yb_id [%v]", v.SkuList[0].VendorSkuID)
// } }
// if v.SkuList[0].Stock < 1 { if v.SkuList[0].Stock < 1 {
// skuBindInfo.IsSale = model.StoreSkuBindStatusDontSale skuBindInfo.IsSale = model.StoreSkuBindStatusDontSale
// } else { } else {
// skuBindInfo.IsSale = model.StoreSkuBindStatusNormal skuBindInfo.IsSale = model.StoreSkuBindStatusNormal
// } }
// skuBindInfo.NameID = storeSkus[0].NameID skuBindInfo.NameID = storeSkus[0].NameID
// retVal = []*StoreSkuBindInfo{skuBindInfo} retVal = []*StoreSkuBindInfo{skuBindInfo}
// return retVal, err return retVal, err
// } }
// taskParallel := tasksch.NewParallelTask("更新商品价格和库存", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, updateList) taskParallel := tasksch.NewParallelTask("更新商品价格和库存", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx, taskFunc, updateList)
// tasksch.HandleTask(taskParallel, task, true).Run() tasksch.HandleTask(taskParallel, task, true).Run()
// resultUpt, _ := taskParallel.GetResult(0) resultUpt, _ := taskParallel.GetResult(0)
// for _, v := range resultUpt { for _, v := range resultUpt {
// skuBindInfosUpt = append(skuBindInfosUpt, v.(*StoreSkuBindInfo)) skuBindInfosUpt = append(skuBindInfosUpt, v.(*StoreSkuBindInfo))
// } }
// _, err = updateStoresSkusWithoutSync(ctx, db, []int{storeID}, skuBindInfosUpt, false) _, err = updateStoresSkusWithoutSync(ctx, db, []int{storeID}, skuBindInfosUpt, false)
// } }
} }
return result, err return result, err
} }