From b0b52c2330a3e551b7c2e290a93edcba17381cb5 Mon Sep 17 00:00:00 2001 From: gaorl Date: Mon, 1 May 2023 21:35:27 +0800 Subject: [PATCH] =?UTF-8?q?feature=EF=BC=9AFI841=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E9=80=BB=E8=BE=91=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OrderInvoiceController.java | 3 ++ .../service/impl/InterfaceServiceImplV6.java | 52 ++++++++++++------- 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInvoiceController.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInvoiceController.java index a7faecad..591d29b6 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInvoiceController.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInvoiceController.java @@ -445,6 +445,9 @@ public class OrderInvoiceController { OrderProcessInfo orderProcessInfo1 = new OrderProcessInfo(); orderProcessInfo1.setId(id); orderProcessInfo1.setOrderStatus(ConfigureConstant.STRING_1); + if("back".equals(ly)){ + orderProcessInfo1.setBhzt(ConfigureConstant.STRING_1); + } int success = orderProcessService.updateOrderProcessInfoByProcessId(orderProcessInfo1, shList); if (success < 0) { errorMsgList.append(preStr).append("数据删除失败").append("\r\n"); diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV6.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV6.java index ab927fef..de6a58ce 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV6.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV6.java @@ -42,6 +42,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.*; +import java.util.stream.Collectors; /** @@ -142,29 +143,40 @@ public class InterfaceServiceImplV6 implements InterfaceServiceV6 { Map queryMap = new HashMap<>(); queryMap.put("bzdh",bzdh); List orderProcessInfos = orderProcessInfoMapper.queryOrderInfo(queryMap, null, null); - if(orderProcessInfos.size()!=1){ - esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_E.getKey()); + //过滤留下有效订单,且判断有效订单是否存在开票中、已开票 + esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_E.getKey()); + if(orderProcessInfos == null || orderProcessInfos.isEmpty()){ esOutput.setZMESSAGE("根据报账单号未查询到唯一结算单"); - }else { - OrderProcessInfo orderProcessInfo = orderProcessInfos.get(0); - List pageRequestList = new ArrayList<>(); + poCommonResponseParam.setES_OUTPUT(esOutput); + return poCommonResponseParam; + } + List collect = orderProcessInfos.stream().filter(t -> "0".equals(t.getOrderStatus())).collect(Collectors.toList()); + if(collect.isEmpty()){ + esOutput.setZMESSAGE("账单号已被删除"); + poCommonResponseParam.setES_OUTPUT(esOutput); + return poCommonResponseParam; + } + List pageRequestList = collect.stream().filter(t -> "0".contains(t.getDdzt())).map(t->{ PageRequestVO pageRequestVO = new PageRequestVO(); - pageRequestVO.setOrderProcessId(orderProcessInfo.getId()); - pageRequestVO.setXhfNsrsbh(orderProcessInfo.getXhfNsrsbh()); - pageRequestList.add(pageRequestVO); - R back = orderInvoiceController.updateOrderStatus(pageRequestList, "back"); - if("0000".equals(back.get(OrderManagementConstant.CODE))){ - OrderProcessInfo updateOrderProcessInfo = new OrderProcessInfo(); - updateOrderProcessInfo.setId(orderProcessInfo.getId()); - updateOrderProcessInfo.setBhzt(ConfigureConstant.STRING_1); - int i = orderProcessInfoMapper.updateOrderProcessInfoByFpqqlsh(updateOrderProcessInfo, null); - esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_S.getKey()); - esOutput.setZMESSAGE("驳回状态更新成功"); - }else{ - esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_E.getKey()); - esOutput.setZMESSAGE(back.get(OrderManagementConstant.MESSAGE).toString()); - } + pageRequestVO.setOrderProcessId(t.getId()); + pageRequestVO.setXhfNsrsbh(t.getXhfNsrsbh()); + return pageRequestVO; + }).collect(Collectors.toList()); + if(pageRequestList.size() != collect.size()){ + esOutput.setZMESSAGE("账单号已在发票系统处理,不允许驳回"); + poCommonResponseParam.setES_OUTPUT(esOutput); + return poCommonResponseParam; } + + R back = orderInvoiceController.updateOrderStatus(pageRequestList, "back"); + if(!"0000".equals(back.get(OrderManagementConstant.CODE))){ + esOutput.setZMESSAGE(back.get(OrderManagementConstant.MESSAGE).toString()); + poCommonResponseParam.setES_OUTPUT(esOutput); + return poCommonResponseParam; + } + + esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_S.getKey()); + esOutput.setZMESSAGE("驳回状态更新成功"); poCommonResponseParam.setES_OUTPUT(esOutput); return poCommonResponseParam; }