This commit is contained in:
邹宗楠
2025-12-18 09:33:16 +08:00
parent aa0e94ac6e
commit 422ff821f1
13 changed files with 69360 additions and 69319 deletions

View File

@@ -1370,32 +1370,32 @@ func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) {
DeliveryFlag: model.OrderDeliveryFlagMaskScheduleDisabled,
}
dao.CreateEntity(db, waybill)
} else { //如果重量超过5kg则需要进行拆单分包商品分包规则。最后一个包不超过5kg,其他包不超过3kg
outOrders, _, _ := tryToSplitMatterOrder(buildJxOrderInfo(order, orderSkus))
//以下为仿照CreateOrder改了一些参数
for k, v := range outOrders {
v.OrderType = model.OrderTypeMatter
v.FromStoreID = order.FromStoreID
outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, v, order.AddressID, order.FromStoreID, order.UserID, false, nil)
if err != nil {
return err
}
//分包后的子订单ID默认是原订单ID后面加两位目前的规则要改的话要注意取消订单那的判断
outJxOrder.OrderID = utils.Str2Int64(order.VendorOrderID)*100 + int64(k+1)
checkMatterDeliveryAddress(deliveryAddress)
order2, err2 := jxOrder2GoodsOrder(jxcontext.AdminCtx, outJxOrder, deliveryAddress, order.UserID, false, nil)
if err = err2; err == nil {
order2.FromStoreID = v.FromStoreID
order2.AddressID = order.AddressID
order2.Status = model.OrderStatusDelivering
err = partner.CurOrderManager.OnOrderNew(order2, model.Order2Status(order2))
orderSolutionForWuLiao(order2)
}
}
//刷新一下库存
for _, v := range goods[0].Skus {
cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
}
} else { //如果重量超过5kg则需要进行拆单分包商品分包规则。最后一个包不超过5kg,其他包不超过3kg ,收到发单,不需要分包裹了
//outOrders, _, _ := tryToSplitMatterOrder(buildJxOrderInfo(order, orderSkus))
////以下为仿照CreateOrder改了一些参数
//for k, v := range outOrders {
// v.OrderType = model.OrderTypeMatter
// v.FromStoreID = order.FromStoreID
// outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, v, order.AddressID, order.FromStoreID, order.UserID, false, nil)
// if err != nil {
// return err
// }
// //分包后的子订单ID默认是原订单ID后面加两位目前的规则要改的话要注意取消订单那的判断
// outJxOrder.OrderID = utils.Str2Int64(order.VendorOrderID)*100 + int64(k+1)
// checkMatterDeliveryAddress(deliveryAddress)
// order2, err2 := jxOrder2GoodsOrder(jxcontext.AdminCtx, outJxOrder, deliveryAddress, order.UserID, false, nil)
// if err = err2; err == nil {
// order2.FromStoreID = v.FromStoreID
// order2.AddressID = order.AddressID
// order2.Status = model.OrderStatusDelivering
// err = partner.CurOrderManager.OnOrderNew(order2, model.Order2Status(order2))
// orderSolutionForWuLiao(order2)
// }
//}
////刷新一下库存
//for _, v := range goods[0].Skus {
// cms.RefreshMatterStock(jxcontext.AdminCtx, v.SkuID)
//}
}
for _, v := range order.Skus {
if bagSkuMap[v.SkuID] != 0 {