From 6fbb77235c856d84f7aefb61c4163120bb4f035e Mon Sep 17 00:00:00 2001 From: guo Date: Mon, 4 Dec 2023 10:13:15 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/AmmeterRecordDetailServiceImpl.java | 2 +- .../impl/GantryCraneWorkCycleServiceImpl.java | 2 +- .../impl/CarPassRecordServiceImpl.java | 2 +- .../HiddenDangerInspectRecordServiceImpl.java | 2 +- .../impl/ElectricalDataServiceImpl.java | 2 +- .../impl/DustNoiseDataServiceImpl.java | 2 +- .../impl/EnvironmentAlarmServiceImpl.java | 4 +- ...LocationTagLowVoltageAlarmServiceImpl.java | 2 +- ...AnalyseHardWareAlarmRecordServiceImpl.java | 4 +- .../WaterMeterMonthRecordServiceImpl.java | 2 +- .../impl/WorkerAttendanceServiceImpl.java | 2 +- .../java/com/zhgd/xmgl/util/DateUtils.java | 198 ++++++------------ 12 files changed, 82 insertions(+), 142 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/ammeter/service/impl/AmmeterRecordDetailServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/ammeter/service/impl/AmmeterRecordDetailServiceImpl.java index 43a3b7e64..4c89a2820 100644 --- a/src/main/java/com/zhgd/xmgl/modules/ammeter/service/impl/AmmeterRecordDetailServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/ammeter/service/impl/AmmeterRecordDetailServiceImpl.java @@ -149,7 +149,7 @@ public class AmmeterRecordDetailServiceImpl extends ServiceImpl ammeterRecordDetails = baseMapper.queryUseRecord(map); - List days = DateUtils.getDaysBetweenLastWeek(); + List days = DateUtils.getDateStrList(60, "yyyy-MM-dd"); List list = ammeterRecordDetails.stream().map(detail -> { TrendVo vo = new TrendVo(); vo.setY(detail.getDegree() + ""); diff --git a/src/main/java/com/zhgd/xmgl/modules/bigdevice/service/impl/GantryCraneWorkCycleServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/bigdevice/service/impl/GantryCraneWorkCycleServiceImpl.java index 4a17ecbfc..6b941e4d7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/bigdevice/service/impl/GantryCraneWorkCycleServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/bigdevice/service/impl/GantryCraneWorkCycleServiceImpl.java @@ -67,7 +67,7 @@ public class GantryCraneWorkCycleServiceImpl extends ServiceImpl trendVos = gantryCraneWorkCycleMapper.countGantryCraneWorkCycleNumEveryday(map); List days; if (Objects.equals(MapUtils.getInteger(map, "type"), 1)) { - days = DateUtils.getDaysBetweenLastHalfMonth(); + days = DateUtils.getDateStrList(72, "yyyy-MM-dd"); } else if (Objects.equals(MapUtils.getInteger(map, "type"), 2)) { days = DateUtils.getDaysBefore(50); } else { diff --git a/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarPassRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarPassRecordServiceImpl.java index d9bb0a15d..94121ad89 100644 --- a/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarPassRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarPassRecordServiceImpl.java @@ -386,7 +386,7 @@ public class CarPassRecordServiceImpl extends ServiceImpl todayOutInNumbers) { Map map = todayOutInNumbers.stream().collect(Collectors.toMap(TodayOutInNumber::getPassTime, Function.identity())); todayOutInNumbers.clear(); - for (String h : DateUtils.getAllHourInDay()) { + for (String h : DateUtils.getDateStrList(100, "HH:mm")) { TodayOutInNumber toi = map.get(h); if (toi == null) { toi = new TodayOutInNumber(); diff --git a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java index 3bbe29090..7f98735ac 100644 --- a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java @@ -527,7 +527,7 @@ public class HiddenDangerInspectRecordServiceImpl extends ServiceImpl fillData(List monthStatics) { List rtVos = new ArrayList<>(); Map map = monthStatics.stream().collect(Collectors.toMap(e -> e.getDay(), e -> e, (o, o2) -> o)); - for (String orderDay : DateUtils.getDaysBetweenLastMonth()) { + for (String orderDay : DateUtils.getDateStrList(80, "yyyy-MM-dd")) { DangerInspectionPassMonthStaticsVo vo = map.get(orderDay); if (vo == null) { vo = new DangerInspectionPassMonthStaticsVo(); diff --git a/src/main/java/com/zhgd/xmgl/modules/electrical/service/impl/ElectricalDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/electrical/service/impl/ElectricalDataServiceImpl.java index 274ee9ab5..0275c3b66 100644 --- a/src/main/java/com/zhgd/xmgl/modules/electrical/service/impl/ElectricalDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/electrical/service/impl/ElectricalDataServiceImpl.java @@ -100,7 +100,7 @@ public class ElectricalDataServiceImpl extends ServiceImpl electricalDataList) { Map dataMap = electricalDataList.stream().collect(Collectors.toMap(ElectricalData::getTime, Function.identity())); electricalDataList.clear(); - for (String hour : DateUtils.getHoursListLastDay()) { + for (String hour : DateUtils.getDateStrList(20, "HH:00")) { ElectricalData ed = dataMap.get(hour); if (ed == null) { ed = new ElectricalData(); diff --git a/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/DustNoiseDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/DustNoiseDataServiceImpl.java index 542ef4efa..225bf9d5c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/DustNoiseDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/DustNoiseDataServiceImpl.java @@ -205,7 +205,7 @@ public class DustNoiseDataServiceImpl extends ServiceImpl dustNoiseDatas) { Map dataMap = dustNoiseDatas.stream().collect(Collectors.toMap(DustNoiseData::getTime, Function.identity())); dustNoiseDatas.clear(); - for (String hour : DateUtils.getAllHourInDay()) { + for (String hour : DateUtils.getDateStrList(100, "HH:mm")) { DustNoiseData dnd = dataMap.get(hour); if (dnd == null) { dnd = new DustNoiseData(); diff --git a/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/EnvironmentAlarmServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/EnvironmentAlarmServiceImpl.java index 4bd3ed98a..9498814fe 100644 --- a/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/EnvironmentAlarmServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/environment/service/impl/EnvironmentAlarmServiceImpl.java @@ -759,10 +759,10 @@ public class EnvironmentAlarmServiceImpl extends ServiceImpl dayList = new ArrayList<>(); if (dateType == 2) { //查询近一月所有天数 - dayList = DateUtils.getDaysBetweenLastMonth(); + dayList = DateUtils.getDateStrList(80, "yyyy-MM-dd"); } else { //查询近一周所有天数 - dayList = DateUtils.getDaysBetweenLastWeek(); + dayList = DateUtils.getDateStrList(60, "yyyy-MM-dd"); } List> list = companyService.selectComapnyOrProjectList(map); if (list != null && list.size() > 0) { diff --git a/src/main/java/com/zhgd/xmgl/modules/location/service/impl/LocationTagLowVoltageAlarmServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/location/service/impl/LocationTagLowVoltageAlarmServiceImpl.java index 930c0b7c3..60bc9a1a2 100644 --- a/src/main/java/com/zhgd/xmgl/modules/location/service/impl/LocationTagLowVoltageAlarmServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/location/service/impl/LocationTagLowVoltageAlarmServiceImpl.java @@ -40,7 +40,7 @@ public class LocationTagLowVoltageAlarmServiceImpl extends ServiceImpl countLocationTagLowVoltageAlarmEveryDay(HashMap paramMap) { List list = baseMapper.countLocationTagLowVoltageAlarmEveryDay(paramMap); - List days = DateUtils.getDaysBetweenLastWeek(); + List days = DateUtils.getDateStrList(60, "yyyy-MM-dd"); List trendVos = TrendVo.fillTrendVos(list, days, "MM-dd"); return trendVos; } diff --git a/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java index 36fd75b4c..aac8d748c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java @@ -140,9 +140,9 @@ public class AiAnalyseHardWareAlarmRecordServiceImpl extends ServiceImpl> dataList = new ArrayList<>(); Map data = aiAnalyseHardWareAlarmRecordMapper.selectAiAnalyseHardWareAlarmTrendList(map); diff --git a/src/main/java/com/zhgd/xmgl/modules/water/service/impl/WaterMeterMonthRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/water/service/impl/WaterMeterMonthRecordServiceImpl.java index aea4c585e..8cc561389 100644 --- a/src/main/java/com/zhgd/xmgl/modules/water/service/impl/WaterMeterMonthRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/water/service/impl/WaterMeterMonthRecordServiceImpl.java @@ -98,7 +98,7 @@ public class WaterMeterMonthRecordServiceImpl extends ServiceImpl alarmList) { Map map = alarmList.stream().collect(Collectors.toMap(e -> e.getTitleTime(), Function.identity())); alarmList.clear(); - for (String date : DateUtils.getDaysBetweenLastMonth()) { + for (String date : DateUtils.getDateStrList(80, "yyyy-MM-dd")) { WaterMeterStatisticsVo.Alarm alarm = map.get(date); if (alarm == null) { alarm = new WaterMeterStatisticsVo.Alarm(); diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java index 63d625e23..1f35e4726 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java @@ -999,7 +999,7 @@ status 状态码 String 1表示成功;其余表示失败 return workerAttendance; }).collect(Collectors.groupingBy(WorkerAttendance::getCreateTimeHour)); ArrayList rtList = new ArrayList<>(); - List allHourInDay = DateUtils.getAllHourInDay(); + List allHourInDay = DateUtils.getDateStrList(100, "HH:mm"); int lastNum = 0; for (String hour : allHourInDay) { List workerAttendances = timeDateListMap.get(hour); diff --git a/src/main/java/com/zhgd/xmgl/util/DateUtils.java b/src/main/java/com/zhgd/xmgl/util/DateUtils.java index 7c3759fc8..4fc2d89ce 100644 --- a/src/main/java/com/zhgd/xmgl/util/DateUtils.java +++ b/src/main/java/com/zhgd/xmgl/util/DateUtils.java @@ -23,12 +23,6 @@ import java.util.*; **/ public class DateUtils { - /** - * 时间格式化 - * - * @param oldDate - * @return - */ public static String dealDateFormat(String oldDate) { Date date1 = null; SimpleDateFormat df2 = null; @@ -37,8 +31,6 @@ public class DateUtils { Date date = df.parse(oldDate); Calendar beijingcal = Calendar.getInstance(); beijingcal.setTime(date); - //SimpleDateFormat df1 = new SimpleDateFormat ("EEE MMM dd HH:mm:ss Z yyyy", Locale.UK); - //date1 = df1.parse(date.toString()); beijingcal.set(Calendar.HOUR, beijingcal.get(Calendar.HOUR) + 8); date1 = beijingcal.getTime(); df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -62,11 +54,6 @@ public class DateUtils { return df2.format(date); } - /** - * 查询本周所有天数 - * - * @return - */ public static List getNowWeekAllDayList() { Calendar cal = Calendar.getInstance(); // 判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了 @@ -98,11 +85,6 @@ public class DateUtils { return findDates(cal.getTime(), new Date()); } - /** - * 查询本月所有天数 - * - * @return - */ public static List getNowMonthAllDayList() { Calendar cal = Calendar.getInstance(); cal.set(Calendar.DAY_OF_MONTH, 1); @@ -346,7 +328,7 @@ public class DateUtils { } return list; } else if (type == 2) { - return getDaysBetweenLastWeek(); + return getDateStrList(60, "yyyy-MM-dd"); } else if (type == 3) { return getNowMonthAllDayList(); } @@ -397,14 +379,6 @@ public class DateUtils { return sdf.format(cal.getTime()); } - /** - * 获取一天内的小时列表 - * - * @return - */ - public static List getAllHourInDay() { - return Arrays.asList("00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "06:00", "07:00", "08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00", "23:00"); - } /** * 转成GMT时间 @@ -418,70 +392,6 @@ public class DateUtils { } - /** - * 查询本月所有天数Fix,如:2023-06-01到2023-06-30 - * - * @return - */ - public static List getCurrentMonthAllDayList() { - ArrayList rtList = new ArrayList<>(); - Date now = new Date(); - DateTime beginDate = DateUtil.beginOfMonth(now); - DateTime endDate = DateUtil.endOfMonth(now); - long offset = DateUtil.betweenDay(beginDate, endDate, true); - for (int i = 0; i < offset + 1; i++) { - rtList.add(DateUtil.formatDate(DateUtil.offsetDay(beginDate, i))); - } - return rtList; - } - - /** - * 查询一个月前内所有天数,如:2023-06-10到2023-07-10 - * - * @return - */ - public static List getDaysBetweenLastMonth() { - ArrayList rtList = new ArrayList<>(); - DateTime beginDate = DateUtil.lastMonth(); - DateTime endDate = DateTime.now(); - long offset = DateUtil.betweenDay(beginDate, endDate, true); - for (int i = 0; i < offset + 1; i++) { - rtList.add(DateUtil.formatDate(DateUtil.offsetDay(beginDate, i))); - } - return rtList; - } - - /** - * 查询一个周前内所有天数,如:2023-06-10到2023-06-17 - * - * @return - */ - public static List getDaysBetweenLastWeek() { - ArrayList rtList = new ArrayList<>(); - DateTime beginDate = DateUtil.lastWeek(); - DateTime endDate = DateTime.now(); - long offset = DateUtil.betweenDay(beginDate, endDate, true); - for (int i = 0; i < offset + 1; i++) { - rtList.add(DateUtil.formatDate(DateUtil.offsetDay(beginDate, i))); - } - return rtList; - } - - /** - * 查询15天前的所有天数,如:2023-06-10到2023-06-15 - * - * @return - */ - public static List getDaysBetweenLastHalfMonth() { - ArrayList rtList = new ArrayList<>(); - DateTime dateTime = DateUtil.parseDate(DateUtil.today()); - for (int i = 0; i < 15; i++) { - rtList.add(DateUtil.formatDate(DateUtil.offsetDay(dateTime, i * (-1)))); - } - Collections.reverse(rtList); - return rtList; - } - /** * 查询N天前的所有天数,如:2023-06-10到2023-06-15 * @@ -515,38 +425,6 @@ public class DateUtils { return rtList; } - /** - * 查询一个周前内所有天数,如:06-10到06-17 - * - * @return - */ - public static List getDaysBetweenLastWeekWithoutYear() { - ArrayList rtList = new ArrayList<>(); - DateTime beginDate = DateUtil.lastWeek(); - DateTime endDate = DateTime.now(); - long offset = DateUtil.betweenDay(beginDate, endDate, true); - for (int i = 0; i < offset + 1; i++) { - rtList.add(DateUtil.format(DateUtil.offsetDay(beginDate, i), "MM-dd")); - } - return rtList; - } - - /** - * 查询一天前内所有小时 - * - * @return - */ - public static List getHoursListLastDay() { - ArrayList rtList = new ArrayList<>(); - DateTime beginDate = DateUtil.yesterday(); - DateTime endDate = DateTime.now(); - long offset = DateUtil.between(beginDate, endDate, DateUnit.HOUR); - for (int i = 1; i < offset + 1; i++) { - rtList.add(DateUtil.format(DateUtil.offsetHour(beginDate, i), "HH:00")); - } - return rtList; - } - /** * 偏移日期str,传入2023-11-02返回2023-11-02,传入2023-11-02 00:00:00返回2023-11-02 00:00:00 * @@ -566,15 +444,53 @@ public class DateUtils { * 获取所有日期列表 * * @param type 类型: - * 10.近12小时,20.近24小时,30.近半天,40.近一天,50.近两天,60.近一周,70.近两周,80.近一个月,90.近半年,93.近一年 - * 100.今天,200.昨天,300.本周,400.本月,500.本年(每月),600.去年 + * 10.近12小时,20.近24小时(每小时),30.近半天,40.近一天,50.近两天,60.近一周(每天),70.近两周,72.近15天(每天),80.近一个月(每天),90.近半年(每月),93.近一年(每月) + * 100.今天(每小时),200.昨天,300.本周,400.本月(每天),500.本年(每月),600.去年 * @param pattern 格式 如:yyyy-MM-dd HH:mm:ss * @return */ public static List getDateStrList(int type, String pattern) { - if (type == 1) { - + if (type == 20) { + //近24小时(每小时),eg:HH:00 + ArrayList rtList = new ArrayList<>(); + DateTime beginDate = DateUtil.yesterday(); + DateTime endDate = DateTime.now(); + long offset = DateUtil.between(beginDate, endDate, DateUnit.HOUR); + for (int i = 1; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetHour(beginDate, i), pattern)); + } + return rtList; + } else if (type == 60) { + //近一周(每天) + ArrayList rtList = new ArrayList<>(); + DateTime beginDate = DateUtil.lastWeek(); + DateTime endDate = DateTime.now(); + long offset = DateUtil.betweenDay(beginDate, endDate, true); + for (int i = 0; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetDay(beginDate, i), pattern)); + } + return rtList; + } else if (type == 72) { + //近15天(每天) + ArrayList rtList = new ArrayList<>(); + DateTime dateTime = DateUtil.parseDate(DateUtil.today()); + for (int i = 0; i < 15; i++) { + rtList.add(DateUtil.format(DateUtil.offsetDay(dateTime, i * (-1)), pattern)); + } + Collections.reverse(rtList); + return rtList; + } else if (type == 80) { + //近一个月(每天) + ArrayList rtList = new ArrayList<>(); + DateTime beginDate = DateUtil.lastMonth(); + DateTime endDate = DateTime.now(); + long offset = DateUtil.betweenDay(beginDate, endDate, true); + for (int i = 0; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetDay(beginDate, i), pattern)); + } + return rtList; } else if (type == 90) { + //近半年(每月) ArrayList rtList = new ArrayList<>(); DateTime endDate = DateTime.now(); DateTime beginDate = DateUtil.offsetMonth(endDate, -6); @@ -584,6 +500,7 @@ public class DateUtils { } return rtList; } else if (type == 93) { + //近一年(每月) ArrayList rtList = new ArrayList<>(); DateTime endDate = DateTime.now(); DateTime beginDate = DateUtil.offsetMonth(endDate, -12); @@ -592,7 +509,29 @@ public class DateUtils { rtList.add(DateUtil.format(DateUtil.offsetMonth(beginDate, i), pattern)); } return rtList; + } else if (type == 100) { + //100.今天(每小时) + ArrayList rtList = new ArrayList<>(); + DateTime beginDate = DateUtil.beginOfDay(DateTime.now()); + DateTime endDate = DateUtil.endOfDay(DateTime.now()); + long offset = DateUtil.between(beginDate, endDate, DateUnit.HOUR); + for (int i = 0; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetHour(beginDate, i), pattern)); + } + return rtList; + } else if (type == 400) { + //本月(每天) + ArrayList rtList = new ArrayList<>(); + Date now = new Date(); + DateTime beginDate = DateUtil.beginOfMonth(now); + DateTime endDate = DateUtil.endOfMonth(now); + long offset = DateUtil.betweenDay(beginDate, endDate, true); + for (int i = 0; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetDay(beginDate, i), pattern)); + } + return rtList; } else if (type == 500) { + //本年(每月) ArrayList rtList = new ArrayList<>(); DateTime beginDate = DateUtil.beginOfYear(DateTime.now()); DateTime endDate = DateUtil.endOfYear(DateTime.now()); @@ -602,10 +541,11 @@ public class DateUtils { } return rtList; } - return null; + return new ArrayList<>(); } public static void main(String[] args) { - System.out.println(getDateStrList(500, "月份M")); + System.out.println(getNowWeekAllDayList()); + System.out.println(getDateStrList(100, "HH:mm")); } }