From 172376c1fd05a1aaed527051ce14452df4d952b8 Mon Sep 17 00:00:00 2001 From: liuqingkun Date: Fri, 20 Sep 2024 14:16:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E6=8A=A5=E8=AD=A6=E7=9B=91?= =?UTF-8?q?=E6=8E=A7=E9=A1=B5=E9=9D=A2=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BusinessMonitorController.java | 29 ++++---- .../modules/monitor/mapper/MonitorMapper.java | 15 ++-- .../modules/monitor/mapper/MonitorMapper.xml | 55 ++++++++++++--- .../service/IBusinessMonitorService.java | 53 ++++++++++++++ .../impl/BusinessMonitorServiceImpl.java | 69 +++++++++++++++++++ src/main/resources/application-dev.yml | 9 --- src/main/resources/application.yml | 2 + 7 files changed, 189 insertions(+), 43 deletions(-) create mode 100644 src/main/java/org/springblade/modules/monitor/service/IBusinessMonitorService.java create mode 100644 src/main/java/org/springblade/modules/monitor/service/impl/BusinessMonitorServiceImpl.java diff --git a/src/main/java/org/springblade/modules/monitor/controller/BusinessMonitorController.java b/src/main/java/org/springblade/modules/monitor/controller/BusinessMonitorController.java index acb8b44..5c163a4 100644 --- a/src/main/java/org/springblade/modules/monitor/controller/BusinessMonitorController.java +++ b/src/main/java/org/springblade/modules/monitor/controller/BusinessMonitorController.java @@ -1,23 +1,24 @@ package org.springblade.modules.monitor.controller; -import lombok.AllArgsConstructor; -import org.apache.ibatis.annotations.Param; +import lombok.RequiredArgsConstructor; import org.springblade.core.tool.api.R; +import org.springblade.modules.monitor.service.IBusinessMonitorService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; /** - * 系统监控控制器 + * 业务监控控制器 * * @author liuqingkun */ @RestController -@AllArgsConstructor +@RequiredArgsConstructor @RequestMapping("/monitor-business") public class BusinessMonitorController { + private final IBusinessMonitorService businessMonitorService; /** * 根据设备类型和报警节点查询排查方法 * @@ -27,8 +28,7 @@ public class BusinessMonitorController { */ @GetMapping("/getResolveTips") public R getResolveTips(@RequestParam("classCode") String classCode, @RequestParam("pointCode") String pointCode) { - - return null; + return R.data(businessMonitorService.resolveTips(classCode, pointCode)); } /** @@ -40,10 +40,11 @@ public class BusinessMonitorController { * @return */ @GetMapping("/getEquipList") - public R getEquipList(@RequestParam("classCode") String classCode, - @RequestParam("warnStatus") String warnStatus, - @RequestParam("equipCode") String equipCode) { - return null; + public R getEquipList(Integer currentPage, Integer pageSize, + @RequestParam("classCode") String classCode, + String warnStatus, + String equipCode) { + return R.data(businessMonitorService.getEquipList(currentPage, pageSize, classCode, warnStatus, equipCode)); } /** @@ -54,7 +55,7 @@ public class BusinessMonitorController { */ @GetMapping("/getWarnMsg") public R getWarnMsg(@RequestParam("equipCode") String equipCode) { - return null; + return R.data(businessMonitorService.getWarnMsg(equipCode)); } /** @@ -64,9 +65,7 @@ public class BusinessMonitorController { * @return */ @GetMapping("/getWarnHisList") - public R getWarnHisList(@RequestParam("equipCode") String equipCode) { - return null; + public R getWarnHisList(Integer currentPage, Integer pageSize, @RequestParam("equipCode") String equipCode) { + return R.data(businessMonitorService.getWarnHisList(currentPage, pageSize, equipCode)); } - - } diff --git a/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.java b/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.java index 47f55d8..d42b816 100644 --- a/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.java +++ b/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.java @@ -2,9 +2,6 @@ package org.springblade.modules.monitor.mapper; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Param; -import org.springblade.core.tool.api.R; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import java.util.List; import java.util.Map; @@ -17,7 +14,7 @@ import java.util.Map; public interface MonitorMapper { /** - * 前N条数据 + * 根据设备类型和报警节点查询排查方法 * * @param classCode 设备类型编码 * @param pointCode 节点编码 @@ -34,9 +31,9 @@ public interface MonitorMapper { * @param equipCode * @return */ - List> getEquipList(@Param("classCode") String classCode, - @Param("warnStatus") String warnStatus, - @Param("equipCode") String equipCode); + List> getEquipList(@Param("offset") int offset, @Param("size") int size, @Param("classCode") String classCode, @Param("warnStatus") String warnStatus, @Param("equipCode") String equipCode); + + int getEquipListTotal(@Param("classCode") String classCode, @Param("warnStatus") String warnStatus, @Param("equipCode") String equipCode); /** * 查询设备当前报警信息 @@ -52,5 +49,7 @@ public interface MonitorMapper { * @param equipCode * @return */ - List> getWarnHisList(@Param("equipCode") String equipCode); + List> getWarnHisList(@Param("offset") int offset, @Param("size") int size, @Param("equipCode") String equipCode); + + int getWarnHisListTotal(@Param("equipCode") String equipCode); } diff --git a/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.xml b/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.xml index 0369f07..b38fdca 100644 --- a/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.xml +++ b/src/main/java/org/springblade/modules/monitor/mapper/MonitorMapper.xml @@ -3,28 +3,53 @@ + @@ -57,6 +82,14 @@ from t_data_warn where equip_code = #{equipCode} and status = 1 - order by warn_date desc limit 10 + order by warn_date desc + limit #{offset}, #{size} + + + diff --git a/src/main/java/org/springblade/modules/monitor/service/IBusinessMonitorService.java b/src/main/java/org/springblade/modules/monitor/service/IBusinessMonitorService.java new file mode 100644 index 0000000..950f040 --- /dev/null +++ b/src/main/java/org/springblade/modules/monitor/service/IBusinessMonitorService.java @@ -0,0 +1,53 @@ +package org.springblade.modules.monitor.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.List; +import java.util.Map; + +/** + * 业务监控 服务类 + * + * @author liuqingkun + * @since 2024-09-20 9:26 + */ +public interface IBusinessMonitorService { + /** + * 根据设备类型和报警节点查询排查方法 + * + * @param classCode 设备类型编码 + * @param pointCode 节点编码 + * @return + */ + List> resolveTips(String classCode, String pointCode); + + /** + * 查询设备列表 + * + * @param currentPage + * @param pageSize + * @param classCode + * @param warnStatus + * @param equipCode + * @return + */ + IPage getEquipList(Integer currentPage, Integer pageSize, String classCode, String warnStatus, String equipCode); + + /** + * 查询设备当前报警信息 + * + * @param equipCode + * @return + */ + List> getWarnMsg(String equipCode); + + /** + * 查询设备报警记录 + * + * @param currentPage + * @param pageSize + * @param equipCode + * @return + */ + IPage getWarnHisList(Integer currentPage, Integer pageSize, String equipCode); +} diff --git a/src/main/java/org/springblade/modules/monitor/service/impl/BusinessMonitorServiceImpl.java b/src/main/java/org/springblade/modules/monitor/service/impl/BusinessMonitorServiceImpl.java new file mode 100644 index 0000000..2b78b3f --- /dev/null +++ b/src/main/java/org/springblade/modules/monitor/service/impl/BusinessMonitorServiceImpl.java @@ -0,0 +1,69 @@ +package org.springblade.modules.monitor.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.modules.monitor.mapper.MonitorMapper; +import org.springblade.modules.monitor.service.IBusinessMonitorService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * @author liuqingkun + * @date 2024-09-20 9:26 + */ +@Service +@Slf4j +@RequiredArgsConstructor +public class BusinessMonitorServiceImpl implements IBusinessMonitorService { + private final MonitorMapper monitorMapper; + + @Override + public List> resolveTips(String classCode, String pointCode) { + return monitorMapper.resolveTips(classCode, pointCode); + } + + @Override + public IPage getEquipList(Integer currentPage, Integer pageSize, String classCode, String warnStatus, String equipCode) { + // 初始化分页参数 + if (currentPage == null || currentPage == 0) { + currentPage = 1; + } + if (pageSize == null || pageSize == 0) { + pageSize = 10; + } + + IPage page = new Page(); + page.setRecords(monitorMapper.getEquipList(currentPage * pageSize, pageSize, classCode, warnStatus, equipCode)); + page.setTotal(monitorMapper.getEquipListTotal(classCode, warnStatus, equipCode)); + page.setCurrent(currentPage); + page.setSize(pageSize); + return page; + } + + @Override + public List> getWarnMsg(String equipCode) { + return monitorMapper.getWarnMsg(equipCode); + } + + @Override + public IPage getWarnHisList(Integer currentPage, Integer pageSize, String equipCode) { + // 初始化分页参数 + if (currentPage == null || currentPage == 0) { + currentPage = 1; + } + if (pageSize == null || pageSize == 0) { + pageSize = 10; + } + + IPage page = new Page(); + page.setRecords(monitorMapper.getWarnHisList(currentPage * pageSize, pageSize, equipCode)); + page.setTotal(monitorMapper.getWarnHisListTotal(equipCode)); + page.setCurrent(currentPage); + page.setSize(pageSize); + return page; + } +} diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index a4e08c4..fc5bfdb 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -6,14 +6,5 @@ spring: password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver -#blade配置 -blade: - prop: - upload-domain: http://localhost:8888 - remote-mode: true - remote-path: /usr/share/nginx/html - remote-path-iis: D://iis/html - log-mode: true - monitor: url: http://127.0.0.1:9090/api/v1/query diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 170d5cd..9369c16 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -117,6 +117,8 @@ blade: secure: skip-url: - /monitor/** + - /monitor-business/** + - /monitor-system/** client: - client-id: sword path-patterns: