From 0ea872ab39900c748f52c5a25223e516b64e675b Mon Sep 17 00:00:00 2001 From: gazebo Date: Fri, 13 Dec 2019 22:23:17 +0800 Subject: [PATCH] =?UTF-8?q?newGetFullStoreSkus=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/model/dao/store_sku.go | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go index bef89ed5c..fa160da6b 100644 --- a/business/model/dao/store_sku.go +++ b/business/model/dao/store_sku.go @@ -351,7 +351,7 @@ func newGetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty } else { sql += ` LEFT JOIN sku_category t5sku ON t5sku.id = t2.category_id - LEFT JOIN thing_map t2m ON t2m.thing_id = t1.sku_id AND t2m.vendor_org_code = t14.vendor_org_code AND t2m.thing_type = ? AND t2m.vendor_id = ? AND t2m.deleted_at = ? + JOIN thing_map t2m ON t2m.thing_id = t1.sku_id AND t2m.vendor_org_code = t14.vendor_org_code AND t2m.thing_type = ? AND t2m.vendor_id = ? AND t2m.deleted_at = ? LEFT JOIN thing_map t4m ON t4m.thing_id = t3.category_id AND t4m.vendor_org_code = t14.vendor_org_code AND t4m.thing_type = ? AND t4m.vendor_id = ? AND t4m.deleted_at = ? LEFT JOIN thing_map t5skum ON t5skum.thing_id = t5sku.id AND t5skum.vendor_org_code = t14.vendor_org_code AND t5skum.thing_type = ? AND t5skum.vendor_id = ? AND t5skum.deleted_at = ? ` @@ -504,8 +504,11 @@ func GetFullStoreSkus(db *DaoDB, vendorID, storeID int) (skus []*StoreSkuSyncInf func newGetFullStoreSkus(db *DaoDB, vendorID, storeID int) (skus []*StoreSkuSyncInfo, err error) { globals.SugarLogger.Debugf("GetFullStoreSkus, storeID:%d, vendorID:%d", storeID, vendorID) + // 对于多门店平台,商品库删除后,不需要操作门店商品,所以sku_name用JOIN, sku与sku_name也可以直接排除下架的 sql := ` - SELECT t1.id bind_id, t1.price, t1.unit_price, t1.status store_sku_status, + SELECT + sm.vendor_id, sm.vendor_org_code, + t1.id bind_id, t1.price, t1.unit_price, t1.status store_sku_status, t1.%s_sync_status sku_sync_status, t1.store_id, t1.deleted_at bind_deleted_at, t2.*, t2.id sku_id, t2m.vendor_thing_id vendor_sku_id, t3.id name_id, t3.prefix, t3.name, t3.unit, t3.upc, @@ -516,12 +519,12 @@ func newGetFullStoreSkus(db *DaoDB, vendorID, storeID int) (skus []*StoreSkuSync t4m.sync_status cat_sync_status, t4m.vendor_thing_id vendor_cat_id, t5skum.sync_status sku_cat_sync_status, t5skum.vendor_thing_id sku_vendor_cat_id FROM sku t2 - LEFT JOIN store_sku_bind t1 ON t1.sku_id = t2.id AND t1.store_id = ? AND t1.deleted_at = ? - LEFT JOIN store_map sm ON sm.store_id = t1.store_id AND sm.vendor_id = ? AND sm.deleted_at = ? - LEFT JOIN thing_map t2m ON t2m.thing_id = t2.id AND t2m.vendor_org_code = sm.vendor_org_code AND t2m.thing_type = ? AND t2m.vendor_id = ? AND t2m.deleted_at = ? JOIN sku_name t3 ON t2.name_id = t3.id AND t3.deleted_at = ? AND t3.status = ? JOIN sku_category t4 ON t3.category_id = t4.id AND t4.deleted_at = ? - LEFT JOIN thing_map t4m ON t4m.thing_id = t3.category_id AND t4m.vendor_org_code = sm.vendor_org_code AND t4m.thing_type = ? AND t4m.vendor_id = ? AND t4m.deleted_at = ? + JOIN store_map sm ON sm.vendor_id = ? AND sm.store_id = ? AND sm.deleted_at = ? + JOIN thing_map t2m ON t2m.thing_id = t2.id AND t2m.vendor_org_code = sm.vendor_org_code AND t2m.thing_type = ? AND t2m.vendor_id = ? AND t2m.deleted_at = ? + JOIN thing_map t4m ON t4m.thing_id = t3.category_id AND t4m.vendor_org_code = sm.vendor_org_code AND t4m.thing_type = ? AND t4m.vendor_id = ? AND t4m.deleted_at = ? + LEFT JOIN store_sku_bind t1 ON sm.store_id = t1.store_id AND t1.sku_id = t2.id AND t1.deleted_at = ? LEFT JOIN sku_category t5sku ON t2.category_id = t5sku.id LEFT JOIN thing_map t5skum ON t5skum.thing_id = t2.category_id AND t5skum.vendor_org_code = sm.vendor_org_code AND t5skum.thing_type = ? AND t5skum.vendor_id = ? AND t5skum.deleted_at = ? LEFT JOIN data_resource t11 ON t11.main_url = t3.img @@ -530,17 +533,14 @@ func newGetFullStoreSkus(db *DaoDB, vendorID, storeID int) (skus []*StoreSkuSync WHERE t2.deleted_at = ? AND t2.status = ? AND t2m.vendor_thing_id <> '' ORDER BY t1.price DESC` sqlParams := []interface{}{ - storeID, + utils.DefaultTimeValue, model.SkuStatusNormal, utils.DefaultTimeValue, - vendorID, utils.DefaultTimeValue, + vendorID, storeID, utils.DefaultTimeValue, model.ThingTypeSku, vendorID, utils.DefaultTimeValue, - utils.DefaultTimeValue, - model.SkuStatusNormal, - utils.DefaultTimeValue, - model.ThingTypeCategory, vendorID, utils.DefaultTimeValue, model.ThingTypeCategory, vendorID, utils.DefaultTimeValue, utils.DefaultTimeValue, - model.SkuStatusNormal, + model.ThingTypeCategory, vendorID, utils.DefaultTimeValue, + utils.DefaultTimeValue, model.SkuStatusNormal, } fieldPrefix := ConvertDBFieldPrefix(model.VendorNames[vendorID]) sql = fmt.Sprintf(sql,