From 348104658c1613111ae49511a735d77215df3a7a Mon Sep 17 00:00:00 2001 From: "zhenghaiyang@ele-cloud.com" Date: Tue, 13 Jun 2023 16:47:57 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feature=201.=E5=AF=B9=E6=8E=A5=E7=94=B5?= =?UTF-8?q?=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/constant/ConfigureConstant.java | 1 + .../dxhy/order/constant/OrderInfoEnum.java | 1 + .../service/impl/PushInvoiceServiceImpl.java | 2 ++ .../po/generateinvoice/sap/FpkjReqSap.java | 19 +++++++++++++++--- .../generateinvoicepush/sap/FpkjtsReqSap.java | 11 +++++++++- .../consumer/utils/BeanTransitionUtils.java | 20 +++++++++++++++++-- 6 files changed, 48 insertions(+), 6 deletions(-) diff --git a/order-management-common/src/main/java/com/dxhy/order/constant/ConfigureConstant.java b/order-management-common/src/main/java/com/dxhy/order/constant/ConfigureConstant.java index f39744c2..cee466f0 100644 --- a/order-management-common/src/main/java/com/dxhy/order/constant/ConfigureConstant.java +++ b/order-management-common/src/main/java/com/dxhy/order/constant/ConfigureConstant.java @@ -29,6 +29,7 @@ public class ConfigureConstant { public static final String STRING_1_ = "-1"; public static final String STRING_0 = "0"; + public static final String STRING_X = "X"; public static final String STRING_000 = "0.00"; 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 ca98b7b9..0d577d6a 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 @@ -403,6 +403,7 @@ public enum OrderInfoEnum { * 系统来源(SAP:SAP) */ SYS_SOURCE_SAP("SAP","SAP"), + SYS_SOURCE_DSXT("DSXT","DSXT"), /** * 订单类型(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 51c8af61..8c1d6ead 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 @@ -1344,6 +1344,8 @@ public class PushInvoiceServiceImpl implements PushInvoiceService { fpkjtsReqSap.setZGSDM(orderProcessInfo.getGsdm()); fpkjtsReqSap.setZYWDJ(orderProcessInfo.getBzdh()); fpkjtsReqSap.setIMGID(orderInvoiceInfo.getDocuId()); + fpkjtsReqSap.setPDFZJL(ddfpxx.getPDFZJL()); + fpkjtsReqSap.setZJLLX(ddfpxx.getZJLLX()); //明细信息 ddmxxx.stream().forEach(f -> { FpkjtsMxSap detail = new FpkjtsMxSap(); 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 3c75b87d..9e538400 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 @@ -1,6 +1,5 @@ package com.dxhy.order.consumer.openapi.protocol.po.generateinvoice.sap; -import com.dxhy.order.consumer.openapi.protocol.po.PoCommonRequestParam; import lombok.Data; import java.util.List; @@ -88,6 +87,20 @@ public class FpkjReqSap { * 行项目结构 */ private List ITITEM; - - + //是否为电商系统数据 + private String ZDSXT; + //是否独立开票抬头 + private String ZDLKPTT; + //金税开票抬头名称 + private String ZKPTTMC; + //金税开票纳税人识别号 + private String ZKPSBH; + //金税开票地址 + private String ZKPDZ; + //金税开票电话 + private String ZKPDH; + //金税开票开户行 + private String ZKPKHH; + //金税开票银行账号 + private String ZKPZH; } diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoicepush/sap/FpkjtsReqSap.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoicepush/sap/FpkjtsReqSap.java index ef0da2b6..6d03d3fb 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoicepush/sap/FpkjtsReqSap.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/po/generateinvoicepush/sap/FpkjtsReqSap.java @@ -1,7 +1,6 @@ package com.dxhy.order.consumer.openapi.protocol.po.generateinvoicepush.sap; import com.alibaba.fastjson.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import java.util.List; @@ -273,4 +272,14 @@ public class FpkjtsReqSap { */ @JSONField(name = "IT_ITEM") private List ITITEM; + + /** + * pdf流 + */ + private String PDFZJL; + + /** + * 字节流类型针对pdfzjl进行处理,OFD和PDF + */ + private String ZJLLX; } 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 55c4da32..095b9724 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 @@ -51,12 +51,14 @@ import com.dxhy.order.model.sk.hp.*; import com.dxhy.order.model.sk.kp.*; import com.dxhy.order.model.sk.query.ResponseCommonInvoice; import com.dxhy.order.model.sk.sld.SearchSld; -import com.dxhy.order.utils.*; +import com.dxhy.order.utils.CommonUtils; +import com.dxhy.order.utils.DecimalCalculateUtil; +import com.dxhy.order.utils.JsonUtils; +import com.dxhy.order.utils.StringUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; -import java.io.IOException; import java.math.BigDecimal; import java.text.DecimalFormat; import java.util.*; @@ -3504,6 +3506,20 @@ public class BeanTransitionUtils { ddtxxBO.setDDH(req.getZJSDH()); ddtxxBO.setBZDH(req.getZBZDH()); ddtxxBO.setXTLY(isinput.getSYSID()); + //如果为X,表示数据来自电商系统,开票完成后需要推送给电商系统开票数据及板式文件。 +// if(StringUtils.isNotBlank(req.getZDSXT()) && ConfigureConstant.STRING_X.equals(req.getZDSXT())){ +// ddtxxBO.setXTLY(OrderInfoEnum.SYS_SOURCE_DSXT.getKey()); +// } + //如果此字段为X,表示开票抬头数据不取购方ZGFBH关联的信息,而是取21-26列数据。 + if(StringUtils.isNotBlank(req.getZDLKPTT()) && ConfigureConstant.STRING_X.equals(req.getZDLKPTT())){ + ddtxxBO.setGMFMC(req.getZKPTTMC()); + ddtxxBO.setGMFSBH(req.getZKPSBH()); + ddtxxBO.setGMFDH(req.getZKPDH()); + ddtxxBO.setGMFDZ(req.getZKPDZ()); + ddtxxBO.setGMFYH(req.getZKPKHH()); + ddtxxBO.setGMFZH(req.getZKPZH()); + ddtxxBO.setGMFBM(""); + } ddtxxBO.setGSDM(req.getBUKRS()); ddtxxBO.setENTID(deptEntity.getDeptId()); ddtxxBO.setBHZT(ConfigureConstant.STRING_0); From 40226abaf8ab5bb0accaaf50577a9a39319e2460 Mon Sep 17 00:00:00 2001 From: gaorl Date: Tue, 13 Jun 2023 19:34:33 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feature=EF=BC=9A=E7=89=A9=E6=96=99=E5=BC=95?= =?UTF-8?q?=E7=94=A8=E4=BC=98=E5=85=88=E7=BA=A7=E9=AB=98=E7=9A=84=E4=B8=8D?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/GroupCommodityCodeServiceImpl.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/service/impl/GroupCommodityCodeServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/service/impl/GroupCommodityCodeServiceImpl.java index 72175910..018e2c7e 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/service/impl/GroupCommodityCodeServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/service/impl/GroupCommodityCodeServiceImpl.java @@ -4,7 +4,9 @@ import com.dxhy.order.baseservice.module.base.service.BaseService; import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity; import com.dxhy.order.baseservice.module.taxclass.dao.TaxClassCodeMapper; import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity; +import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService; import com.dxhy.order.constant.ConfigureConstant; +import com.dxhy.order.constant.TaxClassCodeEnum; import com.dxhy.order.consumer.dao.GroupCommodityCodeMapper; import com.dxhy.order.consumer.modules.commodity.domain.dto.QueryGroupCommodityDTO; import com.dxhy.order.consumer.modules.commodity.domain.dto.QuoteGroupCommodityDTO; @@ -28,6 +30,7 @@ import javax.annotation.Resource; import java.lang.reflect.InvocationTargetException; import java.math.BigDecimal; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -54,6 +57,9 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService @Resource private TaxClassCodeMapper taxClassCodeMapper; + @Resource + private UserInfoService userInfoService; + /** * 查询集团物料库 * @@ -136,7 +142,15 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService log.error("{}引用物料异常", LOGGER_MSG, e); } if(queryCommodityEntity != null){ + //如果优先级更高则不进行更新 + if(Arrays.asList("1,2,6,7,8,10".split(",")).contains(queryCommodityEntity.getDataSource())){ + return R.error("第" + (i + 1) + "条数据,已存在"); + } newCommodityCodeEntity.setId(queryCommodityEntity.getId()); + newCommodityCodeEntity.setModifyTime(new Date()); + newCommodityCodeEntity.setCreateTime(null); + newCommodityCodeEntity.setUserId(null); + newCommodityCodeEntity.setModifyUserId(userInfoService.getUser() != null && userInfoService.getUser().getUserId() != null ? userInfoService.getUser().getUserId().toString():""); if (groupCommodityMapper.updateCommodityCode(newCommodityCodeEntity) <= 0) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return R.error("第" + (i + 1) + "条数据,引用失败"); @@ -144,10 +158,12 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService }else{ newCommodityCodeEntity.setId(baseService.getGenerateShotKey()); newCommodityCodeEntity.setXhfNsrsbh(quoteGroupCommodityDTO.getXhfNsrsbh()); - newCommodityCodeEntity.setDataState("0"); + newCommodityCodeEntity.setDataState(TaxClassCodeEnum.DATA_SOURCE_9.getKey()); newCommodityCodeEntity.setXhfMc(quoteGroupCommodityDTO.getXhfMc()); - newCommodityCodeEntity.setHsbz("1"); - newCommodityCodeEntity.setYhzcbs("0"); + newCommodityCodeEntity.setHsbz(ConfigureConstant.STRING_1); + newCommodityCodeEntity.setYhzcbs(ConfigureConstant.STRING_0); + newCommodityCodeEntity.setCreateTime(new Date()); + newCommodityCodeEntity.setUserId(userInfoService.getUser() != null && userInfoService.getUser().getUserId() != null ? userInfoService.getUser().getUserId().toString():""); if(StringUtils.isNotBlank(newCommodityCodeEntity.getSpbm())){ TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.queryTaxClassCodeEntityBySpbm(newCommodityCodeEntity.getSpbm()); if(taxClassCodeEntity != null){