From 69fe5c709ecf9093b1640356eff7c1991a6dd7d3 Mon Sep 17 00:00:00 2001 From: ZhuDongming <773644075@qq.com> Date: Thu, 23 Apr 2020 11:53:54 +0800 Subject: [PATCH] add定制导报表接口 --- src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java | 38 +++++++++++++++++++++++++++++++++++++- 1 files changed, 37 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java index 466b45e..0333593 100644 --- a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java +++ b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java @@ -555,7 +555,6 @@ String startTime = parameters.get("startTime").toString(); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime startTimeLocalDateTime = LocalDateTime.parse(startTime, dateTimeFormatter); - LocalDate time = LocalDate.now(); int year = startTimeLocalDateTime.getYear(); int month = startTimeLocalDateTime.getMonthValue(); String monthStr = month < 10 ? ("0" + month) : month + ""; @@ -596,6 +595,9 @@ } } } + if("0��".equals(mapAvg.get("e76")) || "0".equals(mapMin.get("e76")) || "0".equals(mapMax.get("e76")) || "0��".equals(mapAvg.get("e77")) || "0".equals(mapMin.get("e77")) || "0".equals(mapMax.get("e77"))){ + continue; + } listMapAvg.add(mapAvg); listMapMin.add(mapMin); listMapMax.add(mapMax); @@ -607,4 +609,38 @@ return listMaps; } + @Override + public List<Map<String, Object>> getDevicesAvgDataToExcel(Map<String, Object> parameters) throws Exception { + if ("month".equals(parameters.get("type"))) { + parameters.put("timeUnits", "daily"); + parameters.put("typeFormat", "%Y-%m-%d"); + String time = parameters.get("time")+"-01T00:00:00"; + LocalDateTime value = LocalDateTime.parse(time); + LocalDateTime start = value.with(TemporalAdjusters.firstDayOfMonth()); + LocalDateTime end = value.with(TemporalAdjusters.lastDayOfMonth()); + parameters.put("start", start); + parameters.put("end", end); + int day=end.getDayOfMonth(); + List<String> timeList=new ArrayList<>(); + for(int i=0;i<=day-1;i++){ + timeList.add(start.plusDays(i).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + } + parameters.put("timeList", timeList); + }else if("day".equals(parameters.get("type"))){ + String time = parameters.get("time")+"T00:00:00"; + LocalDateTime value = LocalDateTime.parse(time); + LocalDateTime end=value.plusHours(23); + parameters.put("timeUnits", "hourly"); + parameters.put("typeFormat", "%Y-%m-%d %H:%i"); + parameters.put("start", time); + parameters.put("end", end); + List<String> timeList=new ArrayList<>(); + for(int i=0;i<=23;i++){ + timeList.add(value.plusHours(i).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"))); + } + parameters.put("timeList", timeList); + } + return historyMinutelyMapper.getDevicesAvgDataToExcel(parameters); + } + } -- Gitblit v1.8.0