|
|
@@ -476,7 +476,7 @@ public class InvoiceService {
|
|
|
}
|
|
|
|
|
|
// 2.添加发票污水费明细 (部分收费时没有水量,取消水量判断)
|
|
|
- if (yyQfmx.getYssl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getWsf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ if (yyQfmx.getYssl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getYswsf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
EiFpkjMx eiFpkjMx = new EiFpkjMx();
|
|
|
EiSpbm eiSpbm = eiSpbmService.getById("05"); // 污水费
|
|
|
String sl = eiSpbm.getSl();
|
|
|
@@ -497,12 +497,14 @@ public class InvoiceService {
|
|
|
eiFpkjMx.setSpectype("无");//规格型号
|
|
|
eiFpkjMx.setTaxrate(taxrate); // 税率
|
|
|
|
|
|
- eiFpkjMx.setPrice(yyQfmx.getWsfdj()); // 单价
|
|
|
- eiFpkjMx.setNum(yyQfmx.getSl()); // 数量
|
|
|
- eiFpkjMx.setTax(yyQfmx.getWsf().multiply(taxrate).divide(taxrate.add(BigDecimal.ONE), 2, RoundingMode.HALF_UP)); // 税额
|
|
|
- eiFpkjMx.setTaxexcludedamount(yyQfmx.getWsf().subtract(eiFpkjMx.getTax()));
|
|
|
- eiFpkjMx.setTaxincludedamount(yyQfmx.getWsf());
|
|
|
- eiFpkjMxList.add(Deserialization(eiFpkjMx));
|
|
|
+ if (yyQfmx.getSl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getWsf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ eiFpkjMx.setPrice(yyQfmx.getWsf().divide(yyQfmx.getSl(), 8, RoundingMode.HALF_UP)); // 单价
|
|
|
+ eiFpkjMx.setNum(yyQfmx.getSl()); // 数量
|
|
|
+ eiFpkjMx.setTax(yyQfmx.getWsf().multiply(taxrate).divide(taxrate.add(BigDecimal.ONE), 2, RoundingMode.HALF_UP)); // 税额
|
|
|
+ eiFpkjMx.setTaxexcludedamount(yyQfmx.getWsf().subtract(eiFpkjMx.getTax()));
|
|
|
+ eiFpkjMx.setTaxincludedamount(yyQfmx.getWsf());
|
|
|
+ eiFpkjMxList.add(Deserialization(eiFpkjMx));
|
|
|
+ }
|
|
|
//一表多价
|
|
|
if (StringUtil.isNotEmpty(yyQfmx.getCbjsbz()) &&
|
|
|
(yyQfmx.getCbjsbz().equals("1") || yyQfmx.getCbjsbz().equals("3"))) {
|
|
|
@@ -526,7 +528,7 @@ public class InvoiceService {
|
|
|
}
|
|
|
|
|
|
// 3.添加发票水资源税明细
|
|
|
- if (yyQfmx.getSl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getSzyf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ if (yyQfmx.getSl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getYsszyf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
EiFpkjMx eiFpkjMx = new EiFpkjMx();
|
|
|
EiSpbm eiSpbm = eiSpbmService.getById("07");
|
|
|
String sl = eiSpbm.getSl();
|
|
|
@@ -547,12 +549,14 @@ public class InvoiceService {
|
|
|
eiFpkjMx.setFavouredpolicyname(eiSpbm.getYhZcmc()); // 优惠政策名称
|
|
|
eiFpkjMx.setZerorateflag("1"); // 零税率标识
|
|
|
|
|
|
- eiFpkjMx.setPrice(yyQfmx.getSzyfDj()); // 单价
|
|
|
- eiFpkjMx.setNum(yyQfmx.getSl()); // 数量
|
|
|
- eiFpkjMx.setTax(yyQfmx.getSzyf().multiply(taxrate).divide(taxrate.add(BigDecimal.ONE), 2, RoundingMode.HALF_UP)); // 税额
|
|
|
- eiFpkjMx.setTaxexcludedamount(yyQfmx.getSzyf().subtract(eiFpkjMx.getTax())); // 不含税金额
|
|
|
- eiFpkjMx.setTaxincludedamount(yyQfmx.getSzyf()); // 含税金额
|
|
|
- eiFpkjMxList.add(Deserialization(eiFpkjMx));
|
|
|
+ if (yyQfmx.getSl().compareTo(BigDecimal.ZERO) > 0 && yyQfmx.getSzyf().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ eiFpkjMx.setPrice(yyQfmx.getSzyfDj()); // 单价
|
|
|
+ eiFpkjMx.setNum(yyQfmx.getSl()); // 数量
|
|
|
+ eiFpkjMx.setTax(yyQfmx.getSzyf().multiply(taxrate).divide(taxrate.add(BigDecimal.ONE), 2, RoundingMode.HALF_UP)); // 税额
|
|
|
+ eiFpkjMx.setTaxexcludedamount(yyQfmx.getSzyf().subtract(eiFpkjMx.getTax())); // 不含税金额
|
|
|
+ eiFpkjMx.setTaxincludedamount(yyQfmx.getSzyf()); // 含税金额
|
|
|
+ eiFpkjMxList.add(Deserialization(eiFpkjMx));
|
|
|
+ }
|
|
|
//一表多价
|
|
|
if (StringUtil.isNotEmpty(yyQfmx.getCbjsbz()) &&
|
|
|
(yyQfmx.getCbjsbz().equals("1") || yyQfmx.getCbjsbz().equals("3"))) {
|