|
@@ -1,14 +1,16 @@
|
|
|
package com.jjt.biz.controller;
|
|
|
|
|
|
-import com.jjt.biz.domain.BizObjMetrics;
|
|
|
-import com.jjt.biz.domain.IndexMetrics;
|
|
|
-import com.jjt.biz.service.IBizObjMetricsService;
|
|
|
-import com.jjt.biz.service.IIndexMetricsService;
|
|
|
+import com.jjt.biz.domain.*;
|
|
|
+import com.jjt.biz.service.*;
|
|
|
+import com.jjt.biz.vo.BizAccessVO;
|
|
|
+import com.jjt.biz.vo.BizTypeVO;
|
|
|
import com.jjt.biz.vo.HlScoreVO;
|
|
|
+import com.jjt.biz.vo.ScoreVO;
|
|
|
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.DateUtils;
|
|
|
+import com.jjt.hl.domain.HlScore;
|
|
|
import com.jjt.hl.service.IHlScoreService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
@@ -19,8 +21,10 @@ import javax.annotation.Resource;
|
|
|
import java.text.DecimalFormat;
|
|
|
import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.time.ZoneOffset;
|
|
|
+import java.time.LocalTime;
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 业务对象Controller
|
|
@@ -38,6 +42,12 @@ public class IndexController extends BaseController {
|
|
|
private IBizObjMetricsService omService;
|
|
|
@Resource
|
|
|
private IHlScoreService scoreService;
|
|
|
+ @Resource
|
|
|
+ private IBizModelService bizModelService;
|
|
|
+ @Resource
|
|
|
+ private IBizObjMetricsDataService dataService;
|
|
|
+ @Resource
|
|
|
+ private IAlarmRecordService alarmRecordService;
|
|
|
|
|
|
String[] MODEL_NAMES = {"市场服务", "市场出清", "信息发布", "市场合规", "市场结算"};
|
|
|
|
|
@@ -95,16 +105,28 @@ public class IndexController extends BaseController {
|
|
|
@GetMapping("/hl/day/{date}")
|
|
|
public AjaxResult hlDay(@ApiParam(value = "时间(yyyy-mm-dd", required = true) @PathVariable("date") Date date) {
|
|
|
List<Map<String, Object>> result = new ArrayList<>();
|
|
|
- for (int i = 0; i < MODEL_NAMES.length; i++) {
|
|
|
+ HlScore search = new HlScore();
|
|
|
+ search.setHlType("1");
|
|
|
+ Map<String, Object> params = new HashMap<>(16);
|
|
|
+ params.put("beginTime", DateUtils.parseDateToStr("yyyy-MM-dd", date) + " 00:00:00");
|
|
|
+ params.put("endTime", DateUtils.parseDateToStr("yyyy-MM-dd", date) + " 23:59:59");
|
|
|
+ search.setParams(params);
|
|
|
+
|
|
|
+ List<HlScore> list = scoreService.selectHlScoreList(search);
|
|
|
+ Map<Long, List<HlScore>> resultMap = list.stream().collect(Collectors.groupingBy(HlScore::getModelId));
|
|
|
+ for (Long modelId : resultMap.keySet()) {
|
|
|
Map<String, Object> map = new HashMap<>(16);
|
|
|
- map.put("name", MODEL_NAMES[i]);
|
|
|
+ ScoreVO vo = new ScoreVO();
|
|
|
+ BizModel model = bizModelService.selectBizModelByModelId(modelId);
|
|
|
+ map.put("name", model.getModelName());
|
|
|
List<String> times = new ArrayList<>();
|
|
|
List<Float> scores = new ArrayList<>();
|
|
|
- for (int j = 0; j < 24; j++) {
|
|
|
- times.add(j + "");
|
|
|
- Float score = Float.valueOf(new Random().nextInt(50) + 50);
|
|
|
- scores.add(score);
|
|
|
- }
|
|
|
+ List<HlScore> scoreList = resultMap.get(modelId);
|
|
|
+ scoreList = scoreList.stream().sorted(Comparator.comparing(HlScore::getHlDate)).collect(Collectors.toList());
|
|
|
+ scoreList.forEach(hs -> {
|
|
|
+ times.add(DateUtils.parseDateToStr("HH:mm", hs.getHlDate()));
|
|
|
+ scores.add(hs.getHlScore().floatValue());
|
|
|
+ });
|
|
|
map.put("time", times);
|
|
|
map.put("score", scores);
|
|
|
result.add(map);
|
|
@@ -133,11 +155,11 @@ public class IndexController extends BaseController {
|
|
|
map.put("objName", objName);
|
|
|
map.put("metricsName", metricsName);
|
|
|
String status = "1";
|
|
|
- if (flag) {
|
|
|
+// if (flag) {
|
|
|
//风险
|
|
|
num++;
|
|
|
status = "2";
|
|
|
- }
|
|
|
+// }
|
|
|
map.put("status", status);
|
|
|
list.add(map);
|
|
|
}
|
|
@@ -151,15 +173,28 @@ public class IndexController extends BaseController {
|
|
|
@GetMapping("/biz/access")
|
|
|
public AjaxResult access() {
|
|
|
List<Map<String, Object>> result = new ArrayList<>();
|
|
|
- String[] names = {"市场出清/mysql", "市场出清/redis", "市场出清/user", "市场服务/auth", "市场结算/mysql"};
|
|
|
- Random random = new Random();
|
|
|
- for (int i = 0; i < names.length; i++) {
|
|
|
+
|
|
|
+ LocalDateTime endTime = LocalDateTime.now();
|
|
|
+ LocalDateTime beginTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);
|
|
|
+ String start = beginTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
|
|
+ String end = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
|
|
+ List<BizAccessVO> list = alarmRecordService.objAccess(null, start, end);
|
|
|
+ list.forEach(vo -> {
|
|
|
Map<String, Object> map = new HashMap<>(16);
|
|
|
- map.put("name", names[i]);
|
|
|
- map.put("total", random.nextInt(500) + 500);
|
|
|
- map.put("error", random.nextInt(20));
|
|
|
+ map.put("name", vo.getModelName());
|
|
|
+ map.put("total", vo.getAccess());
|
|
|
+ map.put("error", vo.getNum());
|
|
|
result.add(map);
|
|
|
- }
|
|
|
+ });
|
|
|
+// String[] names = {"市场出清/mysql", "市场出清/redis", "市场出清/user", "市场服务/auth", "市场结算/mysql"};
|
|
|
+// Random random = new Random();
|
|
|
+// for (int i = 0; i < names.length; i++) {
|
|
|
+// Map<String, Object> map = new HashMap<>(16);
|
|
|
+// map.put("name", names[i]);
|
|
|
+// map.put("total", random.nextInt(500) + 500);
|
|
|
+// map.put("error", random.nextInt(20));
|
|
|
+// result.add(map);
|
|
|
+// }
|
|
|
return success(result);
|
|
|
}
|
|
|
|
|
@@ -167,16 +202,32 @@ public class IndexController extends BaseController {
|
|
|
@GetMapping("/obj/alarm")
|
|
|
public AjaxResult alarm() {
|
|
|
Map<String, Object> result = new HashMap<>();
|
|
|
- String[] names = {"市场服务node-1", "市场出清后台应用", "市场合规cluster1", "市场合规cluster2", "信息发布cluster1"};
|
|
|
- result.put("curr", new Random().nextInt(50) + 1);
|
|
|
- Random random = new Random();
|
|
|
- List<Map<String, Object>> list = new ArrayList<>();
|
|
|
- for (int i = 0; i < names.length; i++) {
|
|
|
+ LocalDateTime endTime = LocalDateTime.now();
|
|
|
+ LocalDateTime beginTime = endTime.minusDays(7);
|
|
|
+ String start = beginTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
|
|
+ String end = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
|
|
+ List<BizTypeVO> list = alarmRecordService.listBizObj(null, start, end);
|
|
|
+ List<Map<String, Object>> alarmList = new ArrayList<>();
|
|
|
+
|
|
|
+ list.forEach(vo -> {
|
|
|
Map<String, Object> map = new HashMap<>(16);
|
|
|
- map.put("name", names[i]);
|
|
|
- map.put("alarm", random.nextInt(500) + 500);
|
|
|
- list.add(map);
|
|
|
- }
|
|
|
+ map.put("name", vo.getName());
|
|
|
+ map.put("alarm", vo.getNum());
|
|
|
+ alarmList.add(map);
|
|
|
+ });
|
|
|
+
|
|
|
+ AlarmRecord q = new AlarmRecord();
|
|
|
+ q.setAlarmType("1");
|
|
|
+ List<AlarmRecord> al = alarmRecordService.selectAlarmRecordList(q);
|
|
|
+// String[] names = {"市场服务node-1", "市场出清后台应用", "市场合规cluster1", "市场合规cluster2", "信息发布cluster1"};
|
|
|
+ result.put("curr", al.size());
|
|
|
+// Random random = new Random();
|
|
|
+// for (int i = 0; i < names.length; i++) {
|
|
|
+// Map<String, Object> map = new HashMap<>(16);
|
|
|
+// map.put("name", names[i]);
|
|
|
+// map.put("alarm", random.nextInt(500) + 500);
|
|
|
+// list.add(map);
|
|
|
+// }
|
|
|
result.put("data", list);
|
|
|
return success(result);
|
|
|
}
|
|
@@ -204,19 +255,35 @@ public class IndexController extends BaseController {
|
|
|
@GetMapping("/ms/trend/{objMetricsId}")
|
|
|
public AjaxResult msChat(@PathVariable("objMetricsId") Long objMetricsId) {
|
|
|
List<Map<String, Object>> trendList = new ArrayList<>();
|
|
|
- LocalDateTime ed = LocalDateTime.now();
|
|
|
- LocalDateTime st = ed.minusDays(8);
|
|
|
- Random r = new Random();
|
|
|
- DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
- do {
|
|
|
+
|
|
|
+ LocalDateTime endTime = LocalDateTime.now();
|
|
|
+ LocalDateTime beginTime = endTime.minusDays(7);
|
|
|
+ Map<String, Object> params = new HashMap<>(16);
|
|
|
+ params.put("beginTime", beginTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
|
|
|
+ params.put("endTime", endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
|
|
|
+ BizObjMetricsData q = new BizObjMetricsData();
|
|
|
+ q.setObjMetricsId(objMetricsId);
|
|
|
+ q.setParams(params);
|
|
|
+ List<BizObjMetricsData> list = dataService.selectBizObjMetricsDataList(q);
|
|
|
+ list.forEach(data -> {
|
|
|
Map<String, Object> map = new HashMap<>(16);
|
|
|
- long time = st.toEpochSecond(ZoneOffset.ofHours(8)) * 1000;
|
|
|
- map.put("time", time);
|
|
|
- float f = r.nextFloat() * 100;
|
|
|
- map.put("value", Float.parseFloat(df.format(f)));
|
|
|
- st = st.plusDays(1);
|
|
|
+ map.put("time", data.getCreateTime());
|
|
|
+ map.put("value", data.getdValue().floatValue());
|
|
|
trendList.add(map);
|
|
|
- } while (!st.isAfter(ed));
|
|
|
+ });
|
|
|
+// LocalDateTime ed = LocalDateTime.now();
|
|
|
+// LocalDateTime st = ed.minusDays(8);
|
|
|
+// Random r = new Random();
|
|
|
+// DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
+// do {
|
|
|
+// Map<String, Object> map = new HashMap<>(16);
|
|
|
+// long time = st.toEpochSecond(ZoneOffset.ofHours(8)) * 1000;
|
|
|
+// map.put("time", time);
|
|
|
+// float f = r.nextFloat() * 100;
|
|
|
+// map.put("value", Float.parseFloat(df.format(f)));
|
|
|
+// st = st.plusDays(1);
|
|
|
+// trendList.add(map);
|
|
|
+// } while (!st.isAfter(ed));
|
|
|
return AjaxResult.success(trendList);
|
|
|
}
|
|
|
|