|
@@ -25,8 +25,7 @@ import java.text.SimpleDateFormat;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
import java.time.temporal.ChronoUnit;
|
|
import java.time.temporal.ChronoUnit;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.Calendar;
|
|
|
|
|
|
+import java.util.*;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -1613,14 +1612,95 @@ public class ReportIndexResultServiceImpl extends AbstractCrudService<ReportInde
|
|
@Override
|
|
@Override
|
|
public List<Object> reportContrast(ReportResultVO reportResultVO) {
|
|
public List<Object> reportContrast(ReportResultVO reportResultVO) {
|
|
List<Object> list = new ArrayList<>();
|
|
List<Object> list = new ArrayList<>();
|
|
|
|
+ List<Object> list2 = new ArrayList<>();
|
|
|
|
+ List<Object> list3 = new ArrayList<>();
|
|
LambdaQueryWrapper<ReportResult> queryWrapper = Wrappers.lambdaQuery();
|
|
LambdaQueryWrapper<ReportResult> queryWrapper = Wrappers.lambdaQuery();
|
|
- queryWrapper.select(ReportResult::getId,ReportResult::getObjectId,ReportResult::getReportObject,
|
|
|
|
|
|
+ queryWrapper.select(ReportResult::getId,ReportResult::getObjectType,ReportResult::getObjectId,
|
|
|
|
+ ReportResult::getReportObject,
|
|
ReportResult::getCreateDate, ReportResult::getOverallScore)
|
|
ReportResult::getCreateDate, ReportResult::getOverallScore)
|
|
.in(ReportResult::getId,reportResultVO.getReportId());
|
|
.in(ReportResult::getId,reportResultVO.getReportId());
|
|
List<ReportResult> list1 = reportResultService.list(queryWrapper);
|
|
List<ReportResult> list1 = reportResultService.list(queryWrapper);
|
|
|
|
+ Map<String, Object> map1 = new HashMap<>();
|
|
if (CollectionUtils.isNotEmpty(list1)) {
|
|
if (CollectionUtils.isNotEmpty(list1)) {
|
|
|
|
+ for (int i = 0; i < list1.size(); i++) {
|
|
|
|
+ List<Object> list8 = new ArrayList<>();
|
|
|
|
+ LambdaQueryWrapper<ReportIndexResult> queryWrapper1 = Wrappers.lambdaQuery();
|
|
|
|
+ queryWrapper1
|
|
|
|
+ .eq(ReportIndexResult::getObjectId,list1.get(i).getObjectId())
|
|
|
|
+ .eq(ReportIndexResult::getCreateDate,list1.get(i).getCreateDate());
|
|
|
|
+ List<ReportIndexResult> list4 = this.list(queryWrapper1);
|
|
|
|
+ List<String> indexIdList = new ArrayList<>();
|
|
|
|
+ if (CollectionUtils.isNotEmpty(list4)) {
|
|
|
|
+ for (int a = 0; a < list4.size(); a++) {
|
|
|
|
+ indexIdList.add(list4.get(a).getIndexCode());
|
|
|
|
+ }
|
|
|
|
+ LambdaQueryWrapper<ReportIndexConfig> queryWrapper2 = Wrappers.lambdaQuery();
|
|
|
|
+ queryWrapper2
|
|
|
|
+ .in(ReportIndexConfig::getIndexCode, indexIdList);
|
|
|
|
+ List<ReportIndexConfig> list5 = reportIndexConfigService.list(queryWrapper2);
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
+ map.put("objectType", list1.get(i).getObjectType().equals(1)?"重点单位":"其他");
|
|
|
|
+ map.put("reportObject", list1.get(i).getReportObject());
|
|
|
|
+ map.put("overallScore", list1.get(i).getOverallScore());
|
|
|
|
+ map.put("createDate", list1.get(i).getCreateDate());
|
|
|
|
+ map.put("associationField", "indexScore" + i);
|
|
|
|
+ list2.add(map);
|
|
|
|
+ for (int j = 0; j < list4.size(); j++) {
|
|
|
|
+ if (CollectionUtils.isNotEmpty(list5)) {
|
|
|
|
+ for (int k = 0; k < list5.size(); k++) {
|
|
|
|
+ if (list4.get(j).getIndexCode().equals(list5.get(k).getIndexCode()) && list5.get(k).getIndexGrade().equals(1)) {
|
|
|
|
+ Map<String, Object> map2 = new HashMap<>();
|
|
|
|
+ map2.put("id", list5.get(k).getId());
|
|
|
|
+ map2.put("indexName", list4.get(j).getIndexName());
|
|
|
|
+ map2.put("indexWeight", list5.get(k).getIndexWeight());
|
|
|
|
+ map2.put("scoreDesc", list4.get(j).getScoreDesc());
|
|
|
|
+ map2.put("indexScore", list4.get(j).getIndexScore());
|
|
|
|
+ List<Object> list6 = new ArrayList<>();
|
|
|
|
+ for (int m = 0; m < list5.size(); m++) {
|
|
|
|
+ if (list5.get(m).getSeniorIndex().equals(list5.get(k).getId()) && list5.get(m).getIndexGrade().equals(2)) {
|
|
|
|
+ for (int l = 0; l < list4.size(); l++) {
|
|
|
|
+ if (list4.get(l).getIndexCode().equals(list5.get(m).getIndexCode())) {
|
|
|
|
+ Map<String, Object> map3 = new HashMap<>();
|
|
|
|
+ map3.put("id", list5.get(m).getId());
|
|
|
|
+ map3.put("indexName", list4.get(l).getIndexName());
|
|
|
|
+ map3.put("indexWeight", list5.get(m).getIndexWeight());
|
|
|
|
+ map3.put("scoreDesc", list4.get(l).getScoreDesc());
|
|
|
|
+ map3.put("indexScore", list4.get(l).getIndexScore());
|
|
|
|
+ List<Object> list7 = new ArrayList<>();
|
|
|
|
+ for (int o = 0; o < list5.size(); o++) {
|
|
|
|
+ if (list5.get(o).getSeniorIndex().equals(list5.get(m).getId()) && list5.get(o).getIndexGrade().equals(3)) {
|
|
|
|
+ for (int n = 0; n < list4.size(); n++) {
|
|
|
|
+ if (list4.get(n).getIndexCode().equals(list5.get(o).getIndexCode())) {
|
|
|
|
+ Map<String, Object> map4 = new HashMap<>();
|
|
|
|
+ map4.put("id", list5.get(o).getId());
|
|
|
|
+ map4.put("indexName", list4.get(l).getIndexName());
|
|
|
|
+ map4.put("indexWeight", list5.get(m).getIndexWeight());
|
|
|
|
+ map4.put("scoreDesc", list4.get(l).getScoreDesc());
|
|
|
|
+ map4.put("indexScore", list4.get(l).getIndexScore());
|
|
|
|
+ list7.add(map4);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ map3.put("children",list7);
|
|
|
|
+ list6.add(map3);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ map2.put("children",list6);
|
|
|
|
+ list8.add(map2);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ }
|
|
|
|
+ map1.put("indexScore"+i, list8);
|
|
|
|
+ }
|
|
|
|
+ map1.put("objectInfo", list2);
|
|
}
|
|
}
|
|
|
|
+ list.add(map1);
|
|
return list;
|
|
return list;
|
|
}
|
|
}
|
|
}
|
|
}
|