diff --git a/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java b/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java index 3d6652e2..3815803d 100644 --- a/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java +++ b/order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java @@ -407,6 +407,7 @@ public enum OrderInfoEnum { SYS_SOURCE_DSXT("DSXT","DSXT"), SYS_SOURCE_DSXT01("DSXT01","DSXT01"), SYS_SOURCE_DSXT02("DSXT02","DSXT02"), + SYS_SOURCE_SNYXX("SNYXX","SNYXX"), /** * 订单类型(0:原始订单,1:拆分后订单,2:合并后订单,3:系统冲红订单,4:自动开票订单,5:作废重开订单;6:历史数据订单;7:发票修复数据) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/PushInvoiceServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/PushInvoiceServiceImpl.java index ee3836b3..3a9e717d 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/PushInvoiceServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/PushInvoiceServiceImpl.java @@ -444,6 +444,9 @@ public class PushInvoiceServiceImpl implements PushInvoiceService { Map map = Maps.newHashMap(); map.put("ec-key",baseServiceConfig.getEcKey()); result = HttpUtils.sendPoWithHead(pushInfo.getPushUrl(), fptsParam,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword(),map); + } else if (OrderInfoEnum.SYS_SOURCE_SNYXX.getKey().equals(orderProcessInfo.getXtly()) && StringUtils.isNotBlank(pushInfo.getByzd1()) + && pushInfo.getByzd1().equals(orderProcessInfo.getXtly())) { + result = HttpUtils.sendPo(pushInfo.getPushUrl(), fptsParam,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword()); } } else { result = HttpUtils.doPost(pushInfo.getPushUrl(), requestMap); diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoice/sap/FpkjReqSap.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoice/sap/FpkjReqSap.java index dd925359..2c85dc92 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoice/sap/FpkjReqSap.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoice/sap/FpkjReqSap.java @@ -23,6 +23,10 @@ public class FpkjReqSap { * 数据来源 */ private String ZSJLY; + /** + * 山能易行系统来源 + */ + private String ZSNYX; /** * 操作状态 */ @@ -39,6 +43,10 @@ public class FpkjReqSap { * 购方编码 */ private String ZGFBH; + /** + * 开票类型 + */ + private String ZKPLX; /** * 不含税金额(SAP) */ 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 29932e95..5ea71ffa 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 @@ -64,6 +64,7 @@ import org.springframework.beans.BeanUtils; import java.math.BigDecimal; import java.text.DecimalFormat; import java.util.*; +import java.util.stream.Collectors; /** * @author :杨士勇 @@ -3537,6 +3538,9 @@ public class BeanTransitionUtils { if(StringUtils.isNotBlank(req.getZDSXT()) && StringUtils.isNotBlank(req.getZDSYWFL())){ ddtxxBO.setXTLY(OrderInfoEnum.SYS_SOURCE_DSXT.getKey()+req.getZDSYWFL()); } + if(StringUtils.isNotBlank(req.getZSNYX())){ + ddtxxBO.setXTLY(OrderInfoEnum.SYS_SOURCE_SNYXX.getKey()); + } ddtxxBO.setGSDM(req.getBUKRS()); ddtxxBO.setENTID(deptEntity.getDeptId()); ddtxxBO.setBHZT(ConfigureConstant.STRING_0); @@ -3630,9 +3634,26 @@ public class BeanTransitionUtils { ddtxxBO.setHJSE("0"); } } - ddzxxBO.setDDTXX(ddtxxBO); - ddzxxBO.setDDMXXX(ddmxList); - ddzxxList.add(ddzxxBO); + + //如果是山能易行按照物料编码分组拆分订单 + if(StringUtils.isNotBlank(ddtxxBO.getXTLY())){ + Map> collect = ddmxList.stream().collect(Collectors.groupingBy(t -> t.getZXBM())); + for (int i = 0; i < collect.size(); i++) { + DdzxxBO ddzxxBONew = new DdzxxBO(); + DdtxxBO ddtxxBONew = new DdtxxBO(); + List ddmxLists = new ArrayList<>(); + BeanUtils.copyProperties(ddtxxBO,ddtxxBONew); + ddmxLists.addAll(collect.get(i)); + + ddzxxBONew.setDDTXX(ddtxxBO); + ddzxxBONew.setDDMXXX(ddmxList); + ddzxxList.add(ddzxxBONew); + } + }else{ + ddzxxBO.setDDTXX(ddtxxBO); + ddzxxBO.setDDMXXX(ddmxList); + ddzxxList.add(ddzxxBO); + } ddpcxxReqBO.setDDPCXX(ddpcxxBO); ddpcxxReqBO.setDDZXX(ddzxxList); log.info("转换后的DdpcxxReqBO:{}", JSONObject.toJSONString(ddpcxxReqBO)); diff --git a/order-management-consumer/src/main/resources/download/NcpImportExcel.xlsx b/order-management-consumer/src/main/resources/download/NcpImportExcel.xlsx index 32707f03..bd5f508a 100644 Binary files a/order-management-consumer/src/main/resources/download/NcpImportExcel.xlsx and b/order-management-consumer/src/main/resources/download/NcpImportExcel.xlsx differ diff --git a/order-management-consumer/src/main/resources/download/OrderExcel.xlsx b/order-management-consumer/src/main/resources/download/OrderExcel.xlsx index 27258236..47ad4f0f 100644 Binary files a/order-management-consumer/src/main/resources/download/OrderExcel.xlsx and b/order-management-consumer/src/main/resources/download/OrderExcel.xlsx differ diff --git a/order-management-consumer/src/main/resources/download/QdfpImportExcel.xlsx b/order-management-consumer/src/main/resources/download/QdfpImportExcel.xlsx index fd7b6bac..403bc0d6 100644 Binary files a/order-management-consumer/src/main/resources/download/QdfpImportExcel.xlsx and b/order-management-consumer/src/main/resources/download/QdfpImportExcel.xlsx differ