去除一些对于jd_id与jd_sync_status的直接依赖

This commit is contained in:
gazebo
2019-12-11 11:43:52 +08:00
parent 73811a7bc6
commit d22fef3bc7
6 changed files with 35 additions and 18 deletions

View File

@@ -345,10 +345,17 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, isBySku bool, params ma
keywordLike := "%" + keyword + "%"
sql += " AND (t1.name LIKE ? OR t1.prefix LIKE ? OR t2.comment LIKE ? OR t1.upc LIKE ?"
sqlParams = append(sqlParams, keywordLike, keywordLike, keywordLike, keywordLike)
if globals.IsUseThingMap {
sql += " OR (SELECT COUNT(*) FROM thing_map tm WHERE tm.vendor_thing_id LIKE ? AND tm.thing_type = ? AND tm.thing_id = t2.id AND tm.deleted_at = ?) > 0"
sqlParams = append(sqlParams, keywordLike, model.ThingTypeSku, utils.DefaultTimeValue)
}
if keywordInt64, err2 := strconv.ParseInt(keyword, 10, 64); err2 == nil {
sql += " OR t1.id = ? OR t2.id = ? OR t2.jd_id = ? OR t1.category_id = ?"
sqlParams = append(sqlParams, keywordInt64, keywordInt64, keywordInt64, keywordInt64)
sql += " OR t1.id = ? OR t2.id = ? OR t1.category_id = ?"
sqlParams = append(sqlParams, keywordInt64, keywordInt64, keywordInt64)
if !globals.IsUseThingMap {
sql += " OR t2.jd_id = ?"
sqlParams = append(sqlParams, keywordInt64)
}
}
sql += ")"
}

View File

