| | |
| | | } |
| | | // 1.2 检查每个行的明细数量是否完成上架 |
| | | List<MesWmReturnSalesLineDO> lines = returnSalesLineService.getReturnSalesLineListByReturnId(id); |
| | | if (CollUtil.isEmpty(lines)) { |
| | | throw exception(WM_RETURN_SALES_NO_LINE); |
| | | } |
| | | if (CollUtil.isNotEmpty(lines)) { |
| | | // 批量查询所有明细 |
| | | List<MesWmReturnSalesDetailDO> allDetails = returnSalesDetailService.getReturnSalesDetailListByReturnId(id); |
| | |
| | | allDetails, MesWmReturnSalesDetailDO::getLineId); |
| | | // 检查每行的明细数量 |
| | | for (MesWmReturnSalesLineDO line : lines) { |
| | | if (ObjUtil.notEqual(line.getQualityStatus(), MesWmQualityStatusEnum.PASS.getStatus())) { |
| | | throw exception(WM_RETURN_SALES_LINE_NOT_QUALIFIED); |
| | | } |
| | | List<MesWmReturnSalesDetailDO> details = detailMap.getOrDefault(line.getId(), Collections.emptyList()); |
| | | BigDecimal totalDetailQuantity = CollectionUtils.getSumValue(details, |
| | | MesWmReturnSalesDetailDO::getQuantity, BigDecimal::add, BigDecimal.ZERO); |