提交修改

This commit is contained in:
quyixiao 2025-03-25 21:20:51 +08:00
parent 5a3744ad92
commit fbcd56b5a4
8 changed files with 643 additions and 1 deletions

View File

@ -1,7 +1,9 @@
package com.heyu.api.baidu.response.financial;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
@ -9,8 +11,90 @@ import lombok.Data;
* 增值税发票验真
*/
@NoArgsConstructor
@Data
public class BUsedCarVatInvoiceVerificationResp extends BVatInvoiceVerificationResp {
@JsonProperty("words_result")
private WordsResultDTO wordsResult;
@NoArgsConstructor
@Data
public static class WordsResultDTO {
@JsonProperty("log_id")
private Long logId;
@JsonProperty("words_result_num")
private Integer wordsResultNum;
@JsonProperty("VerifyFrequency")
private String verifyFrequency;
@JsonProperty("VerifyMessage")
private String verifyMessage;
@JsonProperty("InvalidSign")
private String invalidSign;
@JsonProperty("InvoiceType")
private String invoiceType;
@JsonProperty("MachineCode")
private String machineCode;
@JsonProperty("CheckCode")
private String checkCode;
@JsonProperty("InvoiceCode")
private String invoiceCode;
@JsonProperty("InvoiceDate")
private String invoiceDate;
@JsonProperty("VerifyResult")
private String verifyResult;
@JsonProperty("InvoiceNum")
private String invoiceNum;
@JsonProperty("Operator")
private String operator;
@JsonProperty("TransferVehicleManagementOffice")
private String transferVehicleManagementOffice;
@JsonProperty("ManuModel")
private String manuModel;
@JsonProperty("RegistrationCode")
private String registrationCode;
@JsonProperty("OperatorPhone")
private String operatorPhone;
@JsonProperty("PurchaserCode")
private String purchaserCode;
@JsonProperty("Saler")
private String saler;
@JsonProperty("UsedCarMarketCode")
private String usedCarMarketCode;
@JsonProperty("Purchaser")
private String purchaser;
@JsonProperty("OperatorCode")
private String operatorCode;
@JsonProperty("UsedCarMarketBank")
private String usedCarMarketBank;
@JsonProperty("SalerAddress")
private String salerAddress;
@JsonProperty("SalerCode")
private String salerCode;
@JsonProperty("PurchaserPhone")
private String purchaserPhone;
@JsonProperty("LicensePlateNum")
private String licensePlateNum;
@JsonProperty("VehicleType")
private String vehicleType;
@JsonProperty("OperatorBank")
private String operatorBank;
@JsonProperty("OperatorAddress")
private String operatorAddress;
@JsonProperty("VinNum")
private String vinNum;
@JsonProperty("TotalCarPrice")
private String totalCarPrice;
@JsonProperty("SalerPhone")
private String salerPhone;
@JsonProperty("PurchaserAddress")
private String purchaserAddress;
@JsonProperty("UsedCarMarketPhone")
private String usedCarMarketPhone;
@JsonProperty("UsedCarMarketAddress")
private String usedCarMarketAddress;
@JsonProperty("UsedCarMarket")
private String usedCarMarket;
}
}

View File

