From 96f46b9168482ce4d64774b0e4433be2820a97ca Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 10 八月 2023 16:57:20 +0800 Subject: [PATCH] 1 --- src/main/java/com/yssh/mapper/XlsReportMapper.java | 5 +++++ src/main/resources/mapper/XlsReportMapper.xml | 11 +++++++++++ src/main/java/com/yssh/service/XlsReportService.java | 23 ++++++++++++----------- src/main/resources/application-file.yml | 2 +- 4 files changed, 29 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/yssh/mapper/XlsReportMapper.java b/src/main/java/com/yssh/mapper/XlsReportMapper.java index dd180bf..19c9d2d 100644 --- a/src/main/java/com/yssh/mapper/XlsReportMapper.java +++ b/src/main/java/com/yssh/mapper/XlsReportMapper.java @@ -48,4 +48,9 @@ * 鏍规嵁鏃堕棿鏌ヨ婧簮 */ List<SuYuan700> selectSuYuanByTime(@Param("id") String id, @Param("start") String start, @Param("end") String end); + + /** + * 鏍规嵁鏃堕棿娈垫煡璇㈡函婧� + */ + List<SuYuan700> selectSuYuanByStartAndEnd(@Param("id") String id, @Param("name") String name, @Param("yjz") double yjz, @Param("start") Integer start, @Param("end") Integer end); } diff --git a/src/main/java/com/yssh/service/XlsReportService.java b/src/main/java/com/yssh/service/XlsReportService.java index e45b5de..7cc8355 100644 --- a/src/main/java/com/yssh/service/XlsReportService.java +++ b/src/main/java/com/yssh/service/XlsReportService.java @@ -156,15 +156,16 @@ } /** - * 鍒涘缓鏃ユ姤锛欴ayExcel day = new DayExcel("AI-" + (i < 10 ? "0" : "") + i, "lj", "ljtb", "ys", "3m/s", "涓滃崡", "掳c"); + * 鍒涘缓鏃ユ姤锛歯ew DayExcel("AI-" + (i < 10 ? "0" : "") + i, "lj", "ljtb", "ys", "3m/s", "涓滃崡", "掳c"); */ public void createDayReport(Date date) { try { Date yesterday = DateUtils.getAPeriodOfTime(date, -1, Calendar.DATE); String yyyy = DateUtils.parseDateToStr(DateUtils.YYYY, yesterday); // 2023 String yyyymmdd = DateUtils.parseDateToStr(DateUtils.YYYYMMDD, yesterday); // 20230724 - String yyyy_mm_dd = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, yesterday); // 2023-07-24 - Integer start = Integer.parseInt(yyyy + "010100"); // 2023010100 + // String yyyy_mm_dd = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, yesterday); // 2023-07-24 + Integer yearStart = Integer.parseInt(yyyy + "010100"); // 2023010100 + Integer dayStart = Integer.parseInt(yyyymmdd + "00"); // 2023072400 Integer end = Integer.parseInt(yyyymmdd + "23"); // 2023072423 String lastYear = DateUtils.parseDateToStr(DateUtils.YYYY, DateUtils.lastYear(yesterday)); // 2022 @@ -172,12 +173,13 @@ for (int i = 1; i < 47; i++) { String name = "AI-" + (i < 10 ? "0" : "") + i; double rjz = mapper.selectDayAvg(yyyymmdd + "%", name); - double lj = mapper.selectAccumulate(start, end, name); + double lj = mapper.selectAccumulate(yearStart, end, name); double lastLj = mapper.selectYearAccumulate(lastYear + "%", name); double ljtb = CalculateUtils.round2((lj - lastLj) / lastLj * 100); MonitorPointPosition point = commonService.select3dCheckPointByName(name); String id = point.getId().substring(0, point.getId().lastIndexOf("_") + 1) + "0"; - List<SuYuan700> suList = mapper.selectSuYuanByTime(id, yyyy_mm_dd + " 00:00:00", yyyy_mm_dd + " 23:00:00"); + // List<SuYuan700> suList = mapper.selectSuYuanByTime(id, yyyy_mm_dd + " 00:00:00", yyyy_mm_dd + " 23:00:00"); + List<SuYuan700> suList = mapper.selectSuYuanByStartAndEnd(id, name, yjz, dayStart, end); String ys = getYs(suList); list.add(new DayExcel("" + rjz, "" + lj, ljtb + "%", ys, "", "", "")); @@ -189,20 +191,19 @@ } /** - * 鍒涘缓鍛ㄦ姤 + * 鍒涘缓鍛ㄦ姤锛歯ew WeekExcel("AI-" + (i < 10 ? "0" : "") + i, "zhb", "ztq", "ztb", "zhb2", "lj", "ljtb", "syn", "ys", "fs", "fx", "掳c"); */ public void createWeekReport(Date date) { try { - Date start = DateUtils.getAPeriodOfTime(date, -7, Calendar.DATE); - Date end = DateUtils.getAPeriodOfTime(date, -1, Calendar.DATE); + Date mon = DateUtils.getAPeriodOfTime(date, -7, Calendar.DATE); + Date sun = DateUtils.getAPeriodOfTime(date, -1, Calendar.DATE); List<WeekExcel> list = new ArrayList<>(); for (int i = 1; i < 47; i++) { - WeekExcel day = new WeekExcel("AI-" + (i < 10 ? "0" : "") + i, "zhb", "ztq", "ztb", "zhb2", "lj", "ljtb", "syn", "ys", "fs", "fx", "掳c"); - list.add(day); + String name = "AI-" + (i < 10 ? "0" : "") + i; } - String filePath = createExcel("week", end, list); + //String filePath = createExcel("week", end, list); } catch (Exception ex) { logger.error(ex.getMessage(), ex); } diff --git a/src/main/resources/application-file.yml b/src/main/resources/application-file.yml index fc2bc1b..439a3e6 100644 --- a/src/main/resources/application-file.yml +++ b/src/main/resources/application-file.yml @@ -9,5 +9,5 @@ #鏃�/鍛�/鏈堟姤璺緞 report: path: D:\2022\XlsReport - yjz: 1 + yjz: 1.6 bjz: 2 diff --git a/src/main/resources/mapper/XlsReportMapper.xml b/src/main/resources/mapper/XlsReportMapper.xml index 9a644b8..f53c63a 100644 --- a/src/main/resources/mapper/XlsReportMapper.xml +++ b/src/main/resources/mapper/XlsReportMapper.xml @@ -64,4 +64,15 @@ where su_yuan_id = #{id} and create_time between #{start} and #{end} order by create_time; </select> + + <!-- 鏍规嵁鏃堕棿娈垫煡璇㈡函婧� --> + <select id="selectSuYuanByStartAndEnd" resultType="com.yssh.entity.SuYuan700"> + select * + from suyuan_46 + where su_yuan_id = #{id} and date_format(create_time, '%Y%m%d%H') in ( + select time + from yssh_qxsh + where value > #{yjz} and name = #{name} and time between #{start} and #{end} + ); + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3