diff --git a/order-management-base-service/src/main/resources/mybatis/mapper/BuyerMapper.xml b/order-management-base-service/src/main/resources/mybatis/mapper/BuyerMapper.xml
index 4af6698b..c38f5ddd 100644
--- a/order-management-base-service/src/main/resources/mybatis/mapper/BuyerMapper.xml
+++ b/order-management-base-service/src/main/resources/mybatis/mapper/BuyerMapper.xml
@@ -759,9 +759,6 @@
and rownum <=10
-
- and status = #{status,jdbcType=VARCHAR}
-
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 b4e4eac4..76b49a3e 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
@@ -11,6 +11,8 @@ import com.dxhy.order.baseservice.config.BaseServiceConfig;
import com.dxhy.order.baseservice.module.base.model.DrawerInfoEntity;
import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.baseservice.module.base.service.DrawerInfoService;
+import com.dxhy.order.baseservice.module.buyer.model.BuyerEntity;
+import com.dxhy.order.baseservice.module.buyer.service.BuyerService;
import com.dxhy.order.baseservice.module.thirdservice.redis.service.RedisService;
import com.dxhy.order.baseservice.module.thirdservice.simsback.service.SimsBackService;
import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService;
@@ -113,43 +115,58 @@ public class InvoiceServiceImpl implements InvoiceService {
@Resource
private TaxSpecialPolicyUtil taxSpecialPolicyUtil;
+ @Resource
+ private BuyerService buyerService;
+
@Override
public R preInvoice(PageInvoiceReq pageInvoiceReq) {
List pageInvoiceItemList = pageInvoiceReq.getPageInvoiceItemList();
//查询数据列表
List commonOrderInfos = orderInfoService.batchQueryOrderInfoByOrderIdsAndNsrsbh(pageInvoiceItemList);
+ StringBuffer errorMsg = new StringBuffer();
commonOrderInfos.stream().forEach(f -> {
- String terminalCode = simsBackService.getTerminalCode(f.getOrderInfo().getXhfNsrsbh(), f.getOrderInfo().getEntId());
- List originalCommonOrderInfo = new ArrayList<>();
- originalCommonOrderInfo.add(f);
- List orderSplit = new ArrayList<>();
- // 订单超限额拆分
- try {
- orderSplit = generateReadyOpenOrderService.orderSplit(originalCommonOrderInfo, terminalCode, pageInvoiceReq.getUserId());
- log.info("{},{}生成预制发票拆分结果:{}",LOGGER_MSG,f.getOrderInfo().getDdh(),JsonUtils.getInstance().toJsonString(orderSplit));
- } catch (OrderSplitException e) {
- log.error("{}生成预制发票拆分异常:",LOGGER_MSG,e);
+ BuyerEntity buyerEntity = buyerService.queryBuyerInfoByxhfNsrsbhAndBuyerCode(f.getOrderInfo().getXhfNsrsbh(), f.getOrderInfo().getGhfId());
+ if(ConfigureConstant.STRING_0.equals(buyerEntity.getStatus())){
+ errorMsg.append("【结算单号】:").append(f.getOrderInfo().getDdh()).append(",【客户】:").append(f.getOrderInfo().getGhfMc()).append(";\r");
}
- if(orderSplit.size() == 1){
- OrderProcessInfo processInfo = f.getProcessInfo();
- processInfo.setYzfp(ConfigureConstant.STRING_1);
- orderProcessService.updateOrderProcessInfoByProcessId(processInfo,null);
- }else if(orderSplit.size() > 1){
- List commonOrderInfoSaveResults = new ArrayList<>();
+ });
+ if(errorMsg.length()>0){
+ errorMsg.append("被冻结,不允许开票!");
+ return R.error(errorMsg.toString());
+ }else {
+ commonOrderInfos.stream().forEach(f -> {
+ String terminalCode = simsBackService.getTerminalCode(f.getOrderInfo().getXhfNsrsbh(), f.getOrderInfo().getEntId());
+ List originalCommonOrderInfo = new ArrayList<>();
+ originalCommonOrderInfo.add(f);
+ List orderSplit = new ArrayList<>();
+ // 订单超限额拆分
try {
- commonOrderInfoSaveResults = generateReadyOpenOrderService.saveOrderSplitInfo(orderSplit);
- } catch (OrderReceiveException e) {
- log.error("{}生成预制发票拆分后保存异常:",LOGGER_MSG,e);
+ orderSplit = generateReadyOpenOrderService.orderSplit(originalCommonOrderInfo, terminalCode, pageInvoiceReq.getUserId());
+ log.info("{},{}生成预制发票拆分结果:{}",LOGGER_MSG,f.getOrderInfo().getDdh(),JsonUtils.getInstance().toJsonString(orderSplit));
+ } catch (OrderSplitException e) {
+ log.error("{}生成预制发票拆分异常:",LOGGER_MSG,e);
}
- commonOrderInfoSaveResults.stream().forEach(s -> {
- OrderProcessInfo processInfo = s.getProcessInfo();
+ if(orderSplit.size() == 1){
+ OrderProcessInfo processInfo = f.getProcessInfo();
processInfo.setYzfp(ConfigureConstant.STRING_1);
orderProcessService.updateOrderProcessInfoByProcessId(processInfo,null);
- });
- }
- });
- return R.ok("生成预制发票成功,请到发票处理页面查看");
+ }else if(orderSplit.size() > 1){
+ List commonOrderInfoSaveResults = new ArrayList<>();
+ try {
+ commonOrderInfoSaveResults = generateReadyOpenOrderService.saveOrderSplitInfo(orderSplit);
+ } catch (OrderReceiveException e) {
+ log.error("{}生成预制发票拆分后保存异常:",LOGGER_MSG,e);
+ }
+ commonOrderInfoSaveResults.stream().forEach(s -> {
+ OrderProcessInfo processInfo = s.getProcessInfo();
+ processInfo.setYzfp(ConfigureConstant.STRING_1);
+ orderProcessService.updateOrderProcessInfoByProcessId(processInfo,null);
+ });
+ }
+ });
+ return R.ok("生成预制发票成功,请到发票处理页面查看");
+ }
}
@Override
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 d5fb6d80..1b6fcd98 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
@@ -1560,16 +1560,38 @@ public class OrderInfoServiceImpl implements OrderInfoService {
@Override
public R fillRedMessage(Map param) {
+ StringBuffer errorMsg = new StringBuffer();
String orderInfoId = param.get("orderInfoId");
String yfpDm = param.get("yfpDm");
String yfpHm = param.get("yfpHm");
String hzxxbbh = param.get("hzxxbbh");
- OrderInfo orderInfo = orderInfoService.selectOrderInfoByOrderId(orderInfoId, null);
- orderInfo.setYfpDm(yfpDm);
- orderInfo.setYfpHm(yfpHm);
- orderInfo.setHzxxbbh(hzxxbbh);
- orderInfoService.updateOrderInfoByOrderId(orderInfo,null);
- return R.ok();
+ OrderInfo redOrderInfo = orderInfoService.selectOrderInfoByOrderId(orderInfoId, null);
+ if(StringUtils.isNotBlank(yfpDm) && StringUtils.isNotBlank(yfpHm)){
+ OrderInvoiceInfo orderInvoiceInfo = orderInvoiceInfoService.selectOrderInvoiceInfoByFpdmAndFphm(yfpDm, yfpHm, null);
+ if(ObjectUtil.isNull(orderInvoiceInfo)){
+ errorMsg.append("所填原蓝票代码、号码在系统中不存在,请检查;\n");
+ }else {
+ //TODO lfl 校验逻辑待补充
+ }
+ }else if(StringUtils.isNotBlank(hzxxbbh)){
+ SpecialInvoiceReversalEntity specialInvoiceReversalEntity = specialInvoiceReversalService.selectSpecialInvoiceReversalBySubmitCode(hzxxbbh);
+ if(ObjectUtil.isNull(specialInvoiceReversalEntity)){
+ errorMsg.append("所填红字信息表编号在系统中不存在,请检查\n");
+ }else {
+
+ }
+ }
+ if(errorMsg.length()>0){
+ return R.error(errorMsg.toString());
+ }else {
+ OrderInfo orderInfo = orderInfoService.selectOrderInfoByOrderId(orderInfoId, null);
+ orderInfo.setYfpDm(yfpDm);
+ orderInfo.setYfpHm(yfpHm);
+ orderInfo.setHzxxbbh(hzxxbbh);
+ orderInfoService.updateOrderInfoByOrderId(orderInfo,null);
+ return R.ok();
+ }
+
}
private PageKySlRsp getDefaultKySlList(OrderInfoEnum orderInfoEnum){