- handle num == 0 in GetOrderSkuInfo.

This commit is contained in:
gazebo
2018-08-21 18:16:59 +08:00
parent c1db460666
commit d18e53e9f4

View File

@@ -1,6 +1,7 @@
package orderman package orderman
import ( import (
"errors"
"time" "time"
"git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model"
@@ -13,6 +14,10 @@ const (
maxLastHours = 2 * 24 // 最多只能查询两天内的订单数据 maxLastHours = 2 * 24 // 最多只能查询两天内的订单数据
) )
var (
ErrCanNotFindOrder = errors.New("找不到相应订单")
)
func (c *OrderManager) GetStoreOrderInfo(storeID string, lastHours int, fromStatus, toStatus int) (orders []*model.GoodsOrderExt, err error) { func (c *OrderManager) GetStoreOrderInfo(storeID string, lastHours int, fromStatus, toStatus int) (orders []*model.GoodsOrderExt, err error) {
if lastHours > maxLastHours { if lastHours > maxLastHours {
lastHours = maxLastHours lastHours = maxLastHours
@@ -39,16 +44,21 @@ func (c *OrderManager) GetStoreOrderInfo(storeID string, lastHours int, fromStat
func (c *OrderManager) GetOrderSkuInfo(vendorOrderID string, vendorID int) (skus []*model.OrderSkuExt, err error) { func (c *OrderManager) GetOrderSkuInfo(vendorOrderID string, vendorID int) (skus []*model.OrderSkuExt, err error) {
db := orm.NewOrm() db := orm.NewOrm()
_, err = db.Raw(` num, err := db.Raw(`
SELECT t1.*, t3.img image SELECT t1.*, t3.img image
FROM order_sku t1 FROM order_sku t1
LEFT JOIN jx_sku t2 ON IF(t1.jx_sku_id != 0, t1.jx_sku_id, t1.sku_id) = t2.id LEFT JOIN jx_sku t2 ON IF(t1.jx_sku_id != 0, t1.jx_sku_id, t1.sku_id) = t2.id
LEFT JOIN jx_sku_name t3 ON t2.nameid = t3.id LEFT JOIN jx_sku_name t3 ON t2.nameid = t3.id
WHERE vendor_order_id = ? AND vendor_id = ? WHERE vendor_order_id = ? AND vendor_id = ?
`, vendorOrderID, vendorID).QueryRows(&skus) `, vendorOrderID, vendorID).QueryRows(&skus)
if err == nil { if err == nil && num > 0 {
return skus, nil return skus, nil
} }
globals.SugarLogger.Infof("GetOrderSkuInfo orderID:%s failed with error:%v", vendorOrderID, err) if err == nil {
err = ErrCanNotFindOrder
globals.SugarLogger.Infof("GetOrderSkuInfo orderID:%s vendorID:%d can not find order, num:%d", vendorOrderID, vendorID, num)
} else {
globals.SugarLogger.Infof("GetOrderSkuInfo orderID:%s vendorID:%d failed with error:%v", vendorOrderID, vendorID, err)
}
return nil, err return nil, err
} }