From dba54bf8c8f9299d61c05bf3a941708ea399c998 Mon Sep 17 00:00:00 2001 From: ZhuDongming <773644075@qq.com> Date: Sun, 26 Apr 2020 15:20:22 +0800 Subject: [PATCH] update excel多个工作表导出 --- src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java | 61 +++++++++++++++++++++++------- 1 files changed, 46 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java index 0333593..0b9267e 100644 --- a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java +++ b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java @@ -27,6 +27,8 @@ import java.util.concurrent.Executors; import java.util.stream.Collectors; +import javax.annotation.Resource; + import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.time.DateUtils; import org.springframework.stereotype.Service; @@ -49,8 +51,6 @@ import com.moral.mapper.HistoryMinutelyMapper; import com.moral.mapper.SensorMapper; import com.moral.service.HistoryMinutelyService; - -import javax.annotation.Resource; import static com.moral.common.bean.Constants.NULL_VALUE; import static org.springframework.util.ObjectUtils.isEmpty; @@ -106,16 +106,13 @@ public Map<String, Object> getHourAQIByDevice(Map<String, Object> parameters) { //ValidateUtil.notNull(parameters.get("mac"), "param.is.null"); LocalDate localDate = LocalDate.now(); - System.out.println("localDate:" + localDate); // ������00:00:00 //parameters.put("start", localDate.minusDays(1)); Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date()); calendar.set(Calendar.HOUR, calendar.get(Calendar.HOUR) - 1); - System.out.println("++++++" + calendar); int hour = calendar.get(Calendar.HOUR) - 1; - System.out.println("������������������" + hour); // ������00:00:00 parameters.put("end", localDate); @@ -595,7 +592,7 @@ } } } - 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"))){ + 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); @@ -614,28 +611,28 @@ if ("month".equals(parameters.get("type"))) { parameters.put("timeUnits", "daily"); parameters.put("typeFormat", "%Y-%m-%d"); - String time = parameters.get("time")+"-01T00:00:00"; + 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++){ + 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"; + } 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); + 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++){ + 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); @@ -643,4 +640,38 @@ return historyMinutelyMapper.getDevicesAvgDataToExcel(parameters); } + @Override + public List<Map<String, Object>> getDevicesSensorsAvgDataToExcel(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.getDevicesSensorsAvgDataToExcel(parameters); + } + } -- Gitblit v1.8.0