@ -1,7 +1,9 @@
package com.heyu.api.baidu.response.financial;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
@ -9,7 +11,88 @@ import lombok.Data;
* 增值税发票验真
*/
@NoArgsConstructor
@Data
public class BVehicleVatInvoiceVerificationResp extends BVatInvoiceVerificationResp {
@JsonProperty("words_result")
private WordsResultDTO wordsResult;
@NoArgsConstructor
@Data
public static class WordsResultDTO {
@JsonProperty("log_id")
private Long logId;
@JsonProperty("words_result_num")
private Integer wordsResultNum;
@JsonProperty("VerifyFrequency")
private String verifyFrequency;
@JsonProperty("VerifyMessage")
private String verifyMessage;
@JsonProperty("InvalidSign")
private String invalidSign;
@JsonProperty("InvoiceType")
private String invoiceType;
@JsonProperty("MachineCode")
private String machineCode;
@JsonProperty("CheckCode")
private String checkCode;
@JsonProperty("InvoiceCode")
private String invoiceCode;
@JsonProperty("InvoiceDate")
private String invoiceDate;
@JsonProperty("VerifyResult")
private String verifyResult;
@JsonProperty("InvoiceNum")
private String invoiceNum;
@JsonProperty("Origin")
private String origin;
@JsonProperty("ManuModel")
private String manuModel;
@JsonProperty("SalerBank")
private String salerBank;
@JsonProperty("VehicleType")
private String vehicleType;
@JsonProperty("Tax")
private String tax;
@JsonProperty("TaxPaymentVoucherNum")
private String taxPaymentVoucherNum;
@JsonProperty("CommodityInspectionNum")
private String commodityInspectionNum;
@JsonProperty("TaxAuthorCode")
private String taxAuthorCode;
@JsonProperty("VinNum")
private String vinNum;
@JsonProperty("SalerPhone")
private String salerPhone;
@JsonProperty("LimitPassenger")
private String limitPassenger;
@JsonProperty("PurchaserCode")
private String purchaserCode;
@JsonProperty("TaxAuthor")
private String taxAuthor;
@JsonProperty("Tonnage")
private String tonnage;
@JsonProperty("ImportCertificateNum")
private String importCertificateNum;
@JsonProperty("Saler")
private String saler;
@JsonProperty("SalerAccountNum")
private String salerAccountNum;
@JsonProperty("Price")
private String price;
@JsonProperty("CertificateNum")
private String certificateNum;
@JsonProperty("TaxRate")
private String taxRate;
@JsonProperty("Purchaser")
private String purchaser;
@JsonProperty("SalerCode")
private String salerCode;
@JsonProperty("EngineNum")
private String engineNum;
@JsonProperty("PriceTaxLow")
private String priceTaxLow;
}
}

View File

@ -0,0 +1,72 @@
package com.heyu.api.controller.financial;
import com.heyu.api.baidu.handle.financial.BVatInvoiceVerificationHandle;
import com.heyu.api.baidu.request.financial.BVatInvoiceVerificationRequest;
import com.heyu.api.baidu.response.financial.BAirTransportVatInvoiceVerificationResp;
import com.heyu.api.baidu.response.financial.BVatInvoiceVerificationResp;
import com.heyu.api.controller.BaseController;
import com.heyu.api.data.annotation.CacheResult;
import com.heyu.api.data.annotation.NotIntercept;
import com.heyu.api.data.utils.ApiR;
import com.heyu.api.data.utils.R;
import com.heyu.api.request.financial.AirTransportVatInvoiceVerificationRequest;
import com.heyu.api.resp.financial.AirTransportVatInvoiceVerificationResp;
import com.heyu.api.resp.financial.CommonVatInvoiceVerificationResp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/***
*https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
*
*
* 增值税发票验真
*
*
*
* 支持 14 种增值税发票的信息核验包括增值税专票电子专票普票电子普票卷票区块链发票深圳地区全电发票新版全国统一电子发票专票/普票通行费增值税电子普通发票货物运输业增值税专用发票
* 机动车销售发票二手车销售发票航空运输电子客票行程单电子发票铁路电子客票电子发票支持返回票面的全部信息同时可直接与同平台的发票识别能力对接完成发票识别的同时进行自动化验真
*
*
* 视频教程请参见 智能财务票据识别+增值税发票验真使用教程
*
*
*/
@Slf4j
@RestController
@RequestMapping("/air/transport/vat/Invoice")
@NotIntercept
public class AirTransportVatInvoiceVerificationController extends BaseController {
@Autowired
private BVatInvoiceVerificationHandle bVatInvoiceVerificationHandle;
@RequestMapping("/verification")
@CacheResult
public R verification(AirTransportVatInvoiceVerificationRequest req) {
BVatInvoiceVerificationRequest bVatInvoiceVerificationRequest = new BVatInvoiceVerificationRequest();
bVatInvoiceVerificationRequest.setInvoiceCode(req.getInvoiceCode());
bVatInvoiceVerificationRequest.setInvoiceNum(req.getInvoiceNum());
bVatInvoiceVerificationRequest.setInvoiceDate(req.getInvoiceDate());
bVatInvoiceVerificationRequest.setInvoiceType(req.getInvoiceType());
bVatInvoiceVerificationRequest.setCheckCode(req.getCheckCode());
bVatInvoiceVerificationRequest.setTotalAmount(req.getTotalAmount());
CommonVatInvoiceVerificationResp resp = new CommonVatInvoiceVerificationResp();
ApiR<BVatInvoiceVerificationResp> bR = bVatInvoiceVerificationHandle.handle(bVatInvoiceVerificationRequest, AirTransportVatInvoiceVerificationResp.class);
if (bR.isSuccess()) {
BAirTransportVatInvoiceVerificationResp bAirTransportVatInvoiceVerificationResp = (BAirTransportVatInvoiceVerificationResp) bR.getData();
}
return R.ok();
}
}

