From fb9ee37ecd6896b0cc01acf77312f1578fe024db Mon Sep 17 00:00:00 2001 From: gazebo Date: Tue, 9 Apr 2019 09:17:53 +0800 Subject: [PATCH 1/2] =?UTF-8?q?-=20=E5=A4=8D=E5=88=B6=E9=97=A8=E5=BA=97?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=97=B6=EF=BC=8CLEFT=20JOIN=E5=86=99?= =?UTF-8?q?=E6=88=90JOIN=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/store_sku.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 7f7d481b5..31b5d5f10 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -831,7 +831,7 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID, toStoreID int, copyMode // 将toStore中存在,但fromStore中不存在的置删除标志 sqlDelete := ` UPDATE store_sku_bind t1 - JOIN store_sku_bind t0 ON t0.store_id = ? AND t0.sku_id = t1.sku_id AND t0.deleted_at = ? + LEFT JOIN store_sku_bind t0 ON t0.store_id = ? AND t0.sku_id = t1.sku_id AND t0.deleted_at = ? JOIN sku t2 ON t1.sku_id = t2.id/* AND t2.deleted_at = ?*/ JOIN sku_name t3 ON t2.name_id = t3.id/* AND t2.deleted_at = ?*/ LEFT JOIN sku_category t4 ON t3.category_id = t4.id AND t2.deleted_at = ? @@ -882,7 +882,7 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID, toStoreID int, copyMode // 处理toStore中与fromStore中都存在的 sql := ` UPDATE store_sku_bind t1 - JOIN store_sku_bind t0 ON t0.store_id = ? AND t0.sku_id = t1.sku_id AND t0.deleted_at = ? + LEFT JOIN store_sku_bind t0 ON t0.store_id = ? AND t0.sku_id = t1.sku_id AND t0.deleted_at = ? JOIN sku t2 ON t1.sku_id = t2.id/* AND t2.deleted_at = ?*/ JOIN sku_name t3 ON t2.name_id = t3.id/* AND t3.deleted_at = ?*/ LEFT JOIN sku_category t4 ON t3.category_id = t4.id AND t4.deleted_at = ? From 358257c70d6521ce343979779186ec68c3a5d447 Mon Sep 17 00:00:00 2001 From: gazebo Date: Tue, 9 Apr 2019 09:52:29 +0800 Subject: [PATCH 2/2] =?UTF-8?q?-=20=E5=95=86=E5=93=81=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E4=B8=8B=E6=9E=B6=EF=BC=8C=E6=9F=A5=E8=AF=A2=E9=97=A8=E5=BA=97?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=97=B6=EF=BC=8C=E5=8F=AA=E6=9C=89=E5=85=B3?= =?UTF-8?q?=E6=B3=A8=E4=B8=94=E5=8F=AF=E5=94=AE=E7=9A=84=E6=89=8D=E4=BC=9A?= =?UTF-8?q?=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/store_sku.go | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 31b5d5f10..e53ab8a9d 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -91,26 +91,28 @@ func GetStoreSkus(ctx *jxcontext.Context, storeID int, isFocus bool, keyword str db := dao.GetDB() sql := ` FROM sku_name t1 - JOIN sku t2 ON t1.id = t2.name_id AND t2.deleted_at = ? AND t2.status = ? + JOIN sku t2 ON t1.id = t2.name_id AND t2.deleted_at = ?/* AND t2.status = ?*/ LEFT JOIN store_sku_bind t4 ON t4.sku_id = t2.id AND t4.deleted_at = ? AND t4.store_id = ? JOIN store t3 ON t3.id = ? LEFT JOIN sku_name_place_bind t5 ON t1.id = t5.name_id AND t3.city_code = t5.place_code - WHERE t1.deleted_at = ? AND (t1.is_global = 1 OR t5.id IS NOT NULL OR t4.status = ?) AND t1.status = ? + WHERE t1.deleted_at = ? AND (t1.is_global = 1 OR t5.id IS NOT NULL OR t4.status = ?)/* AND t1.status = ?*/ ` - if isFocus { - sql += " AND t4.sku_id IS NOT NULL" - } else { - sql += " AND t4.sku_id IS NULL" - } sqlParams := []interface{}{ utils.DefaultTimeValue, - model.SkuStatusNormal, + // model.SkuStatusNormal, utils.DefaultTimeValue, storeID, storeID, utils.DefaultTimeValue, model.SkuStatusNormal, - model.SkuStatusNormal, + // model.SkuStatusNormal, + } + if isFocus { + sql += " AND t4.sku_id IS NOT NULL AND ((t2.status = ? AND t1.status = ?) OR t4.status = ?)" + sqlParams = append(sqlParams, model.SkuStatusNormal, model.SkuStatusNormal, model.SkuStatusNormal) + } else { + sql += " AND t4.sku_id IS NULL AND t2.status = ? AND t1.status = ?" + sqlParams = append(sqlParams, model.SkuStatusNormal, model.SkuStatusNormal) } if keyword != "" { keywordLike := "%" + keyword + "%"