Merge remote-tracking branch 'origin/mark' into yonghui
This commit is contained in:
@@ -474,20 +474,25 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da
|
||||
order.VendorStatus = orderStatus.VendorStatus
|
||||
updateFields := []string{
|
||||
"VendorStatus",
|
||||
"UpdatedAt",
|
||||
}
|
||||
if model.IsOrderMainStatus(orderStatus.Status) {
|
||||
order.Status = orderStatus.Status
|
||||
order.StatusTime = orderStatus.StatusTime
|
||||
updateFields = append(updateFields, "Status", "StatusTime")
|
||||
if order.LockStatus != model.OrderStatusUnknown {
|
||||
order.LockStatus = model.OrderStatusUnknown
|
||||
updateFields = append(updateFields, "LockStatus")
|
||||
if model.IsOrderFinalStatus(orderStatus.Status) {
|
||||
order.OrderFinishedAt = orderStatus.StatusTime
|
||||
updateFields = append(updateFields, "OrderFinishedAt")
|
||||
if order.LockStatus != model.OrderStatusUnknown {
|
||||
order.LockStatus = model.OrderStatusUnknown
|
||||
updateFields = append(updateFields, "LockStatus")
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if model.IsOrderUnlockStatus(orderStatus.Status) {
|
||||
order.LockStatus = model.OrderStatusUnknown
|
||||
updateFields = append(updateFields, "LockStatus")
|
||||
} else if !model.IsOrderFinalStatus(orderStatus.Status) {
|
||||
} else if model.IsOrderLockStatus(orderStatus.Status) {
|
||||
if order.LockStatus != model.OrderStatusUnknown {
|
||||
globals.SugarLogger.Warnf("addOrderStatus refOrderID:%s, orderID:%s, order.LockStatus:%d, status.LockStatus:%d", orderStatus.RefVendorOrderID, orderStatus.VendorOrderID, order.LockStatus, orderStatus.Status)
|
||||
}
|
||||
@@ -497,10 +502,6 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da
|
||||
updateFields = append(updateFields, "LockStatus", "LockStatusTime", "Flag")
|
||||
}
|
||||
}
|
||||
if model.IsOrderFinalStatus(orderStatus.Status) {
|
||||
order.OrderFinishedAt = orderStatus.StatusTime
|
||||
updateFields = append(updateFields, "OrderFinishedAt")
|
||||
}
|
||||
utils.CallFuncLogError(func() error {
|
||||
_, err = db.Db.Update(order, updateFields...)
|
||||
return err
|
||||
|
||||
@@ -210,6 +210,9 @@ func EarthDistance(lng1, lat1, lng2, lat2 float64) float64 {
|
||||
lng2 = lng2 * rad
|
||||
theta := lng2 - lng1
|
||||
dist := math.Acos(math.Sin(lat1)*math.Sin(lat2) + math.Cos(lat1)*math.Cos(lat2)*math.Cos(theta))
|
||||
if dist < 0 {
|
||||
dist = 0
|
||||
}
|
||||
return dist * radius
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user