View File

@ -0,0 +1,76 @@
package com.heyu.api.controller.financial;
import com.heyu.api.baidu.handle.financial.BVatInvoiceVerificationHandle;
import com.heyu.api.baidu.request.financial.BVatInvoiceVerificationRequest;
import com.heyu.api.baidu.response.financial.BCommonVatInvoiceVerificationResp;
import com.heyu.api.baidu.response.financial.BVatInvoiceVerificationResp;
import com.heyu.api.controller.BaseController;
import com.heyu.api.data.annotation.CacheResult;
import com.heyu.api.data.annotation.NotIntercept;
import com.heyu.api.data.utils.ApiR;
import com.heyu.api.data.utils.R;
import com.heyu.api.request.financial.CommonVatInvoiceVerificationRequest;
import com.heyu.api.resp.financial.CommonVatInvoiceVerificationResp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/***
*https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
*
*
* 增值税发票验真
*
*
*
* 支持 14 种增值税发票的信息核验包括增值税专票电子专票普票电子普票卷票区块链发票深圳地区全电发票新版全国统一电子发票专票/普票通行费增值税电子普通发票货物运输业增值税专用发票
* 机动车销售发票二手车销售发票航空运输电子客票行程单电子发票铁路电子客票电子发票支持返回票面的全部信息同时可直接与同平台的发票识别能力对接完成发票识别的同时进行自动化验真
*
*
* 视频教程请参见 智能财务票据识别+增值税发票验真使用教程
*
*
*/
@Slf4j
@RestController
@RequestMapping("/train/vat/Invoice")
@NotIntercept
public class TrainVatInvoiceVerificationController extends BaseController {
@Autowired
private BVatInvoiceVerificationHandle bVatInvoiceVerificationHandle;
@RequestMapping("/verification")
@CacheResult
public R verification(CommonVatInvoiceVerificationRequest req) {
BVatInvoiceVerificationRequest bVatInvoiceVerificationRequest = new BVatInvoiceVerificationRequest();
bVatInvoiceVerificationRequest.setInvoiceCode(req.getInvoiceCode());
bVatInvoiceVerificationRequest.setInvoiceNum(req.getInvoiceNum());
bVatInvoiceVerificationRequest.setInvoiceDate(req.getInvoiceDate());
bVatInvoiceVerificationRequest.setInvoiceType(req.getInvoiceType());
bVatInvoiceVerificationRequest.setCheckCode(req.getCheckCode());
bVatInvoiceVerificationRequest.setTotalAmount(req.getTotalAmount());
CommonVatInvoiceVerificationResp resp = new CommonVatInvoiceVerificationResp();
ApiR<BVatInvoiceVerificationResp> bR = bVatInvoiceVerificationHandle.handle(bVatInvoiceVerificationRequest, BCommonVatInvoiceVerificationResp.class);
if (bR.isSuccess()) {
}
return R.ok();
}
}

View File

