diff --git a/src/main/java/cn/palmte/work/bean/FinalBean.java b/src/main/java/cn/palmte/work/bean/FinalBean.java index 666afe3..dd2da66 100644 --- a/src/main/java/cn/palmte/work/bean/FinalBean.java +++ b/src/main/java/cn/palmte/work/bean/FinalBean.java @@ -161,6 +161,9 @@ public class FinalBean { if(null == grossProfitFinalTotal || null == incomeTotal){ return null; } + if (incomeTotal.compareTo(BigDecimal.valueOf(0.01)) < 0) { + incomeTotal = BigDecimal.ONE; + } return grossProfitFinalTotal.divide(incomeTotal,4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)); } @@ -199,7 +202,9 @@ public class FinalBean { if(null == contributionMarginFinalTotal || null == incomeTotal){ return null; } - + if (incomeTotal.compareTo(BigDecimal.valueOf(0.01)) < 0) { + incomeTotal = BigDecimal.ONE; + } return contributionMarginFinalTotal.divide(incomeTotal,4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)); } @@ -237,6 +242,9 @@ public class FinalBean { if(null == netMarginFinalTotal || null == incomeTotal){ return null; } + if (incomeTotal.compareTo(BigDecimal.valueOf(0.01)) < 0) { + incomeTotal = BigDecimal.ONE; + } return netMarginFinalTotal.divide(incomeTotal,4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)); } diff --git a/src/main/resources/static/assets/js/project_final.js b/src/main/resources/static/assets/js/project_final.js index 37d6d09..4bdf666 100644 --- a/src/main/resources/static/assets/js/project_final.js +++ b/src/main/resources/static/assets/js/project_final.js @@ -320,7 +320,7 @@ function calGrossProfitProfitMargin() { var grossProfitProfitMargin = $("input[name='grossProfitProfitMargin']"); if (grossProfitFinalTotal && incomeFinalTotal) { - grossProfitProfitMargin.val(f2(100 * grossProfitFinalTotal / incomeFinalTotal)); + grossProfitProfitMargin.val(f2(100 * parseFloat(grossProfitFinalTotal) / parseFloat(incomeFinalTotal))); } else { grossProfitProfitMargin.val(""); } @@ -352,7 +352,7 @@ function calContributionMarginProfitMargin() { var contributionMarginProfitMargin = $("input[name='contributionMarginProfitMargin']"); if (contributionMarginFinalTotal && incomeFinalTotal) { - contributionMarginProfitMargin.val(f2(100 * contributionMarginFinalTotal / incomeFinalTotal)); + contributionMarginProfitMargin.val(f2(100 * parseFloat(contributionMarginFinalTotal) / parseFloat(incomeFinalTotal))); } else { contributionMarginProfitMargin.val(""); } @@ -384,7 +384,7 @@ function calNetMarginProfitMargin() { var netMarginProfitMargin = $("input[name='netMarginProfitMargin']"); if (netMarginFinalTotal && incomeFinalTotal) { - netMarginProfitMargin.val(f2(100 * netMarginFinalTotal / incomeFinalTotal)); + netMarginProfitMargin.val(f2(100 * parseFloat(netMarginFinalTotal) / parseFloat(incomeFinalTotal))); } else { netMarginProfitMargin.val(""); }