From f5af2c565dbe38f22763ec17bf3868d58afafb97 Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Mon, 16 Nov 2020 16:30:39 +0800 Subject: [PATCH] 更改报表导出时间段 由原先的0-23 改为1-第二天零点 --- src/main/java/com/moral/service/impl/HistoryHourlyServiceImpl.java | 37 +++++++++++++++++++++++++++++++++---- 1 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/moral/service/impl/HistoryHourlyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryHourlyServiceImpl.java index d6942ce..ffaffab 100644 --- a/src/main/java/com/moral/service/impl/HistoryHourlyServiceImpl.java +++ b/src/main/java/com/moral/service/impl/HistoryHourlyServiceImpl.java @@ -10,6 +10,7 @@ import com.moral.mapper.HistoryMapper; import com.moral.util.AQICalculation; import com.moral.util.AQICalculation2; +import com.moral.util.DateUtil; import io.swagger.models.auth.In; import org.apache.commons.collections.MapUtils; import org.springframework.stereotype.Service; @@ -22,6 +23,7 @@ import com.moral.service.DeviceService; import com.moral.service.HistoryHourlyService; import com.moral.service.SensorService; +import org.springframework.util.ObjectUtils; import javax.annotation.Resource; @@ -154,8 +156,35 @@ Date date1 = calendar.getTime(); String date2 = simpleDateFormat.format(date1); List<Map> list = historyHourlyMapper.getDataByMacAndTime(mac, sensor, perTime, date2); + list.remove(0); + + /*������1-2���������������������������������1���������������������������2���������������������1-24��� + * ���24���������������������������������������������������������������*/ + /*������������start----------------------------------------------------------------*/ + if (list.size() == 23) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + //���������������������yyyy-MM-dd HH:mm:ss + perTime = perTime + " 00:00:00"; + Date perTimeDate = sdf.parse(perTime); + perTimeDate = DateUtil.rollDay(perTimeDate, 1); + Date endTimeDate = DateUtil.rollDay(perTimeDate, 2); + //������������������������ + String startTime = simpleDateFormat.format(perTimeDate); + String endTime = simpleDateFormat.format(endTimeDate); + + //������������2020-11-16���������������������������17���0������������������������������������������2020-11-17---2020-11-18 + List<Map> nextDayList = historyHourlyMapper.getDataByMacAndTime(mac, sensor, startTime, endTime); + if(!ObjectUtils.isEmpty(nextDayList)){ + perTime=perTime.replaceAll(" 00:00:00"," 24"); + Map<String, Object> datas = nextDayList.get(0); + datas.put("time",perTime); + list.add(datas); + } + } + /*������������end----------------------------------------------------------------*/ + List<Map> newList = new ArrayList<Map>(); - for (int i = 0; i < 24; i++) { + for (int i = 0; i <= 24; i++) { Map map=new HashMap(); if (i < 10) { map.put("time","0"+i); @@ -180,7 +209,7 @@ lists.add(newList); } - for (int i = 0; i < 24; i++) { + for (int i = 0; i <= 24; i++) { Map<String, Object> map = new HashMap<>(); List iList = new ArrayList(); for (List<Map> list : lists) { @@ -207,9 +236,9 @@ } catch (ParseException e) { e.printStackTrace(); } - for (int i = 0; i <perList.size() ; i++) { + /*for (int i = 0; i <perList.size() ; i++) { perList.get(i).replace("time",perList.get(i).get("time"),(Integer) perList.get(i).get("time")+1); - } + }*/ int j=0; for (int i = 0; i <perList.size() ; i++) { if (!((List)perList.get(i).get("values")).get(0).equals("")){ -- Gitblit v1.8.0