开票申请传税务云增加字段:数电发票是否显示购销方地址电话、数电发票是否显示购销方银行、账号
This commit is contained in:
parent
e785338212
commit
d6ba2ca7b5
|
@ -12,11 +12,7 @@ import nc.bs.sscivm.ivsale.splitmerge.util.TransSpiltMergePksUtil;
|
|||
import nc.bs.sscivm.logger.SSCIVMLogger;
|
||||
import nc.dto.imag.boot.RequestInfo;
|
||||
import nc.dto.imag.boot.ResponseInfo;
|
||||
import nc.dto.imag.invoice.PInvoice;
|
||||
import nc.dto.imag.invoice.PInvoiceCepz;
|
||||
import nc.dto.imag.invoice.PInvoiceDetail;
|
||||
import nc.dto.imag.invoice.PInvoiceSDetail;
|
||||
import nc.dto.imag.invoice.PInvoiceTspz;
|
||||
import nc.dto.imag.invoice.*;
|
||||
import nc.dto.imag.invoice.tax.InvalidCommonRequest;
|
||||
import nc.dto.imag.invoice.tax.InvalidCommonResponse;
|
||||
import nc.dto.imag.invoice.tax.TaxCommonResponse;
|
||||
|
@ -39,27 +35,9 @@ import nc.vo.pub.lang.UFBoolean;
|
|||
import nc.vo.pub.lang.UFDate;
|
||||
import nc.vo.pub.lang.UFDateTime;
|
||||
import nc.vo.pub.lang.UFDouble;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceAggVO;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceConstant;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceDetailVO;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceHeadVO;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceRelationVO;
|
||||
import nc.vo.sscivm.invoice.IVMInvoiceTspzDetailVO;
|
||||
import nc.vo.sscivm.ivmpub.ClassTypeEnum;
|
||||
import nc.vo.sscivm.ivmpub.IVAplocationFPXZ;
|
||||
import nc.vo.sscivm.ivmpub.IVAplocationKPFS;
|
||||
import nc.vo.sscivm.ivmpub.IVAplocationLSLBS;
|
||||
import nc.vo.sscivm.ivmpub.IVAplocationZSFS;
|
||||
import nc.vo.sscivm.ivmpub.InvoiceStatus;
|
||||
import nc.vo.sscivm.ivmpub.InvoiceTypeEnum;
|
||||
import nc.vo.sscivm.ivmpub.IsHzfp;
|
||||
import nc.vo.sscivm.ivmpub.KpztEnum;
|
||||
import nc.vo.sscivm.ivsale.IVApplicationAggVO;
|
||||
import nc.vo.sscivm.ivsale.IVApplicationBodyVO;
|
||||
import nc.vo.sscivm.ivsale.IVApplicationHeadVO;
|
||||
import nc.vo.sscivm.ivsale.IVApplicationRelationVO;
|
||||
import nc.vo.sscivm.ivsale.IVApplogVO;
|
||||
import nc.vo.sscivm.ivsale.IVTspzsBodyVO;
|
||||
import nc.vo.sscivm.invoice.*;
|
||||
import nc.vo.sscivm.ivmpub.*;
|
||||
import nc.vo.sscivm.ivsale.*;
|
||||
import nc.vo.trade.pub.IBillStatus;
|
||||
import nccloud.commons.lang.StringUtils;
|
||||
import nccloud.itf.sscivm.ivsale.service.ApplicationLogService;
|
||||
|
@ -68,17 +46,7 @@ import nccloud.putitf.riart.billtype.IBilltypeService;
|
|||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
|
||||
public class InvoiceTransferUtil {
|
||||
|
||||
|
@ -554,8 +522,7 @@ public class InvoiceTransferUtil {
|
|||
if (invoice_xmjshj.compareTo(UFDouble.ZERO_DBL) == 0) {
|
||||
// 当前发票金额已用完
|
||||
break;
|
||||
}
|
||||
else if((split_xmjshj.compareTo(invoice_xmjshj)<=0 && !zkh) || (split_xmjshj.compareTo(invoice_xmjshj)>=0 && zkh)){
|
||||
} else if ((split_xmjshj.compareTo(invoice_xmjshj) <= 0 && !zkh) || (split_xmjshj.compareTo(invoice_xmjshj) >= 0 && zkh)) {
|
||||
// 当前拆分金额已用完
|
||||
invoice_xmjshj = invoice_xmjshj.sub(split_xmjshj);
|
||||
invoice_xmje = invoice_xmje.sub(split_xmje);
|
||||
|
@ -1117,7 +1084,8 @@ public class InvoiceTransferUtil {
|
|||
}
|
||||
heads.add(head);
|
||||
if (ivApplicationHeadVO.getParentVO().getSrc_pkbusibill() != null && ivApplicationHeadVO.getParentVO().getSrc_pkbusibill().length() > 0) {
|
||||
pk_ivapplicationSet.add(ivApplicationHeadVO.getParentVO().getSrc_pkbusibill());}
|
||||
pk_ivapplicationSet.add(ivApplicationHeadVO.getParentVO().getSrc_pkbusibill());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1135,7 +1103,9 @@ public class InvoiceTransferUtil {
|
|||
continueAdd = false;
|
||||
}
|
||||
}
|
||||
if(!continueAdd) { continue;}
|
||||
if (!continueAdd) {
|
||||
continue;
|
||||
}
|
||||
head.setStatus(VOStatus.NEW);
|
||||
// 票面信息
|
||||
head.setFphm(pinvoice.getParentVO().getFphm());
|
||||
|
@ -1189,6 +1159,7 @@ public class InvoiceTransferUtil {
|
|||
|
||||
/**
|
||||
* 根据发票生成开票日志
|
||||
*
|
||||
* @param pinvoice
|
||||
* @param kpzt
|
||||
* @return
|
||||
|
@ -1361,9 +1332,50 @@ public class InvoiceTransferUtil {
|
|||
pinvoice.setJehj(headvo.getJehj() == null ? null : getUFDoubleToBigDecimal(headvo.getJehj()).setScale(2, UFDouble.ROUND_HALF_UP));
|
||||
pinvoice.setCjh(headvo.getCjh());
|
||||
// pinvoice.setKqysssxbgglbm(headvo.getKqysssxbgglbm());
|
||||
|
||||
setOtherField(headvo, pinvoice);
|
||||
return pinvoice;
|
||||
}
|
||||
|
||||
private static void setOtherField(IVApplicationHeadVO headvo, PInvoice pinvoice) {
|
||||
// 是否展示销售方开户银行及账号 Y-是/N-否
|
||||
String def3 = headvo.getDef3();
|
||||
// 是否展示销售方地址电话
|
||||
String def4 = headvo.getDef4();
|
||||
// 是否填写收款人及复核人
|
||||
String def16 = headvo.getDef16();
|
||||
// 是否展示购买方单位、地址电话
|
||||
String def17 = headvo.getDef17();
|
||||
// 是否展示购买方开户行、银行账号
|
||||
String def18 = headvo.getDef18();
|
||||
|
||||
// einvoiceShowGxfDzDh 表示是否显示购方和销方的地址电话
|
||||
// 根据需求:0: 不显示 1: 显示购方地址电话 2: 显示销方地址电话 3: 显示购方和销方地址电话
|
||||
int einvoiceShowGxfDzDh = 0;
|
||||
|
||||
if ("Y".equals(def3)) {
|
||||
einvoiceShowGxfDzDh += 1; // 购方地址电话显示
|
||||
}
|
||||
if ("Y".equals(def17)) {
|
||||
einvoiceShowGxfDzDh += 2; // 销方地址电话显示
|
||||
}
|
||||
|
||||
// einvoiceShowGxfYhZh 表示是否显示购方和销方的小银行账户
|
||||
// 根据需求:0: 不显示 1: 显示购方银行账户 2: 显示销方银行账户 3: 显示购方和销方银行账户
|
||||
int einvoiceShowGxfYhZh = 0;
|
||||
|
||||
if ("Y".equals(def4)) {
|
||||
einvoiceShowGxfYhZh += 1; // 购方银行账户显示
|
||||
}
|
||||
if ("Y".equals(def18)) {
|
||||
einvoiceShowGxfYhZh += 2; // 销方银行账户显示
|
||||
}
|
||||
// 数电发票是否显示购销方地址电话 0:不显示 1:仅显示销地址、电话 2:仅显示购买方地址、电话 3:购销方地址、电话都显示
|
||||
pinvoice.setEinvoiceShowGxfDzDh(String.valueOf(einvoiceShowGxfDzDh));
|
||||
// 数电发票是否显示购销方银行、账号: 0:不显示 1:仅显示销售方银行、账号 2:仅显示购买方银行、账号 3:购销方银行、账号都显示
|
||||
pinvoice.setEinvoiceShowGxfYhZh(String.valueOf(einvoiceShowGxfYhZh));
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据红冲申请转换成发票平台VO
|
||||
*
|
||||
|
@ -1509,6 +1521,7 @@ public class InvoiceTransferUtil {
|
|||
|
||||
/**
|
||||
* 特殊票种发票信息转换
|
||||
*
|
||||
* @param tspzVOs
|
||||
* @param invoice
|
||||
* @return
|
||||
|
@ -1636,6 +1649,7 @@ public class InvoiceTransferUtil {
|
|||
|
||||
/**
|
||||
* 获取开票日期
|
||||
*
|
||||
* @param kprq 税务云传递过来的开票日期
|
||||
* @return UFDate 转换后的开票日期
|
||||
*/
|
||||
|
@ -1665,7 +1679,9 @@ public class InvoiceTransferUtil {
|
|||
|
||||
|
||||
public static UFDouble tranZeroAmount(UFDouble amount) {
|
||||
if(amount==null) {return UFDouble.ZERO_DBL;}
|
||||
if (amount == null) {
|
||||
return UFDouble.ZERO_DBL;
|
||||
}
|
||||
amount = (amount.compareTo(UFDouble.ZERO_DBL) < 0) ? UFDouble.ZERO_DBL : amount;
|
||||
if (amount.abs().compareTo(new UFDouble(0.005)) < 0) {
|
||||
amount = UFDouble.ZERO_DBL;
|
||||
|
@ -1675,6 +1691,7 @@ public class InvoiceTransferUtil {
|
|||
|
||||
/**
|
||||
* 把UFDate转换成yyyy-MM-dd格式
|
||||
*
|
||||
* @param ufDate
|
||||
* @return
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue