feature: 适配数电纸票机动车销售统一发票 、数电机动车销售统一发票

jianshui-ui
dongxiaoke 1 year ago
parent c823c4223b
commit afa6d506f7
  1. 1
      jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java
  2. 11
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/BillInfo.java
  3. 1
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/adapter/request/aisino_jn/HxBillInfoDTO.java
  4. 1
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/DDPCXX.java
  5. 2
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/Qdtxx.java
  6. 52
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/addInvoice/Jdcxx.java
  7. 23
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ByInspurServiceImpl.java
  8. 25
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java

@ -40,6 +40,7 @@ public class ElephantConstantsV6 {
public static String GENERATE_QD_BDXZL_INVOICE = "/invoice/api/v6/GenerateQdBdczlInvoice";
public static String GENERATE_QD_JDCZP_INVOICE = "/invoice/api/v6/GenerateQdjdczpInvoice";
public static String QD_GET_RED_INVOICE_BACK = "/invoice/api/v6/getDownloadRedInvoice";
public static String GENERATE_QD_JDCXS_INVOICE = "/invoice/api/v6/GenerateQdjdcxsInvoice";
// 发票开票结果拉取
public static String ADD_INVOICE_RESULT = "order-api/order-api/v6/GetOrderInfoAndInvoiceInfo";

@ -398,6 +398,9 @@ public class BillInfo extends BaseEntity
@TableField(exist=false)
private List<Jzfwxx> jzfwList; // 建筑服务信息
@TableField(exist=false)
private Jdcxx JDCXX; // 机动车信息
@TableField(exist=false)
private String jdcbz; // 机动车标志
@ -1445,6 +1448,14 @@ public class BillInfo extends BaseEntity
this.callbackUrl = callbackUrl;
}
public Jdcxx getJDCXX() {
return JDCXX;
}
public void setJDCXX(Jdcxx JDCXX) {
this.JDCXX = JDCXX;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)

@ -454,6 +454,7 @@ public class HxBillInfoDTO extends BillInfo {
private List<Hwys> hwysList; // 货物运输
private List<Bdcxsxx> bdcxsxxListt; // 不动产销售信息
private List<Jzfwxx> jzfwList; // 建筑服务信息
private Jdcxx JDCXX; // 机动车信息
@ApiModelProperty(value = "开票人证件类型")
private String KPRZJLX;

@ -17,6 +17,7 @@ public class DDPCXX {
private String KZZD; // 扩展字段
private String ENTID; //企业组织ID

@ -47,5 +47,7 @@ public class Qdtxx {
private Jzfwxx JZFWXX; // 建筑服务信息
private Bdczlxx BDCZLXX; // 建筑服务信息
private Jdcxx JDCXX; // 机动车信息
}

@ -0,0 +1,52 @@
package com.jianshui.invoice.domain.dto.api.elephant.addInvoice;
import lombok.Data;
/**
* @Author: kk
* @Description: 机动车信息
*/
@Data
public class Jdcxx {
// 车辆类型
private String CLLX;
// 厂牌型号
private String CPXH;
// 产地
private String CLCD;
// 合格证号
private String HGZH;
// 进口证明书号
private String JKZMSH;
// 商检单号
private String SJDH;
// 发动机号码
private String FDJHM;
// 车辆识别单号
private String CLSBDH;
// 完税凭证号码
private String WSPZHM;
// 吨位
private String DW;
// 限乘人数
private String XCRS;
// 车辆识别代号UUID
private String CLSBDHUUID;
// 生产企业名称
private String SCQYMC;
}

@ -199,6 +199,10 @@ public class ElephantInvoiceApiV6ByInspurServiceImpl implements IInvoiceApiServi
if(billInfo.getBdczlxxList() != null && !billInfo.getBdczlxxList().isEmpty()){
qdtxx.setBDCZLXX(billInfo.getBdczlxxList().get(0));// 不动产租赁信息
}
if(billInfo.getJDCXX() != null ){
qdtxx.setJDCXX(billInfo.getJDCXX() );// 机动车信息
}
// qdtxx.setBDCZLXX(billInfo.getBdczlxxList()); //不动产租赁信息
// 特殊票种地请求接口名转换
@ -215,6 +219,17 @@ public class ElephantInvoiceApiV6ByInspurServiceImpl implements IInvoiceApiServi
} else if (BeanUtil.isNotEmpty(qdtxx.getBDCZLXX())) {
// GenerateQdBdczlInvoice 不动产租赁信息
url = ElephantConstantsV6.GENERATE_QD_BDXZL_INVOICE;
}else if( BeanUtil.isNotEmpty(qdtxx.getJDCXX()) ){
// GenerateQdjdcxsInvoice 数电机动车销售统一发票
url = ElephantConstantsV6.GENERATE_QD_JDCXS_INVOICE;
}
// 机动车专票适配
String jdcbz = billInfo.getJdcbz() != null ? billInfo.getJdcbz():"";
if("1".equals(jdcbz)){
billInfo.setTdys("14");
// (数电机动车专票)发票开具/冲红接口
url = ElephantConstantsV6.GENERATE_QD_JDCZP_INVOICE;
}
// 开始处理详情
@ -3170,6 +3185,11 @@ public class ElephantInvoiceApiV6ByInspurServiceImpl implements IInvoiceApiServi
if(billInfo.getBdczlxxList() != null && !billInfo.getBdczlxxList().isEmpty()){
qdtxx.setBDCZLXX(billInfo.getBdczlxxList().get(0));// 不动产租赁信息
}
if(billInfo.getJDCXX() != null ){
qdtxx.setJDCXX(billInfo.getJDCXX() );// 机动车信息
}
// qdtxx.setBDCZLXX(billInfo.getBdczlxxList()); //不动产租赁信息
// 特殊票种地请求接口名转换
@ -3186,6 +3206,9 @@ public class ElephantInvoiceApiV6ByInspurServiceImpl implements IInvoiceApiServi
} else if (BeanUtil.isNotEmpty(qdtxx.getBDCZLXX())) {
// GenerateQdBdczlInvoice 不动产租赁信息
url = ElephantConstantsV6.GENERATE_QD_BDXZL_INVOICE;
}else if( BeanUtil.isNotEmpty(qdtxx.getJDCXX()) ){
// GenerateQdjdcxsInvoice 数电机动车销售统一发票
url = ElephantConstantsV6.GENERATE_QD_JDCXS_INVOICE;
}
// 开始处理详情

