ariesy 修复不征税发票报错问题 v2

release
yefei 2 years ago
parent a4817a263e
commit ec20b24733
  1. 48
      dxhy-erp/src/main/java/com/dxhy/erp/controller/SDNYMainProcessController.java

@ -487,39 +487,41 @@ public class SDNYMainProcessController extends AbstractController {
snDetailMap.put("amount", detail.getString("detailAmount")); snDetailMap.put("amount", detail.getString("detailAmount"));
} }
if ("免税".equals(detail.getString("taxRate")) || "不征税".equals(detail.getString("taxRate")) || "***".equals(detail.getString("taxRate"))) {
if ("免税".equals(detail.getString("taxRate")) || "不征税".equals(detail.getString("taxRate"))) {
taxRateDetail = "0"; taxRateDetail = "0";
snDetailMap.put("taxRate", taxRateDetail); snDetailMap.put("taxRate", taxRateDetail);
} else { } else {
if (detail.get("taxRate") != null && StringUtils.isNoneBlank(detail.get("taxRate").toString())) { if (detail.get("taxRate") != null && StringUtils.isNoneBlank(detail.get("taxRate").toString())) {
taxRateDetail = detail.get("taxRate").toString(); try {
if (!"0".equals(taxRateDetail)) { taxRateDetail = detail.get("taxRate").toString();
if (StringUtils.isNoneBlank(taxRateDetail)) { if (!"0".equals(taxRateDetail)) {
int index = taxRateDetail.indexOf("%"); if (StringUtils.isNoneBlank(taxRateDetail)) {
if (index > 0) { int index = taxRateDetail.indexOf("%");
taxRateDetail = taxRateDetail.substring(0, taxRateDetail.length() - 1); if (index > 0) {
Float num = Float.parseFloat(taxRateDetail); taxRateDetail = taxRateDetail.substring(0, taxRateDetail.length() - 1);
if (num > 9) { Float num = Float.parseFloat(taxRateDetail);
taxRateDetail = "0." + taxRateDetail; if (num > 9) {
} else { taxRateDetail = "0." + taxRateDetail;
if (!taxRateDetail.startsWith("0")) { } else {
taxRateDetail = "0.0" + taxRateDetail; if (!taxRateDetail.startsWith("0")) {
taxRateDetail = "0.0" + taxRateDetail;
}
} }
}
}else{
Float num = Float.parseFloat(taxRateDetail);
if (num > 9) {
taxRateDetail = "0." + taxRateDetail;
} else { } else {
if (!taxRateDetail.startsWith("0")) { Float num = Float.parseFloat(taxRateDetail);
taxRateDetail = "0.0" + taxRateDetail; if (num > 9) {
taxRateDetail = "0." + taxRateDetail;
} else {
if (!taxRateDetail.startsWith("0")) {
taxRateDetail = "0.0" + taxRateDetail;
}
} }
} }
} }
} }
}catch (Exception e){
// taxRateDetail = CheckUtil.formatPercentSl(taxRateDetail); log.error("报错的原因为:{}",e);
taxRateDetail = "0.00";
} }
if ("11".equals(invoiceType)) { if ("11".equals(invoiceType)) {

Loading…
Cancel
Save