Merge branch 'jdshop' of e.coding.net:rosydev/jx-callback into jdshop
This commit is contained in:
@@ -1005,15 +1005,11 @@ func (s *DefScheduler) solutionJdsOrder(bill *model.Waybill) (err error) {
|
||||
}
|
||||
|
||||
func (s *DefScheduler) cancelOtherWaybills(savedOrderInfo *WatchOrderInfo, bill2Keep *model.Waybill, cancelReasonID int, cancelReason string) (err error) {
|
||||
globals.SugarLogger.Debugf("savedOrderInfo.waybills=======%s,len(savedOrderInfo.waybills)====%d", utils.Format4Output(savedOrderInfo.waybills, false), len(savedOrderInfo.waybills))
|
||||
for _, v := range savedOrderInfo.waybills {
|
||||
globals.SugarLogger.Debugf("我在这里")
|
||||
if v.Status < model.WaybillStatusEndBegin &&
|
||||
!model.IsWaybillPlatformOwn(v) &&
|
||||
(bill2Keep == nil || !(v.WaybillVendorID == bill2Keep.WaybillVendorID && v.VendorWaybillID == bill2Keep.VendorWaybillID)) {
|
||||
globals.SugarLogger.Debugf("cancelOtherWaybills v=======%s", utils.Format4Output(v, false))
|
||||
err2 := s.CancelWaybill(v, cancelReasonID, cancelReason)
|
||||
globals.SugarLogger.Debugf("DefScheduler cancelOtherWaybills err2=======%v", err2)
|
||||
if err2 == nil {
|
||||
// 在这里就从map里删除,而不是等收到运单结束事件才删除,可避免不必要的重复取消(第二次取消还会失败)
|
||||
s.removeWaybillFromMap(savedOrderInfo, v.WaybillVendorID)
|
||||
@@ -1028,7 +1024,6 @@ func (s *DefScheduler) cancelOtherWaybills(savedOrderInfo *WatchOrderInfo, bill2
|
||||
}
|
||||
|
||||
}
|
||||
globals.SugarLogger.Debugf("cancelOtherWaybills last err=========%v", err)
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
@@ -417,21 +417,16 @@ func (s *DefScheduler) CancelAll3rdWaybills(ctx *jxcontext.Context, vendorOrderI
|
||||
jxutils.CallMsgHandler(func() {
|
||||
err = func() (err error) {
|
||||
// 取消三方运单,取消各平台单号信息,间隔一段时间后定时任务重新调度
|
||||
globals.SugarLogger.Debugf("CancelAll3rdWaybills vendorOrderID=========%s, vendorID====%d", vendorOrderID, vendorID)
|
||||
savedOrderInfo := s.loadSavedOrderByID(vendorOrderID, vendorID, true)
|
||||
globals.SugarLogger.Debugf("savedOrderInfo=====%s,savedOrderInfo.waybills========%s", utils.Format4Output(savedOrderInfo, false), utils.Format4Output(savedOrderInfo.waybills, false))
|
||||
if savedOrderInfo != nil {
|
||||
globals.SugarLogger.Debugf("进入s.cancelOtherWaybills")
|
||||
err = s.cancelOtherWaybills(savedOrderInfo, nil, partner.CancelWaybillReasonOther, partner.CancelWaybillReasonStrActive)
|
||||
} else {
|
||||
err = scheduler.ErrCanNotFindOrder
|
||||
}
|
||||
globals.SugarLogger.Debugf("err===========%v,isStopSchedule======%v", err, isStopSchedule)
|
||||
// 停止调度,同事停止订单调度,不在通知第三方
|
||||
if err == nil && isStopSchedule {
|
||||
order := savedOrderInfo.order
|
||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
||||
globals.SugarLogger.Debugf("停止调度操作order=========%s", utils.Format4Output(order, false))
|
||||
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
||||
s.stopTimer(savedOrderInfo)
|
||||
}
|
||||
@@ -451,7 +446,6 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
globals.SugarLogger.Debugf("QueryOrderWaybillFeeInfoEx order===========%s", utils.Format4Output(order, false))
|
||||
if order.DeliveryType == model.OrderDeliveryTypeSelfTake {
|
||||
return nil, fmt.Errorf("订单:%s是自提单", vendorOrderID)
|
||||
}
|
||||
@@ -461,26 +455,22 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
globals.SugarLogger.Debugf("QueryOrderWaybillFeeInfoEx storeCourierList===========%s", utils.Format4Output(storeCourierList, false))
|
||||
// 美团配送订单兑现
|
||||
waybillList, err := partner.CurOrderManager.GetOrderWaybillInfo(ctx, vendorOrderID, vendorID, true, false)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
globals.SugarLogger.Debugf("QueryOrderWaybillFeeInfoEx waybillList===========%s", utils.Format4Output(waybillList, false))
|
||||
waybillMap := make(map[int]*model.Waybill)
|
||||
for _, bill := range waybillList {
|
||||
waybillMap[bill.WaybillVendorID] = &bill.Waybill
|
||||
}
|
||||
deliveryFeeMap = make(map[int]*partner.WaybillFeeInfo)
|
||||
globals.SugarLogger.Debugf("pre deliveryFeeMap=======%s", utils.Format4Output(deliveryFeeMap, false))
|
||||
var timeoutSecond int
|
||||
if savedOrderInfo := s.loadSavedOrderByID(vendorOrderID, vendorID, false); savedOrderInfo != nil {
|
||||
timeoutSecond = savedOrderInfo.GetCreateWaybillTimeout()
|
||||
}
|
||||
for _, storeCourier := range storeCourierList {
|
||||
var feeInfo *partner.WaybillFeeInfo
|
||||
globals.SugarLogger.Debugf("waybillMap[storeCourier.VendorID]============%v", waybillMap[storeCourier.VendorID])
|
||||
if waybillMap[storeCourier.VendorID] != nil {
|
||||
feeInfo = &partner.WaybillFeeInfo{
|
||||
Waybill: waybillMap[storeCourier.VendorID],
|
||||
@@ -501,7 +491,6 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
|
||||
ErrStr: err.Error(),
|
||||
}
|
||||
} else {
|
||||
globals.SugarLogger.Debugf("feeInfo.DeliveryFee===========%d", feeInfo.DeliveryFee)
|
||||
feeInfo.TimeoutSecond = timeoutSecond
|
||||
}
|
||||
} else {
|
||||
@@ -521,7 +510,6 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
|
||||
deliveryFeeMap[storeCourier.VendorID] = feeInfo
|
||||
}
|
||||
err = nil
|
||||
globals.SugarLogger.Debugf("after deliveryFeeMap==========%s", utils.Format4Output(deliveryFeeMap, false))
|
||||
return deliveryFeeMap, err
|
||||
}()
|
||||
}, jxutils.ComposeUniversalOrderID(vendorOrderID, vendorID))
|
||||
|
||||
Reference in New Issue
Block a user