From 25169ce9015c91b1596619fcc27b5554bd73bee7 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期六, 29 七月 2023 10:18:14 +0800 Subject: [PATCH] 5 --- src/main/java/com/yssh/controller/WarningAnalyseController.java | 23 ++--------- src/main/java/com/yssh/mapper/QxshMapper.java | 4 ++ src/main/java/com/yssh/utils/DateUtils.java | 16 +++----- src/main/java/com/yssh/service/WarningAnalyseService.java | 34 ++++++---------- src/main/resources/mapper/QxshMapper.xml | 13 ++++++ 5 files changed, 40 insertions(+), 50 deletions(-) diff --git a/src/main/java/com/yssh/controller/WarningAnalyseController.java b/src/main/java/com/yssh/controller/WarningAnalyseController.java index 23bd4ef..2e76dad 100644 --- a/src/main/java/com/yssh/controller/WarningAnalyseController.java +++ b/src/main/java/com/yssh/controller/WarningAnalyseController.java @@ -1,8 +1,5 @@ package com.yssh.controller; -import com.yssh.entity.Qxsh; -import com.yssh.utils.CacheUtils; -import com.yssh.utils.DateUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -17,10 +14,7 @@ import com.yssh.utils.Result; import javax.annotation.Resource; -import java.text.SimpleDateFormat; import java.util.Date; -import java.util.List; -import java.util.Map; @Api(tags = "鍛婅鍒嗘瀽") @RequestMapping("/warning") @@ -30,10 +24,6 @@ @Resource private WarningAnalyseService warningService; - /** - * 1.鏌ヨ褰撳墠鏃堕棿鐨勬墍鏈夌偣浣峷alue鍊硷紙浠�47.dat鏌ヨ鍗冲彲锛� - * 2.绛涢�夊ぇ浜巠ssh_bjyj涓殑jcbj瀛楁鐨勫�� 杩斿洖id+缁忕含搴�+value - */ @ApiOperationSupport(order = 1) @ApiOperation(value = "鑾峰彇瀹炴椂鎶ヨ", notes = "鑾峰彇瀹炴椂鎶ヨ鍒嗘瀽鏁版嵁") @GetMapping("/runAlarm") @@ -41,10 +31,6 @@ return Result.OK(warningService.getRunTimeAlarmAnalyse()); } - /** - * 1.鏌ヨ褰撳墠鏃堕棿鐨勬墍鏈夌偣浣峷alue鍊硷紙浠�47.dat鏌ヨ鍗冲彲锛� - * 2.绛涢�夊ぇ浜巠ssh_bjyj涓殑jcyj瀛楁鐨勫�� 杩斿洖id+缁忕含搴�+value - */ @ApiOperationSupport(order = 2) @ApiOperation(value = "鑾峰彇瀹炴椂棰勮", notes = "鑾峰彇瀹炴椂棰勮鍒嗘瀽鏁版嵁") @GetMapping("/runWarning") @@ -53,10 +39,10 @@ } @ApiOperationSupport(order = 3) - @ApiOperation(value = "鏈湀棰勮銆佹姤璀︾粺璁�", notes = "鏈湀棰勮銆佹姤璀︾粺璁★紝杩斿洖鍙傛暟alarmNumber瀵瑰簲鍊间负鏈湀鎶ヨ鏁版嵁閲忥紝鍙傛暟warningNumber瀵瑰簲鍊间负鏈湀棰勮鏁版嵁閲�") + @ApiOperation(value = "鏈湀棰勮鎶ヨ缁熻", notes = "鏈湀棰勮鎶ヨ缁熻锛岃繑鍥炲弬鏁癮larmNumber瀵瑰簲鍊间负鏈湀鎶ヨ鏁版嵁閲忥紝鍙傛暟warningNumber瀵瑰簲鍊间负鏈湀棰勮鏁版嵁閲�") @GetMapping("/monthCount") - public Result thisMonthCount() { - return Result.OK(warningService.countThisMonthAlarmAndWarning()); + public Result thisMonthCount(@RequestParam(value = "end", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date date) { + return Result.OK(warningService.monthCount(null == date ? new Date() : date)); } @ApiOperationSupport(order = 4) @@ -91,9 +77,8 @@ if (null == begin || null == end) { return Result.error(null); } - if (begin.getTime() > end.getTime()) { - Date tmp = end; + Date tmp = begin; begin = end; end = tmp; } diff --git a/src/main/java/com/yssh/mapper/QxshMapper.java b/src/main/java/com/yssh/mapper/QxshMapper.java index c9db586..443944b 100644 --- a/src/main/java/com/yssh/mapper/QxshMapper.java +++ b/src/main/java/com/yssh/mapper/QxshMapper.java @@ -18,6 +18,10 @@ public List<Qxsh> selectMonthTop10(String time); + public Integer countMonthForWarn(@Param("start") Integer start, @Param("end") Integer end); + + public Integer countMonthForAlarm(@Param("start") Integer start, @Param("end") Integer end); + public List<Map<String, Object>> count7DayForWarn(@Param("start") Integer start, @Param("end") Integer end); public List<Map<String, Object>> count7DayForAlarm(@Param("start") Integer start, @Param("end") Integer end); diff --git a/src/main/java/com/yssh/service/WarningAnalyseService.java b/src/main/java/com/yssh/service/WarningAnalyseService.java index 515c4c1..408fd2c 100644 --- a/src/main/java/com/yssh/service/WarningAnalyseService.java +++ b/src/main/java/com/yssh/service/WarningAnalyseService.java @@ -167,30 +167,22 @@ } } - public Map<String, Integer> countThisMonthAlarmAndWarning() { + /** + * 鏈湀棰勮鎶ヨ缁熻 + */ + public Map<String, Integer> monthCount(Date date) { + Date startDate = DateUtils.getMonthStart(date); + Date endDate = DateUtils.getMonthEnd(date); + Integer start = Integer.parseInt(DateUtils.getYyyyMmDdHh(startDate)); + Integer end = Integer.parseInt(DateUtils.getYyyyMmDdHh(endDate)); + Map<String, Integer> result = new HashMap<>(); - Map<String, Object> param = new HashMap<>(); - param.put("startTime", DateUtils.getYyyyMmDdHhMmSs(DateUtils.getMonthStart())); - param.put("endTime", DateUtils.getYyyyMmDdHhMmSs(DateUtils.getMonthEnd())); - - /*param.put("type", 0); - List<WarningVo> alarms = warningDetailMapper.selectWarningDetailByMap(param); - if (StringUtils.isNull(alarms)) { - alarms = new ArrayList<>(); - } - result.put("alarmNumber", alarms.size());*/ - Integer alarmNum = warningDetailMapper.countAlarmByMap(param); - result.put("alarmNumber", null == alarmNum ? 0 : alarmNum); - - param.put("type", 1); - /*List<WarningVo> warnings = warningDetailMapper.selectWarningDetailByMap(param); - if (StringUtils.isNull(warnings)) { - warnings = new ArrayList<>(); - } - result.put("warningNumber", warnings.size());*/ - Integer warnNum = warningDetailMapper.countWarnByMap(param); + Integer warnNum = qxshMapper.countMonthForWarn(start, end); result.put("warningNumber", null == warnNum ? 0 : warnNum); + Integer alarmNum = qxshMapper.countMonthForAlarm(start, end); + result.put("alarmNumber", null == alarmNum ? 0 : alarmNum); + return result; } diff --git a/src/main/java/com/yssh/utils/DateUtils.java b/src/main/java/com/yssh/utils/DateUtils.java index cb84b7b..bd91779 100644 --- a/src/main/java/com/yssh/utils/DateUtils.java +++ b/src/main/java/com/yssh/utils/DateUtils.java @@ -249,9 +249,10 @@ * * @return String **/ - public static Date getMonthStart() { + public static Date getMonthStart(Date date) { Calendar cal = Calendar.getInstance(); - //cal.set(Calendar.MONTH, 3); + // cal.set(Calendar.MONTH, 3) + cal.setTime(date); cal.set(Calendar.DAY_OF_MONTH, 1); return dateTime(YYYY_MM_DD_HH_MM_SS, parseDateToStr(YYYY_MM_DD, cal.getTime()) + " 00:00:00"); } @@ -261,16 +262,11 @@ * * @return String **/ - public static Date getMonthEnd() { + public static Date getMonthEnd(Date date) { Calendar cal = Calendar.getInstance(); - //cal.set(Calendar.MONTH, 3); + // cal.set(Calendar.MONTH, 3) + cal.setTime(date); cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH)); return dateTime(YYYY_MM_DD_HH_MM_SS, parseDateToStr(YYYY_MM_DD, cal.getTime()) + " 23:59:59"); - } - - public static void main(String[] args) { - //System.out.println(parseDateToStr(YYYY_MM_DD_HH_MM_SS, getMonthStart())); - //System.err.println(parseDateToStr(YYYY_MM_DD_HH_MM_SS, getMonthEnd())); - System.out.println(parseDateToStr(YYYY_MM_DD_HH_MM_SS, getAPeriodOfTime(getNowDate(), -7, Calendar.DATE))); } } diff --git a/src/main/resources/mapper/QxshMapper.xml b/src/main/resources/mapper/QxshMapper.xml index af93f53..d785b67 100644 --- a/src/main/resources/mapper/QxshMapper.xml +++ b/src/main/resources/mapper/QxshMapper.xml @@ -19,6 +19,19 @@ limit 10; </select> + <select id="countMonthForWarn" resultType="java.lang.Integer"> + select count(*) + from yssh_qxsh + where time between #{start} and #{end} and name like 'AI-%' + and value > (select jcyj from alert_config limit 1) and value <= (select jcbj from alert_config limit 1); + </select> + + <select id="countMonthForAlarm" resultType="java.lang.Integer"> + select count(*) + from yssh_qxsh + where time between #{start} and #{end} and name like 'AI-%' and value > (select jcbj from alert_config limit 1); + </select> + <select id="count7DayForWarn" resultType="java.util.Map"> with rs as ( select left(time, 8) "createTime" -- Gitblit v1.9.3