Merge branches 'dev-v6.0.1' and 'dev0310' of http://10.1.1.216/xm/sdenergy/jxpt/pt-sdenergy into dev-v6.0.1

release
yefei 2 years ago
commit 8352919f4a
  1. 1
      dxhy-core/src/main/java/com/dxhy/core/job/entity/TDxRecordInvoiceDetail.java
  2. 5
      dxhy-core/src/main/java/com/dxhy/core/model/CheckRecordInvoiceDetailVO.java
  3. 84
      dxhy-core/src/main/java/com/dxhy/core/service/invoicedetail/InvoiceDetailServiceImpl.java
  4. 4
      dxhy-erp/src/main/java/com/dxhy/erp/config/ErpWebConfiguration.java
  5. 4
      dxhy-erp/src/main/java/com/dxhy/erp/controller/SDNYMainProcessController.java
  6. 5
      dxhy-erp/src/main/java/com/dxhy/erp/entity/TDxRecordInvoiceDetail.java
  7. 5
      dxhy-erp/src/main/java/com/dxhy/erp/entity/sdny/SNInvoiceDetail.java
  8. 54
      dxhy-erp/src/main/java/com/dxhy/erp/service/SNPushCheckRecordService.java

@ -91,4 +91,5 @@ public class TDxRecordInvoiceDetail implements Serializable {
* 商品编码
*/
private String goodsNum;
}

@ -50,6 +50,11 @@ public class CheckRecordInvoiceDetailVO {
*/
private String taxRate;
/**
* 税码
*/
private String taxCode;
/**
* 税额
*/

@ -144,16 +144,11 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
/**
* 根据数据拼接需要返回的报文
*
* @param invoiceRecord
* 底账表信息
* @param vehicleSaleInfo
* 机动车表信息
* @param invoiceDetailList
* 底账明细表信息
* @param img
* 图片信息
* @param invoiceRecord 底账表信息
* @param vehicleSaleInfo 机动车表信息
* @param invoiceDetailList 底账明细表信息
* @param img 图片信息
* @return 返回
*
*/
private JSONObject createCheckInfo(TDxRecordInvoice invoiceRecord, TDxVehicleSaleInvoice vehicleSaleInfo,
List<TDxRecordInvoiceDetail> invoiceDetailList, TDxInvoiceImg img) {
@ -346,10 +341,8 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
/**
* 转义认证类型
*
* @param rzlx
* 认证类型
* @param rzlx 认证类型
* @return 返回
*
*/
private String getRzlx(String rzlx) {
String rzlxmc = "";
@ -366,10 +359,8 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
/**
* 转义签收方式
*
* @param qsType
* 前首富昂视
* @param qsType 前首富昂视
* @return 类型
*
*/
private String getQsType(String qsType) {
String qsfs = "";
@ -392,10 +383,8 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
/**
* 转义签收状态
*
* @param qsStatus
* 签收状态
* @param qsStatus 签收状态
* @return 返回
*
*/
private String getQsStatus(String qsStatus) {
String qszt = "";
@ -410,10 +399,8 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
/**
* 转义认证方式
*
* @param rzhType
* 认证方式
* @param rzhType 认证方式
* @return 返回
*
*/
private String getRztype(String rzhType) {
String rzType = "";
@ -548,6 +535,10 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
} else {
checkRecordDetailVo.setTaxRate(StringHelper.trimEnter(tDxRecordInvoiceDetail.getTaxRate()));
}
if (checkRecordDetailVo.getTaxRate() != null)
checkRecordDetailVo.setTaxCode(getZSM(checkRecordDetailVo.getTaxRate()));
checkRecordDetailVo.setCph(StringHelper.trimEnter(tDxRecordInvoiceDetail.getCph()));
checkRecordDetailVo.setDetailAmount(StringHelper.trimEnter(tDxRecordInvoiceDetail.getDetailAmount()));
checkRecordDetailVo.setDetailNo(StringHelper.trimEnter(tDxRecordInvoiceDetail.getDetailNo()));
@ -607,4 +598,55 @@ public class InvoiceDetailServiceImpl extends MpBaseServiceImpl<TDxRecordInvoice
}
return this.createCheckInfo(invoiceRecord, vehicleSaleInfo, invoiceDetailList, img);
}
private String getZSM(String taxRate) {
String sm = "";
switch (taxRate) {
// 发票采集
case "0.00":
sm = "J0";
break;
case "免税":
sm = "J0";
break;
case "16%":
sm = "J1";
break;
case "13%":
sm = "J2";
break;
case "10%":
sm = "J3";
break;
case "9%":
sm = "J4";
break;
case "6%":
sm = "J5";
break;
case "5%":
sm = "J6";
break;
case "3%":
sm = "J7";
break;
case "2%":
sm = "J8";
break;
case "1%":
sm = "J9";
break;
case "17%":
sm = "JC";
break;
default:
sm = "";
break;
}
return sm;
}
}

@ -59,9 +59,7 @@ public class ErpWebConfiguration implements WebMvcConfigurer {
*/
private ArrayList<String> getIncludePathPatterns() {
ArrayList<String> list = new ArrayList<>();
String[] urls = {"/order/**"
};
String[] urls = {"/order/**"};
Collections.addAll(list, urls);
return list;
}

@ -233,9 +233,7 @@ public class SDNYMainProcessController extends AbstractController {
for (SNInvoice invoice : invoiceInfoList) {
String fplxdm = "";
String snFplx = "";
String invoiceCode = invoice.getInvoiceCode();
String invoiceNo = invoice.getInvoiceNumber();
result = snPushCheckRecordService.updateInvoicePoll(snRequestObject, company, taxNo, reimburse, invoice, fplxdm, invoiceCode, invoiceNo);
result = snPushCheckRecordService.updateInvoicePoll(company, taxNo, reimburse, invoice, fplxdm,imageId,compCode);
//价税分离判断
if (!"ok".equals(result) && !"0000".equals(result)) {

@ -114,4 +114,9 @@ public class TDxRecordInvoiceDetail implements Serializable {
*/
private String goodsNum;
/**
* 税码
*/
private String taxCode;
}

@ -75,4 +75,9 @@ public class SNInvoiceDetail {
*/
private String type = "";
/**
* 类型
*/
private String taxCode = "";
}

@ -98,7 +98,7 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
return post;
}
public String pushInvoiceToRecordInvoice(SNRequestObject snRequestObject, String taxNo, String company) throws Exception {
public String pushInvoiceToRecordInvoice(SNInvoice snInvoice, String taxNo, String company) throws Exception {
QueryWrapper<BaseTDxTaxCurrent> currentWrapper = new QueryWrapper<>();
currentWrapper.eq("taxno", taxNo);
@ -106,12 +106,6 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
BaseTDxTaxCurrent current = baseTDxTaxCurrentDao.selectOne(currentWrapper);
List<SNInvoice> invoiceInfoList = snRequestObject.getInvoiceInfoList();
if (invoiceInfoList != null && invoiceInfoList.size() > 0) {
for (SNInvoice snInvoice : invoiceInfoList) {
String fpdm = snInvoice.getInvoiceCode();
String fphm = snInvoice.getInvoiceNumber();
@ -146,7 +140,10 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
}
recordInvoice.setInvoiceCode(fpdm);
recordInvoice.setInvoiceNo(fphm);
if (je != null) {
recordInvoice.setInvoiceAmount(new BigDecimal(je));
}
if (se != null) {
recordInvoice.setTaxAmount(new BigDecimal(se));
}
@ -169,40 +166,39 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
} else {
baseTDxRecordInvoiceDao.insert(recordInvoice);
}
}
}
return "";
}
public Integer pushInvoiceToRecordInvoice2(SNRequestObject snRequestObject) {
public Integer pushInvoiceToRecordInvoice2(SNInvoice snInvoice,String imageId,String compCode) {
DynamicContextHolder.push("business" + DbConstant.BUSINESS_WRITE);
int update = 0;
List<SNInvoice> invoiceInfoList = snRequestObject.getInvoiceInfoList();
if (invoiceInfoList != null && invoiceInfoList.size() > 0) {
for (SNInvoice snInvoice : invoiceInfoList) {
String fpdm = snInvoice.getInvoiceCode();
String fphm = snInvoice.getInvoiceNumber();
QueryWrapper<BaseTDxRecordInvoice> recordWrapper = new QueryWrapper<>();
recordWrapper.eq("uuid", fpdm + fphm);
BaseTDxRecordInvoice recordInvoice = new BaseTDxRecordInvoice();
recordInvoice.setImageId(snRequestObject.getImageId());
recordInvoice.setCompCode(snRequestObject.getCompCode());
recordInvoice.setImageId(imageId);
recordInvoice.setCompCode(compCode);
update = baseTDxRecordInvoiceDao.update(recordInvoice, recordWrapper);
}
} else {
String imageId = snRequestObject.getImageId();
QueryWrapper<BaseTDxRecordInvoice> recordWrapper = new QueryWrapper<>();
recordWrapper.eq("image_id", imageId);
BaseTDxRecordInvoice recordInvoice = new BaseTDxRecordInvoice();
recordInvoice.setImageId("");
recordInvoice.setCompCode("");
update = baseTDxRecordInvoiceDao.update(recordInvoice, recordWrapper);
}
// if (invoiceInfoList != null && invoiceInfoList.size() > 0) {
// for (SNInvoice snInvoice : invoiceInfoList) {
//
// }
// } else {
// String imageId = snRequestObject.getImageId();
// QueryWrapper<BaseTDxRecordInvoice> recordWrapper = new QueryWrapper<>();
// recordWrapper.eq("image_id", imageId);
// BaseTDxRecordInvoice recordInvoice = new BaseTDxRecordInvoice();
// recordInvoice.setImageId("");
// recordInvoice.setCompCode("");
//
// update = baseTDxRecordInvoiceDao.update(recordInvoice, recordWrapper);
// }
return update;
}
@ -544,7 +540,7 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
return jsonObject;
}
public String updateInvoicePoll(@RequestBody SNRequestObject snRequestObject, String company, String taxNo, TDxInvoiceReimburse reimburse, SNInvoice invoice, String fplxdm, String invoiceCode, String invoiceNo) throws Exception {
public String updateInvoicePoll(String company, String taxNo, TDxInvoiceReimburse reimburse, SNInvoice invoice, String fplxdm,String imageId,String compCode) throws Exception {
String result = "0000";
//判断发票类型
@ -597,11 +593,11 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
|| "08".equals(fplxdm) || "10".equals(fplxdm) || "11".equals(fplxdm) || "14".equals(fplxdm)
|| "15".equals(fplxdm) || "31".equals(fplxdm) || "32".equals(fplxdm)) {
//可查验发票,已入库,更新票池
Integer integer = this.pushInvoiceToRecordInvoice2(snRequestObject);
Integer integer = this.pushInvoiceToRecordInvoice2(invoice,imageId,compCode);
log.info("可查验发票,更新底账库完成");
} else {
//不可查验发票,未入库,插入票池
this.pushInvoiceToRecordInvoice(snRequestObject, taxNo, company);
this.pushInvoiceToRecordInvoice(invoice, taxNo, company);
log.info("不可查验发票,插入底账库成功");
}
@ -610,7 +606,7 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
}
private TDxInvoiceReimburse convertToReimburse(SNInvoice invoice, TDxInvoiceReimburse reimburse, String fplxdm, String company) {
reimburse.setId(IdUtils.nextId());
reimburse.setInvoiceType(fplxdm);
reimburse.setInvoiceCode(invoice.getInvoiceCode());
reimburse.setInvoiceNo(invoice.getInvoiceNumber());

Loading…
Cancel
Save