@ -0,0 +1,118 @@
package com.heyu.api.controller.financial;
import com.heyu.api.baidu.handle.financial.BVatInvoiceVerificationHandle;
import com.heyu.api.baidu.request.financial.BVatInvoiceVerificationRequest;
import com.heyu.api.baidu.response.financial.BUsedCarVatInvoiceVerificationResp;
import com.heyu.api.baidu.response.financial.BVatInvoiceVerificationResp;
import com.heyu.api.controller.BaseController;
import com.heyu.api.data.annotation.CacheResult;
import com.heyu.api.data.annotation.NotIntercept;
import com.heyu.api.data.utils.ApiR;
import com.heyu.api.data.utils.R;
import com.heyu.api.request.financial.CommonVatInvoiceVerificationRequest;
import com.heyu.api.resp.financial.UsedCarVatInvoiceVerificationResp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/***
*https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
*
*
* 增值税发票验真
*
*
*
* 支持 14 种增值税发票的信息核验包括增值税专票电子专票普票电子普票卷票区块链发票深圳地区全电发票新版全国统一电子发票专票/普票通行费增值税电子普通发票货物运输业增值税专用发票
* 机动车销售发票二手车销售发票航空运输电子客票行程单电子发票铁路电子客票电子发票支持返回票面的全部信息同时可直接与同平台的发票识别能力对接完成发票识别的同时进行自动化验真
*
*
* 视频教程请参见 智能财务票据识别+增值税发票验真使用教程
*
*
*/
@Slf4j
@RestController
@RequestMapping("/used/car/vat/Invoice")
@NotIntercept
public class UsedCarVatInvoiceVerificationController extends BaseController {
@Autowired
private BVatInvoiceVerificationHandle bVatInvoiceVerificationHandle;
@RequestMapping("/verification")
@CacheResult
public R verification(CommonVatInvoiceVerificationRequest req) {
BVatInvoiceVerificationRequest bVatInvoiceVerificationRequest = new BVatInvoiceVerificationRequest();
bVatInvoiceVerificationRequest.setInvoiceCode(req.getInvoiceCode());
bVatInvoiceVerificationRequest.setInvoiceNum(req.getInvoiceNum());
bVatInvoiceVerificationRequest.setInvoiceDate(req.getInvoiceDate());
bVatInvoiceVerificationRequest.setInvoiceType(req.getInvoiceType());
bVatInvoiceVerificationRequest.setCheckCode(req.getCheckCode());
bVatInvoiceVerificationRequest.setTotalAmount(req.getTotalAmount());
UsedCarVatInvoiceVerificationResp resp = new UsedCarVatInvoiceVerificationResp();
ApiR<BVatInvoiceVerificationResp> bR = bVatInvoiceVerificationHandle.handle(bVatInvoiceVerificationRequest, BUsedCarVatInvoiceVerificationResp.class);
if (bR.isSuccess()) {
BUsedCarVatInvoiceVerificationResp bUsedCarVatInvoiceVerificationResp =(BUsedCarVatInvoiceVerificationResp) bR.getData();
BUsedCarVatInvoiceVerificationResp.WordsResultDTO wordsResultDTO = bUsedCarVatInvoiceVerificationResp.getWordsResult();
resp.setVerifyFrequency(wordsResultDTO.getVerifyFrequency()); // 查验次数为历史查验次数
resp.setVerifyMessage(wordsResultDTO.getVerifyMessage()); //查验结果信息查验成功且发票为真返回查验成功发票一致查验失败返回对应错误原因详见末尾表格
resp.setInvalidSign(wordsResultDTO.getInvalidSign()); // 是否作废冲红Y已作废H已冲红N未作废
resp.setInvoiceType(wordsResultDTO.getInvoiceType()); //发票种类即增值税专用发票增值税电子专用发票增值税普通发票增值税普通发票电子增值税普通发票卷式通行费增值税电子普通发票区块链电子发票全电发票专用发票全电发票普通发票机动车销售发票二手车销售发票货物运输业增值税专用发票航空运输电子客票行程单电子发票铁路电子客票电子发票
resp.setMachineCode(wordsResultDTO.getMachineCode()); //机器编号
resp.setCheckCode(wordsResultDTO.getCheckCode()); //校验码
resp.setInvoiceCode(wordsResultDTO.getInvoiceCode()); //发票代码
resp.setInvoiceDate(wordsResultDTO.getInvoiceDate()); // 开票日期
resp.setVerifyResult(wordsResultDTO.getPurchaser()); //查验结果查验成功返回0001查验失败返回对应查验结果错误码详见末尾表格
resp.setInvoiceNum(wordsResultDTO.getInvoiceNum()); //发票号码
resp.setOperator(wordsResultDTO.getOperator()); //经营拍卖单位
resp.setTransferVehicleManagementOffice(wordsResultDTO.getTransferVehicleManagementOffice()); // 转入地车辆车管所名称
resp.setManuModel(wordsResultDTO.getManuModel()); //厂牌型号
resp.setRegistrationCode(wordsResultDTO.getRegistrationCode()); //登记证号
resp.setOperatorPhone(wordsResultDTO.getOperatorPhone()); //经营拍卖单位电话
resp.setPurchaserCode(wordsResultDTO.getPurchaserCode()); //买方单位代码/身份证号
resp.setSaler(wordsResultDTO.getSaler()); //卖方单位/个人
resp.setUsedCarMarketCode(wordsResultDTO.getUsedCarMarketCode()); //二手车市场纳税人识别号
resp.setPurchaser(wordsResultDTO.getPurchaser()); //买方单位/个人
resp.setOperatorCode(wordsResultDTO.getOperatorCode()); //经营拍卖单位纳税人识别号
resp.setUsedCarMarketBank(wordsResultDTO.getUsedCarMarketBank()); // 二手车市场开户银行及账号
resp.setSalerAddress(wordsResultDTO.getSalerAddress()); // 卖方单位/个人住址
resp.setSalerCode(wordsResultDTO.getSalerCode()); //卖方单位代码/身份证号
resp.setPurchaserPhone(wordsResultDTO.getPurchaserPhone()); //买方电话
resp.setLicensePlateNum(wordsResultDTO.getLicensePlateNum()); //车牌照号
resp.setVehicleType(wordsResultDTO.getVehicleType()); //车辆类型
resp.setOperatorBank(wordsResultDTO.getOperatorBank()); //开户银行及账号
resp.setOperatorAddress(wordsResultDTO.getOperatorAddress()); //经营拍卖单位地址
resp.setVinNum(wordsResultDTO.getVinNum()); //车辆识别代号/车架号码
resp.setTotalCarPrice(wordsResultDTO.getTotalCarPrice()); //车价合计
resp.setSalerPhone(wordsResultDTO.getSalerPhone()); //卖方电话
resp.setPurchaserAddress(wordsResultDTO.getPurchaserAddress()); //买方单位/个人住址
resp.setUsedCarMarketPhone(wordsResultDTO.getUsedCarMarketPhone()); //二手车市场电话
resp.setUsedCarMarketAddress(wordsResultDTO.getUsedCarMarketAddress()); //二手车市地址
resp.setUsedCarMarket(wordsResultDTO.getUsedCarMarket()); // 二手车市场
return R.ok().setData(resp);
}
return R.ok();
}
}

View File

@ -0,0 +1,106 @@
package com.heyu.api.controller.financial;
import com.heyu.api.baidu.handle.financial.BVatInvoiceVerificationHandle;
import com.heyu.api.baidu.request.financial.BVatInvoiceVerificationRequest;
import com.heyu.api.baidu.response.financial.BVatInvoiceVerificationResp;
import com.heyu.api.baidu.response.financial.BVehicleVatInvoiceVerificationResp;
import com.heyu.api.controller.BaseController;
import com.heyu.api.data.annotation.CacheResult;
import com.heyu.api.data.annotation.NotIntercept;
import com.heyu.api.data.utils.ApiR;
import com.heyu.api.data.utils.R;
import com.heyu.api.request.financial.VehicleVatInvoiceVerificationRequest;
import com.heyu.api.resp.financial.VehicleVatInvoiceVerificationResp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/***
*https://console.bce.baidu.com/support/?_=1740494347073&timestamp=1740500368284#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E8%B4%A2%E5%8A%A1%E7%A5%A8%E6%8D%AEOCR&api=rest%2F2.0%2Focr%2Fv1%2Fvat_invoice_verification&method=post
*
*
* 增值税发票验真
*
*
*
* 支持 14 种增值税发票的信息核验包括增值税专票电子专票普票电子普票卷票区块链发票深圳地区全电发票新版全国统一电子发票专票/普票通行费增值税电子普通发票货物运输业增值税专用发票
* 机动车销售发票二手车销售发票航空运输电子客票行程单电子发票铁路电子客票电子发票支持返回票面的全部信息同时可直接与同平台的发票识别能力对接完成发票识别的同时进行自动化验真
*
*
* 视频教程请参见 智能财务票据识别+增值税发票验真使用教程
*
*
*/
@Slf4j
@RestController
@RequestMapping("/vehicle/vat/Invoice")
@NotIntercept
public class VehicleVatInvoiceVerificationController extends BaseController {
@Autowired
private BVatInvoiceVerificationHandle bVatInvoiceVerificationHandle;
@RequestMapping("/verification")
@CacheResult
public R verification(VehicleVatInvoiceVerificationRequest req) {
BVatInvoiceVerificationRequest bVatInvoiceVerificationRequest = new BVatInvoiceVerificationRequest();
bVatInvoiceVerificationRequest.setInvoiceCode(req.getInvoiceCode());
bVatInvoiceVerificationRequest.setInvoiceNum(req.getInvoiceNum());
bVatInvoiceVerificationRequest.setInvoiceDate(req.getInvoiceDate());
bVatInvoiceVerificationRequest.setInvoiceType(req.getInvoiceType());
bVatInvoiceVerificationRequest.setCheckCode(req.getCheckCode());
bVatInvoiceVerificationRequest.setTotalAmount(req.getTotalAmount());
VehicleVatInvoiceVerificationResp resp= new VehicleVatInvoiceVerificationResp();
ApiR<BVatInvoiceVerificationResp> bR = bVatInvoiceVerificationHandle.handle(bVatInvoiceVerificationRequest, BVehicleVatInvoiceVerificationResp.class);
if (bR.isSuccess()) {
BVehicleVatInvoiceVerificationResp bVehicleVatInvoiceVerificationResp = (BVehicleVatInvoiceVerificationResp)bR.getData();
BVehicleVatInvoiceVerificationResp.WordsResultDTO wordsResultDTO = bVehicleVatInvoiceVerificationResp.getWordsResult();
resp.setVerifyFrequency(wordsResultDTO.getVerifyFrequency()); // 查验次数为历史查验次数
resp.setVerifyMessage(wordsResultDTO.getVerifyMessage()); //查验结果信息查验成功且发票为真返回查验成功发票一致查验失败返回对应错误原因详见末尾表格
resp.setInvalidSign(wordsResultDTO.getInvalidSign()); // 是否作废冲红Y已作废H已冲红N未作废
resp.setInvoiceType(wordsResultDTO.getInvoiceType()); //发票种类即增值税专用发票增值税电子专用发票增值税普通发票增值税普通发票电子增值税普通发票卷式通行费增值税电子普通发票区块链电子发票全电发票专用发票全电发票普通发票机动车销售发票二手车销售发票货物运输业增值税专用发票航空运输电子客票行程单电子发票铁路电子客票电子发票
resp.setMachineCode(wordsResultDTO.getMachineCode()); //机器编号
resp.setCheckCode(wordsResultDTO.getCheckCode()); //校验码
resp.setInvoiceCode(wordsResultDTO.getInvoiceCode()); //发票代码
resp.setInvoiceDate(wordsResultDTO.getInvoiceDate()); // 开票日期
resp.setVerifyResult(wordsResultDTO.getVerifyResult()); //查验结果查验成功返回0001查验失败返回对应查验结果错误码详见末尾表格
resp.setInvoiceNum(wordsResultDTO.getInvoiceNum()); //发票号码
resp.setOrigin(wordsResultDTO.getOrigin()); // 始发地
resp.setManuModel(wordsResultDTO.getManuModel()); //厂牌型号
resp.setSalerBank(wordsResultDTO.getSalerBank()); //销货单位开户银行
resp.setVehicleType(wordsResultDTO.getVehicleType());
resp.setTax(wordsResultDTO.getTax()); //税额
resp.setTaxPaymentVoucherNum(wordsResultDTO.getTaxPaymentVoucherNum()); //完税凭证号码
resp.setCommodityInspectionNum(wordsResultDTO.getCommodityInspectionNum()); //商检单号
resp.setTaxAuthorCode(wordsResultDTO.getTaxAuthorCode()); // 主管税务机关代码
resp.setVinNum(wordsResultDTO.getInvoiceNum()); // 车辆识别代号/车架号码
resp.setSalerPhone(wordsResultDTO.getSalerPhone()); // 卖方电话
resp.setLimitPassenger(wordsResultDTO.getLimitPassenger()); // 限乘人数
resp.setPurchaserCode(wordsResultDTO.getPurchaserCode()); //买方单位代码/身份证号
resp.setTaxAuthor(wordsResultDTO.getTaxAuthor()); //主管税务机关名称
resp.setTonnage(wordsResultDTO.getTonnage()); //吨位
resp.setImportCertificateNum(wordsResultDTO.getImportCertificateNum()); //进口证明书号
resp.setSaler(wordsResultDTO.getSaler()); // 销货单位名称
resp.setSalerAccountNum(wordsResultDTO.getSalerAccountNum()); //销货单位账号
resp.setPrice(wordsResultDTO.getPrice()); //不含税价格
resp.setCertificateNum(wordsResultDTO.getCertificateNum()); //合格证号书
resp.setTaxRate(wordsResultDTO.getTaxRate()); //税率
resp.setPurchaser(wordsResultDTO.getPurchaser()); // 买方单位/个人
resp.setSalerCode(wordsResultDTO.getSalerCode()); //卖方单位代码/身份证号
resp.setEngineNum(wordsResultDTO.getEngineNum()); // 发动机号码
resp.setPriceTaxLow(wordsResultDTO.getPriceTaxLow()); //价税合计
return R.ok().setData(resp);
}
return R.ok();
}
}

