修复是否判断完的判断逻辑 + 主单状态随动更新bug
This commit is contained in:
parent
2889674eed
commit
fc6d56dd70
|
|
@ -137,7 +137,9 @@ public class OrderDetailServiceImpl implements OrderDetailService {
|
|||
break;
|
||||
}
|
||||
}
|
||||
if (flag) {
|
||||
// 判断主单是否全部派单
|
||||
boolean allAssign = orderMasterService.isAllAssign(detailInfo.getOrderMasterId());
|
||||
if (flag && allAssign) {
|
||||
OrderMaster orderMaster = orderMasterMapper.selectById(detailInfo.getOrderMasterId());
|
||||
if (ObjectUtils.isEmpty(orderDetail.getExpectTimeStart())) {
|
||||
orderMaster.setOrderStatus(orderStatus);
|
||||
|
|
|
|||
|
|
@ -445,11 +445,12 @@ public class OrderMasterServiceImpl implements OrderMasterService {
|
|||
Assert.notNull(orderMaster, "OrderMaster is null!!!");
|
||||
// 先判断主订单是否派完单
|
||||
List<OrderGoods> masterGoods = orderGoodsService.selectByOrderMasterId(orderMasterId);
|
||||
long masterCount = masterGoods.stream().mapToInt(OrderGoods::getGoodsNum).sum();
|
||||
long detailCount = orderDetailService.selectByOrderMasterId(orderMasterId).stream().mapToInt(x -> {
|
||||
List<OrderGoods> detailGoods = orderGoodsService.selectByOrderDetailId(x.getId());
|
||||
return detailGoods.stream().mapToInt(OrderGoods::getGoodsNum).sum();
|
||||
}).sum();
|
||||
return masterCount == detailCount;
|
||||
for (OrderGoods orderGoods : masterGoods) {
|
||||
// 是否有未派完的子单
|
||||
if(!orderGoods.getGoodsNum().equals(orderGoods.getServerGoodsNum())){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue