diff --git a/business/jxcallback/orderman/orderman_ext.go b/business/jxcallback/orderman/orderman_ext.go index 3d9e7f2f2..0d9153c59 100644 --- a/business/jxcallback/orderman/orderman_ext.go +++ b/business/jxcallback/orderman/orderman_ext.go @@ -615,15 +615,19 @@ func (c *OrderManager) GetStoresOrderSaleInfo(ctx *jxcontext.Context, storeIDLis func (c *OrderManager) GetStoresOrderSaleInfoNew(ctx *jxcontext.Context, storeIDList []int, fromTime time.Time, toTime time.Time, statusList []int) (saleInfoList []*dao.StoresOrderSaleInfo, err error) { db := dao.GetDB() - orderSkuList, err := dao.GetStoreOrderSkuList(db, storeIDList, fromTime, toTime, statusList) + var isFinish = true + if toTime.Sub(fromTime).Hours() > 24 { + isFinish = false + } + orderSkuList, err := dao.GetStoreOrderSkuList(db, storeIDList, fromTime, toTime, statusList, isFinish) if err != nil { return nil, err } - afsSkuList, err := dao.GetStoreAfsOrderSkuList(db, storeIDList, fromTime, toTime, []int{model.AfsOrderStatusFinished}) + afsSkuList, err := dao.GetStoreAfsOrderSkuList(db, storeIDList, fromTime, toTime, []int{model.AfsOrderStatusFinished}, isFinish) if err != nil { return nil, err } - orderSkuList4Afs, err := dao.GetStoreOrderSkuList4Afs(db, storeIDList, fromTime, toTime) + orderSkuList4Afs, err := dao.GetStoreOrderSkuList4Afs(db, storeIDList, fromTime, toTime, isFinish) if err != nil { return nil, err } diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index 747de32a9..5ada9912c 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -352,7 +352,7 @@ func GetAfsOrderSkuInfo(db *DaoDB, vendorOrderID, afsOrderID string, vendorID in return skus, err } -func GetStoreOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time, statusList []int) (skuList []*OrderSkuWithActualPayPrice, err error) { +func GetStoreOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time, statusList []int, isFinish bool) (skuList []*OrderSkuWithActualPayPrice, err error) { // order_finished_at sql := ` SELECT t1.*, @@ -361,7 +361,12 @@ func GetStoreOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAt FROM order_sku t1 JOIN goods_order t2 ON t2.vendor_order_id = t1.vendor_order_id AND t2.vendor_id = t1.vendor_id LEFT JOIN store t3 ON t3.id = IF(t2.jx_store_id > 0, t2.jx_store_id, t2.store_id) - WHERE t2.order_finished_at >= ? AND t2.order_finished_at <= ?` + WHERE 1=1` + if isFinish { + sql += " AND t2.order_finished_at >= ? AND t2.order_finished_at <= ?" + } else { + sql += " AND t2.order_created_at >= ? AND t2.order_created_at <= ?" + } sqlParams := []interface{}{ finishedAtBegin, finishedAtEnd, @@ -378,7 +383,7 @@ func GetStoreOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAt return skuList, err } -func GetStoreOrderSkuList4Afs(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time) (skuList []*OrderSkuWithActualPayPrice, err error) { +func GetStoreOrderSkuList4Afs(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time, isFinish bool) (skuList []*OrderSkuWithActualPayPrice, err error) { sql := ` SELECT t1.*, t2.actual_pay_price, t2.status, IF(t2.jx_store_id > 0, t2.jx_store_id, t2.store_id) store_id, @@ -389,7 +394,14 @@ func GetStoreOrderSkuList4Afs(db *DaoDB, storeIDs []int, finishedAtBegin, finish JOIN ( SELECT t12.* FROM afs_order t12 - WHERE IF(t12.jx_store_id > 0, t12.jx_store_id, t12.store_id) IN (` + GenQuestionMarks(len(storeIDs)) + `) AND t12.afs_finished_at >= ? AND t12.afs_finished_at <= ? + WHERE IF(t12.jx_store_id > 0, t12.jx_store_id, t12.store_id) IN (` + GenQuestionMarks(len(storeIDs)) + `) + ` + if isFinish { + sql += " AND t12.afs_finished_at >= ? AND t12.afs_finished_at <= ?" + } else { + sql += " AND t12.afs_created_at >= ? AND t12.afs_created_at <= ?" + } + sql += ` ) t4 ON t4.vendor_order_id = t2.vendor_order_id AND t4.vendor_id = t2.vendor_id` sqlParams := []interface{}{ storeIDs, @@ -400,12 +412,18 @@ func GetStoreOrderSkuList4Afs(db *DaoDB, storeIDs []int, finishedAtBegin, finish return skuList, err } -func GetStoreAfsOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time, statusList []int) (afsSkuList []*model.OrderSkuFinancial, err error) { +func GetStoreAfsOrderSkuList(db *DaoDB, storeIDs []int, finishedAtBegin, finishedAtEnd time.Time, statusList []int, isFinish bool) (afsSkuList []*model.OrderSkuFinancial, err error) { sql := ` SELECT t1.* FROM order_sku_financial t1 JOIN afs_order t2 ON t2.vendor_order_id = t1.vendor_order_id AND t2.vendor_id = t1.vendor_id AND t2.afs_order_id = t1.afs_order_id - WHERE t1.is_afs_order = 1 AND t2.afs_finished_at >= ? AND t2.afs_finished_at <= ?` + WHERE t1.is_afs_order = 1 + ` + if isFinish { + sql += " AND t2.afs_finished_at >= ? AND t2.afs_finished_at <= ?" + } else { + sql += " AND t2.afs_created_at >= ? AND t2.afs_created_at <= ?" + } sqlParams := []interface{}{ finishedAtBegin, finishedAtEnd, diff --git a/controllers/cms_sku.go b/controllers/cms_sku.go index 0faf886ad..a7675d1ab 100644 --- a/controllers/cms_sku.go +++ b/controllers/cms_sku.go @@ -436,7 +436,7 @@ func (c *SkuController) SumExianDaDepot() { // @Title 复制一个饿百的店的商品的价格和分类到京西饿鲜达商品 // @Description 复制一个饿百的店的商品的价格和分类到京西饿鲜达商品 // @Param token header string true "认证token" -// @Param baiduShopID formdata string true "饿百店ID" +// @Param baiduShopID formData string true "饿百店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CopyEbaiSkuPriceToJx [post] @@ -450,8 +450,8 @@ func (c *SkuController) CopyEbaiSkuPriceToJx() { // @Title 复制饿鲜达的门店商品到京西对应门店 // @Description 复制饿鲜达的门店商品到京西对应门店 // @Param token header string true "认证token" -// @Param baiduShopID formdata string true "饿百店ID" -// @Param storeID formdata int true "门店ID" +// @Param baiduShopID formData string true "饿百店ID" +// @Param storeID formData int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CopyEbaiStoreSkusToJx [post]