|
|
|
|
@ -29,12 +29,13 @@ public class ReportTrendUtil {
|
|
|
|
|
public static BigDecimal calcRate(int current, int prev) { |
|
|
|
|
|
|
|
|
|
if (prev == 0) { |
|
|
|
|
return BigDecimal.ZERO; |
|
|
|
|
return BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return BigDecimal.valueOf(current - prev) |
|
|
|
|
.divide(BigDecimal.valueOf(prev), 4, RoundingMode.HALF_UP) |
|
|
|
|
.multiply(BigDecimal.valueOf(100)); |
|
|
|
|
.multiply(BigDecimal.valueOf(100)) |
|
|
|
|
.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -60,12 +61,13 @@ public class ReportTrendUtil {
|
|
|
|
|
public static BigDecimal percent(int part, int total) { |
|
|
|
|
|
|
|
|
|
if (total == 0) { |
|
|
|
|
return BigDecimal.ZERO; |
|
|
|
|
return BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return BigDecimal.valueOf(part) |
|
|
|
|
.divide(BigDecimal.valueOf(total), 4, RoundingMode.HALF_UP) |
|
|
|
|
.multiply(BigDecimal.valueOf(100)); |
|
|
|
|
.multiply(BigDecimal.valueOf(100)) |
|
|
|
|
.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
@ -74,12 +76,13 @@ public class ReportTrendUtil {
|
|
|
|
|
public static BigDecimal calcRate(BigDecimal current, BigDecimal prev) { |
|
|
|
|
|
|
|
|
|
if (prev == null || prev.compareTo(BigDecimal.ZERO) == 0) { |
|
|
|
|
return BigDecimal.ZERO; |
|
|
|
|
return BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return current.subtract(prev) |
|
|
|
|
.divide(prev, 4, RoundingMode.HALF_UP) |
|
|
|
|
.multiply(BigDecimal.valueOf(100)); |
|
|
|
|
.multiply(BigDecimal.valueOf(100)) |
|
|
|
|
.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|