From 3cf84aa99a0bb5acddf63eeea9d5d84810105c1e Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Mon, 24 Jan 2022 10:12:19 +0800
Subject: [PATCH] 添加边界接口修改
---
screen-api/src/main/java/com/moral/api/controller/ChartController.java | 184 +++++++++++++++++++++++++++++++++++++++++----
1 files changed, 167 insertions(+), 17 deletions(-)
diff --git a/screen-api/src/main/java/com/moral/api/controller/ChartController.java b/screen-api/src/main/java/com/moral/api/controller/ChartController.java
index b0a3b75..90b6611 100644
--- a/screen-api/src/main/java/com/moral/api/controller/ChartController.java
+++ b/screen-api/src/main/java/com/moral/api/controller/ChartController.java
@@ -1,11 +1,15 @@
package com.moral.api.controller;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.moral.api.entity.Organization;
+import com.moral.api.entity.ServicesScope;
import com.moral.api.mapper.OrganizationMapper;
import com.moral.api.service.HistoryDailyService;
import com.moral.api.service.HistoryHourlyService;
import com.moral.api.service.HistoryMonthlyService;
+import com.moral.api.service.ServicesScopeService;
+import com.moral.constant.Constants;
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import com.moral.util.DateUtils;
@@ -44,6 +48,9 @@
@Resource
private HistoryMonthlyService historyMonthlyService;
+
+ @Resource
+ private ServicesScopeService servicesScopeService;
@RequestMapping(value = "getThermodynamicDiagramDataByCondition", method = RequestMethod.GET)
@ResponseBody
@@ -135,39 +142,182 @@
return ResultMessage.ok(resultMap);
}
+ @RequestMapping(value = "getThermodynamicDiagramDataByConditionV2", method = RequestMethod.GET)
+ @ResponseBody
+ public ResultMessage getThermodynamicDiagramDataByConditionV2(HttpServletRequest request) throws ParseException {
+ Map<String, Object> parameters = WebUtils.getParametersStartingWith(request,null);
+ Object servicesScopeId = parameters.get("servicesScopeId");
+ Object sensorCode = parameters.get("sensor_code");
+ Object type = parameters.get("type");
+ if (ObjectUtils.isEmpty(servicesScopeId) || ObjectUtils.isEmpty(sensorCode) || ObjectUtils.isEmpty(type)){
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ QueryWrapper<ServicesScope> servicesScopeQueryWrapper = new QueryWrapper<>();
+ servicesScopeQueryWrapper.eq("is_delete",Constants.NOT_DELETE);
+ servicesScopeQueryWrapper.eq("id",servicesScopeId);
+ ServicesScope servicesScope = servicesScopeService.getOne(servicesScopeQueryWrapper);
+ if (ObjectUtils.isEmpty(servicesScope)){
+ return ResultMessage.fail(ResponseCodeEnum.ORGANIZATION_NOT_EXIST.getCode(), ResponseCodeEnum.ORGANIZATION_NOT_EXIST.getMsg());
+ }
+ Map<String, Object> resultMap = new HashMap<>();
+ List<Map<String,Object>> resultList = new ArrayList<>();
+ if (type.equals("hourly")){
+ Object time = parameters.get("time");
+ if (ObjectUtils.isEmpty(time)){
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ resultMap = historyHourlyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeV2(parameters);
+ return ResultMessage.ok(resultMap);
+ }
+ if (type.equals("daily")){
+ Object time = parameters.get("time");
+ if (ObjectUtils.isEmpty(time)){
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ resultMap = historyDailyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeV2(parameters);
+ return ResultMessage.ok(resultMap);
+ }
+ if (type.equals("monthly")){
+ Object time = parameters.get("time");
+ if (ObjectUtils.isEmpty(time)){
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ resultMap = historyMonthlyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeV2(parameters);
+ return ResultMessage.ok(resultMap);
+ }
+ if (type.equals("custom")){
+ String startTime = parameters.get("startTime").toString();
+ String endTime = parameters.get("endTime").toString();
+ if (ObjectUtils.isEmpty(startTime) || ObjectUtils.isEmpty(endTime)){
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ if (startTime.length() == 13){
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//24���������
+ long newTime1 = simpleDateFormat.parse(startTime+":00:00").getTime();
+ long newTime2 = simpleDateFormat.parse(endTime+":00:00").getTime();
+ Long result = newTime2 - newTime1; //���������������������������������
+ long nd = 1000 * 24 * 60 * 60;
+ long nh = 1000 * 60 * 60;
+ long nm = 1000 * 60;
+ long hour = result / nh; //������������������������
+ if (hour+1>12){
+ return ResultMessage.fail(-1, "������������������12������");
+ }
+ if (hour<0){
+ return ResultMessage.fail(ResponseCodeEnum.TIME_FORMAT_INVALID.getCode(), ResponseCodeEnum.TIME_FORMAT_INVALID.getMsg());
+ }
+ parameters.put("hour",hour);
+ resultList = historyHourlyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeslotV2(parameters);
+ return ResultMessage.ok(resultList);
+ }
+ if (startTime.length() == 10){
+ long days = DateUtils.getQuotByDays(startTime, endTime);
+ if (days+1>12){
+ return ResultMessage.fail(-1, "������������������12���");
+ }
+ parameters.put("days",days);
+ resultList = historyDailyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeSlotV2(parameters);
+ return ResultMessage.ok(resultList);
+ }
+ if (startTime.length() == 7){
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
+ Date satrtTimeDate = df.parse(startTime);
+ Date endTimeDate = df.parse(endTime);
+ long months = DateUtils.getMonth(satrtTimeDate,endTimeDate); //������������������������
+ if (months+1>12){
+ return ResultMessage.fail(-1, "������������������12���");
+ }
+ parameters.put("months",months);
+ resultList = historyMonthlyService.getThermodynamicDiagramDataByOrgIdSensorCodeTimeSlotV2(parameters);
+ return ResultMessage.ok(resultList);
+ }
+ }
+ return ResultMessage.ok(resultMap);
+ }
+
@RequestMapping(value = "returnDataTest", method = RequestMethod.GET)
@ResponseBody
public ResultMessage returnDataTest(HttpServletRequest request) throws ParseException {
List bigList = new ArrayList();
Map<String,Object> resultMap = new HashMap<>();
- List<Double> boundList = new ArrayList<>();
- boundList.add(120.70980239181193);
+ List<List> boundList = new ArrayList<>();
+ /*boundList.add(120.70980239181193);
boundList.add(31.329143000000002);
boundList.add(120.74077860818807);
- boundList.add(31.356963);
- resultMap.put("bound",boundList);
+ boundList.add(31.356963);*/
+ /*List<Double> boundList1 = new ArrayList<>();
+ List<Double> boundList2 = new ArrayList<>();
+ List<Double> boundList3 = new ArrayList<>();
+ List<Double> boundList4 = new ArrayList<>();
+ List<Double> boundList5 = new ArrayList<>();
+ List<Double> boundList6 = new ArrayList<>();
+ List<Double> boundList7 = new ArrayList<>();
+ List<Double> boundList8 = new ArrayList<>();
+ List<Double> boundList9 = new ArrayList<>();
+ boundList1.add(120.975221);
+ boundList1.add(31.413145);
+ boundList2.add(120.977021);
+ boundList2.add(31.411345);
+ boundList3.add(120.979174);
+ boundList3.add(31.333362);
+ boundList4.add(120.977374);
+ boundList4.add(31.331562);
+ boundList5.add(120.913768);
+ boundList5.add(31.347918);
+ boundList6.add(120.870665);
+ boundList6.add(31.341063);
+ boundList7.add(120.868865);
+ boundList7.add(31.342863);
+ boundList8.add(120.896371);
+ boundList8.add(31.409264);
+ boundList9.add(120.898171);
+ boundList9.add(31.411064);
+ List<List> boundList_middle = new ArrayList<>();
+ boundList_middle.add(boundList1);
+ boundList_middle.add(boundList2);
+ boundList_middle.add(boundList3);
+ boundList_middle.add(boundList4);
+ boundList_middle.add(boundList5);
+ boundList_middle.add(boundList6);
+ boundList_middle.add(boundList7);
+ boundList_middle.add(boundList8);
+ boundList_middle.add(boundList9);*/
+ String boundList_middle = "[[[120.975221,31.413145],[120.977021,31.411345],[120.979174,31.333362],[120.977374,31.331562],[120.913768,31.347918],[120.870665,31.341063],[120.868865,31.342863],[120.896371,31.409264],[120.898171,31.411064]]]";
+ List<String> boundList_middle2 = new ArrayList<>();
+ boundList_middle2.add(boundList_middle);
+ resultMap.put("bound",boundList_middle);
resultMap.put("time","2021-12-10 08:00:00");
List<Double> centerPointList = new ArrayList<>();
- centerPointList.add(120.72529050000001);
- centerPointList.add(31.343053);
+ centerPointList.add(120.934824838);
+ centerPointList.add(31.37834580);
resultMap.put("centerPoint",centerPointList);
List<Double> list1 = new ArrayList<>();
- list1.add(120.711611);
- list1.add(31.355163);
+ list1.add(120.975221);
+ list1.add(31.411345);
list1.add(1.0);
List<Double> list2 = new ArrayList<>();
- list2.add(120.726821);
- list2.add(31.342079);
+ list2.add(120.870665);
+ list2.add(31.342863);
list2.add(4.0);
List<Double> list3 = new ArrayList<>();
- list3.add(120.735515);
- list3.add(31.353261);
+ list3.add(120.898171);
+ list3.add(31.409264);
list3.add(2.0);
- List list123 = new ArrayList();
- list123.add(list1);
- list123.add(list3);
- list123.add(list2);
- resultMap.put("list",list123);
+ List<Double> list4 = new ArrayList<>();
+ list4.add(120.913768);
+ list4.add(31.349718);
+ list4.add(3.0);
+ List<Double> list5 = new ArrayList<>();
+ list5.add(120.977374);
+ list5.add(31.333362);
+ list5.add(2.0);
+ List list12345 = new ArrayList();
+ list12345.add(list1);
+ list12345.add(list2);
+ list12345.add(list3);
+ list12345.add(list4);
+ list12345.add(list5);
+ resultMap.put("list",list12345);
for (int i=0;i<10;i++){
resultMap.put("time","2021-12-10 0"+i+":00:00");
bigList.add(resultMap);
--
Gitblit v1.8.0