- in GetOrders, if keyword looks like a orderID, then ignore other conditions.

This commit is contained in:
gazebo
2019-02-27 10:31:04 +08:00
parent 3b2c0555ed
commit 796567c364
4 changed files with 133 additions and 23 deletions

View File

@@ -234,23 +234,10 @@ func (c *OrderManager) ExportMTWaybills(ctx *jxcontext.Context, fromDateStr, toD
func (c *OrderManager) GetOrders(ctx *jxcontext.Context, fromDateStr, toDateStr string, params map[string]interface{}, offset, pageSize int) (pagedInfo *model.PagedInfo, err error) {
globals.SugarLogger.Debugf("GetOrders from:%s to:%s", fromDateStr, toDateStr)
fromDate, err := utils.TryStr2Time(fromDateStr)
if err != nil {
return nil, err
}
if toDateStr == "" {
toDateStr = fromDateStr
}
toDate, err := utils.TryStr2Time(toDateStr)
if err != nil {
return nil, err
}
toDate = toDate.Add(24 * time.Hour)
pageSize = jxutils.FormalizePageSize(pageSize)
if offset < 0 {
offset = 0
}
sql := `
SELECT SQL_CALC_FOUND_ROWS t1.*,
t2.status waybill_status, t2.courier_name, t2.courier_mobile,
@@ -262,12 +249,31 @@ func (c *OrderManager) GetOrders(ctx *jxcontext.Context, fromDateStr, toDateStr
sqlWhere string
sqlParams []interface{}
)
// 如果搜索关键字可能为订单号,则当成订单号查询
if params["keyword"] != nil {
if jxutils.GetPossibleVendorIDFromVendorOrderID(params["keyword"].(string)) > model.VendorIDUnknown {
params["orderID"] = params["keyword"]
}
}
if params["orderID"] != nil {
sqlWhere = " WHERE t1.vendor_order_id = ?"
sqlParams = []interface{}{
params["orderID"].(string),
}
} else {
fromDate, err2 := utils.TryStr2Time(fromDateStr)
if err = err2; err != nil {
return nil, err
}
if toDateStr == "" {
toDateStr = fromDateStr
}
toDate, err2 := utils.TryStr2Time(toDateStr)
if err = err2; err != nil {
return nil, err
}
toDate = toDate.Add(24 * time.Hour)
sqlWhere = `
WHERE t1.order_created_at >= ? AND t1.order_created_at < ?
`