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 318791fd..2349e334 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
@@ -97,7 +97,8 @@
cc.wlflmc,
cc.ent_id,
cc.tswl,
- cc.invoice_name
+ cc.invoice_name,
+ cc.encoding
FROM
commodity_code cc LEFT JOIN group_commodity gc
ON gc.id = cc.group_id
@@ -160,6 +161,12 @@
AND cc.tswl = #{map.tswl,jdbcType=VARCHAR}
+
+ AND cc.encoding like concat('%',#{map.encoding,jdbcType=VARCHAR},'%')
+
+
+ AND cc.specification_model like concat('%',#{map.specificationModel,jdbcType=VARCHAR},'%')
+
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/dao/OrderProcessInfoMapper.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/dao/OrderProcessInfoMapper.java
index d95e780d..f9c18ee3 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/dao/OrderProcessInfoMapper.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/dao/OrderProcessInfoMapper.java
@@ -1,5 +1,6 @@
package com.dxhy.order.consumer.dao;
+import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoTotalAmountVO;
import com.dxhy.order.model.OrderProcessInfo;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountBO;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountTotalBO;
@@ -78,6 +79,8 @@ public interface OrderProcessInfoMapper {
*/
List queryOrderInfo(@Param("map") Map map, @Param("shList") List shList, @Param("entList") List entList);
+ OrderInfoTotalAmountVO queryOrderInfoTotalAmount(@Param("map") Map map, @Param("shList") List shList, @Param("entList") List entList);
+
/**
* 通过orderId查询处理表
*
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/modules/order/controller/OrderInfoController.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java
index 438cff55..ee5d09f0 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java
@@ -9,6 +9,7 @@ import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity;
import com.dxhy.order.constant.*;
import com.dxhy.order.consumer.modules.order.model.dto.RewriteBzdhDTO;
import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoVo;
+import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoTotalAmountVO;
import com.dxhy.order.consumer.modules.order.service.OrderBzdhService;
import com.dxhy.order.exception.OrderReceiveException;
import com.dxhy.order.model.*;
@@ -150,8 +151,11 @@ public class OrderInfoController {
//查询数据库
PageUtils page = orderInfoService.selectOrderInfo(paramMap, null, entList);
-
- return R.ok().put(OrderManagementConstant.DATA, page);
+
+ // 统计金额税额
+ OrderInfoTotalAmountVO totalAmountVO = orderInfoService.selectOrderSum(paramMap, null, entList);
+
+ return R.ok().put(OrderManagementConstant.DATA, page).put("total", totalAmountVO);
} catch (Exception e) {
log.error("{}列表查询异常:{}", LOGGER_MSG, e);
return R.error(OrderInfoContentEnum.INTERNAL_SERVER_ERROR);
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 d2b50edf..52efb000 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
@@ -3,6 +3,7 @@ package com.dxhy.order.consumer.modules.order.controller;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONException;
+import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.OrderInfoContentEnum;
import com.dxhy.order.constant.OrderInfoEnum;
@@ -78,6 +79,9 @@ public class OrderInvoiceController {
@Resource
private OrderBzdhService bzdhService;
+ @Resource
+ private BaseService baseService;
+
/**
* 异常订单直接开票接口
@@ -396,10 +400,11 @@ 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;
- }
+ // 任务4516增加SAP推送的数据也能删除功能
+// 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");
@@ -450,11 +455,17 @@ public class OrderInvoiceController {
orderProcessInfo1.setBhzt(ConfigureConstant.STRING_1);
orderProcessInfo1.setFpqqlsh(pageRequest.getFpqqlsh() + "-bh" );
}
- int success = orderProcessService.updateOrderProcessInfoByProcessId(orderProcessInfo1, shList);
- if (success < 0) {
- errorMsgList.append(preStr).append("数据删除失败").append("\r\n");
- continue;
+ if (OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly()) && StringUtils.isEmpty(ly)) {
+ // 删除SAP推送数据时修改流水号
+ orderProcessInfo1.setFpqqlsh(baseService.getGenerateShotKey());
+ orderProcessInfo1.setXtly(orderProcessInfo.getXtly());
}
+// int success = orderProcessService.updateOrderProcessInfoByProcessId(orderProcessInfo1, shList);
+ orderProcessService.deleteOrderProcessInfoAndOrderInfoByProcessId(orderProcessInfo1, shList);
+// if (success < 0) {
+// errorMsgList.append(preStr).append("数据删除失败").append("\r\n");
+// continue;
+// }
//如果是红票数据,并且是专票,需要更新红字信息表数据
// 红字专票 作废后修改申请单的状态为未开票
if (OrderInfoEnum.ORDER_INVOICE_TYPE_0.getKey().equals(orderProcessInfo.getFpzlDm()) || OrderInfoEnum.ORDER_INVOICE_TYPE_52.getKey().equals(orderProcessInfo.getFpzlDm())) {
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/model/vo/OrderInfoTotalAmountVO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/model/vo/OrderInfoTotalAmountVO.java
new file mode 100644
index 00000000..ce5b36cd
--- /dev/null
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/model/vo/OrderInfoTotalAmountVO.java
@@ -0,0 +1,29 @@
+package com.dxhy.order.consumer.modules.order.model.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 发票申请单管理 发票处理中心金额、税额、价税合计统计VO
+ */
+@Data
+public class OrderInfoTotalAmountVO {
+
+ /**
+ * 开票合计金额
+ */
+ private BigDecimal kphjje;
+
+ /**
+ * 合计不含税金额
+ */
+ private BigDecimal hjbhsje;
+
+ /**
+ * 开票税额
+ */
+ private BigDecimal kpse;
+
+
+}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java
index 8b85dca0..c366bf0b 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java
@@ -3,6 +3,7 @@ package com.dxhy.order.consumer.modules.order.service;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.consumer.model.page.PageRequestVO;
import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoVo;
+import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoTotalAmountVO;
import com.dxhy.order.exception.OrderReceiveException;
import com.dxhy.order.model.*;
import com.dxhy.base.constant.OrderSeparationException;
@@ -13,6 +14,7 @@ import com.dxhy.order.consumer.modules.order.model.PageKySlRsp;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountTotalBO;
import org.springframework.transaction.annotation.Transactional;
+import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
@@ -34,6 +36,15 @@ public interface OrderInfoService {
*/
PageUtils selectOrderInfo(Map map, List shList, List entList);
+ /**
+ * 查询订单列表金额统计
+ * @param map
+ * @param shList
+ * @param entList
+ * @return
+ */
+ OrderInfoTotalAmountVO selectOrderSum(Map map, List shList, List entList);
+
/**
* 根据发票请求流水号 查询订单信息和订单明细
*
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderProcessService.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderProcessService.java
index 749653e1..3beb8826 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderProcessService.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderProcessService.java
@@ -78,6 +78,12 @@ public interface OrderProcessService {
*/
int updateOrderProcessInfoByProcessId(OrderProcessInfo orderProcessInfo, List shList);
+ /**
+ * 删除开票申请单
+ * @param orderProcessInfo
+ */
+ void deleteOrderProcessInfoAndOrderInfoByProcessId(OrderProcessInfo orderProcessInfo, List shList);
+
/**
* 根据销方税号,订单号,发票请求流水号进行查询orderprocess信息
*
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 b148535f..d0e675be 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
@@ -35,6 +35,7 @@ import com.dxhy.order.consumer.modules.order.model.PageKySlReq;
import com.dxhy.order.consumer.modules.order.model.PageKySlRsp;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountTotalBO;
import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoVo;
+import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoTotalAmountVO;
import com.dxhy.order.consumer.modules.order.service.*;
import com.dxhy.order.consumer.modules.validate.service.ValidateOrderInfoService;
import com.dxhy.order.consumer.openapi.service.CommonInterfaceService;
@@ -186,6 +187,11 @@ public class OrderInfoServiceImpl implements OrderInfoService {
return orderProcessService.selectOrderInfo(map, shList, entList);
}
+ @Override
+ public OrderInfoTotalAmountVO selectOrderSum(Map map, List shList, List entList) {
+ return orderProcessInfoMapper.queryOrderInfoTotalAmount(map, shList, entList);
+ }
+
@Override
public OderDetailInfo selectOrderDetailByFpqqlsh(String fpqqlsh, List shList) {
/**
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
index bcd1c274..c7b974ea 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
@@ -2,6 +2,7 @@ package com.dxhy.order.consumer.modules.order.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
+import com.dxhy.base.constant.OrderSeparationException;
import com.dxhy.order.baseservice.module.thirdservice.user.model.DeptEntity;
import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService;
import com.dxhy.order.constant.ConfigureConstant;
@@ -11,15 +12,14 @@ import com.dxhy.order.consumer.dao.OrderProcessInfoMapper;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountBO;
import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountTotalBO;
import com.dxhy.order.consumer.modules.order.service.OrderProcessService;
+import com.dxhy.order.invoice.module.invoice.dao.OrderInfoMapper;
import com.dxhy.order.invoice.module.invoice.service.OrderInvoiceInfoService;
-import com.dxhy.order.model.OrderInvoiceInfo;
-import com.dxhy.order.model.OrderProcessInfo;
-import com.dxhy.order.model.OrderProcessInfoExt;
-import com.dxhy.order.model.PageUtils;
+import com.dxhy.order.model.*;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -50,6 +50,9 @@ public class OrderProcessServiceImpl implements OrderProcessService {
private OrderInvoiceInfoService orderInvoiceInfoService;
@Resource
private UserInfoService userInfoService;
+
+ @Autowired
+ private OrderInfoMapper orderInfoMapper;
@Override
public OrderProcessInfo selectOrderProcessInfoByProcessId(String id, List shList) {
@@ -130,7 +133,23 @@ public class OrderProcessServiceImpl implements OrderProcessService {
public int updateOrderProcessInfoByProcessId(OrderProcessInfo orderProcessInfo, List shList) {
return orderProcessInfoMapper.updateOrderProcessInfoByProcessId(orderProcessInfo, shList);
}
-
+
+ @Override
+ public void deleteOrderProcessInfoAndOrderInfoByProcessId(OrderProcessInfo orderProcessInfo, List shList) {
+ if (StringUtils.isNotBlank(orderProcessInfo.getXtly())&&OrderInfoEnum.SYS_SOURCE_SAP.getKey().equals(orderProcessInfo.getXtly())) {
+ OrderInfo orderInfo = orderInfoMapper.queryOrderInfoByProcessId(orderProcessInfo.getId());
+ if (orderInfo == null) {
+ throw new RuntimeException("删除SAP推送单据,数据异常");
+ }
+ orderInfo.setFpqqlsh(orderProcessInfo.getFpqqlsh());
+ int rs = orderInfoMapper.updateOrderInfoByOrderId(orderInfo, null);
+ if (rs == 0) {
+ throw new RuntimeException("删除SAP推送单据,数据异常");
+ }
+ }
+ orderProcessInfoMapper.updateOrderProcessInfoByProcessId(orderProcessInfo, shList);
+ }
+
/**
* 根据销方税号,订单号,发票请求流水号进行查询orderprocess信息
*
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);
diff --git a/order-management-consumer/src/main/resources/mybatis/mapper/OrderProcessInfoMapper.xml b/order-management-consumer/src/main/resources/mybatis/mapper/OrderProcessInfoMapper.xml
index 2c5ff953..1944d52f 100644
--- a/order-management-consumer/src/main/resources/mybatis/mapper/OrderProcessInfoMapper.xml
+++ b/order-management-consumer/src/main/resources/mybatis/mapper/OrderProcessInfoMapper.xml
@@ -1317,6 +1317,295 @@
+
diff --git a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/controller/InvoiceDetailsController.java b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/controller/InvoiceDetailsController.java
index 0edb7648..70e072ca 100644
--- a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/controller/InvoiceDetailsController.java
+++ b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/controller/InvoiceDetailsController.java
@@ -97,8 +97,8 @@ public class InvoiceDetailsController {
private String yxisuse;
@GetMapping("priviewOfd")
- public R priviewOfd() throws IOException {
- File file = new File("C:\\Users\\10216\\Desktop\\042002200113_04440777.ofd");
+ public R priviewOfd(@RequestParam("path") String path) throws IOException {
+ File file = new File(path);
FileInputStream fis = null;
ByteArrayOutputStream bos = new ByteArrayOutputStream(1000);
diff --git a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/dao/OrderInfoMapper.java b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/dao/OrderInfoMapper.java
index 03fe7741..64acddf9 100644
--- a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/dao/OrderInfoMapper.java
+++ b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/dao/OrderInfoMapper.java
@@ -31,6 +31,8 @@ public interface OrderInfoMapper {
*/
OrderInfo selectOrderInfoByOrderId(@Param(value = "id") String id, @Param("shList") List shList);
+ OrderInfo queryOrderInfoByProcessId(@Param("processId") String processId);
+
/**
* 根据发票请求流水号获取订单数据,主要用于查询数据是否存在.
*
diff --git a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OfdToPngSDEnergyServiceImpl.java b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OfdToPngSDEnergyServiceImpl.java
index 92dc933a..b4f5ae44 100644
--- a/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OfdToPngSDEnergyServiceImpl.java
+++ b/order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OfdToPngSDEnergyServiceImpl.java
@@ -3,6 +3,7 @@ package com.dxhy.order.invoice.module.invoice.service.impl;
import cn.hutool.core.util.IdUtil;
import cn.hutool.crypto.digest.DigestUtil;
import com.alibaba.fastjson.JSONObject;
+import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.OrderInfoEnum;
import com.dxhy.order.invoice.module.invoice.service.OfdToPngSDEnergyService;
import com.dxhy.order.model.ofd.OfdToPngResponse;
@@ -11,11 +12,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
-import java.io.IOException;
-import java.lang.reflect.Array;
import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
import java.util.List;
@Service
@@ -31,11 +28,12 @@ public class OfdToPngSDEnergyServiceImpl implements OfdToPngSDEnergyService {
@Override
public OfdToPngResponse getOfdPngBySDenergy(byte[] bytes) {
- Long timestamp = new Date().getTime();
+ Long timestamp = System.currentTimeMillis();
String md5Str = DigestUtil.md5Hex(timestamp + simsSalt);
String url = yxurl + "/yxSims/ofdToImage?timestamp="+timestamp+"&md5Str="+md5Str;
OfdToPngResponse ofdToPngResponse = new OfdToPngResponse();
+ ofdToPngResponse.setZTDM(ConfigureConstant.STRING_0000);
try {
log.info("调用影像接口ofd转png,url:{}",url);
String rs = HttpUtils.doPostUpload(url, bytes, IdUtil.fastSimpleUUID()+".ofd");
diff --git a/order-management-invoice/src/main/resources/mybatis/mapper/OrderInfoMapper.xml b/order-management-invoice/src/main/resources/mybatis/mapper/OrderInfoMapper.xml
index 7ceca33a..8b83fe38 100644
--- a/order-management-invoice/src/main/resources/mybatis/mapper/OrderInfoMapper.xml
+++ b/order-management-invoice/src/main/resources/mybatis/mapper/OrderInfoMapper.xml
@@ -548,7 +548,7 @@
-
+
+