This commit is contained in:
邹宗楠
2022-06-02 18:16:02 +08:00
parent 679de30524
commit 4f7ed20843
5 changed files with 56 additions and 17 deletions

View File

@@ -631,16 +631,13 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
if remoteCatMap[v.VendorCatID] == 0 { if remoteCatMap[v.VendorCatID] == 0 {
if !model.IsSyncStatusNew(v.CatSyncStatus) { if !model.IsSyncStatusNew(v.CatSyncStatus) {
err = OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true) err = OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true)
globals.SugarLogger.Debugf("OnCreateThingcase2==========1%v", err)
} }
} else if isForceUpdate && !model.IsSyncStatusUpdate(v.CatSyncStatus) { } else if isForceUpdate && !model.IsSyncStatusUpdate(v.CatSyncStatus) {
OnUpdateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory) OnUpdateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory)
globals.SugarLogger.Debugf("OnCreateThingcase2==========2%v", err)
} }
} }
} else { } else {
OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true) OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true)
globals.SugarLogger.Debugf("OnCreateThingcase2==========3%v", err)
} }
} }
} }

View File

@@ -78,7 +78,6 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) { func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
level := step + 1 level := step + 1
catList, err := dao.GetDirtyStoreCategories(db, vendorID, storeID, level, skuIDs) catList, err := dao.GetDirtyStoreCategories(db, vendorID, storeID, level, skuIDs)
globals.SugarLogger.Debug("???????????????????????????",len(catList))
if len(catList) > 0 { if len(catList) > 0 {
num += len(catList) num += len(catList)
task := tasksch.NewParallelTask(fmt.Sprintf("%s SyncStoreCategory step2, level=%d", model.VendorChineseNames[vendorID], level), task := tasksch.NewParallelTask(fmt.Sprintf("%s SyncStoreCategory step2, level=%d", model.VendorChineseNames[vendorID], level),
@@ -105,9 +104,7 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
catInfo.Seq = catInfo.StoreCatSeq catInfo.Seq = catInfo.StoreCatSeq
} }
} }
globals.SugarLogger.Debug("=================1111", catInfo.StoreCatName, catInfo.CatSyncStatus)
if model.IsSyncStatusDelete(catInfo.CatSyncStatus) { // 删除 4 if model.IsSyncStatusDelete(catInfo.CatSyncStatus) { // 删除 4
globals.SugarLogger.Debug("=================刘磊删除", catInfo.StoreCatName, catInfo.ID)
if model.IsSyncStatusDelete(catInfo.CatSyncStatus) && !dao.IsVendorThingIDEmpty(catInfo.VendorCatID) { if model.IsSyncStatusDelete(catInfo.CatSyncStatus) && !dao.IsVendorThingIDEmpty(catInfo.VendorCatID) {
err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID, level) err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID, level)
if err != nil && handler.IsErrCategoryNotExist(err) { if err != nil && handler.IsErrCategoryNotExist(err) {
@@ -117,7 +114,6 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
} }
} }
} else if model.IsSyncStatusNew(catInfo.CatSyncStatus) { // 新增 2 } else if model.IsSyncStatusNew(catInfo.CatSyncStatus) { // 新增 2
globals.SugarLogger.Debug("=================刘磊新增", catInfo.StoreCatName, catInfo.ID)
err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo) err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
if err != nil && handler.IsErrCategoryExist(err) { if err != nil && handler.IsErrCategoryExist(err) {
if cat, err2 := handler.GetStoreCategory(ctx, storeID, vendorStoreID, catInfo.Name); err2 == nil { if cat, err2 := handler.GetStoreCategory(ctx, storeID, vendorStoreID, catInfo.Name); err2 == nil {
@@ -135,9 +131,7 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
// } // }
} }
} else if model.IsSyncStatusUpdate(catInfo.CatSyncStatus) { // 修改 1 } else if model.IsSyncStatusUpdate(catInfo.CatSyncStatus) { // 修改 1
globals.SugarLogger.Debug("=================刘磊修改", catInfo.StoreCatName, catInfo.ID)
err = handler.UpdateStoreCategory(ctx, storeID, vendorStoreID, catInfo) err = handler.UpdateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
globals.SugarLogger.Debug("errrrr================", err)
if err == nil { if err == nil {
updateFields = append(updateFields, idFieldName) updateFields = append(updateFields, idFieldName)
} else { } else {

View File

@@ -339,7 +339,6 @@ func GetStoresMapList2(db *DaoDB, vendorIDs, storeIDs, storeStatuss []int, statu
sql += " AND t1.sync_status <> 0" sql += " AND t1.sync_status <> 0"
} }
sql += " ORDER BY t1.store_id , t1.vendor_id" sql += " ORDER BY t1.store_id , t1.vendor_id"
globals.SugarLogger.Debug("刘磊=============sql",sql,sqlParams)
if err = GetRows(db, &storeMapList, sql, sqlParams...); err == nil { if err = GetRows(db, &storeMapList, sql, sqlParams...); err == nil {
return storeMapList, nil return storeMapList, nil
} }

View File

@@ -468,9 +468,6 @@ func GetStoreCategories(db *DaoDB, vendorID, storeID int, skuIDs []int, level in
sql += " AND t4.level = ?" sql += " AND t4.level = ?"
sqlParams = append(sqlParams, level) sqlParams = append(sqlParams, level)
} }
globals.SugarLogger.Debug("??????????????==",sql)
globals.SugarLogger.Debug("??????????????==",fieldPrefixParams)
globals.SugarLogger.Debug("??????????????==3",sqlParams)
if err = GetRows(db, &cats, fmt.Sprintf(sql, fieldPrefixParams...), sqlParams...); err != nil { if err = GetRows(db, &cats, fmt.Sprintf(sql, fieldPrefixParams...), sqlParams...); err != nil {
return nil, err return nil, err
} }
@@ -484,11 +481,66 @@ func GetStoreCategories(db *DaoDB, vendorID, storeID int, skuIDs []int, level in
} }
} }
} }
return result, err return result, err
} }
// 获取门店分类,区别同步方法
func GetStoreCategories2(db *DaoDB, vendorID, storeID int, skuIDs []int, level int, mustDirty bool) (cats []*SkuStoreCatInfo, err error) {
fieldPrefix := ConvertDBFieldPrefix(model.VendorNames[vendorID])
sql := `
SELECT t4.*, ts.store_category_name store_cat_name, ts.store_category_seq store_cat_seq, ts.id store_category_id,
t5.id map_id, t5.%s_id vendor_cat_id, t5.%s_sync_status cat_sync_status,
t4p.name parent_cat_name,
tsp.store_category_name store_parent_cat_name,
t5p.id parent_map_id, t5p.%s_id parent_vendor_cat_id, t5p.%s_sync_status parent_cat_sync_status,
t1.is_sys_cat, t1.vendor_org_code,
t6.city_code , t6.brand_id
FROM store_sku_category_map t5
JOIN sku_category t4 ON t5.category_id = t4.id
LEFT JOIN store_category_map ts ON ts.store_id = t5.store_id AND ts.category_id = t4.id AND ts.deleted_at = ?
`
sqlParams := []interface{}{
utils.DefaultTimeValue,
}
fieldPrefixParams := []interface{}{fieldPrefix, fieldPrefix, fieldPrefix, fieldPrefix}
if len(skuIDs) > 0 {
sql += `
LEFT JOIN (
SELECT DISTINCT b.category_id
FROM sku a
JOIN sku_name b ON a.name_id = b.id AND b.deleted_at = ?
WHERE a.id IN (` + GenQuestionMarks(len(skuIDs)) + `)
AND a.deleted_at = ?
) t6 ON t6.category_id = t4.id
`
sqlParams = append(sqlParams, utils.DefaultTimeValue, skuIDs, utils.DefaultTimeValue)
}
sql += `
LEFT JOIN sku_category t4p ON t4.parent_id = t4p.id
LEFT JOIN store_category_map tsp ON tsp.store_id = t5.store_id AND tsp.category_id = t4p.id AND tsp.deleted_at = ?
LEFT JOIN store_sku_category_map t5p ON t4p.id = t5p.category_id AND t5.store_id = t5p.store_id
LEFT JOIN store_map t1 ON t1.store_id = t5.store_id AND t1.vendor_id = ?
LEFT JOIN store t6 ON t6.id = t5.store_id
WHERE t5.store_id = ? AND t5.deleted_at = ? AND t4.is_sync <> ?`
sqlParams = append(sqlParams, utils.DefaultTimeValue, vendorID, storeID, utils.DefaultTimeValue, model.YES)
if mustDirty {
sql += " AND t5.%s_sync_status <> 0"
fieldPrefixParams = append(fieldPrefixParams, fieldPrefix)
}
if level > 0 {
sql += " AND t4.level = ?"
sqlParams = append(sqlParams, level)
}
if err = GetRows(db, &cats, fmt.Sprintf(sql, fieldPrefixParams...), sqlParams...); err != nil {
return nil, err
}
return cats, err
}
func GetDirtyStoreCategories(db *DaoDB, vendorID, storeID int, level int, skuIDs []int) (cats []*SkuStoreCatInfo, err error) { func GetDirtyStoreCategories(db *DaoDB, vendorID, storeID int, level int, skuIDs []int) (cats []*SkuStoreCatInfo, err error) {
return GetStoreCategories(db, vendorID, storeID, skuIDs, level, true) return GetStoreCategories2(db, vendorID, storeID, skuIDs, level, true)
} }
// 以store_sku_bind为基础来做同步正常情况下使用 // 以store_sku_bind为基础来做同步正常情况下使用

View File

@@ -40,11 +40,8 @@ func pay4OrderByWX(ctx *jxcontext.Context, order *model.GoodsOrder, vendorPayTyp
if authInfo, err := ctx.GetV2AuthInfo(); err == nil && authInfo.GetAuthType() == weixin.AuthTypeMini { if authInfo, err := ctx.GetV2AuthInfo(); err == nil && authInfo.GetAuthType() == weixin.AuthTypeMini {
param.OpenID = authInfo.GetAuthID() param.OpenID = authInfo.GetAuthID()
} }
globals.SugarLogger.Debug("err1=====================", err)
result, err := api.WxpayAPI.CreateUnifiedOrder(param) result, err := api.WxpayAPI.CreateUnifiedOrder(param)
globals.SugarLogger.Debug("err2=====================", err)
globals.SugarLogger.Debug("err3=====================", fmt.Sprintf("%+v", result))
if err == nil { if err == nil {
orderPay = &model.OrderPay{ orderPay = &model.OrderPay{
PayOrderID: param.OutTradeNo, PayOrderID: param.OutTradeNo,