From 406c3e56e44de0622939dee0d1c860bcd16f4e9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Thu, 7 Nov 2019 18:03:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=B7=E6=96=B0=E5=8E=86=E5=8F=B2=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=BB=93=E7=AE=97=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/model/dao/dao_order.go | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index 3d2b783c7..f5395e136 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -65,22 +65,6 @@ func QueryOrders(db *DaoDB, vendorOrderID string, actIDs, vendorIDs []int, store SELECT a.*,b.id order_sku_id, b.store_sub_id, b.store_sub_name, b.count, b.vendor_sku_id, b.sku_id, b.jx_sku_id, b.sku_name, b.shop_price sku_shop_price, b.vendor_price sku_vendor_price, b.sale_price sku_sale_price, b.earning_price sku_earning_price, b.weight, b.sku_type, b.promotion_type FROM goods_order a JOIN order_sku b ON a.vendor_order_id = b.vendor_order_id - ` - if len(actIDs) > 0 { - sql += ` - JOIN (SELECT t1.begin_at,t1.end_at, t2.act_id,t2.store_id, t2.sku_id - FROM act t1 - JOIN act_store_sku t2 ON t2.act_id = t1.id - WHERE t1.status = 1 - AND t1.id IN (` + GenQuestionMarks(len(actIDs)) + `) - )s - ON s.store_id = a.store_id - AND s.sku_id = b.sku_id - AND a.order_created_at BETWEEN s.begin_at AND s.end_at - ` - sqlParams = append(sqlParams, actIDs) - } - sql += ` WHERE 1=1 ` if vendorOrderID != "" { @@ -99,6 +83,21 @@ func QueryOrders(db *DaoDB, vendorOrderID string, actIDs, vendorIDs []int, store sql += " AND a.order_created_at BETWEEN ? and ?" sqlParams = append(sqlParams, fromDate, toDate) } + if len(actIDs) > 0 { + sql += ` + AND a.vendor_order_id IN + (SELECT b.vendor_order_id + FROM act t1 + JOIN act_store_sku t2 ON t2.act_id = t1.id + JOIN order_sku b ON b.sku_id = t2.sku_id + WHERE t1.status = 1 + AND t1.id IN (` + GenQuestionMarks(len(actIDs)) + `) + AND t2.store_id = a.store_id + AND a.order_created_at BETWEEN t1.begin_at AND t1.end_at + ) + ` + sqlParams = append(sqlParams, actIDs) + } err = GetRows(db, &orderNewList, sql, sqlParams...) if len(orderNewList) > 0 { orderNewMap = make(map[string][]*model.OrderSku)