- try mtwm app_poi_code as platform id(not jx id).

This commit is contained in:
gazebo
2019-03-16 20:32:00 +08:00
parent 40410b6632
commit 071ae8c5d8
2 changed files with 41 additions and 21 deletions

View File

@@ -119,7 +119,7 @@ func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
params["open_level"], params["is_online"] = bizStatusJX2Mtwm(jxutils.MergeStoreStatus(storeDetail.Status, storeDetail.VendorStatus)) params["open_level"], params["is_online"] = bizStatusJX2Mtwm(jxutils.MergeStoreStatus(storeDetail.Status, storeDetail.VendorStatus))
globals.SugarLogger.Debug(utils.Format4Output(params, false)) globals.SugarLogger.Debug(utils.Format4Output(params, false))
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
err = api.MtwmAPI.PoiSave(utils.Int2Str(storeDetail.Store.ID), params) err = api.MtwmAPI.PoiSave(storeDetail.VendorStoreID, params)
} }
return nil return nil
} }

View File

@@ -22,9 +22,13 @@ const (
// hint如果是异步返回的是任务ID如果是同步返回是本次需要同步的目录数 // hint如果是异步返回的是任务ID如果是同步返回是本次需要同步的目录数
func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, isAsync bool) (hint string, err error) { func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, isAsync bool) (hint string, err error) {
userName := ctx.GetUserName() userName := ctx.GetUserName()
strStoreID := utils.Int2Str(storeID)
num := 0 num := 0
db := dao.GetDB() db := dao.GetDB()
storeDetail, err := dao.GetStoreDetail(db, storeID, model.VendorIDMTWM)
if err != nil {
return hint, err
}
vendorStoreID := storeDetail.VendorStoreID
rootTask := tasksch.NewSeqTask("美团外卖SyncStoreCategory step1", userName, func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) { rootTask := tasksch.NewSeqTask("美团外卖SyncStoreCategory step1", userName, func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
level := step + 1 level := step + 1
catList, err := dao.GetStoreCategories(db, model.VendorIDMTWM, storeID, level) catList, err := dao.GetStoreCategories(db, model.VendorIDMTWM, storeID, level)
@@ -35,8 +39,8 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
catInfo := batchItemList[0].(*dao.StoreCatSyncInfo) catInfo := batchItemList[0].(*dao.StoreCatSyncInfo)
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
if catInfo.MtwmSyncStatus&model.SyncFlagDeletedMask != 0 { // 删除 if catInfo.MtwmSyncStatus&model.SyncFlagDeletedMask != 0 { // 删除
globals.SugarLogger.Debugf("RetailCatDelete strStoreID:%s, MtwmID:%s", strStoreID, catInfo.MtwmID) globals.SugarLogger.Debugf("RetailCatDelete vendorStoreID:%s, MtwmID:%s", vendorStoreID, catInfo.MtwmID)
err = api.MtwmAPI.RetailCatDelete(strStoreID, catInfo.MtwmID) err = api.MtwmAPI.RetailCatDelete(vendorStoreID, catInfo.MtwmID)
} else if catInfo.MtwmSyncStatus&(model.SyncFlagNewMask|model.SyncFlagModifiedMask) != 0 { // 新增 } else if catInfo.MtwmSyncStatus&(model.SyncFlagNewMask|model.SyncFlagModifiedMask) != 0 { // 新增
catName := catInfo.CatName catName := catInfo.CatName
subCatName := "" subCatName := ""
@@ -57,8 +61,8 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
if catName == "" { if catName == "" {
panic("catName is empty") panic("catName is empty")
} }
globals.SugarLogger.Debugf("RetailCatUpdate strStoreID:%s, originName:%s, catName:%s, subCatName:%s, seq:%d", strStoreID, originName, catName, subCatName, catInfo.Seq) globals.SugarLogger.Debugf("RetailCatUpdate vendorStoreID:%s, originName:%s, catName:%s, subCatName:%s, seq:%d", vendorStoreID, originName, catName, subCatName, catInfo.Seq)
if err := api.MtwmAPI.RetailCatUpdate(strStoreID, originName, catName, subCatName, catInfo.Seq); err == nil { if err := api.MtwmAPI.RetailCatUpdate(vendorStoreID, originName, catName, subCatName, catInfo.Seq); err == nil {
catInfo.MtwmID = catInfo.CatName catInfo.MtwmID = catInfo.CatName
updateFields = append(updateFields, dao.GetVendorThingIDStructField(model.VendorNames[model.VendorIDMTWM])) updateFields = append(updateFields, dao.GetVendorThingIDStructField(model.VendorNames[model.VendorIDMTWM]))
} }
@@ -111,8 +115,12 @@ func (p *PurchaseHandler) SyncLocalStoreCategory(ctx *jxcontext.Context, db *dao
} }
identityCatMap := make(map[int]int) // 这里面表示远程有,本地有,且完全相同,可擦掉本地的修改标记 identityCatMap := make(map[int]int) // 这里面表示远程有,本地有,且完全相同,可擦掉本地的修改标记
if isCheckRemote { if isCheckRemote {
strStoreID := utils.Int2Str(storeID) storeDetail, err := dao.GetStoreDetail(db, storeID, model.VendorIDMTWM)
remoteCats, err := api.MtwmAPI.RetailCatList(utils.Int2Str(storeID)) if err != nil {
return hint, err
}
vendorStoreID := storeDetail.VendorStoreID
remoteCats, err := api.MtwmAPI.RetailCatList(vendorStoreID)
if err != nil { if err != nil {
return "", err return "", err
} }
@@ -121,8 +129,8 @@ func (p *PurchaseHandler) SyncLocalStoreCategory(ctx *jxcontext.Context, db *dao
// globals.SugarLogger.Debug(parentCatName, " ", catName, " ", localCat) // globals.SugarLogger.Debug(parentCatName, " ", catName, " ", localCat)
if localCat == nil { // 本地分类就没有这个名字,直接删除 if localCat == nil { // 本地分类就没有这个名字,直接删除
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
globals.SugarLogger.Debugf("RetailCatDelete2 strStoreID:%s, catName:%s", strStoreID, catName) globals.SugarLogger.Debugf("RetailCatDelete2 vendorStoreID:%s, catName:%s", vendorStoreID, catName)
if err = api.MtwmAPI.RetailCatDelete(strStoreID, catName); err != nil { if err = api.MtwmAPI.RetailCatDelete(vendorStoreID, catName); err != nil {
return err return err
} }
} }
@@ -230,14 +238,14 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
return "", err return "", err
} }
// globals.SugarLogger.Debug(utils.Format4Output(skus, false)) // globals.SugarLogger.Debug(utils.Format4Output(skus, false))
strStoreID := utils.Int2Str(storeID) vendorStoreID := storeDetail.VendorStoreID
rootTask := tasksch.NewParallelTask("美团外卖SyncStoreSkus", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx.GetUserName(), func(rootTask *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { rootTask := tasksch.NewParallelTask("美团外卖SyncStoreSkus", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx.GetUserName(), func(rootTask *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
foodDataList := make([]map[string]interface{}, len(batchItemList)) foodDataList := make([]map[string]interface{}, len(batchItemList))
// for k, v := range batchItemList { // for k, v := range batchItemList {
v := batchItemList[0] v := batchItemList[0]
skuItem := v.(*dao.StoreSkuSyncInfo) skuItem := v.(*dao.StoreSkuSyncInfo)
if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 { if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 {
err = api.MtwmAPI.RetailDelete(strStoreID, utils.Int2Str(skuItem.ID)) err = api.MtwmAPI.RetailDelete(vendorStoreID, utils.Int2Str(skuItem.ID))
} else if skuItem.SkuSyncStatus&(model.SyncFlagModifiedMask|model.SyncFlagNewMask) != 0 { } else if skuItem.SkuSyncStatus&(model.SyncFlagModifiedMask|model.SyncFlagNewMask) != 0 {
foodData := make(map[string]interface{}) foodData := make(map[string]interface{})
foodDataList[0] = foodData foodDataList[0] = foodData
@@ -268,7 +276,7 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
}, },
} }
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
err = api.MtwmAPI.RetailBatchInitData(strStoreID, foodDataList) err = api.MtwmAPI.RetailBatchInitData(vendorStoreID, foodDataList)
} }
} }
if err == nil { if err == nil {
@@ -334,11 +342,15 @@ func (p *PurchaseHandler) DeleteRemoteSkus(ctx *jxcontext.Context, parentTask ta
} }
} }
} }
strStoreID := utils.Int2Str(storeID) storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM)
if err != nil {
return err
}
vendorStoreID := storeDetail.VendorStoreID
task := tasksch.NewParallelTask("mtwm DeleteRemoteSkus", tasksch.NewParallelConfig().SetIsContinueWhenError(true), "", func(t *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { task := tasksch.NewParallelTask("mtwm DeleteRemoteSkus", tasksch.NewParallelConfig().SetIsContinueWhenError(true), "", func(t *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
// globals.SugarLogger.Debugf("mtwm RetailDelete strStoreID:%s, sku:%s", strStoreID, batchItemList[0].(string)) // globals.SugarLogger.Debugf("mtwm RetailDelete vendorStoreID:%s, sku:%s", vendorStoreID, batchItemList[0].(string))
err = api.MtwmAPI.RetailDelete(strStoreID, batchItemList[0].(string)) err = api.MtwmAPI.RetailDelete(vendorStoreID, batchItemList[0].(string))
} }
return nil, err return nil, err
}, vendorSkuIDs) }, vendorSkuIDs)
@@ -348,9 +360,13 @@ func (p *PurchaseHandler) DeleteRemoteSkus(ctx *jxcontext.Context, parentTask ta
} }
func (p *PurchaseHandler) GetAllRemoteSkus(storeID int) (skus []map[string]interface{}, err error) { func (p *PurchaseHandler) GetAllRemoteSkus(storeID int) (skus []map[string]interface{}, err error) {
strStoreID := utils.Int2Str(storeID) storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM)
if err != nil {
return nil, err
}
vendorStoreID := storeDetail.VendorStoreID
for { for {
result, err := api.MtwmAPI.RetailList(strStoreID, len(skus), mtwmapi.GeneralMaxLimit) result, err := api.MtwmAPI.RetailList(vendorStoreID, len(skus), mtwmapi.GeneralMaxLimit)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@@ -363,10 +379,14 @@ func (p *PurchaseHandler) GetAllRemoteSkus(storeID int) (skus []map[string]inter
} }
func (p *PurchaseHandler) DeleteRemoteCategories(storeID int, vendorCatIDs []string) (err error) { func (p *PurchaseHandler) DeleteRemoteCategories(storeID int, vendorCatIDs []string) (err error) {
strStoreID := utils.Int2Str(storeID) storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM)
if err != nil {
return err
}
vendorStoreID := storeDetail.VendorStoreID
vendorCatIDs2 := make([]string, 0) vendorCatIDs2 := make([]string, 0)
if vendorCatIDs == nil { if vendorCatIDs == nil {
result, err := api.MtwmAPI.RetailCatList(strStoreID) result, err := api.MtwmAPI.RetailCatList(vendorStoreID)
if err != nil { if err != nil {
return err return err
} }
@@ -388,7 +408,7 @@ func (p *PurchaseHandler) DeleteRemoteCategories(storeID int, vendorCatIDs []str
if len(catIDs) > 0 { if len(catIDs) > 0 {
task := tasksch.NewParallelTask("mtwm DeleteRemoteCategories paralle", tasksch.NewParallelConfig().SetIsContinueWhenError(true), "", func(t *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { task := tasksch.NewParallelTask("mtwm DeleteRemoteCategories paralle", tasksch.NewParallelConfig().SetIsContinueWhenError(true), "", func(t *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite { if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
err = api.MtwmAPI.RetailCatDelete(strStoreID, batchItemList[0].(string)) err = api.MtwmAPI.RetailCatDelete(vendorStoreID, batchItemList[0].(string))
} }
return nil, err return nil, err
}, catIDs) }, catIDs)