修改多个结算单一起生成预制发票的逻辑

release
wangrangrang 2 years ago
parent 38314a527f
commit 4e127b6ca4
  1. 10
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java

@ -152,9 +152,10 @@ public class InvoiceServiceImpl implements InvoiceService {
//存储成品油和非成品油不是混开的结算单
List<CommonOrderInfo> commonOrderInfoList=new ArrayList<CommonOrderInfo>();
//存储成品油和非成品油混开的结算单
List<PageCommonOrderInfo> mixCommonOrderInfoList=new ArrayList<>();
List<List<PageCommonOrderInfo>> lists=new ArrayList<>();
//购方是否为空、税编是否为空校验、成品油校验
for(CommonOrderInfo commonOrderInfo:commonOrderInfos){
List<PageCommonOrderInfo> mixCommonOrderInfoList=new ArrayList<>();
if(StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfNsrsbh()) || StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfMc()) ){
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方信息为空,请补全!");
}
@ -222,12 +223,15 @@ public class InvoiceServiceImpl implements InvoiceService {
if(cpyOrderItems.size()>ConfigureConstant.INT_8){
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"是成品油发票,明细行数不能超过8行,请先进行手动拆分!");
}
lists.add(mixCommonOrderInfoList);
}
//如果是混开的 走明细拆分
if(!CollectionUtils.isEmpty(mixCommonOrderInfoList)){
if(!CollectionUtils.isEmpty(lists)){
try {
orderSplitService.saveOrderSplitOrder(mixCommonOrderInfoList);
for (List<PageCommonOrderInfo> list : lists) {
orderSplitService.saveOrderSplitOrder(list);
}
} catch (Exception e) {
throw new RuntimeException(e.getMessage());
}

Loading…
Cancel
Save