数电发票开具接口

beta-enc
dongxiaoke 2 years ago
parent 35afc74192
commit 4e3eb2e8c7
  1. 157
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/BillInfo.java
  2. 19
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/FjysDTO.java
  3. 8
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/DDPCXX.java
  4. 44
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/DDTXX.java
  5. 19
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/Fjys.java
  6. 46
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/dto/api/elephant/Qdtxx.java
  7. 11
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java

@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jianshui.common.annotation.Excel;
import com.jianshui.common.core.domain.BaseEntity;
import com.jianshui.invoice.domain.dto.api.elephant.Fjys;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -341,6 +342,162 @@ public class BillInfo extends BaseEntity
@ApiModelProperty(value = "冲红原因")
private String chyy;
@TableField(exist=false)
@ApiModelProperty(value = "开票人证件类型")
private String KPRZJLX;
@TableField(exist=false)
@ApiModelProperty(value = "电局登录用户名")
private String YHM;
// 大象数电新增
@TableField(exist=false)
private String tdys; // 特定要素
@TableField(exist=false)
private String cezslxdm; // 差额征税类型代码
@TableField(exist=false)
private String sgfplxdm; // 收购发票类型代码
@TableField(exist=false)
private String ckywszycdm; // 出口业务适用政策代码
@TableField(exist=false)
private String zzszjtdm; // 增值税即征即退代码
@TableField(exist=false)
private String gmfrb; // 经办人
@TableField(exist=false)
private String jbrsfzjhm; // 经办人身份证件号码
@TableField(exist=false)
private String gmfrblxdh; // 经办人联系电话
@TableField(exist=false)
private String jsfs; // 结算方式
@TableField(exist=false)
private String skyhmc; // 收款银行名称
@TableField(exist=false)
private String skyhzh; // 收款银行账号
@TableField(exist=false)
private String ysxwfsd; // 应税行为发生地
@TableField(exist=false)
private List<FjysDTO> fjyslist; // 附加要素列表
public String getTdys() {
return tdys;
}
public void setTdys(String tdys) {
this.tdys = tdys;
}
public String getCezslxdm() {
return cezslxdm;
}
public void setCezslxdm(String cezslxdm) {
this.cezslxdm = cezslxdm;
}
public String getSgfplxdm() {
return sgfplxdm;
}
public void setSgfplxdm(String sgfplxdm) {
this.sgfplxdm = sgfplxdm;
}
public String getCkywszycdm() {
return ckywszycdm;
}
public void setCkywszycdm(String ckywszycdm) {
this.ckywszycdm = ckywszycdm;
}
public String getZzszjtdm() {
return zzszjtdm;
}
public void setZzszjtdm(String zzszjtdm) {
this.zzszjtdm = zzszjtdm;
}
public String getGmfrb() {
return gmfrb;
}
public void setGmfrb(String gmfrb) {
this.gmfrb = gmfrb;
}
public String getJbrsfzjhm() {
return jbrsfzjhm;
}
public void setJbrsfzjhm(String jbrsfzjhm) {
this.jbrsfzjhm = jbrsfzjhm;
}
public String getGmfrblxdh() {
return gmfrblxdh;
}
public void setGmfrblxdh(String gmfrblxdh) {
this.gmfrblxdh = gmfrblxdh;
}
public String getJsfs() {
return jsfs;
}
public void setJsfs(String jsfs) {
this.jsfs = jsfs;
}
public String getSkyhmc() {
return skyhmc;
}
public void setSkyhmc(String skyhmc) {
this.skyhmc = skyhmc;
}
public String getSkyhzh() {
return skyhzh;
}
public void setSkyhzh(String skyhzh) {
this.skyhzh = skyhzh;
}
public String getYsxwfsd() {
return ysxwfsd;
}
public void setYsxwfsd(String ysxwfsd) {
this.ysxwfsd = ysxwfsd;
}
public List<FjysDTO> getFjyslist() {
return fjyslist;
}
public void setFjyslist(List<FjysDTO> fjyslist) {
this.fjyslist = fjyslist;
}
public String getKPRZJLX() {
return KPRZJLX;
}
public void setKPRZJLX(String KPRZJLX) {
this.KPRZJLX = KPRZJLX;
}
public String getYHM() {
return YHM;
}
public void setYHM(String YHM) {
this.YHM = YHM;
}
public String getChyy() {
return chyy;

@ -0,0 +1,19 @@
package com.jianshui.invoice.domain;
import lombok.Data;
/**
* @Author: kk
* @Description: 全电附加要素信息
*/
@Data
public class FjysDTO {
private String fjysmc; // 附加要素名称
private String fjyslx; // 附加要素类型
private String fjysz; // 附加要素值
}

@ -16,6 +16,14 @@ public class DDPCXX {
private String CPYBS; // 成品油标识
private String KZZD; // 扩展字段
public void setDDQQPCH(String DDQQPCH) {
this.DDQQPCH = DDQQPCH;
}

@ -17,6 +17,30 @@ import org.apache.commons.lang3.time.DateFormatUtils;
*/
public class DDTXX {
public String getKPRZJHM() {
return KPRZJHM;
}
public void setKPRZJHM(String KPRZJHM) {
this.KPRZJHM = KPRZJHM;
}
public String getKPRZJLX() {
return KPRZJLX;
}
public void setKPRZJLX(String KPRZJLX) {
this.KPRZJLX = KPRZJLX;
}
public String getYHM() {
return YHM;
}
public void setYHM(String YHM) {
this.YHM = YHM;
}
public DDTXX(BillInfo billInfo) {
this.setDDQQLSH(billInfo.getSystemOrderno()); // 订单请求流水号
this.setNSRSBH(billInfo.getSellerTaxnum()); // 纳税人识别号
@ -78,6 +102,19 @@ public class DDTXX {
// this.setBYZD3(billInfo.get); // 备用字段 3
// this.setBYZD4(billInfo.get); // 备用字段 4
// this.setBYZD5(billInfo.get); // 备用字段
//kk TODO : 2023/9/15 V6数电新加
// KPRZJHM 开票人证件号码
this.setKPRZJHM(billInfo.getBsrysfzjhm());
// KPRZJLX 开票人证件类型
this.setKPRZJLX(billInfo.getKPRZJLX());
// YHM 电局登录用户名
this.setYHM(billInfo.getYHM());
}
private String DDQQLSH; // 订单请求流水号
@ -128,6 +165,13 @@ public class DDTXX {
private String BYZD4; // 备用字段 4
private String BYZD5; // 备用字段
// 数电发票新加字段
private String KPRZJHM; // 开票人证件号码
private String KPRZJLX; // 开票人证件类型
private String YHM; // 电局登录用户名
public void setDDQQLSH(String DDQQLSH) {
this.DDQQLSH = DDQQLSH;
}

@ -0,0 +1,19 @@
package com.jianshui.invoice.domain.dto.api.elephant;
import lombok.Data;
/**
* @Author: kk
* @Description: 全电附加要素信息
*/
@Data
public class Fjys {
private String fjysmc; // 附加要素名称
private String fjyslx; // 附加要素类型
private String fjysz; // 附加要素值
}

@ -0,0 +1,46 @@
package com.jianshui.invoice.domain.dto.api.elephant;
import lombok.Data;
import java.util.List;
/**
* @Author: kk
* @Description: 全电头信息 QDTXX
*/
@Data
public class Qdtxx {
private String tdys; // 特定要素
// dqbm
private String qydm; // 区域代码
private String cezslxdm; // 差额征税类型代码
private String sgfplxdm; // 收购发票类型代码
private String ckywszycdm; // 出口业务适用政策代码
private String zzszjtdm; // 增值税即征即退代码
private String gmfrb; // 经办人
private String jbrsfzjhm; // 经办人身份证件号码
private String gmfrblxdh; // 经办人联系电话
private String jsfs; // 结算方式
private String skyhmc; // 收款银行名称
private String skyhzh; // 收款银行账号
private String ysxwfsd; // 应税行为发生地
private List<Fjys> fjyslist; // 附加要素列表
}

@ -158,6 +158,14 @@ public class ElephantInvoiceApiServiceImpl implements IInvoiceApiService {
// throw new JianshuiParamErrorException("暂不支持的开票类型,请联系管理员!", companyservice, "invoice");
// }
//kk TODO : 2023/9/15 V6数电新增
Qdtxx qdtxx = BeanUtil.copyProperties(billInfo,Qdtxx.class);
if(billInfo.getFjyslist() != null && billInfo.getFjyslist().size()>0){
List<Fjys> fjysList = BeanUtil.copyToList(billInfo.getFjyslist(),Fjys.class);
qdtxx.setFjyslist(fjysList);
}
// 开始处理详情
List<BillDetail> details = billInfo.getBillDetailList();
List<DDMXXX> ddmxxxList = new ArrayList<>();
@ -167,6 +175,9 @@ public class ElephantInvoiceApiServiceImpl implements IInvoiceApiService {
ddmxxxList.add(ddmxxx);
}
// 开始封装请求报文
ElephantInvoiceAddDTO elephantInvoiceAddDTO = new ElephantInvoiceAddDTO();
elephantInvoiceAddDTO.setDDPCXX(ddpcxx);

Loading…
Cancel
Save