重发
This commit is contained in:
@@ -1719,44 +1719,44 @@ func SendFailedMatterOrder(ctx *jxcontext.Context, vendorOrderID string) (err er
|
||||
if order == nil || order.StoreID != model.MatterStoreID || order.FromStoreID == 0 {
|
||||
return fmt.Errorf("只允许物料店重发物料订单调用此接口!")
|
||||
}
|
||||
queryOrderStatus, err := api.JdEclpAPI.QueryOrderStatus(order.EclpOutID)
|
||||
if len(queryOrderStatus.OrderStatusList) > 0 {
|
||||
code := queryOrderStatus.OrderStatusList[len(queryOrderStatus.OrderStatusList)-1].SoStatusCode
|
||||
if code == jdeclpapi.SoStatusCode10022 || code == jdeclpapi.SoStatusCode10038 { //表示该订单在京东物流为暂停或已经逆向发货完成
|
||||
if len(order.VendorOrderID) == 14 && order.EclpOutID != "" { //这是不分包的订单
|
||||
_, err = createMatterOrder(buildJxOrderInfo(order, order.Skus), order, int64(00))
|
||||
err = CancelMatterOrder(db, order, cancelMatterOrderReason)
|
||||
changeOrderStatus(order.VendorOrderID, model.OrderStatusCanceled, cancelMatterOrderReason)
|
||||
for _, v := range order.Skus {
|
||||
cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
|
||||
}
|
||||
} else if len(order.VendorOrderID) == 14 && order.EclpOutID == "" { //这是分包的主订单
|
||||
goodsList, err := dao.GetMatterChildOrders(db, order.VendorOrderID)
|
||||
// queryOrderStatus, err := api.JdEclpAPI.QueryOrderStatus(order.EclpOutID)
|
||||
// if len(queryOrderStatus.OrderStatusList) > 0 {
|
||||
// code := queryOrderStatus.OrderStatusList[len(queryOrderStatus.OrderStatusList)-1].SoStatusCode
|
||||
// if code == jdeclpapi.SoStatusCode10022 || code == jdeclpapi.SoStatusCode10038 { //表示该订单在京东物流为暂停或已经逆向发货完成
|
||||
if len(order.VendorOrderID) == 14 && order.EclpOutID != "" { //这是不分包的订单
|
||||
_, err = createMatterOrder(buildJxOrderInfo(order, order.Skus), order, int64(00))
|
||||
err = CancelMatterOrder(db, order, cancelMatterOrderReason)
|
||||
changeOrderStatus(order.VendorOrderID, model.OrderStatusCanceled, cancelMatterOrderReason)
|
||||
for _, v := range order.Skus {
|
||||
cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
|
||||
}
|
||||
} else if len(order.VendorOrderID) == 14 && order.EclpOutID == "" { //这是分包的主订单
|
||||
goodsList, err := dao.GetMatterChildOrders(db, order.VendorOrderID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(goodsList) > 0 {
|
||||
for _, v := range goodsList {
|
||||
cOrder, err := partner.CurOrderManager.LoadOrder(v.VendorOrderID, model.VendorIDJX)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(goodsList) > 0 {
|
||||
for _, v := range goodsList {
|
||||
cOrder, err := partner.CurOrderManager.LoadOrder(v.VendorOrderID, model.VendorIDJX)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
suffix := utils.Str2Int64(cOrder.VendorOrderID[len(cOrder.VendorOrderID)-2:]) + int64(len(goodsList))
|
||||
_, err = createMatterOrder(buildJxOrderInfo(cOrder, cOrder.Skus), cOrder, suffix)
|
||||
for _, v := range cOrder.Skus {
|
||||
cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
|
||||
}
|
||||
}
|
||||
suffix := utils.Str2Int64(cOrder.VendorOrderID[len(cOrder.VendorOrderID)-2:]) + int64(len(goodsList))
|
||||
_, err = createMatterOrder(buildJxOrderInfo(cOrder, cOrder.Skus), cOrder, suffix)
|
||||
for _, v := range cOrder.Skus {
|
||||
cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
|
||||
}
|
||||
err = CancelMatterOrder(db, order, cancelMatterOrderReason)
|
||||
changeOrderStatus(order.VendorOrderID, model.OrderStatusCanceled, cancelMatterOrderReason)
|
||||
} else if len(order.VendorOrderID) == 16 && order.EclpOutID != "" { // 这是分包的子订单
|
||||
return fmt.Errorf("请重发主订单!主订单号:[%v]", order.VendorOrderID[len(order.VendorOrderID)-2:])
|
||||
}
|
||||
} else {
|
||||
return fmt.Errorf("只允许物流订单为暂停或逆向完成才能调用此接口!")
|
||||
}
|
||||
err = CancelMatterOrder(db, order, cancelMatterOrderReason)
|
||||
changeOrderStatus(order.VendorOrderID, model.OrderStatusCanceled, cancelMatterOrderReason)
|
||||
} else if len(order.VendorOrderID) == 16 && order.EclpOutID != "" { // 这是分包的子订单
|
||||
return fmt.Errorf("请重发主订单!主订单号:[%v]", order.VendorOrderID[len(order.VendorOrderID)-2:])
|
||||
}
|
||||
// } else {
|
||||
// return fmt.Errorf("只允许物流订单为暂停或逆向完成才能调用此接口!")
|
||||
// }
|
||||
// }
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user