From 935d209e426d42d1e21510b4fac953ce9b2f402b Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 9 Jul 2021 18:22:35 +0800 Subject: [PATCH] bug --- .../impl/PublicPartExtractServiceImpl.java | 45 ++++++++++--------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java index fad1df5588..f4dea785d1 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java @@ -536,18 +536,19 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService { // 总的参与次数较上月增长率 if (l.getJoinTotal() > s.getJoinTotal()) { l.setJoinTotalUpFlag(GovernConstant.INCR); - if (!s.getJoinTotal().equals(NumConstant.ONE_HUNDRED_DECIMAL)){ - l.setJoinTotalUpRate(new BigDecimal(((l.getJoinTotal() - s.getJoinTotal()) / s.getJoinTotal()) * NumConstant.ONE_HUNDRED).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getJoinTotal().compareTo(NumConstant.ZERO) == 0){ l.setJoinTotalUpRate(NumConstant.ONE_HUNDRED_DECIMAL); + }else { + l.setJoinTotalUpRate(new BigDecimal(((l.getJoinTotal() - s.getJoinTotal()) / s.getJoinTotal()) * NumConstant.ONE_HUNDRED).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); } } else if (l.getJoinTotal() < s.getJoinTotal()) { l.setJoinTotalUpFlag(GovernConstant.DECR); - if (!s.getJoinTotal().equals(NumConstant.ONE_HUNDRED_DECIMAL)){ - l.setJoinTotalUpRate(new BigDecimal(((l.getJoinTotal() - s.getJoinTotal()) / s.getJoinTotal()) * NumConstant.ONE_HUNDRED).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getJoinTotal().compareTo(NumConstant.ZERO) == 0){ l.setJoinTotalUpRate(NumConstant.ONE_HUNDRED_DECIMAL); - } } else { + }else { + l.setJoinTotalUpRate(new BigDecimal(((l.getJoinTotal() - s.getJoinTotal()) / s.getJoinTotal()) * NumConstant.ONE_HUNDRED).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); + } + } else { l.setJoinTotalUpFlag(GovernConstant.EQ); l.setJoinTotalUpRate(NumConstant.ZERO_DECIMAL); } @@ -555,18 +556,19 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService { Integer re = l.getAvgIssue().compareTo(s.getAvgIssue()); if (re.equals(NumConstant.ONE)) { l.setAvgIssueUpFlag(GovernConstant.INCR); - if (!s.getAvgIssue().equals(NumConstant.ZERO_DECIMAL)){ - l.setAvgIssueUpRate(l.getAvgIssue().subtract(s.getAvgIssue()).divide(s.getAvgIssue()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getAvgIssue().compareTo(NumConstant.ZERO_DECIMAL) == 0){ l.setAvgIssueUpRate(NumConstant.ONE_HUNDRED_DECIMAL); + }else { + l.setAvgIssueUpRate(l.getAvgIssue().subtract(s.getAvgIssue()).divide(s.getAvgIssue()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); } } else if (re.equals(NumConstant.ONE_NEG)) { l.setAvgIssueUpFlag(GovernConstant.DECR); - if (!s.getAvgIssue().equals(NumConstant.ZERO_DECIMAL)){ - l.setAvgIssueUpRate(l.getAvgIssue().subtract(s.getAvgIssue()).divide(s.getAvgIssue()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getAvgIssue().compareTo(NumConstant.ZERO_DECIMAL) == 0){ l.setAvgIssueUpRate(NumConstant.ONE_HUNDRED_DECIMAL); - } } else { + }else { + l.setAvgIssueUpRate(l.getAvgIssue().subtract(s.getAvgIssue()).divide(s.getAvgIssue()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); + } + } else { l.setAvgIssueUpFlag(GovernConstant.EQ); l.setAvgIssueUpRate(NumConstant.ZERO_DECIMAL); } @@ -574,18 +576,19 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService { Integer avgJoinRe = l.getAvgJoin().compareTo(s.getAvgJoin()); if (avgJoinRe.equals(NumConstant.ONE)) { l.setAgvgJoinUpFlag(GovernConstant.INCR); - if (!s.getAvgJoin().equals(NumConstant.ZERO_DECIMAL)){ - l.setAgvgJoinUpRate(l.getAvgJoin().subtract(s.getAvgJoin()).divide(s.getAvgJoin()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getAvgJoin().compareTo(NumConstant.ZERO_DECIMAL) == 0){ l.setAgvgJoinUpRate(NumConstant.ONE_HUNDRED_DECIMAL); + }else { + l.setAgvgJoinUpRate(l.getAvgJoin().subtract(s.getAvgJoin()).divide(s.getAvgJoin()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); } } else if (avgJoinRe.equals(NumConstant.ONE_NEG)) { l.setAvgIssueUpFlag(GovernConstant.DECR); - if (!s.getAvgJoin().equals(NumConstant.ZERO_DECIMAL)){ - l.setAgvgJoinUpRate(l.getAvgJoin().subtract(s.getAvgJoin()).divide(s.getAvgJoin()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); - }else { + if (s.getAvgJoin().compareTo(NumConstant.ZERO_DECIMAL) == 0){ l.setAgvgJoinUpRate(NumConstant.ONE_HUNDRED_DECIMAL); - } } else { + }else { + l.setAgvgJoinUpRate(l.getAvgJoin().subtract(s.getAvgJoin()).divide(s.getAvgJoin()).multiply(NumConstant.ONE_HUNDRED_DECIMAL).setScale(NumConstant.FOUR, BigDecimal.ROUND_HALF_UP)); + } + } else { l.setAvgIssueUpFlag(GovernConstant.EQ); l.setAgvgJoinUpRate(NumConstant.ZERO_DECIMAL); }