- saveOrder don't use unsuitable status.

This commit is contained in:
gazebo
2018-11-30 20:55:10 +08:00
parent 44a33a9d06
commit 421871334e

View File

@@ -130,19 +130,24 @@ func (c *OrderManager) saveOrder(order *model.GoodsOrder, isAdjust bool, db orm.
order.WaybillVendorID = model.VendorIDUnknown order.WaybillVendorID = model.VendorIDUnknown
order.OrderFinishedAt = utils.DefaultTimeValue order.OrderFinishedAt = utils.DefaultTimeValue
// hardcode 兼容京东消息错序问题 // todo hardcode 兼容京东消息错序问题
orderStatus := &model.OrderStatus{} if true { //order.VendorID == model.VendorIDJD {
if db.Raw(` orderStatus := &model.OrderStatus{}
SELECT * if db.Raw(`
FROM order_status SELECT *
WHERE order_type = ? AND vendor_order_id = ? AND vendor_id = ? FROM order_status
ORDER BY status_time DESC WHERE order_type = ? AND vendor_order_id = ? AND vendor_id = ?
LIMIT 1 ORDER BY status_time DESC
`, model.OrderTypeOrder, order.VendorOrderID, order.VendorID).QueryRow(orderStatus) == nil { LIMIT 1
order.Status = orderStatus.Status `, model.OrderTypeOrder, order.VendorOrderID, order.VendorID).QueryRow(orderStatus) == nil {
order.VendorStatus = orderStatus.VendorStatus if orderStatus.Status > order.Status {
order.StatusTime = orderStatus.StatusTime order.Status = orderStatus.Status
order.VendorStatus = orderStatus.VendorStatus
order.StatusTime = orderStatus.StatusTime
}
}
} }
order.OrderCreatedAt = order.StatusTime order.OrderCreatedAt = order.StatusTime
// globals.SugarLogger.Debugf("saveOrder isAdjust:%t, order:%v", isAdjust, order) // globals.SugarLogger.Debugf("saveOrder isAdjust:%t, order:%v", isAdjust, order)