diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityServiceImpl.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityServiceImpl.java
index e63c793e..ae66cb8f 100644
--- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityServiceImpl.java
+++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityServiceImpl.java
@@ -132,6 +132,10 @@ public class CommodityServiceImpl implements CommodityService {
if(commodityCodeModifyLogService.saveCommodityCodeDifferenceBetween2(commodityCodeEntities.get(0), codeEntity, userId) == -1){
return R.error().put(OrderManagementConstant.DATA, "数据未进行修改,无需保存");
}
+ if(StringUtils.isBlank(codeEntity.getYhzcbs())|| "0".equals(codeEntity.getYhzcbs())){
+ codeEntity.setZzstsgl("");
+ codeEntity.setLslbs("");
+ }
codeEntity.setXhfNsrsbh(null);//不更新税号
codeEntity.setModifyTime(new Date());
codeEntity.setCreateTime(null);
diff --git a/order-management-base-service/src/main/resources/mybatis/mapper/CommodityMapper.xml b/order-management-base-service/src/main/resources/mybatis/mapper/CommodityMapper.xml
index a066ab80..6dc936ff 100644
--- a/order-management-base-service/src/main/resources/mybatis/mapper/CommodityMapper.xml
+++ b/order-management-base-service/src/main/resources/mybatis/mapper/CommodityMapper.xml
@@ -297,10 +297,10 @@
tax_classification_name = #{commodityCode.ssflMc,jdbcType=VARCHAR},
-
+
preferential_policies_type = #{commodityCode.lslbs,jdbcType=VARCHAR},
-
+
zzstsgl = #{commodityCode.zzstsgl,jdbcType=VARCHAR},
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 72321efa..d1e921cf 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,7 +403,10 @@ public enum OrderInfoEnum {
* 系统来源(SAP:SAP)
*/
SYS_SOURCE_SAP("SAP","SAP"),
+ SYS_SOURCE_FPPAGE("FPPAGE","FPPAGE"),
SYS_SOURCE_DSXT("DSXT","DSXT"),
+ SYS_SOURCE_DSXT01("DSXT01","DSXT01"),
+ SYS_SOURCE_DSXT02("DSXT02","DSXT02"),
/**
* 订单类型(0:原始订单,1:拆分后订单,2:合并后订单,3:系统冲红订单,4:自动开票订单,5:作废重开订单;6:历史数据订单;7:发票修复数据)
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/controller/GroupCommodityCodeController.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/controller/GroupCommodityCodeController.java
index 0522be48..2736b3d4 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/controller/GroupCommodityCodeController.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/controller/GroupCommodityCodeController.java
@@ -81,7 +81,12 @@ public class GroupCommodityCodeController {
@PostMapping("/sync")
public R sync(@RequestBody @Validated SyncGroupCommodityDTO dto) {
- return groupCommodityCodeService.syncGroupCommodityDTO(dto);
+ try {
+ return groupCommodityCodeService.syncGroupCommodityDTO(dto);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return R.error("系统异常,请联系管理员");
+ }
}
@RequestMapping("/uploadGroupCommodityDTO")
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java
index 959f0cc5..91483de3 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java
@@ -299,34 +299,35 @@ public class InvoiceServiceImpl implements InvoiceService {
orderSplit.stream().forEach(splitEn -> {
List orderItemInfo = splitEn.getOrderItemInfo();
orderItemInfo.stream().forEach(splitItem -> {
- List collect = commonOrderInfo.getOrderItemInfo().stream().filter(oi -> oi.getXmmc().equals(splitItem.getXmmc()) &&
- ((StrUtil.isBlank(oi.getGgxh()) && StrUtil.isBlank(splitItem.getGgxh())) || oi.getGgxh().equals(splitItem.getGgxh())) &&
- ((StrUtil.isBlank(oi.getXmdw()) && StrUtil.isBlank(splitItem.getXmdw())) || oi.getXmdw().equals(splitItem.getXmdw())) &&
- ((StrUtil.isBlank(oi.getSl()) && StrUtil.isBlank(splitItem.getSl())) || oi.getSl().equals(splitItem.getSl()))).collect(Collectors.toList());
- if (collect.size() == 1) {
- List ruleSplitEntityList = ruleSplitService.queryRuleSplit(commonOrderInfo.getOrderInfo().getXhfNsrsbh(), pageInvoiceReq.getUserId());
- log.info("税号:{},用户ID:{},查询的拆分限额信息结果:{}", commonOrderInfo.getOrderInfo().getXhfNsrsbh(),
- pageInvoiceReq.getUserId(), JsonUtils.getInstance().toJsonString(ruleSplitEntityList));
- String djce = ConfigureConstant.STRING_0;
- if(ruleSplitEntityList.size() != 0){
- djce = StrUtil.isBlank(ruleSplitEntityList.get(0).getDjce())?ConfigureConstant.STRING_0:ruleSplitEntityList.get(0).getDjce();
- }
- if(ObjectUtil.isNotNull(collect.get(0).getXmdj()) && StrUtil.isNotBlank(collect.get(0).getXmdj()) &&
- ObjectUtil.isNotNull(splitItem.getXmdj()) && StrUtil.isNotBlank(splitItem.getXmdj())){
- BigDecimal abs = new BigDecimal(collect.get(0).getXmdj()).subtract(new BigDecimal(splitItem.getXmdj())).abs();
- if (abs.compareTo(new BigDecimal(djce)) > 0) {
- Map map = new HashMap();
- map.put("ddh", commonOrderInfo.getOrderInfo().getDdh());
- map.put("ghfMc", commonOrderInfo.getOrderInfo().getGhfMc());
- map.put("xhfMc", commonOrderInfo.getOrderInfo().getXhfMc());
- map.put("jshj", commonOrderInfo.getOrderInfo().getKphjje());
- djOverflowList.add(map);
- }
- }
- } else {
- log.error("{}校验单价容差范围发生错误:在原结算单中未匹配到唯一明细,找到了{}条", LOGGER_MSG, collect.size());
- throw new RuntimeException("校验单价容差范围发生错误:在原结算单中未匹配到唯一明细");
- }
+// List collect = commonOrderInfo.getOrderItemInfo().stream().filter(oi -> oi.getXmmc().equals(splitItem.getXmmc()) &&
+// ((StrUtil.isBlank(oi.getGgxh()) && StrUtil.isBlank(splitItem.getGgxh())) || oi.getGgxh().equals(splitItem.getGgxh())) &&
+// ((StrUtil.isBlank(oi.getXmdw()) && StrUtil.isBlank(splitItem.getXmdw())) || oi.getXmdw().equals(splitItem.getXmdw())) &&
+// ((StrUtil.isBlank(oi.getSl()) && StrUtil.isBlank(splitItem.getSl())) || oi.getSl().equals(splitItem.getSl()))).collect(Collectors.toList());
+// if (collect.size() == 1) {
+// List ruleSplitEntityList = ruleSplitService.queryRuleSplit(commonOrderInfo.getOrderInfo().getXhfNsrsbh(), pageInvoiceReq.getUserId());
+// log.info("税号:{},用户ID:{},查询的拆分限额信息结果:{}", commonOrderInfo.getOrderInfo().getXhfNsrsbh(),
+// pageInvoiceReq.getUserId(), JsonUtils.getInstance().toJsonString(ruleSplitEntityList));
+// String djce = ConfigureConstant.STRING_0;
+// if(ruleSplitEntityList.size() != 0){
+// djce = StrUtil.isBlank(ruleSplitEntityList.get(0).getDjce())?ConfigureConstant.STRING_0:ruleSplitEntityList.get(0).getDjce();
+// }
+// if(ObjectUtil.isNotNull(collect.get(0).getXmdj()) && StrUtil.isNotBlank(collect.get(0).getXmdj()) &&
+// ObjectUtil.isNotNull(splitItem.getXmdj()) && StrUtil.isNotBlank(splitItem.getXmdj())){
+// BigDecimal abs = new BigDecimal(collect.get(0).getXmdj()).subtract(new BigDecimal(splitItem.getXmdj())).abs();
+// if (abs.compareTo(new BigDecimal(djce)) > 0) {
+// Map map = new HashMap();
+// map.put("ddh", commonOrderInfo.getOrderInfo().getDdh());
+// map.put("ghfMc", commonOrderInfo.getOrderInfo().getGhfMc());
+// map.put("xhfMc", commonOrderInfo.getOrderInfo().getXhfMc());
+// map.put("jshj", commonOrderInfo.getOrderInfo().getKphjje());
+// djOverflowList.add(map);
+// }
+// }
+// }
+// else {
+// log.error("{}校验单价容差范围发生错误:在原结算单中未匹配到唯一明细,找到了{}条", LOGGER_MSG, collect.size());
+// throw new RuntimeException("校验单价容差范围发生错误:在原结算单中未匹配到唯一明细");
+// }
});
});
}
@@ -1594,25 +1595,27 @@ public class InvoiceServiceImpl implements InvoiceService {
orderInfoIdList.stream().forEach(id->{
OrderInfo orderInfo = orderInfoMapper.selectOrderInfoByOrderId(id, null);
BuyerEntity buyerEntity = buyerMapper.queryBuyerInfoByGhfIdAndEntId(orderInfo.getGhfId(), orderInfo.getEntId());
- if (buyerEntity == null) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方信息为空,请补全!");
- }
- if (OrderInfoEnum.CHECK_BANK_FLAG_YES.getKey().equals(buyerEntity.getCheckBankFlag())) {
- log.info("开始校验客户信息完整");
- if (StrUtil.isBlank(orderInfo.getGhfNsrsbh())) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方纳税人识别号为空,请补全!");
- }
- if (StrUtil.isBlank(orderInfo.getGhfDz())) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方地址为空,请补全!");
- }
- if (StrUtil.isBlank(orderInfo.getGhfDh())) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方电话为空,请补全!");
- }
- if (StrUtil.isBlank(orderInfo.getGhfYh())) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方开户行为空,请补全!");
- }
- if (StrUtil.isBlank(orderInfo.getGhfZh())) {
- throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方银行账号为空,请补全!");
+// if (buyerEntity == null) {
+// throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方信息为空,请补全!");
+// }
+ if (buyerEntity != null) {
+ if (OrderInfoEnum.CHECK_BANK_FLAG_YES.getKey().equals(buyerEntity.getCheckBankFlag())) {
+ log.info("开始校验客户信息完整");
+ if (StrUtil.isBlank(orderInfo.getGhfNsrsbh())) {
+ throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方纳税人识别号为空,请补全!");
+ }
+ if (StrUtil.isBlank(orderInfo.getGhfDz())) {
+ throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方地址为空,请补全!");
+ }
+ if (StrUtil.isBlank(orderInfo.getGhfDh())) {
+ throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方电话为空,请补全!");
+ }
+ if (StrUtil.isBlank(orderInfo.getGhfYh())) {
+ throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方开户行为空,请补全!");
+ }
+ if (StrUtil.isBlank(orderInfo.getGhfZh())) {
+ throw new RuntimeException("结算单:"+orderInfo.getDdh()+"购方银行账号为空,请补全!");
+ }
}
}
});
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 8c1d6ead..92ec0d57 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
@@ -410,10 +410,16 @@ public class PushInvoiceServiceImpl implements PushInvoiceService {
log.warn("税号:{},组装请求报文为空,不进行推送数据", fpTsMqData.getNsrsbh());
continue;
}
-
+ OrderProcessInfo orderProcessInfo = null;
Map requestMap = commonDisposeService.getRequestParameter(pushInfo.getNsrsbh(), pushInfo.getZipCode(), pushInfo.getEncryptCode(), content, pushInfo.getPushUrl(), pushInfo.getInterfaceType(), pushInfo.getVersionIdent());
- if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(xtly)){
- fptsParam = convertToYwxtParam(fpTsMqData,xtly,content);
+ if (OrderInfoEnum.INTERFACE_TYPE_INVOICE_PUSH_STATUS_1.getKey().equals(fpTsMqData.getPushType())) {
+ orderProcessInfo = orderProcessService.queryOrderProcessInfoByFpqqlsh(fpTsMqData.getFpTsMqData().getFpqqlsh(), null);
+ } else if(OrderInfoEnum.INTERFACE_TYPE_INVOICE_PUSH_STATUS_2.getKey().equals(fpTsMqData.getPushType())){
+ OrderInvoiceInfo orderInvoiceInfo = orderInvoiceInfoService.selectOrderInvoiceInfoByFpdmAndFphm(fpTsMqData.getZfTsMqData().getFpdm(), fpTsMqData.getZfTsMqData().getFphm(), null);
+ orderProcessInfo = orderProcessService.selectByOrderId(orderInvoiceInfo.getOrderInfoId(), null);
+ }
+ if(StringUtils.isNotBlank(pushInfo.getByzd1())){
+ fptsParam = convertToYwxtParam(fpTsMqData,content);
}else {
fptsParam = JsonUtils.getInstance().toJsonString(requestMap);
}
@@ -428,7 +434,15 @@ public class PushInvoiceServiceImpl implements PushInvoiceService {
String result = "";
if (ConfigurerInfo.INTERFACE_VERSION_V5.equals(pushInfo.getVersionIdent())
|| ConfigurerInfo.INTERFACE_VERSION_V6.equals(pushInfo.getVersionIdent())) {
- result = HttpUtils.sendPo(pushInfo.getPushUrl(), fptsParam,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword());
+ if (StringUtils.isNotBlank(pushInfo.getByzd1()) && OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(pushInfo.getByzd1())) {
+ result = HttpUtils.sendPo(pushInfo.getPushUrl(), fptsParam,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword());
+ }else if(OrderInfoEnum.SYS_SOURCE_DSXT01.getKey().equals(orderProcessInfo.getXtly()) && StringUtils.isNotBlank(pushInfo.getByzd1())
+ && pushInfo.getByzd1().equals(orderProcessInfo.getXtly())){
+ result = HttpUtils.sendPo(pushInfo.getPushUrl(), fptsParam,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword());
+ } else if (OrderInfoEnum.SYS_SOURCE_DSXT02.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);
}
@@ -1288,7 +1302,7 @@ public class PushInvoiceServiceImpl implements PushInvoiceService {
return content;
}
- public String convertToYwxtParam(CommonTsMqData fpTsMqData,String xtly,String content){
+ public String convertToYwxtParam(CommonTsMqData fpTsMqData,String content){
String ywxtParam = "";
@@ -1300,137 +1314,138 @@ public class PushInvoiceServiceImpl implements PushInvoiceService {
List gsClients = gsClientMapper.selectByGsdm(orderProcessInfo.getGsdm());
//发票开具推送
- if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(xtly)){
- DdfpzxxV5 ddfpzxxV5 = JsonUtils.getInstance().parseObject(content.substring(1,content.length()-1), DdfpzxxV5.class);
- DdfpxxV5 ddfpxx = ddfpzxxV5.getDDFPXX();
- List ddmxxx = ddfpzxxV5.getDDMXXX();
- List mainList = new ArrayList<>();
- FpkjtsReqSap fpkjtsReqSap = new FpkjtsReqSap();
- List itemList = new ArrayList<>();
+ DdfpzxxV5 ddfpzxxV5 = JsonUtils.getInstance().parseObject(content.substring(1,content.length()-1), DdfpzxxV5.class);
+ DdfpxxV5 ddfpxx = ddfpzxxV5.getDDFPXX();
+ List ddmxxx = ddfpzxxV5.getDDMXXX();
+ List mainList = new ArrayList<>();
+ FpkjtsReqSap fpkjtsReqSap = new FpkjtsReqSap();
+ List itemList = new ArrayList<>();
+ //主信息
+ if(!OrderInfoEnum.SYS_SOURCE_FPPAGE.getKey().equals(orderProcessInfo.getXtly())){
+ fpkjtsReqSap.setZJSDH(orderProcessInfo.getOriginDdh());
+ }else {
+ fpkjtsReqSap.setZJSDH("");
+ }
+ fpkjtsReqSap.setZFPDM(ddfpxx.getFPDM());
+ fpkjtsReqSap.setZFPHM(ddfpxx.getFPHM());
+ fpkjtsReqSap.setZFPLX(CommonUtils.transToSnFplxdm(ddfpxx.getFPLXDM()));
+ fpkjtsReqSap.setZXFBM(ddfpxx.getXHFSBH());
+ fpkjtsReqSap.setZGFBH(ddfpxx.getGMFSBH());
+ fpkjtsReqSap.setZBHSJEY(ddfpxx.getHJJE());
+ fpkjtsReqSap.setZZSEY(ddfpxx.getHJSE());
+ fpkjtsReqSap.setZHSJEY(ddfpxx.getJSHJ());
+ fpkjtsReqSap.setZZBZ(ddfpxx.getBZ());
+ fpkjtsReqSap.setZFPZT(ConfigureConstant.STRING_0);//0-正常、1-作废
+ String formatKprq = "";
+ try {
+ Date date = (Date) new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ddfpxx.getKPRQ());
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+ formatKprq = sdf.format(date);
+ }catch (Exception e){
+ log.error("{}发票推送SAP格式化开票日期错误:{}",LOGGER_MSG,e);
+ }
+ fpkjtsReqSap.setZKPRQ(formatKprq);
+ fpkjtsReqSap.setZGFMC(ddfpxx.getGMFMC());
+ fpkjtsReqSap.setZGFSH(ddfpxx.getGMFSBH());
+ fpkjtsReqSap.setZXFMC(ddfpxx.getXHFMC());
+ fpkjtsReqSap.setZXFSH(ddfpxx.getXHFSBH());
+ fpkjtsReqSap.setZTID(ddfpxx.getFPDM()+ddfpxx.getFPHM()+ddfpxx.getFPLXDM());
+ fpkjtsReqSap.setZGFZH(ddfpxx.getGMFZH());
+ fpkjtsReqSap.setZGFDH(ddfpxx.getGMFDH());
+ fpkjtsReqSap.setZXFDH(ddfpxx.getXHFDH());
+ fpkjtsReqSap.setZXFZH(ddfpxx.getXHFZH());
+ fpkjtsReqSap.setZGSDM(orderProcessInfo.getGsdm());
+ fpkjtsReqSap.setZYWDJ(orderProcessInfo.getBzdh());
+ fpkjtsReqSap.setIMGID(orderInvoiceInfo.getDocuId());
+ if(OrderInfoEnum.SYS_SOURCE_DSXT01.getKey().equals(orderProcessInfo.getXtly()) ||
+ OrderInfoEnum.SYS_SOURCE_DSXT02.getKey().equals(orderProcessInfo.getXtly())){
+ fpkjtsReqSap.setPDFZJL(ddfpxx.getPDFZJL());
+ fpkjtsReqSap.setZJLLX(ddfpxx.getZJLLX());
+ }
+ //明细信息
+ ddmxxx.stream().forEach(f -> {
+ FpkjtsMxSap detail = new FpkjtsMxSap();
//主信息
if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly())){
- fpkjtsReqSap.setZJSDH(orderProcessInfo.getOriginDdh());
+ detail.setZJSDH(orderProcessInfo.getOriginDdh());
}else {
- fpkjtsReqSap.setZJSDH("");
- }
- fpkjtsReqSap.setZFPDM(ddfpxx.getFPDM());
- fpkjtsReqSap.setZFPHM(ddfpxx.getFPHM());
- fpkjtsReqSap.setZFPLX(CommonUtils.transToSnFplxdm(ddfpxx.getFPLXDM()));
- fpkjtsReqSap.setZXFBM(ddfpxx.getXHFSBH());
- fpkjtsReqSap.setZGFBH(ddfpxx.getGMFSBH());
- fpkjtsReqSap.setZBHSJEY(ddfpxx.getHJJE());
- fpkjtsReqSap.setZZSEY(ddfpxx.getHJSE());
- fpkjtsReqSap.setZHSJEY(ddfpxx.getJSHJ());
- fpkjtsReqSap.setZZBZ(ddfpxx.getBZ());
- fpkjtsReqSap.setZFPZT(ConfigureConstant.STRING_0);//0-正常、1-作废
- String formatKprq = "";
- try {
- Date date = (Date) new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ddfpxx.getKPRQ());
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
- formatKprq = sdf.format(date);
- }catch (Exception e){
- log.error("{}发票推送SAP格式化开票日期错误:{}",LOGGER_MSG,e);
+ detail.setZJSDH("");
}
- fpkjtsReqSap.setZKPRQ(formatKprq);
- fpkjtsReqSap.setZGFMC(ddfpxx.getGMFMC());
- fpkjtsReqSap.setZGFSH(ddfpxx.getGMFSBH());
- fpkjtsReqSap.setZXFMC(ddfpxx.getXHFMC());
- fpkjtsReqSap.setZXFSH(ddfpxx.getXHFSBH());
- fpkjtsReqSap.setZTID(ddfpxx.getFPDM()+ddfpxx.getFPHM()+ddfpxx.getFPLXDM());
- fpkjtsReqSap.setZGFZH(ddfpxx.getGMFZH());
- fpkjtsReqSap.setZGFDH(ddfpxx.getGMFDH());
- fpkjtsReqSap.setZXFDH(ddfpxx.getXHFDH());
- fpkjtsReqSap.setZXFZH(ddfpxx.getXHFZH());
- 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();
- //主信息
- if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly())){
- detail.setZJSDH(orderProcessInfo.getOriginDdh());
- }else {
- detail.setZJSDH("");
- }
// detail.setZJSDH(ddfpxx.getDDH());
- detail.setZFPDM(ddfpxx.getFPDM());
- detail.setZFPHM(ddfpxx.getFPHM());
- detail.setZFPHH(f.getXH());
- if(ObjectUtil.isNull(f.getZXBM()) || StrUtil.isBlank(f.getZXBM())){
- detail.setMATNR("");
- }else {
+ detail.setZFPDM(ddfpxx.getFPDM());
+ detail.setZFPHM(ddfpxx.getFPHM());
+ detail.setZFPHH(f.getXH());
+ if(ObjectUtil.isNull(f.getZXBM()) || StrUtil.isBlank(f.getZXBM())){
+ detail.setMATNR("");
+ }else {
// DecimalFormat g1=new DecimalFormat("000000000000000000");
- detail.setMATNR(f.getZXBM());
- }
- detail.setZGGXH(f.getGGXH());
- detail.setZSLDW(f.getDW());
- detail.setZZSL(f.getSPSL());
- detail.setZTAX(new BigDecimal(f.getSL()).multiply(new BigDecimal("100")).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString());
- detail.setZBHSJEY(f.getJE());
- detail.setZZSEY(f.getSE());
- detail.setZHSJEY(new BigDecimal(f.getJE()).add(new BigDecimal(f.getSE())).toString());
- if(StrUtil.isBlank(f.getDJ())){
- detail.setZZDJFP("");
- }else {
- detail.setZZDJFP(f.getDJ());
+ detail.setMATNR(f.getZXBM());
+ }
+ detail.setZGGXH(f.getGGXH());
+ detail.setZSLDW(f.getDW());
+ detail.setZZSL(f.getSPSL());
+ detail.setZTAX(new BigDecimal(f.getSL()).multiply(new BigDecimal("100")).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString());
+ detail.setZBHSJEY(f.getJE());
+ detail.setZZSEY(f.getSE());
+ detail.setZHSJEY(new BigDecimal(f.getJE()).add(new BigDecimal(f.getSE())).toString());
+ if(StrUtil.isBlank(f.getDJ())){
+ detail.setZZDJFP("");
+ }else {
+ detail.setZZDJFP(f.getDJ());
// detail.setZZDJFP(new BigDecimal(f.getDJ()).multiply(new BigDecimal(f.getSL()).add(BigDecimal.ONE)).setScale(ConfigureConstant.INT_8,BigDecimal.ROUND_HALF_EVEN).toString());
- }
- detail.setINVOICEDATE(ddfpxx.getKPRQ());
- detail.setINVOICETYPE(ddfpxx.getFPLXDM());
- detail.setZHWMC(f.getXMMC());
- detail.setZSM(ObjectUtil.isNull(smMap.get(f.getSL()))?"":smMap.get(f.getSL()).toString());
- itemList.add(detail);
- });
- fpkjtsReqSap.setITITEM(itemList);
- IsInput isInput = new IsInput();
- isInput.setSYSID(OrderInfoEnum.SYS_SIGN_FP.getKey());
- isInput.setIFYWID(OrderInfoEnum.INTERFACE_BUSINESS_ID_FPKJTS.getKey());
- isInput.setBSKEY(apiInvoiceCommonMapperService.getGenerateShotKey());
- isInput.setZORG("");
- isInput.setZFILED5(gsClients.size()>0?gsClients.get(0).getClient():"");
- mainList.add(fpkjtsReqSap);
- String jsonString = JsonUtils.getInstance().toJsonString(mainList);
- isInput.setZDATA(jsonString);
- PoCommonRequestParam poCommonRequestParam = new PoCommonRequestParam();
- poCommonRequestParam.setIS_INPUT(isInput);
-
- ywxtParam = JsonUtils.getInstance().toJsonString(poCommonRequestParam);
- }
+ }
+ detail.setINVOICEDATE(ddfpxx.getKPRQ());
+ detail.setINVOICETYPE(ddfpxx.getFPLXDM());
+ detail.setZHWMC(f.getXMMC());
+ detail.setZSM(ObjectUtil.isNull(smMap.get(f.getSL()))?"":smMap.get(f.getSL()).toString());
+ itemList.add(detail);
+ });
+ fpkjtsReqSap.setITITEM(itemList);
+ IsInput isInput = new IsInput();
+ isInput.setSYSID(OrderInfoEnum.SYS_SIGN_FP.getKey());
+ isInput.setIFYWID(OrderInfoEnum.INTERFACE_BUSINESS_ID_FPKJTS.getKey());
+ isInput.setBSKEY(apiInvoiceCommonMapperService.getGenerateShotKey());
+ isInput.setZORG("");
+ isInput.setZFILED5(gsClients.size()>0?gsClients.get(0).getClient():"");
+ mainList.add(fpkjtsReqSap);
+ String jsonString = JsonUtils.getInstance().toJsonString(mainList);
+ isInput.setZDATA(jsonString);
+ PoCommonRequestParam poCommonRequestParam = new PoCommonRequestParam();
+ poCommonRequestParam.setIS_INPUT(isInput);
+
+ ywxtParam = JsonUtils.getInstance().toJsonString(poCommonRequestParam);
+
}else if(OrderInfoEnum.INTERFACE_TYPE_INVOICE_PUSH_STATUS_2.getKey().equals(fpTsMqData.getPushType())){
OrderInvoiceInfo orderInvoiceInfo = orderInvoiceInfoService.selectOrderInvoiceInfoByFpdmAndFphm(fpTsMqData.getZfTsMqData().getFpdm(), fpTsMqData.getZfTsMqData().getFphm(), null);
OrderProcessInfo orderProcessInfo = orderProcessService.selectByOrderId(orderInvoiceInfo.getOrderInfoId(), null);
List gsClients = gsClientMapper.selectByGsdm(orderProcessInfo.getGsdm());
//发票作废推送
- if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(xtly)){
- ZffptsV5 zffptsV5 = JsonUtils.getInstance().parseObject(content, ZffptsV5.class);
- List zfList = new ArrayList<>();
- FpzftsReqSap fpzftsReqSap = new FpzftsReqSap();
- fpzftsReqSap.setZFPDM(zffptsV5.getFPDM());
- fpzftsReqSap.setZFPHM(zffptsV5.getFPHM());
- //0 是正常 1是作废
- fpzftsReqSap.setZFPZT(ConfigureConstant.STRING_1);
- if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly())){
- fpzftsReqSap.setZJSDH(orderProcessInfo.getOriginDdh());
- }else {
- fpzftsReqSap.setZBZDH(orderProcessInfo.getBzdh());
- }
- IsInput isInput = new IsInput();
- isInput.setSYSID(OrderInfoEnum.SYS_SIGN_FP.getKey());
- isInput.setIFYWID(OrderInfoEnum.INTERFACE_BUSINESS_ID_FPZFTS.getKey());
- isInput.setBSKEY(apiInvoiceCommonMapperService.getGenerateShotKey());
- isInput.setZORG("");
- isInput.setZFILED5(gsClients.size()>0?gsClients.get(0).getClient():"");
- zfList.add(fpzftsReqSap);
- String jsonString = JsonUtils.getInstance().toJsonString(zfList);
- isInput.setZDATA(jsonString);
- PoCommonRequestParam poCommonRequestParam = new PoCommonRequestParam();
- poCommonRequestParam.setIS_INPUT(isInput);
-
- ywxtParam = JsonUtils.getInstance().toJsonString(poCommonRequestParam);
+ ZffptsV5 zffptsV5 = JsonUtils.getInstance().parseObject(content, ZffptsV5.class);
+ List zfList = new ArrayList<>();
+ FpzftsReqSap fpzftsReqSap = new FpzftsReqSap();
+ fpzftsReqSap.setZFPDM(zffptsV5.getFPDM());
+ fpzftsReqSap.setZFPHM(zffptsV5.getFPHM());
+ //0 是正常 1是作废
+ fpzftsReqSap.setZFPZT(ConfigureConstant.STRING_1);
+ if(OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly())){
+ fpzftsReqSap.setZJSDH(orderProcessInfo.getOriginDdh());
+ }else {
+ fpzftsReqSap.setZBZDH(orderProcessInfo.getBzdh());
}
+ IsInput isInput = new IsInput();
+ isInput.setSYSID(OrderInfoEnum.SYS_SIGN_FP.getKey());
+ isInput.setIFYWID(OrderInfoEnum.INTERFACE_BUSINESS_ID_FPZFTS.getKey());
+ isInput.setBSKEY(apiInvoiceCommonMapperService.getGenerateShotKey());
+ isInput.setZORG("");
+ isInput.setZFILED5(gsClients.size()>0?gsClients.get(0).getClient():"");
+ zfList.add(fpzftsReqSap);
+ String jsonString = JsonUtils.getInstance().toJsonString(zfList);
+ isInput.setZDATA(jsonString);
+ PoCommonRequestParam poCommonRequestParam = new PoCommonRequestParam();
+ poCommonRequestParam.setIS_INPUT(isInput);
+
+ ywxtParam = JsonUtils.getInstance().toJsonString(poCommonRequestParam);
+
}
return ywxtParam;
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java
index 3371d5dc..a8f6744d 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java
@@ -269,7 +269,7 @@ public class OrderInfoServiceImpl implements OrderInfoService {
BuyerEntity buyerEntity = buyerMapper.queryBuyerInfoByGhfIdAndEntId(orderInfo.getGhfId(), orderInfo.getEntId());
if (buyerEntity == null) {
log.error("{}查询原始订单客户信息为空,id为:{}", LOGGER_MSG, orderProcessInfo.getOrderInfoId());
- oderDetailInfo.setCheckBankFlag(OrderInfoEnum.CHECK_BANK_FLAG_YES.getKey());
+ oderDetailInfo.setCheckBankFlag(OrderInfoEnum.CHECK_BANK_FLAG_NO.getKey());
} else {
oderDetailInfo.setCheckBankFlag(buyerEntity.getCheckBankFlag());
}
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 9e538400..dd925359 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
@@ -87,8 +87,6 @@ public class FpkjReqSap {
* 行项目结构
*/
private List ITITEM;
- //是否为电商系统数据
- private String ZDSXT;
//是否独立开票抬头
private String ZDLKPTT;
//金税开票抬头名称
@@ -103,4 +101,9 @@ public class FpkjReqSap {
private String ZKPKHH;
//金税开票银行账号
private String ZKPZH;
+ //电商业务分类 01 表示物资公司业务
+ //02 表示煤炭化工业务
+ private String ZDSYWFL;
+ //是否为电商系统数据 如果为X,表示数据来自电商系统,开票完成后需要推送给电商系统开票数据及板式文件。
+ private String ZDSXT;
}
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 c3e3e455..29932e95 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
@@ -3534,6 +3534,9 @@ public class BeanTransitionUtils {
ddtxxBO.setGMFZH(req.getZKPZH());
ddtxxBO.setGMFBM("");
}
+ if(StringUtils.isNotBlank(req.getZDSXT()) && StringUtils.isNotBlank(req.getZDSYWFL())){
+ ddtxxBO.setXTLY(OrderInfoEnum.SYS_SOURCE_DSXT.getKey()+req.getZDSYWFL());
+ }
ddtxxBO.setGSDM(req.getBUKRS());
ddtxxBO.setENTID(deptEntity.getDeptId());
ddtxxBO.setBHZT(ConfigureConstant.STRING_0);