View File

@ -13,5 +13,55 @@ import lombok.Data;
@Data
public class UsedCarVatInvoiceVerificationResp extends BaseResp {
private String verifyFrequency; // 查验次数为历史查验次数
private String verifyMessage; //查验结果信息查验成功且发票为真返回查验成功发票一致查验失败返回对应错误原因详见末尾表格
private String invalidSign; // 是否作废冲红Y已作废H已冲红N未作废
private String invoiceType; //发票种类即增值税专用发票增值税电子专用发票增值税普通发票增值税普通发票电子增值税普通发票卷式通行费增值税电子普通发票区块链电子发票全电发票专用发票全电发票普通发票机动车销售发票二手车销售发票货物运输业增值税专用发票航空运输电子客票行程单电子发票铁路电子客票电子发票
private String machineCode; //机器编号
private String checkCode; //校验码
private String invoiceCode; //发票代码
private String invoiceDate; // 开票日期
/***
* 9999 查验失败 查验失败业务出现异常请提交工单咨询
* 0002 超过该张票当天查验次数 此发票今日查询次数已达上限5次请次日查询
* 0005 请求不合法 发票信息有误请核对后再查询
* 0006 发票信息不一致 发票信息有误请核对后再查询
* 0009 发票不存在 所查发票不存在
* 1004 已超过最大查验量 已超过最大查验量请提交工单咨询
* 1005 查询发票不规范 信息有误请核对后再查询
* 1006 查验异常 发票信息有误请核对后再查询
* 1008 字段不能为空 发票请求参数不能为空
* 1009 参数长度不正确 参数长度不符合规范确认参数再次查验
* 1014 日期当天的不能查验 日期当天的不能查验请隔天再查
* 1015 超过5年的不能查验 超过5年的不能查验
* 1020 没有查验权限 没有查验权限请提交工单咨询
* 1021 网络超时 税局维护升级暂时无法查验请提交工单咨询
*/
private String verifyResult; //查验结果查验成功返回0001查验失败返回对应查验结果错误码详见末尾表格
private String invoiceNum; //发票号码
private String operator; //经营拍卖单位
private String transferVehicleManagementOffice; // 转入地车辆车管所名称
private String manuModel; //厂牌型号
private String registrationCode; //登记证号
private String operatorPhone; //经营拍卖单位电话
private String purchaserCode; //买方单位代码/身份证号
private String saler; //卖方单位/个人
private String usedCarMarketCode; //二手车市场纳税人识别号
private String purchaser; //买方单位/个人
private String operatorCode; //经营拍卖单位纳税人识别号
private String usedCarMarketBank; // 二手车市场开户银行及账号
private String salerAddress; // 卖方单位/个人住址
private String salerCode; //卖方单位代码/身份证号
private String purchaserPhone; //买方电话
private String licensePlateNum; //车牌照号
private String vehicleType; //车辆类型
private String operatorBank; //开户银行及账号
private String operatorAddress; //经营拍卖单位地址
private String vinNum; //车辆识别代号/车架号码
private String totalCarPrice; //车价合计
private String salerPhone; //卖方电话
private String purchaserAddress; //买方单位/个人住址
private String usedCarMarketPhone; //二手车市场电话
private String usedCarMarketAddress; //二手车市地址
private String usedCarMarket; // 二手车市场
}

