diff --git a/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java b/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java index c981f14e..7c0ed4a4 100644 --- a/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java +++ b/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java @@ -1923,6 +1923,7 @@ public enum OrderInfoContentEnum { UPDATE_ORDER_STATUS_ORDER_DDZT_IS_NOTTHREE("90002", "已开具或者开具中的订单不允许删除"), UPDATE_ORDER_STATUS_QUERY_NULL("90003", "未查到选中的订单信息"), UPDATE_ORDER_STATUS_MERGE("90004", "合并后或拆分后订单不允许删除"), + UPDATE_ORDER_STATUS_YWXT("90005", "业务系统推送订单不允许删除"), /** * 页面请求数据 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 f3f539b9..8b3a4c7a 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 @@ -25,6 +25,7 @@ import com.dxhy.order.invoice.module.invoice.service.OrderInvoiceInfoService; import com.dxhy.order.invoice.module.invoice.service.UnifyService; import com.dxhy.order.invoice.module.invoicespecial.model.SpecialInvoiceReversalEntity; import com.dxhy.order.invoice.module.invoicespecial.service.SpecialInvoiceReversalService; +import com.dxhy.order.utils.StringUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -329,7 +330,7 @@ public class OrderInvoiceController { @PostMapping("/updateOrderStatus") @SysLog(operation = "订单删除rest接口", operationDesc = "逻辑删除订单单据", key = "订单删除") public R updateOrderStatus( - @ApiParam(name = "pageRequestList", value = "需要同步数据数组") @RequestBody List pageRequestList) { + @ApiParam(name = "pageRequestList", value = "需要同步数据数组") @RequestBody List pageRequestList,String ly) { log.debug("{}订单删除请求数据为:{}", LOGGER_MSG, JsonUtils.getInstance().toJsonString(pageRequestList)); /** * 需要使用到PageRequestVO对象中的,(orderProcessId,xhfNsrsbh) @@ -374,6 +375,10 @@ public class OrderInvoiceController { errorMsgList.append(preStr).append(OrderInfoContentEnum.UPDATE_ORDER_STATUS_QUERY_NULL.getMessage()).append("\r\n"); continue; } + if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly()) && StringUtils.isEmpty(ly)){ + errorMsgList.append(preStr).append(OrderInfoContentEnum.UPDATE_ORDER_STATUS_YWXT.getMessage()).append("\r\n"); + continue; + } //判断订单来源是否为合并后或拆分后开票,如果为合并后拆分后开票数据不允许删除.产品提出规划,禅道bug45276 if (OrderInfoEnum.ORDER_TYPE_2.getKey().equals(orderProcessInfo.getDdlx()) || OrderInfoEnum.ORDER_TYPE_1.getKey().equals(orderProcessInfo.getDdlx())) { errorMsgList.append(preStr).append(OrderInfoContentEnum.UPDATE_ORDER_STATUS_MERGE.getMessage()).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 482a1906..aae49728 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 @@ -9,6 +9,8 @@ import com.dxhy.order.constant.*; import com.dxhy.order.consumer.constant.InterfaceNameEnum; import com.dxhy.order.consumer.dao.InterfaceRequestDataMapper; import com.dxhy.order.consumer.dao.OrderProcessInfoMapper; +import com.dxhy.order.consumer.model.page.PageRequestVO; +import com.dxhy.order.consumer.modules.order.controller.OrderInvoiceController; import com.dxhy.order.consumer.modules.order.service.OrderProcessService; import com.dxhy.order.consumer.openapi.protocol.po.EsOutput; import com.dxhy.order.consumer.openapi.protocol.po.IsInput; @@ -28,6 +30,7 @@ import com.dxhy.order.invoice.config.InvoiceConfig; import com.dxhy.order.invoice.utils.HttpInvoiceRequestUtilQd; import com.dxhy.order.model.InterfaceRequestData; import com.dxhy.order.model.OrderProcessInfo; +import com.dxhy.order.model.R; import com.dxhy.order.model.newsk.InvoiceRequestParam; import com.dxhy.order.utils.DecimalCalculateUtil; import com.dxhy.order.utils.DistributedKeyMaker; @@ -69,6 +72,8 @@ public class InterfaceServiceImplV6 implements InterfaceServiceV6 { private InterfaceRequestDataMapper interfaceRequestDataMapper; @Resource private OrderProcessInfoMapper orderProcessInfoMapper; + @Resource + private OrderInvoiceController orderInvoiceController; @Override public DdpcxxRspV5 generateQdInvoiceV6(DdpcxxReqBO ddpcxxReq, String secretId, String kpjh) { @@ -124,6 +129,7 @@ public class InterfaceServiceImplV6 implements InterfaceServiceV6 { @Override public PoCommonResponseParam updateOrderStatus(PoCommonRequestParam requestParam, String secretId) { + //SAP驳回即删除订单 PoCommonResponseParam poCommonResponseParam = new PoCommonResponseParam(); EsOutput esOutput = new EsOutput(); IsInput is_input = requestParam.getIS_INPUT(); @@ -141,14 +147,20 @@ public class InterfaceServiceImplV6 implements InterfaceServiceV6 { esOutput.setZMESSAGE("根据报账单号未查询到唯一结算单"); }else { OrderProcessInfo orderProcessInfo = orderProcessInfos.get(0); - orderProcessInfo.setBhzt(ConfigureConstant.STRING_1); - int i = orderProcessInfoMapper.updateOrderProcessInfoByFpqqlsh(orderProcessInfo, null); - if(i == 1){ + List pageRequestList = new ArrayList<>(); + 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.setBhzt(ConfigureConstant.STRING_1); + int i = orderProcessInfoMapper.updateOrderProcessInfoByFpqqlsh(orderProcessInfo, null); esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_S.getKey()); esOutput.setZMESSAGE("驳回状态更新成功"); - }else { + }else{ esOutput.setZTYPE(OrderInfoContentEnum.INVOICE_ERROR_CODE_OP_E.getKey()); - esOutput.setZMESSAGE("驳回状态更新失败"); + esOutput.setZMESSAGE(back.get(OrderManagementConstant.MESSAGE).toString()); } } poCommonResponseParam.setES_OUTPUT(esOutput); diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java index 7a8fb012..65819df3 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java @@ -3485,7 +3485,7 @@ public class BeanTransitionUtils { ddtxxBO.setHJSE(req.getZZSE()); ddtxxBO.setDDH(req.getZJSDH()); ddtxxBO.setBZDH(req.getZBZDH()); - ddtxxBO.setXTLY(req.getZSJLY()); + ddtxxBO.setXTLY(isinput.getSYSID()); ddtxxBO.setGSDM(req.getBUKRS()); ddtxxBO.setBHZT(ConfigureConstant.STRING_0); ddtxxBO.setYGXM(req.getPENAM());