From dc3a14b448cea2e825bdcf9cad4c12c17b7a8fb5 Mon Sep 17 00:00:00 2001 From: gazebo Date: Thu, 23 Aug 2018 16:16:18 +0800 Subject: [PATCH] - limit feasible order status for CreateWaybillOnProviders. --- .../jxcallback/scheduler/basesch/basesch_ext.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/business/jxcallback/scheduler/basesch/basesch_ext.go b/business/jxcallback/scheduler/basesch/basesch_ext.go index 5a1d90bca..35f611725 100644 --- a/business/jxcallback/scheduler/basesch/basesch_ext.go +++ b/business/jxcallback/scheduler/basesch/basesch_ext.go @@ -14,12 +14,16 @@ func (c *BaseScheduler) CreateWaybillOnProviders(vendorOrderID string, vendorID globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s", vendorOrderID, userName) order, err := partner.CurOrderManager.LoadOrder(vendorOrderID, vendorID) if err == nil { - bill, err2 := c.CreateWaybill(model.VendorIDMTPS, order, nil) - if err = err2; err == nil { - globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s bill:%s", vendorOrderID, userName, bill.WaybillVendorID) - return []*model.Waybill{ - bill, - }, nil + if order.LockStatus != model.OrderStatusLocked && order.Status >= model.OrderStatusFinishedPickup && order.Status < model.OrderStatusEndBegin { + bill, err2 := c.CreateWaybill(model.VendorIDMTPS, order, nil) + if err = err2; err == nil { + globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s bill:%s", vendorOrderID, userName, bill.WaybillVendorID) + return []*model.Waybill{ + bill, + }, nil + } + } else { + err = scheduler.ErrOrderStatusIsNotSuitable4CurOperation } } globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s error:%v", vendorOrderID, userName, err)