View File

@ -13,4 +13,57 @@ import lombok.Data;
@Data
public class VehicleVatInvoiceVerificationResp extends BaseResp {
private String verifyFrequency; // 查验次数为历史查验次数
private String verifyMessage; //查验结果信息查验成功且发票为真返回查验成功发票一致查验失败返回对应错误原因详见末尾表格
private String invalidSign; // 是否作废冲红Y已作废H已冲红N未作废
private String invoiceType; //发票种类即增值税专用发票增值税电子专用发票增值税普通发票增值税普通发票电子增值税普通发票卷式通行费增值税电子普通发票区块链电子发票全电发票专用发票全电发票普通发票机动车销售发票二手车销售发票货物运输业增值税专用发票航空运输电子客票行程单电子发票铁路电子客票电子发票
private String machineCode; //机器编号
private String checkCode; //校验码
private String invoiceCode; //发票代码
private String invoiceDate; // 开票日期
/***
* 9999 查验失败 查验失败业务出现异常请提交工单咨询
* 0002 超过该张票当天查验次数 此发票今日查询次数已达上限5次请次日查询
* 0005 请求不合法 发票信息有误请核对后再查询
* 0006 发票信息不一致 发票信息有误请核对后再查询
* 0009 发票不存在 所查发票不存在
* 1004 已超过最大查验量 已超过最大查验量请提交工单咨询
* 1005 查询发票不规范 信息有误请核对后再查询
* 1006 查验异常 发票信息有误请核对后再查询
* 1008 字段不能为空 发票请求参数不能为空
* 1009 参数长度不正确 参数长度不符合规范确认参数再次查验
* 1014 日期当天的不能查验 日期当天的不能查验请隔天再查
* 1015 超过5年的不能查验 超过5年的不能查验
* 1020 没有查验权限 没有查验权限请提交工单咨询
* 1021 网络超时 税局维护升级暂时无法查验请提交工单咨询
*/
private String verifyResult; //查验结果查验成功返回0001查验失败返回对应查验结果错误码详见末尾表格
private String invoiceNum; //发票号码
private String origin; // 始发地
private String manuModel; //厂牌型号
private String salerBank; //销货单位开户银行
private String vehicleType;
private String tax; //税额
private String taxPaymentVoucherNum; //完税凭证号码
private String commodityInspectionNum; //商检单号
private String taxAuthorCode; // 主管税务机关代码
private String vinNum; // 车辆识别代号/车架号码
private String salerPhone; // 卖方电话
private String limitPassenger; // 限乘人数
private String purchaserCode; //买方单位代码/身份证号
private String taxAuthor; //主管税务机关名称
private String tonnage; //吨位
private String importCertificateNum; //进口证明书号
private String saler; // 销货单位名称
private String salerAccountNum; //销货单位账号
private String price; //不含税价格
private String certificateNum; //合格证号书
private String taxRate; //税率
private String purchaser; // 买方单位/个人
private String salerCode; //卖方单位代码/身份证号
private String engineNum; // 发动机号码
private String priceTaxLow; //价税合计
}