diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 238a264f4..e47eb488f 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -1946,17 +1946,8 @@ func SendFailedMatterOrder(ctx *jxcontext.Context, vendorOrderID string) (err er // 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(01)) - if err != nil { - globals.SugarLogger.Debugf("SendFailedMatterOrder err : [%v]", err) - return err - } - 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 == "" { //这是分包的主订单 + childs, err := dao.GetMatterChildOrders(db, vendorOrderID) + if len(childs) > 0 { goodsList, err := dao.GetMatterChildOrders(db, order.VendorOrderID) if err != nil { return err @@ -1975,9 +1966,24 @@ func SendFailedMatterOrder(ctx *jxcontext.Context, vendorOrderID string) (err er } } 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 { + _, err = createMatterOrder(buildJxOrderInfo(order, order.Skus), order, int64(01)) + if err != nil { + globals.SugarLogger.Debugf("SendFailedMatterOrder err : [%v]", err) + return err + } + changeOrderStatus(order.VendorOrderID, model.OrderStatusCanceled, cancelMatterOrderReason) + for _, v := range order.Skus { + cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID) + } } + // if len(order.VendorOrderID) == 14 && order.EclpOutID != "" { //这是不分包的订单 + + // } else if len(order.VendorOrderID) == 14 && order.EclpOutID == "" { //这是分包的主订单 + + // } else if len(order.VendorOrderID) == 16 && order.EclpOutID != "" { // 这是分包的子订单 + // return fmt.Errorf("请重发主订单!主订单号:[%v]", order.VendorOrderID[len(order.VendorOrderID)-2:]) + // } // } else { // return fmt.Errorf("只允许物流订单为暂停或逆向完成才能调用此接口!") // }