@ -246,6 +246,10 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
if(billInfo.getBdczlxxList() != null && !billInfo.getBdczlxxList().isEmpty()){
qdtxx.setBDCZLXX(billInfo.getBdczlxxList().get(0));// 不动产租赁信息
}
if(billInfo.getJDCXX() != null ){
qdtxx.setJDCXX(billInfo.getJDCXX() );// 机动车信息
}
// qdtxx.setBDCZLXX(billInfo.getBdczlxxList()); //不动产租赁信息
// 特殊票种地请求接口名转换
@ -262,6 +266,17 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
} else if (BeanUtil.isNotEmpty(qdtxx.getBDCZLXX())) {
// GenerateQdBdczlInvoice 不动产租赁信息
url = ElephantConstantsV6.GENERATE_QD_BDXZL_INVOICE;
}else if( BeanUtil.isNotEmpty(qdtxx.getJDCXX()) ){
// GenerateQdjdcxsInvoice 数电机动车销售统一发票
url = ElephantConstantsV6.GENERATE_QD_JDCXS_INVOICE;
}
// 机动车专票适配
String jdcbz = billInfo.getJdcbz() != null ? billInfo.getJdcbz():"";
if("1".equals(jdcbz)){
billInfo.setTdys("14");
// (数电机动车专票)发票开具/冲红接口
url = ElephantConstantsV6.GENERATE_QD_JDCZP_INVOICE;
}
// 开始处理详情
@ -3217,6 +3232,9 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
if(billInfo.getBdczlxxList() != null && !billInfo.getBdczlxxList().isEmpty()){
qdtxx.setBDCZLXX(billInfo.getBdczlxxList().get(0));// 不动产租赁信息
}
if(billInfo.getJDCXX() != null ){
qdtxx.setJDCXX(billInfo.getJDCXX() );// 机动车信息
}
// qdtxx.setBDCZLXX(billInfo.getBdczlxxList()); //不动产租赁信息
// 特殊票种地请求接口名转换
@ -3233,6 +3251,9 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
} else if (BeanUtil.isNotEmpty(qdtxx.getBDCZLXX())) {
// GenerateQdBdczlInvoice 不动产租赁信息
url = ElephantConstantsV6.GENERATE_QD_BDXZL_INVOICE;
}else if( BeanUtil.isNotEmpty(qdtxx.getJDCXX()) ){
// GenerateQdjdcxsInvoice 数电机动车销售统一发票
url = ElephantConstantsV6.GENERATE_QD_JDCXS_INVOICE;
}
// 机动车专票适配
@ -3253,6 +3274,9 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
ddmxxxList.add(ddmxxx);
}
// TODO kk:2024/6/17 重汽赋值权限信息
// 开始封装请求报文
ElephantInvoiceAddDTO elephantInvoiceAddDTO = new ElephantInvoiceAddDTO();
elephantInvoiceAddDTO.setDDPCXX(ddpcxx);
@ -3266,6 +3290,7 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
elephantInvoiceAddDTO.setDDZXX(ddzxxes);
AjaxResult queryResult = null;
try {
queryResult = ElephantUtils.sendRequestWithoutTokenV6New(url, "", JSONUtil.parse(elephantInvoiceAddDTO), companyservice);

Loading…
Cancel
Save