fix: 接口开票客户信息不存在报错;开红票根据蓝票补全红票的gsdm

release
liufeilong 2 years ago
parent b9b9a7d9dd
commit 598277491a
  1. 1
      order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java
  2. 11
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/GenerateReadyOpenOrderServiceImpl.java
  3. 3
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/AllocateInvoiceInterfaceServiceImplV3.java

@ -1866,6 +1866,7 @@ public enum OrderInfoContentEnum {
INVOICE_ERROR_CODE_010006_V3("010006", "发票开具请求税号对应的套餐余量不足"),
INVOICE_ERROR_CODE_010007_V3("010007", "发票开具请求税号对应的套餐异常"),
INVOICE_ERROR_CODE_010008_V3("010008", "发票开具请求税号对应的企业信息未设置"),
INVOICE_ERROR_CODE_010008K_V3("010008K", "销方下未查询到此客户,请先在发票平台维护"),
INVOICE_ERROR_CODE_010009_V3("010009", "发票开具请求受理点ID不能为空"),
INVOICE_ERROR_CODE_010010_V3("010010", "发票开具请求数据错误,订单请求流水号正在处理中,请勿重复请求"),
INVOICE_ERROR_CODE_010011_V3("010011", "发票开具请求数据错误,动态码信息不存在"),

@ -17,8 +17,10 @@ import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.OrderInfoContentEnum;
import com.dxhy.order.constant.OrderInfoEnum;
import com.dxhy.order.constant.OrderManagementConstant;
import com.dxhy.order.consumer.dao.OrderProcessInfoMapper;
import com.dxhy.order.consumer.modules.order.service.GenerateReadyOpenOrderService;
import com.dxhy.order.consumer.modules.order.service.OrderCommonService;
import com.dxhy.order.consumer.modules.order.service.OrderProcessService;
import com.dxhy.order.consumer.modules.validate.service.ValidateOrderInfoService;
import com.dxhy.order.consumer.openapi.service.CommonInterfaceService;
import com.dxhy.order.consumer.utils.BeanTransitionUtils;
@ -87,6 +89,9 @@ public class GenerateReadyOpenOrderServiceImpl implements GenerateReadyOpenOrder
@Resource
private TaxSpecialPolicyUtil taxSpecialPolicyUtil;
@Resource
private OrderProcessInfoMapper orderProcessInfoMapper;
private void supplement(CommonOrderInfo commonOrderInfo) {
commonOrderInfo.getOrderInfo().setFpqqlsh(apiInvoiceCommonMapperService.getGenerateShotKey());
@ -633,8 +638,10 @@ public class GenerateReadyOpenOrderServiceImpl implements GenerateReadyOpenOrder
orderProcessInfo.setKb(orderItemInfos.get(0).getKb());
orderProcessInfo.setOriginOrderId(orderInfo.getId());
orderProcessInfo.setOriginDdh(orderInfo.getDdh());
if(ObjectUtil.isNull(orderProcessInfo.getGsdm()) || StrUtil.isBlank(orderProcessInfo.getGsdm())){
orderProcessInfo.setGsdm(orderInfo.getGsdm());
if(StrUtil.isNotBlank(commonOrderInfo.getOrderInfo().getYfpHm())){
OrderInvoiceInfo orderInvoiceInfoY = orderInvoiceInfoService.selectOrderInvoiceInfoByFpdmAndFphm(commonOrderInfo.getOrderInfo().getYfpDm(), commonOrderInfo.getOrderInfo().getYfpHm(), null);
OrderProcessInfo orderProcessInfoY = orderProcessInfoMapper.selectOrderProcessInfoByProcessId(orderInvoiceInfoY.getOrderProcessInfoId(), null);
orderProcessInfo.setGsdm(orderProcessInfoY.getGsdm());
}

@ -1150,6 +1150,9 @@ public class AllocateInvoiceInterfaceServiceImplV3 implements AllocateInvoiceInt
BuyerEntity buyerEntity = buyerService.queryBuyerInfoByxhfNsrsbhAndBuyerCode(commonOrderInfo.getOrderInfo().getXhfNsrsbh(), zxbm);
if (buyerEntity != null && StringUtils.isNotBlank(buyerEntity.getTaxpayerCode())) {
BeanTransitionUtils.transitionOrderBuyerInfo(commonOrderInfo, buyerEntity);
}else {
log.error("{}补全购方信息异常,根据购方编号未查询到购方或者购方税号为空", LOGGER_MSG);
throw new OrderReceiveException(OrderInfoContentEnum.INVOICE_ERROR_CODE_010008K_V3);
}
}

Loading…
Cancel
Save