|
@@ -215,17 +215,33 @@ public class CustomPeronWorkBenchServiceImpl implements CustomPeronWorkBenchServ
|
|
|
List<Map<String, Object>> monthScanLength = customBigScreenMapper.findMonthScanLength(bigScreenQueryEntity);
|
|
|
Map<String,Object> monthScan=new HashMap<>();
|
|
|
List<Map<String,Object>> monthScanData=new ArrayList<>();
|
|
|
- List<String> dateData=new ArrayList<>();
|
|
|
+
|
|
|
List<BigDecimal> sgData=new ArrayList<>();
|
|
|
List<BigDecimal> jlData=new ArrayList<>();
|
|
|
- monthScanLength.forEach(d->{
|
|
|
- BigDecimal totalConPipeLength = (BigDecimal)d.get("totalConPipeLength");
|
|
|
- BigDecimal totalSpvPipeLength = (BigDecimal)d.get("totalSpvPipeLength");
|
|
|
- String tfDate = (String) d.get("tfDate");
|
|
|
- dateData.add(tfDate);
|
|
|
- sgData.add(totalConPipeLength);
|
|
|
- jlData.add(totalSpvPipeLength);
|
|
|
+ List<String> monthDataByNum = getMonthDataByNum(6);
|
|
|
+ Map<String, List<Map<String, Object>>> tfDate1 = monthScanLength.stream().collect(Collectors.groupingBy(d -> (String) d.get("tfDate")));
|
|
|
+ monthDataByNum.forEach(d->{
|
|
|
+ List<Map<String, Object>> maps = tfDate1.get(d);
|
|
|
+ if(maps!=null && maps.size()>0){
|
|
|
+ Map<String, Object> map1 = maps.get(0);
|
|
|
+ BigDecimal totalConPipeLength = (BigDecimal)map1.get("totalConPipeLength");
|
|
|
+ BigDecimal totalSpvPipeLength = (BigDecimal)map1.get("totalSpvPipeLength");
|
|
|
+ sgData.add(totalConPipeLength);
|
|
|
+ jlData.add(totalSpvPipeLength);
|
|
|
+ }else{
|
|
|
+ sgData.add(new BigDecimal(0));
|
|
|
+ jlData.add(new BigDecimal(0));
|
|
|
+ }
|
|
|
});
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
Map<String,Object> sgMap=new HashMap<>();
|
|
|
sgMap.put("name","施工");
|
|
|
sgMap.put("data",sgData);
|
|
@@ -236,7 +252,7 @@ public class CustomPeronWorkBenchServiceImpl implements CustomPeronWorkBenchServ
|
|
|
monthScanData.add(jlMap);
|
|
|
String titles[]={"施工","监理"};
|
|
|
monthScan.put("legend",titles);
|
|
|
- monthScan.put("xAxis",dateData);
|
|
|
+ monthScan.put("xAxis",monthDataByNum);
|
|
|
monthScan.put("series",monthScanData);
|
|
|
map.put("monthCountEcharts",monthScan);
|
|
|
|
|
@@ -251,6 +267,22 @@ public class CustomPeronWorkBenchServiceImpl implements CustomPeronWorkBenchServ
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public List<String> getMonthDataByNum(int num) {
|
|
|
+ List<String> resultList = new ArrayList<String>();
|
|
|
+ Calendar cal = Calendar.getInstance();
|
|
|
+
|
|
|
+ cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) + 1);
|
|
|
+ for (int i = 0; i < num; i++) {
|
|
|
+ cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) - 1);
|
|
|
+ resultList.add(String.valueOf(cal.get(Calendar.YEAR))
|
|
|
+ + (cal.get(Calendar.MONTH) + 1 < 10 ? "0" +
|
|
|
+ (cal.get(Calendar.MONTH) + 1) : (cal.get(Calendar.MONTH) + 1)));
|
|
|
+ }
|
|
|
+ Collections.sort(resultList);
|
|
|
+ return resultList;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public List<Map<String, Object>> getMaterialSum(CustomWorkbenchQuery customWorkbenchQuery) {
|
|
|
return customPersonWorkBenchMapper.getDesignGroupByPrj(customWorkbenchQuery);
|