|
|
@@ -9,6 +9,8 @@ import com.jjt.biz.vo.LevelSortVO;
|
|
|
import com.jjt.common.core.controller.BaseController;
|
|
|
import com.jjt.common.core.domain.AjaxResult;
|
|
|
import com.jjt.common.core.page.TableDataInfo;
|
|
|
+import com.jjt.common.utils.StringUtils;
|
|
|
+import com.jjt.system.service.ISysDictDataService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
@@ -36,6 +38,8 @@ public class AlarmRecordController extends BaseController {
|
|
|
private IAlarmRecordService alarmRecordService;
|
|
|
@Resource
|
|
|
private JdbcTemplate jdbcTemplate;
|
|
|
+ @Resource
|
|
|
+ private ISysDictDataService sysDictDataService;
|
|
|
|
|
|
/**
|
|
|
* 查询告警记录列表
|
|
|
@@ -64,31 +68,64 @@ public class AlarmRecordController extends BaseController {
|
|
|
@GetMapping("/list/bizType")
|
|
|
public AjaxResult listBizType(@ApiParam(value = "开始时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date start, @ApiParam(value = "结束时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date end) {
|
|
|
List<BizTypeVO> list = new ArrayList();
|
|
|
-// TODO 暂时使用模拟数据
|
|
|
+ String sql = "SELECT b.obj_type,COUNT(*) num FROM alarm_record a,biz_obj b WHERE a.obj_id=b.obj_id";
|
|
|
+ Vector<Object> v = new Vector<>();
|
|
|
+ if (start != null && end != null) {
|
|
|
+ sql += " AND a.alarm_time BETWEEN ? AND ?";
|
|
|
+ v.add(start);
|
|
|
+ v.add(end);
|
|
|
+ }
|
|
|
+ sql += " GROUP BY b.obj_type";
|
|
|
+ List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
+ results.forEach(map -> {
|
|
|
+ BizTypeVO ls = new BizTypeVO();
|
|
|
|
|
|
-// String sql = "SELECT b.obj_type,COUNT(*) num FROM alarm_record a,biz_obj b WHERE a.obj_id=b.obj_id";
|
|
|
-// Vector<Object> v = new Vector<>();
|
|
|
-// if (start != null && end != null) {
|
|
|
-// sql += " AND a.alarm_time BETWEEN ? AND ?";
|
|
|
-// v.add(start);
|
|
|
-// v.add(end);
|
|
|
+ String obj_type = (String) map.get("obj_type");
|
|
|
+ ls.setId(obj_type);
|
|
|
+ ls.setName(sysDictDataService.selectDictLabel("biz_type", obj_type));
|
|
|
+ ls.setNum((Long) map.get("num"));
|
|
|
+ list.add(ls);
|
|
|
+ });
|
|
|
+// 测试数据
|
|
|
+// String[] names = {"mysql", "基础支撑", "运行环境", "ES搜索服务", "nginx", "redis", "负载均衡", "其他", "JAVA应用"};
|
|
|
+// for (int i = 0; i < names.length; i++) {
|
|
|
+// BizTypeVO vo = new BizTypeVO();
|
|
|
+// vo.setBizType(names[i]);
|
|
|
+// long num = Long.valueOf(new Random().nextInt(200) + 10);
|
|
|
+// vo.setNum(num);
|
|
|
+// list.add(vo);
|
|
|
// }
|
|
|
-// sql += " GROUP BY b.obj_type";
|
|
|
-// List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
-// results.forEach(map -> {
|
|
|
-// BizTypeVO ls = new BizTypeVO();
|
|
|
-// ls.setBizType((String) map.get("obj_type"));
|
|
|
-// ls.setNum((Long) map.get("num"));
|
|
|
-// list.add(ls);
|
|
|
-// });
|
|
|
- String[] names = {"mysql", "基础支撑", "运行环境", "ES搜索服务", "nginx", "redis", "负载均衡", "其他", "JAVA应用"};
|
|
|
- for (int i = 0; i < names.length; i++) {
|
|
|
- BizTypeVO vo = new BizTypeVO();
|
|
|
- vo.setBizType(names[i]);
|
|
|
- long num = Long.valueOf(new Random().nextInt(200) + 10);
|
|
|
- vo.setNum(num);
|
|
|
- list.add(vo);
|
|
|
+
|
|
|
+ list.sort(Comparator.comparing(BizTypeVO::getNum));
|
|
|
+ return AjaxResult.success(list);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("业务类型统计")
|
|
|
+ @GetMapping("/list/bizObj")
|
|
|
+ public AjaxResult listBizObj(@ApiParam(value = "业务类型") String type, @ApiParam(value = "开始时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date start, @ApiParam(value = "结束时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date end) {
|
|
|
+ List<BizTypeVO> list = new ArrayList();
|
|
|
+ String sql = "SELECT b.obj_id,b.obj_name,COUNT(*) num FROM alarm_record a,biz_obj b WHERE a.obj_id=b.obj_id";
|
|
|
+ Vector<Object> v = new Vector<>();
|
|
|
+ if (StringUtils.isNotEmpty(type)) {
|
|
|
+ sql += " AND b.obj_type=?";
|
|
|
+ v.add(type);
|
|
|
+ }
|
|
|
+ if (start != null && end != null) {
|
|
|
+ sql += " AND a.alarm_time BETWEEN ? AND ?";
|
|
|
+ v.add(start);
|
|
|
+ v.add(end);
|
|
|
}
|
|
|
+ sql += " GROUP BY b.obj_id,b.obj_name";
|
|
|
+ List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
+ results.forEach(map -> {
|
|
|
+ BizTypeVO ls = new BizTypeVO();
|
|
|
+ String obj_name = (String) map.get("obj_name");
|
|
|
+ int obj_id = (int) map.get("obj_id");
|
|
|
+ ls.setId(obj_id + "");
|
|
|
+ ls.setName(obj_name);
|
|
|
+ ls.setNum((Long) map.get("num"));
|
|
|
+ list.add(ls);
|
|
|
+ });
|
|
|
|
|
|
list.sort(Comparator.comparing(BizTypeVO::getNum));
|
|
|
return AjaxResult.success(list);
|
|
|
@@ -99,32 +136,32 @@ public class AlarmRecordController extends BaseController {
|
|
|
public AjaxResult listBizSort(@ApiParam(value = "分类") String bizType, @ApiParam(value = "开始时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date start, @ApiParam(value = "结束时间yyyy-mm-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") Date end) {
|
|
|
List<BizSortVO> list = new ArrayList();
|
|
|
// TODO 暂时使用模拟数据
|
|
|
-// String sql = "SELECT a.obj_id,b.obj_name,b.obj_type,COUNT(*) num FROM alarm_record a,biz_obj b WHERE a.obj_id=b.obj_id";
|
|
|
-// Vector<Object> v = new Vector<>();
|
|
|
-// if (StringUtils.isNotEmpty(bizType)) {
|
|
|
-// sql += " AND b.obj_type=?";
|
|
|
-// v.add(bizType);
|
|
|
-// }
|
|
|
-// if (start != null && end != null) {
|
|
|
-// sql += " AND a.alarm_time BETWEEN ? AND ?";
|
|
|
-// v.add(start);
|
|
|
-// v.add(end);
|
|
|
-// }
|
|
|
-// sql += " GROUP BY a.obj_id,b.obj_name,b.obj_type";
|
|
|
-// List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
-// results.forEach(map -> {
|
|
|
-// BizSortVO ls = new BizSortVO();
|
|
|
-// ls.setObjId(Long.valueOf((Integer) map.get("obj_id")));
|
|
|
-// ls.setObjName((String) map.get("obj_name"));
|
|
|
-// ls.setBizType((String) map.get("obj_type"));
|
|
|
-// ls.setNum((Long) map.get("num"));
|
|
|
-// list.add(ls);
|
|
|
-// });
|
|
|
-
|
|
|
- for (int i = 0; i < 10; i++) {
|
|
|
- BizSortVO vo = new BizSortVO(true);
|
|
|
- list.add(vo);
|
|
|
+ String sql = "SELECT a.obj_id,b.obj_name,b.obj_type,COUNT(*) num FROM alarm_record a,biz_obj b WHERE a.obj_id=b.obj_id";
|
|
|
+ Vector<Object> v = new Vector<>();
|
|
|
+ if (StringUtils.isNotEmpty(bizType)) {
|
|
|
+ sql += " AND b.obj_type=?";
|
|
|
+ v.add(bizType);
|
|
|
}
|
|
|
+ if (start != null && end != null) {
|
|
|
+ sql += " AND a.alarm_time BETWEEN ? AND ?";
|
|
|
+ v.add(start);
|
|
|
+ v.add(end);
|
|
|
+ }
|
|
|
+ sql += " GROUP BY a.obj_id,b.obj_name,b.obj_type";
|
|
|
+ List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
+ results.forEach(map -> {
|
|
|
+ BizSortVO ls = new BizSortVO();
|
|
|
+ ls.setObjId(Long.valueOf((Integer) map.get("obj_id")));
|
|
|
+ ls.setObjName((String) map.get("obj_name"));
|
|
|
+ ls.setBizType((String) map.get("obj_type"));
|
|
|
+ ls.setNum((Long) map.get("num"));
|
|
|
+ list.add(ls);
|
|
|
+ });
|
|
|
+
|
|
|
+// for (int i = 0; i < 10; i++) {
|
|
|
+// BizSortVO vo = new BizSortVO(true);
|
|
|
+// list.add(vo);
|
|
|
+// }
|
|
|
list.sort(Comparator.comparing(BizSortVO::getNum));
|
|
|
return AjaxResult.success(list);
|
|
|
}
|
|
|
@@ -176,23 +213,10 @@ public class AlarmRecordController extends BaseController {
|
|
|
@GetMapping("/list/levelSort")
|
|
|
public AjaxResult listLevelSort(AlarmRecord alarmRecord) {
|
|
|
List<LevelSortVO> list = new ArrayList();
|
|
|
- Vector<Object> v = new Vector<>();
|
|
|
- String sql = "SELECT alarm_level,COUNT(*) num FROM alarm_record where 1=1";
|
|
|
- if (alarmRecord.getObjId() != null) {
|
|
|
- sql += " and OBJ_ID = ?";
|
|
|
- v.add(alarmRecord.getObjId());
|
|
|
- }
|
|
|
- if (alarmRecord.getParams().get("beginAlarmTime") != null && alarmRecord.getParams().get("endAlarmTime") != null) {
|
|
|
- sql += " AND alarm_time BETWEEN ? AND ?";
|
|
|
- v.add(alarmRecord.getParams().get("beginAlarmTime"));
|
|
|
- v.add(alarmRecord.getParams().get("endAlarmTime") != null);
|
|
|
- }
|
|
|
- sql += " GROUP BY alarm_level";
|
|
|
- List<Map<String, Object>> results = jdbcTemplate.queryForList(sql, v.toArray());
|
|
|
-
|
|
|
+ List<Map<String, Object>> results = alarmRecordService.levelSort(alarmRecord);
|
|
|
results.forEach(map -> {
|
|
|
LevelSortVO ls = new LevelSortVO();
|
|
|
- ls.setLevel((String) map.get("alarm_level"));
|
|
|
+ ls.setLevel((String) map.get("ALARM_LEVEL"));
|
|
|
switch (ls.getLevel()) {
|
|
|
case "low":
|
|
|
ls.setName("低");
|
|
|
@@ -205,7 +229,7 @@ public class AlarmRecordController extends BaseController {
|
|
|
break;
|
|
|
default:
|
|
|
}
|
|
|
- ls.setNum((Long) map.get("num"));
|
|
|
+ ls.setNum((Long) map.get("NUM"));
|
|
|
list.add(ls);
|
|
|
});
|
|
|
return AjaxResult.success(list);
|