@@ -268,10 +268,6 @@ func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool
}
sql += ")"
}
// if params["jdID"] != nil {
// sql += " AND t1.jd_id = ?"
// sqlParams = append(sqlParams, params["jdID"].(int))
// }
if params["name"] != nil {
sql += " AND t1.name LIKE ?"
sqlParams = append(sqlParams, "%"+params["name"].(string)+"%")
@@ -316,7 +312,11 @@ func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool
}
sql += " AND ( 1 = 0"
if params["jdSyncStatus"] != nil && realVendorMap[model.VendorIDJD] == 1 {
sql += " OR (t4.jd_sync_status & ? <> 0 AND t2.jd_id <> 0 AND t1.status = ? AND t2.status = ?)"
if globals.IsUseThingMap {
sql += " OR (t4.jd_sync_status & ? <> 0 AND t1.status = ? AND t2.status = ?)"
} else {
sql += " OR (t4.jd_sync_status & ? <> 0 AND t2.jd_id <> 0 AND t1.status = ? AND t2.status = ?)"
}
sqlParams = append(sqlParams, params["jdSyncStatus"], model.SkuStatusNormal, model.SkuStatusNormal)
}
if params["ebaiSyncStatus"] != nil && realVendorMap[model.VendorIDEBAI] == 1 {

View File

@@ -657,6 +657,13 @@ func isSyncError(err error) bool {
}
func (v *VendorSync) SyncSkuNames(ctx *jxcontext.Context, nameIDs []int, isForce, isAsync, isContinueWhenError bool) (hint string, err error) {
if !globals.IsUseThingMap {
return v.oldSyncSkuNames(ctx, nameIDs, isForce, isAsync, isContinueWhenError)
}
return SyncSkus(ctx, nil, nil, nil, nameIDs, nil, isAsync)
}
func (v *VendorSync) oldSyncSkuNames(ctx *jxcontext.Context, nameIDs []int, isForce, isAsync, isContinueWhenError bool) (hint string, err error) {
db := dao.GetDB()
if isForce {
sql := `

View File

@@ -77,9 +77,13 @@ func GetActStoreSkuVendorList(db *DaoDB, actID int, vendorIDs, storeIDs, skuIDs
pageSize = jxutils.FormalizePageSize(pageSize)
leftOrEmpty := ""
jdVendorIDField := "t4.jd_id"
if len(vendorIDs) == 1 && (vendorIDs[0] == -1 || vendorIDs[0] == model.VendorIDJX) {
leftOrEmpty = "LEFT"
}
if globals.IsUseThingMap {
jdVendorIDField = "t4m.vendor_thing_id"
}
sql := fmt.Sprintf(`
SELECT SQL_CALC_FOUND_ROWS
t1.*,
@@ -87,7 +91,7 @@ func GetActStoreSkuVendorList(db *DaoDB, actID int, vendorIDs, storeIDs, skuIDs
t3.vendor_store_id,
CASE t2.vendor_id
WHEN 0 THEN
t4.jd_id
%s
WHEN 1 THEN
t5.mtwm_id
WHEN 3 THEN
@@ -99,7 +103,7 @@ func GetActStoreSkuVendorList(db *DaoDB, actID int, vendorIDs, storeIDs, skuIDs
t6.name store_name,
t7.name sku_name_name, t7.unit, t7.prefix
FROM act_store_sku t1
%s JOIN act_store_sku_map t2 ON t2.act_id = ? AND t2.bind_id = t1.id AND t2.deleted_at = ?`, leftOrEmpty)
%s JOIN act_store_sku_map t2 ON t2.act_id = ? AND t2.bind_id = t1.id AND t2.deleted_at = ?`, jdVendorIDField, leftOrEmpty)
sqlParams := []interface{}{
actID,
utils.DefaultTimeValue,
@@ -111,7 +115,13 @@ func GetActStoreSkuVendorList(db *DaoDB, actID int, vendorIDs, storeIDs, skuIDs
}
sql += `
LEFT JOIN store_map t3 ON t3.store_id = t1.store_id AND t3.vendor_id = t2.vendor_id AND t3.deleted_at = ?
JOIN sku t4 ON t4.id = t1.sku_id
JOIN sku t4 ON t4.id = t1.sku_id`
if globals.IsUseThingMap {
sql += `
LEFT JOIN thing_map t4m ON t4m.thing_id = t4.id AND t4m.thing_type = ? AND t4m.vendor_id = t2.vendor_id AND t4m.vendor_org_code = t3.vendor_org_code AND t4m.deleted_at = ?`
sqlParams = append(sqlParams, model.ThingTypeSku, utils.DefaultTimeValue)
}
sql += `
LEFT JOIN store_sku_bind t5 ON t5.sku_id = t1.sku_id AND t5.store_id = t1.store_id AND t5.deleted_at = ?
LEFT JOIN store t6 ON t6.id = t1.store_id
JOIN sku_name t7 ON t7.id = t4.name_id

View File

@@ -189,11 +189,6 @@ func GetSkuCategoryWithVendor(db *DaoDB, vendorIDs []int, appOrgCodes []string,
t1p.name parent_cat_name,
t1pm.vendor_thing_id parent_vendor_cat_id,
t1pm.sync_status parent_cat_sync_status
/*
t1.jd_sync_status sync_status,
t1.jd_id vendor_cat_id,
t1p.jd_id vendor_parent_cat_id
*/
FROM sku_category t1
LEFT JOIN thing_map t1m ON t1m.thing_id = t1.id AND t1m.thing_type = ? AND t1m.deleted_at = ?
LEFT JOIN sku_category t1p ON t1p.id = t1.parent_id

View File

@@ -28,7 +28,6 @@ type StoreSkuController struct {
// @Param prefix query string false "商品前缀(不要求完全一致)"
// @Param categoryID query int false "商品所属类别ID"
// @Param unit query string false "商品单位"
// @Param jdID query int false "商品京东ID"
// @Param fromStatus query int false "查询起始状态0不可售1可售"
// @Param toStatus query int false "查询结束状态0不可售1可售"
// @Param stFromTime query string false "统计SKU开始时间"
@@ -69,7 +68,6 @@ func (c *StoreSkuController) GetStoreSkus() {
// @Param prefix query string false "商品前缀(不要求完全一致)"
// @Param categoryID query int false "商品所属类别ID"
// @Param unit query string false "商品单位"
// @Param jdID query int false "商品京东ID"
// @Param fromStatus query int false "查询起始状态0不可售1可售"
// @Param toStatus query int false "查询结束状态0不可售1可售"
// @Param stFromTime query string false "统计SKU开始时间"