Commit f3222054 by zhangkb

报表2和3添加具体排名前后的对标对象和指标个数的报表字段

parent 86050ebe
...@@ -30,5 +30,15 @@ public class IndicatorsReportThree { ...@@ -30,5 +30,15 @@ public class IndicatorsReportThree {
private Integer indImproveAfterThreeCount;//指标提升排名末三的指标个数 private Integer indImproveAfterThreeCount;//指标提升排名末三的指标个数
private String indImproveRate;//指标提升率 private String indImproveRate;//指标提升率
private Integer effectiveIndCount;//有效的指标个数 private Integer effectiveIndCount;//有效的指标个数
//author:zhangkb time:2020-9-17 desc:添加报表字段
private Integer indReduceCount;//指标降低个数
private Integer rankOneCount;//排名第一指标个数
private Integer rankTwoCount;//排名第二指标个数
private Integer rankThreeCount;//排名第三指标个数
private Integer rankLastOneCount;//排名末一指标个数
private Integer rankLastTwoCount;//排名末二指标个数
private Integer rankLastThreeCount;//排名末三指标个数
private String code;//机构编码 private String code;//机构编码
} }
...@@ -44,5 +44,20 @@ public class IndicatorsReportTwo { ...@@ -44,5 +44,20 @@ public class IndicatorsReportTwo {
private String sameImproveHeadThreeDesc;//同比提升前三描述 private String sameImproveHeadThreeDesc;//同比提升前三描述
private String sameImproveAfterThree;//同比提升末三 private String sameImproveAfterThree;//同比提升末三
private String sameImproveAfterThreeDesc;//同比提升末三描述 private String sameImproveAfterThreeDesc;//同比提升末三描述
//author:zhangkb time:2020-9-16 desc:添加具体排名字段
private String rankOne;//排名第一
private String rankOneDesc;//排名第一描述
private String rankTwo;//排名第二
private String rankTwoDesc;//排名第二描述
private String rankThree;//排名第三
private String rankThreeDesc;//排名第三描述
private String rankLastOne;//排名末一
private String rankLastOneDesc;//排名末一描述
private String rankLastTwo;//排名末二
private String rankLastTwoDesc;//排名末二描述
private String rankLastThree;//排名末三
private String rankLastThreeDesc;//排名末三描述
private String code;//系统编码 private String code;//系统编码
} }
...@@ -206,6 +206,14 @@ public class IndicatorsReportService { ...@@ -206,6 +206,14 @@ public class IndicatorsReportService {
indReportData.setIndImproveCount( indReportData.setIndImproveCount(
indReportData.getIndImproveCount()+1); indReportData.getIndImproveCount()+1);
} }
}else {//反向
//填充指标降低个数
if(indReportData.getIndReduceCount()==null) {
indReportData.setIndReduceCount(1);
}else {
indReportData.setIndReduceCount(
indReportData.getIndReduceCount()+1);
}
} }
} }
if(Double.parseDouble(calResult.getValue())- if(Double.parseDouble(calResult.getValue())-
...@@ -218,6 +226,14 @@ public class IndicatorsReportService { ...@@ -218,6 +226,14 @@ public class IndicatorsReportService {
indReportData.setIndImproveCount( indReportData.setIndImproveCount(
indReportData.getIndImproveCount()+1); indReportData.getIndImproveCount()+1);
} }
}else {//正向
//填充指标降低个数
if(indReportData.getIndReduceCount()==null) {
indReportData.setIndReduceCount(1);
}else {
indReportData.setIndReduceCount(
indReportData.getIndReduceCount()+1);
}
} }
} }
improveValue.put(calResult.getCompareObj(),calGowthValue); improveValue.put(calResult.getCompareObj(),calGowthValue);
...@@ -317,6 +333,31 @@ public class IndicatorsReportService { ...@@ -317,6 +333,31 @@ public class IndicatorsReportService {
indReportData.setRankHeadThreeIndCount( indReportData.setRankHeadThreeIndCount(
indReportData.getRankHeadThreeIndCount()+1); indReportData.getRankHeadThreeIndCount()+1);
} }
//author:zhangkb time:2020-9-17 desc:填充排名第一,二,三指标个数
if(calResult.getRank()==1) {
if(indReportData.getRankOneCount()==null) {
indReportData.setRankOneCount(1);
}else {
indReportData.setRankOneCount(
indReportData.getRankOneCount()+1);
}
}
if(calResult.getRank()==2) {
if(indReportData.getRankTwoCount()==null) {
indReportData.setRankTwoCount(1);
}else {
indReportData.setRankTwoCount(
indReportData.getRankTwoCount()+1);
}
}
if(calResult.getRank()==3) {
if(indReportData.getRankThreeCount()==null) {
indReportData.setRankThreeCount(1);
}else {
indReportData.setRankThreeCount(
indReportData.getRankThreeCount()+1);
}
}
} }
} }
} }
...@@ -339,6 +380,31 @@ public class IndicatorsReportService { ...@@ -339,6 +380,31 @@ public class IndicatorsReportService {
indReportData.setRankAfterThreeIndCount( indReportData.setRankAfterThreeIndCount(
indReportData.getRankAfterThreeIndCount()+1); indReportData.getRankAfterThreeIndCount()+1);
} }
//author:zhangkb time:2020-9-17 desc:填充排名末一,二,三指标个数
if(map.getValue()==1) {
if(indReportData.getRankLastOneCount()==null) {
indReportData.setRankLastOneCount(1);
}else {
indReportData.setRankLastOneCount(
indReportData.getRankLastOneCount()+1);
}
}
if(map.getValue()==2) {
if(indReportData.getRankLastTwoCount()==null) {
indReportData.setRankLastTwoCount(1);
}else {
indReportData.setRankLastTwoCount(
indReportData.getRankLastTwoCount()+1);
}
}
if(map.getValue()==3) {
if(indReportData.getRankLastThreeCount()==null) {
indReportData.setRankLastThreeCount(1);
}else {
indReportData.setRankLastThreeCount(
indReportData.getRankLastThreeCount()+1);
}
}
} }
} }
} }
...@@ -711,6 +777,14 @@ public class IndicatorsReportService { ...@@ -711,6 +777,14 @@ public class IndicatorsReportService {
start = 0; start = 0;
StringBuilder rankHeadThree = new StringBuilder(""); StringBuilder rankHeadThree = new StringBuilder("");
StringBuilder rankHeadThreeDesc = new StringBuilder(""); StringBuilder rankHeadThreeDesc = new StringBuilder("");
//具体名次
StringBuilder rankOne = new StringBuilder("");
StringBuilder rankOneDesc = new StringBuilder("");
StringBuilder rankTwo = new StringBuilder("");
StringBuilder rankTwoDesc = new StringBuilder("");
StringBuilder rankThree = new StringBuilder("");
StringBuilder rankThreeDesc = new StringBuilder("");
Map<String,Integer> rankMap = new LinkedHashMap<>(); Map<String,Integer> rankMap = new LinkedHashMap<>();
Map<String,String> objDescMap = new HashMap<>(); Map<String,String> objDescMap = new HashMap<>();
for(DriveIndCalResultDef calData : calDatas) { for(DriveIndCalResultDef calData : calDatas) {
...@@ -723,6 +797,19 @@ public class IndicatorsReportService { ...@@ -723,6 +797,19 @@ public class IndicatorsReportService {
for(Map.Entry<String,Integer> entry : rankMap.entrySet()) { for(Map.Entry<String,Integer> entry : rankMap.entrySet()) {
rankHeadThree.append(entry.getKey()).append(";"); rankHeadThree.append(entry.getKey()).append(";");
rankHeadThreeDesc.append(objDescMap.get(entry.getKey())).append(";"); rankHeadThreeDesc.append(objDescMap.get(entry.getKey())).append(";");
//author:zhangkb time:2020-9-16 desc:填充具体的名次单位
if(entry.getValue()==1) {
rankOne.append(entry.getKey()).append(";");
rankOneDesc.append(objDescMap.get(entry.getKey())).append(";");
}
if(entry.getValue()==2) {
rankTwo.append(entry.getKey()).append(";");
rankTwoDesc.append(objDescMap.get(entry.getKey())).append(";");
}
if(entry.getValue()==3) {
rankThree.append(entry.getKey()).append(";");
rankThreeDesc.append(objDescMap.get(entry.getKey())).append(";");
}
start += 1; start += 1;
if(start>=end) { if(start>=end) {
break; break;
...@@ -730,12 +817,27 @@ public class IndicatorsReportService { ...@@ -730,12 +817,27 @@ public class IndicatorsReportService {
} }
indReportData.setRankHeadThree(rankHeadThree.toString()); indReportData.setRankHeadThree(rankHeadThree.toString());
indReportData.setRankHeadThreeDesc(rankHeadThreeDesc.toString()); indReportData.setRankHeadThreeDesc(rankHeadThreeDesc.toString());
//填充具体排名前几名次对象
indReportData.setRankOne(rankOne.toString());
indReportData.setRankOneDesc(rankOneDesc.toString());
indReportData.setRankTwo(rankTwo.toString());
indReportData.setRankTwoDesc(rankTwoDesc.toString());
indReportData.setRankThree(rankThree.toString());
indReportData.setRankThreeDesc(rankThreeDesc.toString());
rankMap.clear(); rankMap.clear();
//排名末三 //排名末三
start = 0; start = 0;
StringBuilder rankAfterThree = new StringBuilder(""); StringBuilder rankAfterThree = new StringBuilder("");
StringBuilder rankAfterThreeDesc = new StringBuilder(""); StringBuilder rankAfterThreeDesc = new StringBuilder("");
//具体名次
StringBuilder rankLastOne = new StringBuilder("");
StringBuilder rankLastOneDesc = new StringBuilder("");
StringBuilder rankLastTwo = new StringBuilder("");
StringBuilder rankLastTwoDesc = new StringBuilder("");
StringBuilder rankLastThree = new StringBuilder("");
StringBuilder rankLastThreeDesc = new StringBuilder("");
for(int i=(calDatas.size()-1);i>=0;i--) { for(int i=(calDatas.size()-1);i>=0;i--) {
if("NaN".equals(calDatas.get(i).getValue()) || if("NaN".equals(calDatas.get(i).getValue()) ||
"Infinite".equals(calDatas.get(i).getValue())) { "Infinite".equals(calDatas.get(i).getValue())) {
...@@ -750,6 +852,19 @@ public class IndicatorsReportService { ...@@ -750,6 +852,19 @@ public class IndicatorsReportService {
for(Map.Entry<String,Integer> entry : rankMap.entrySet()) { for(Map.Entry<String,Integer> entry : rankMap.entrySet()) {
rankAfterThree.append(entry.getKey()).append(";"); rankAfterThree.append(entry.getKey()).append(";");
rankAfterThreeDesc.append(objDescMap.get(entry.getKey())).append(";"); rankAfterThreeDesc.append(objDescMap.get(entry.getKey())).append(";");
//author:zhangkb time:2020-9-16 desc:填充具体末名次单位
if(entry.getValue()==1) {
rankLastOne.append(entry.getKey()).append(";");
rankLastOneDesc.append(objDescMap.get(entry.getKey())).append(";");
}
if(entry.getValue()==2) {
rankLastTwo.append(entry.getKey()).append(";");
rankLastTwoDesc.append(objDescMap.get(entry.getKey())).append(";");
}
if(entry.getValue()==3) {
rankLastThree.append(entry.getKey()).append(";");
rankLastThreeDesc.append(objDescMap.get(entry.getKey())).append(";");
}
start += 1; start += 1;
if(start>=end) { if(start>=end) {
break; break;
...@@ -757,6 +872,13 @@ public class IndicatorsReportService { ...@@ -757,6 +872,13 @@ public class IndicatorsReportService {
} }
indReportData.setRankAfterThree(rankAfterThree.toString()); indReportData.setRankAfterThree(rankAfterThree.toString());
indReportData.setRankAfterThreeDesc(rankAfterThreeDesc.toString()); indReportData.setRankAfterThreeDesc(rankAfterThreeDesc.toString());
//填充具体排名末几名次对象
indReportData.setRankLastOne(rankLastOne.toString());
indReportData.setRankLastOneDesc(rankLastOneDesc.toString());
indReportData.setRankLastTwo(rankLastTwo.toString());
indReportData.setRankLastTwoDesc(rankLastTwoDesc.toString());
indReportData.setRankLastThree(rankLastThree.toString());
indReportData.setRankLastThreeDesc(rankLastThreeDesc.toString());
} }
return indReportData; return indReportData;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment