| | |
| | | res1 = validateDivisorValue(r); |
| | | score = 0D; |
| | | if (!res1) { |
| | | BigDecimal divided = au.divide(r, 2, RoundingMode.HALF_UP); |
| | | BigDecimal divided = au.divide(r, 4, RoundingMode.HALF_UP); |
| | | if (divided.compareTo(BigDecimal.valueOf(0.6D)) > 0) { |
| | | BigDecimal add = BigDecimal.valueOf(0.6D).subtract(divided) |
| | | .multiply(BigDecimal.valueOf(100D)) |
| | | .divide(BigDecimal.valueOf(4D), 2, RoundingMode.HALF_UP) |
| | | .divide(BigDecimal.valueOf(4D), 4, RoundingMode.HALF_UP) |
| | | .add(BigDecimal.valueOf(8)) |
| | | .setScale(2, RoundingMode.HALF_UP); |
| | | score = add.compareTo(BigDecimal.ZERO) >= 0 ? add.doubleValue() : 0D; |
| | |
| | | BigDecimal part2 = BigDecimal.ZERO; |
| | | if (third.compareTo(BigDecimal.valueOf(0.8D)) < 0) { |
| | | BigDecimal add = third.subtract(BigDecimal.valueOf(0.8D)) |
| | | .divide(BigDecimal.valueOf(0.1D), 2, RoundingMode.HALF_UP) |
| | | .divide(BigDecimal.valueOf(0.1D), 4, RoundingMode.HALF_UP) |
| | | .multiply(BigDecimal.valueOf(0.6D)) |
| | | .add(BigDecimal.valueOf(3D)) |
| | | .setScale(2, RoundingMode.HALF_UP); |
| | |
| | | String substring = tbBasicData.getQuarter().substring(4); |
| | | if (substring.equals("四季度")) { |
| | | // 使用全年评价 |
| | | BigDecimal divide = deptDividendValue.divide(deptDivisorValue, 2, |
| | | BigDecimal divide = deptDividendValue.divide(deptDivisorValue, 4, |
| | | RoundingMode.HALF_UP); |
| | | if (divide.compareTo(BigDecimal.valueOf(0.98D)) < 0) { |
| | | score = divide.subtract(BigDecimal.valueOf(0.98D)) |
| | | .multiply(BigDecimal.valueOf(100D)) |
| | | .divide(BigDecimal.valueOf(3D), 2, RoundingMode.HALF_UP) |
| | | .divide(BigDecimal.valueOf(3D), 4, RoundingMode.HALF_UP) |
| | | .add(BigDecimal.valueOf(vo.getMaxScore())) |
| | | .setScale(2, RoundingMode.HALF_UP).doubleValue(); |
| | | } else { |
| | |
| | | // 16:预算执行方面-中央直达资金-中央直达资金支付进度 |
| | | deptDividendValue = getBigDecimal(sysUser.getAreaName(), deptFieldsMap, |
| | | BasicDataFieldEnum.BASIC_DATA_FIELD89); |
| | | BigDecimal divided1 = month.divide(BigDecimal.valueOf(12D), 2, |
| | | BigDecimal divided1 = month.divide(BigDecimal.valueOf(12D), 4, |
| | | RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100L)); |
| | | if (deptDividendValue.compareTo(divided1) < 0) { |
| | | BigDecimal add = deptDividendValue.subtract(divided1) |
| | | .divide(BigDecimal.valueOf(5D), 2, RoundingMode.HALF_UP) |
| | | .divide(BigDecimal.valueOf(5D), 4, RoundingMode.HALF_UP) |
| | | .add(BigDecimal.valueOf(vo.getMaxScore())) |
| | | .setScale(2, RoundingMode.HALF_UP); |
| | | score = add.compareTo(BigDecimal.ZERO) < 0 ? 0D : add.doubleValue(); |
| | |
| | | res1 = validateDivisorValue(deptDivisorValue); |
| | | score = 0D; |
| | | if (!res1) { |
| | | BigDecimal d1 = deptDividendValue.divide(deptDivisorValue, 2, |
| | | BigDecimal d1 = deptDividendValue.divide(deptDivisorValue, 4, |
| | | RoundingMode.HALF_UP); |
| | | BigDecimal d2 = month.divide(BigDecimal.valueOf(12D), 2, |
| | | BigDecimal d2 = month.divide(BigDecimal.valueOf(12D), 4, |
| | | RoundingMode.HALF_UP); |
| | | score = d1.compareTo(d2) < 0 ? d1.divide(d2, 2, RoundingMode.HALF_UP) |
| | | score = d1.compareTo(d2) < 0 ? d1.divide(d2, 4, RoundingMode.HALF_UP) |
| | | .multiply(BigDecimal.valueOf(vo.getMaxScore())) |
| | | .setScale(2, RoundingMode.HALF_UP).doubleValue() |
| | | : vo.getMaxScore(); |
| | |
| | | BigDecimal deptDivided = BigDecimal.ZERO; |
| | | |
| | | if (deptDivisorValue.compareTo(BigDecimal.ZERO) > 0) { |
| | | deptDivided = deptDividendValue.divide(deptDivisorValue, 2, RoundingMode.HALF_UP); |
| | | deptDivided = deptDividendValue.divide(deptDivisorValue, 4, RoundingMode.HALF_UP); |
| | | } |
| | | BigDecimal provinceDivided = BigDecimal.ZERO; |
| | | |
| | | if (provinceDivisorValue.compareTo(BigDecimal.ZERO) > 0) { |
| | | provinceDivided = provinceDividendValue.divide(provinceDivisorValue, 2, |
| | | provinceDivided = provinceDividendValue.divide(provinceDivisorValue, 4, |
| | | RoundingMode.HALF_UP); |
| | | } |
| | | if (deptDivided.compareTo(provinceDivided) < 0) { |
| | |
| | | BigDecimal deptDivided = BigDecimal.ZERO; |
| | | |
| | | if (deptDivisorValue.compareTo(BigDecimal.ZERO) > 0) { |
| | | deptDivided = deptDividendValue.divide(deptDivisorValue, 2, RoundingMode.HALF_UP); |
| | | deptDivided = deptDividendValue.divide(deptDivisorValue, 4, RoundingMode.HALF_UP); |
| | | } |
| | | BigDecimal provinceDivided = BigDecimal.ZERO; |
| | | |
| | | if (provinceDivisorValue.compareTo(BigDecimal.ZERO) > 0) { |
| | | provinceDivided = provinceDividendValue.divide(provinceDivisorValue, 2, |
| | | provinceDivided = provinceDividendValue.divide(provinceDivisorValue, 4, |
| | | RoundingMode.HALF_UP); |
| | | } |
| | | if (deptDivided.compareTo(provinceDivided) < 0) { |