不在门店营业时间范围内要取消运单
This commit is contained in:
@@ -556,6 +556,8 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
|||||||
}
|
}
|
||||||
s.updateOrderByBill(order, bill, false)
|
s.updateOrderByBill(order, bill, false)
|
||||||
s.cancelOtherWaybillsCheckOrderDeliveryFlag(savedOrderInfo, bill, partner.CancelWaybillReasonNotAcceptIntime, partner.CancelWaybillReasonStrNotAcceptIntime)
|
s.cancelOtherWaybillsCheckOrderDeliveryFlag(savedOrderInfo, bill, partner.CancelWaybillReasonNotAcceptIntime, partner.CancelWaybillReasonStrNotAcceptIntime)
|
||||||
|
//若接单时间不在门店的营业时间范围内要取消运单
|
||||||
|
s.cancelWaybillNotInStoreOpentime(savedOrderInfo, bill)
|
||||||
//京东商城的话,需要去把订单出库,如果是转移过的订单,则需要修改转移订单号
|
//京东商城的话,需要去把订单出库,如果是转移过的订单,则需要修改转移订单号
|
||||||
if order.VendorID == model.VendorIDJDShop {
|
if order.VendorID == model.VendorIDJDShop {
|
||||||
s.solutionJdsOrder(bill)
|
s.solutionJdsOrder(bill)
|
||||||
@@ -677,6 +679,31 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *DefScheduler) cancelWaybillNotInStoreOpentime(savedOrderInfo *WatchOrderInfo, bill *model.Waybill) (err error) {
|
||||||
|
if savedOrderInfo != nil {
|
||||||
|
//TODO 2020-09-07 不在门店的营业时间内取消运单
|
||||||
|
order := savedOrderInfo.order
|
||||||
|
if savedOrderInfo.storeDetail != nil {
|
||||||
|
if savedOrderInfo.storeDetail.OpenTime1 != 0 && savedOrderInfo.storeDetail.CloseTime1 != 0 {
|
||||||
|
time1 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime1, time.Now())
|
||||||
|
time2 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime1, time.Now())
|
||||||
|
if time.Now().Sub(time1) < 0 || time.Now().Sub(time2) > 0 {
|
||||||
|
if savedOrderInfo.storeDetail.OpenTime2 != 0 && savedOrderInfo.storeDetail.CloseTime2 != 0 {
|
||||||
|
time3 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime2, time.Now())
|
||||||
|
time4 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime2, time.Now())
|
||||||
|
if time.Now().Sub(time3) < 0 || time.Now().Sub(time4) > 0 {
|
||||||
|
s.ProxyCancelWaybill(order, bill, partner.CancelWaybillReasonNotAcceptIntime, partner.CancelWaybillReasonNotInStoreOpenTime)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
s.ProxyCancelWaybill(order, bill, partner.CancelWaybillReasonNotAcceptIntime, partner.CancelWaybillReasonNotInStoreOpenTime)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
func (s *DefScheduler) sendCourierOrderSMS(bill *model.Waybill) (err error) {
|
func (s *DefScheduler) sendCourierOrderSMS(bill *model.Waybill) (err error) {
|
||||||
err = smsmsg.NotifyNewCourierOrder(bill)
|
err = smsmsg.NotifyNewCourierOrder(bill)
|
||||||
return err
|
return err
|
||||||
@@ -766,7 +793,6 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
|||||||
} else {
|
} else {
|
||||||
err = fmt.Errorf("不在门店营业时间范围内!")
|
err = fmt.Errorf("不在门店营业时间范围内!")
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ var (
|
|||||||
CancelWaybillReasonStrSwitch2SelfFailed = "转自送失败"
|
CancelWaybillReasonStrSwitch2SelfFailed = "转自送失败"
|
||||||
CancelWaybillReasonStrOrderAlreadyFinished = "订单已经结束"
|
CancelWaybillReasonStrOrderAlreadyFinished = "订单已经结束"
|
||||||
CancelWaybillReasonStrActive = "操作由人员主动发起"
|
CancelWaybillReasonStrActive = "操作由人员主动发起"
|
||||||
|
CancelWaybillReasonNotInStoreOpenTime = "不在门店的营业时间范围内"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|||||||
Reference in New Issue
Block a user