From ac721d301cb218f08244009f7953db45028ee0e6 Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Sat, 10 Oct 2020 11:05:00 +0800
Subject: [PATCH] update
---
src/main/java/com/moral/controller/ScreenController.java | 230 ++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 160 insertions(+), 70 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index cbdb6e6..5078ce8 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -34,26 +34,7 @@
import com.moral.entity.alarm.AlarmSensorLevel;
import com.moral.entity.charts.DataSortCondition;
import com.moral.entity.layout.RealTimeDeviceLayout;
-import com.moral.service.AccountService;
-import com.moral.service.AlarmConfigService;
-import com.moral.service.AlarmDailyService;
-import com.moral.service.AreaService;
-import com.moral.service.DeviceService;
-import com.moral.service.DeviceVersionService;
-import com.moral.service.DictionaryDataService;
-import com.moral.service.HangzhouAqiService;
-import com.moral.service.HistoryDailyService;
-import com.moral.service.HistoryHourlyService;
-import com.moral.service.HistoryMinutelyService;
-import com.moral.service.HistoryService;
-import com.moral.service.MachineActivateService;
-import com.moral.service.MonitorPointService;
-import com.moral.service.OrganizationLayoutService;
-import com.moral.service.OrganizationService;
-import com.moral.service.QualityDailyService;
-import com.moral.service.SensorService;
-import com.moral.service.SensorUnitService;
-import com.moral.service.WeatherService;
+import com.moral.service.*;
import com.moral.util.*;
import com.rabbitmq.client.*;
@@ -88,9 +69,9 @@
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import org.xml.sax.InputSource;
-
import static com.moral.common.util.ResourceUtil.getValue;
import static com.moral.common.util.WebUtils.getParametersStartingWith;
+import static java.util.Calendar.*;
/**
* The Class ScreenController.������������
@@ -115,6 +96,9 @@
MonitorPointService monitorPointService;
@Resource
DeviceVersionService deviceVersionService;
+
+ /* @Resource
+ HistorySpecialService historySpecialService;*/
/**
* The screen service.
@@ -174,6 +158,10 @@
@Resource
private QualityDailyService qualityDailyService;
+
+ @Resource
+ private DeviceRoadService deviceRoadService;
+
/**
* Screen login. ������������
@@ -690,28 +678,43 @@
return new ResultBean<List<MonitorPoint>>(monitorPoints);
}
+
+ /*
+ * ���������monitorPoint=368&mac=p5dnd7a0392018&sensorKey=e92&time=2020-08-11
+ * ���������������������������
+ * */
@GetMapping("report_avg_datas")
public ResultBean<List<Map<String, Object>>> getMonitorPointOrDeviceAvgData(HttpServletRequest request)
throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
+ //������������������������������������������������
ParameterUtils.getTimeType4Time(parameters);
- parameters.put("monitorPointId", parameters.remove("monitorPoint"));
- Object sensorKey = parameters.remove("sensorKey");
- parameters.put("sensors", Arrays.asList(sensorKey));
- // monitorPointService.isCompensateCalculation(parameters);
- List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
-
- for (Map<String, Object> map : list) {
- String time = map.get("time").toString();
- time = time.substring(time.length() - 2);
- map.put("time", Integer.valueOf(time));
- if(parameters.get("type").equals("day")){
- map.put("time", Integer.valueOf(time)+1);
+ String time1= (String) parameters.get("time");
+ String mac1= (String) parameters.get("mac");
+ List<Map<String, Object>> list=null;
+ if (mac1!=null && mac1.equals("p5dnd7a0392018") && time1.substring(0,4).equals("2019") ){
+ list=null;
+ }else {
+ parameters.put("monitorPointId", parameters.remove("monitorPoint"));
+ Object sensorKey = parameters.remove("sensorKey");
+ parameters.put("sensors", Arrays.asList(sensorKey));
+ // monitorPointService.isCompensateCalculation(parameters);
+ list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
+ for (Map<String, Object> map : list) {
+ String time = map.get("time").toString();
+ time = time.substring(time.length() - 2);
+ map.put("time", Integer.valueOf(time));
+ if (parameters.get("type").equals("day")) {
+ map.put("time", Integer.valueOf(time) + 1);
+ }
+ map.put("value", map.remove(sensorKey));
}
- map.put("value", map.remove(sensorKey));
}
return new ResultBean<List<Map<String, Object>>>(list);
}
+
+
+
@GetMapping("report_alarm_datas")
public ResultBean<List<Map<String, Object>>> getAlarmData(HttpServletRequest request) throws Exception {
@@ -1057,6 +1060,13 @@
throws Exception {
Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsAndDevicesByRegion(parameters);
+ //������������monitorPoint������������������device.getName()������������
+ for (MonitorPoint monitorPoint : monitorPoints) {
+ List<Device> deviceList=monitorPoint.getDevices();
+ deviceList.sort((Device o1, Device o2) -> {
+ return o1.getName().compareTo(o2.getName());
+ });
+ }
return new ResultBean<List<MonitorPoint>>(monitorPoints);
}
@@ -1499,13 +1509,15 @@
String startHour = st.substring(st.lastIndexOf("-") + 1);
String startTime = startYearAndDay + " " + startHour + ":00:00";
String et = parameters.get("endTime").toString();
+ String endYearAndDay = et.substring(0, st.lastIndexOf("-"));
String endHour = et.substring(et.lastIndexOf("-") + 1);
- int endHourValue = Integer.valueOf(endHour);
+ String endTime=endYearAndDay + " " + endHour + ":00:00";
+ /* int endHourValue = Integer.valueOf(endHour);
int startHourValue = Integer.valueOf(startHour);
if (endHourValue <= startHourValue) {
endHourValue = startHourValue + 1;
}
- String endTime = startYearAndDay + " " + endHourValue + ":00:00";
+ String endTime = startYearAndDay + " " + endHourValue + ":00:00";*/
parameters.put("startTime", startTime);
parameters.put("endTime", endTime);
String mac = parameters.get("mac").toString();
@@ -1520,6 +1532,7 @@
params.put("sensorInfo", sensorList);
params.put("sensorsMap", sensorsMap);
String paramsJson = params.toJSONString();
+ //System.out.println(paramsJson);
model.addObject("carTrajectoryParams", paramsJson);
model.setViewName("cartrajectory");
return model;
@@ -1611,6 +1624,7 @@
@RequestMapping(value = "/newMap-page", method = RequestMethod.GET)
public ModelAndView newMap(ModelAndView model, @RequestParam("areaCode") long code,
@RequestParam("accountId") int accountId) {
+
Account account = accountService.getAccountById(accountId);
List<MonitorPoint> monitorPointList = monitorPointService.getMonitorPointListByAccountId(accountId);
String regionName = areaService.queryFullNameByCode(code);
@@ -1958,6 +1972,9 @@
if (mac!=null){
Device device=deviceService.byMacGetDevice(mac);
List list1= LatLngTransformation.Convert_BD09_To_GCJ02(device.getLatitude(),device.getLongitude());
+ if (device.getState()!=4+""){
+ devMap.put("state",device.getState());
+ }
devMap.put("lat",list1.get(1));
devMap.put("lng",list1.get(0));
devMap.put("monitorPointId",device.getMonitorPointId());
@@ -1975,48 +1992,50 @@
@GetMapping("/windAndDeviceData")
@ResponseBody
- public List windAndDeviceData() {
- String monitorPointId="539";
- Calendar c = Calendar.getInstance();//������������������������������������ ������������������������������
- int year = c.get(Calendar.YEAR);
- int month = c.get(Calendar.MONTH);
- String mon="";
- if (month+1<10){
- mon="0"+(month+1);
+ public List windAndDeviceData(String monitorPointId) {
+ Calendar calendar = Calendar.getInstance();
+ calendar.set(Calendar.MINUTE, (calendar.get(Calendar.MINUTE) - 2));
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ String time = df.format(calendar.getTime())+":00";
+ int year = calendar.get(Calendar.YEAR);
+ int month = calendar.get(Calendar.MONTH) + 1;
+ String mon;
+ if (month<10){
+ mon="0"+month;
}else {
- mon=(month+1)+"";
+ mon=""+month;
}
- int date = c.get(Calendar.DATE);
- String dt="";
- if(date<10){
- dt="0"+date;
- }else {
- dt=""+date;
- }
- int hour = c.get(Calendar.HOUR_OF_DAY);
- String hu="";
- if (hour<10){
- hu="0"+hour;
- }else {
- hu=""+hour;
- }
- int minute = c.get(Calendar.MINUTE);
- String mu="";
- if (minute<10){
- mu="0"+minute;
- }else {
- mu=""+minute;
- }
- String time=year + "-" + mon + "-" + dt + " " +hu + ":" +mu + ":" + "00";
String table="history_minutely_"+year+mon;
List list=deviceService.byMonitorIdGetDeviceAndWind(monitorPointId,time,table);
return list;
}
+
+ //������������
+ @GetMapping("/windAndDeviceDataByArea")
+ @ResponseBody
+ public List windAndDeviceDataByArea(String monitorPointId) {
+ Calendar calendar = Calendar.getInstance();
+ calendar.set(Calendar.MINUTE, (calendar.get(Calendar.MINUTE) - 2));
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ String time = df.format(calendar.getTime())+":00";
+ int year = calendar.get(Calendar.YEAR);
+ int month = calendar.get(Calendar.MONTH) + 1;
+ String mon;
+ if (month<10){
+ mon="0"+month;
+ }else {
+ mon=""+month;
+ }
+ String table="history_minutely_"+year+mon;
+ List list=deviceService.byMonitorIdGetDeviceAndWindSpecial(monitorPointId,time,table);
+ return list;
+ }
+
@GetMapping("forecastO3")
@ApiOperation(value = "���������������������������", notes = "���������������������������")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "monitorPointId", defaultValue = "1", value = "���������id", required = true, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "time", value = "������(���������2020-03-19)", required = true, paramType = "query", dataType = "String")})
+ @ApiImplicitParam(name = "time", value = "���6���(���������2020-03-19)", required = true, paramType = "query", dataType = "String")})
public ResultBean<List<Map<String, Object>>> getWeatherNextDayDataByRegion(HttpServletRequest request) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
List<Map<String, Object>> resultList = weatherService.getForecastAndReal(parameters);
@@ -2024,7 +2043,7 @@
}
@GetMapping("weatherData")
- @ApiOperation(value = "������city���������������������������", notes = "������city���������������������������")
+ @ApiOperation(value = "������city���������������������������������", notes = "������city���������������������������������")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "city", value = "���������", required = true, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "time", value = "������(���������2020-03-19)", required = true, paramType = "query", dataType = "String")})
@@ -2032,6 +2051,30 @@
Map<String, Object> parameters = getParametersStartingWith(request, null);
List<Map<String, Object>> weatherList = weatherService.getWeatherData(parameters);
return new ResultBean<List<Map<String, Object>>>(weatherList);
+ }
+
+ @GetMapping("weatherDataDay")
+ @ApiOperation(value = "������city���������������������", notes = "������city���������������������")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "city", value = "���������", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "time", value = "������(���������2020-03-19)", required = true, paramType = "query", dataType = "String")})
+ public ResultBean<List<Map<String, Object>>> getWeatherDataByDay(HttpServletRequest request) throws Exception {
+ Map<String, Object> parameters = getParametersStartingWith(request, null);
+ List<Map<String, Object>> weatherList = weatherService.getWeatherDataByDay(parameters);
+ return new ResultBean<List<Map<String, Object>>>(weatherList);
+ }
+
+ @GetMapping("monitorDeviceData")
+ @ApiOperation(value = "���������������5������������������������", notes = "���������������5������������������������")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "city", value = "���������", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "time", value = "������(���������2020-03-15)", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "type", value = "������(5���������m,������������h)", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "range", value = "������������������������(������������������m,���������a)", required = true, paramType = "query", dataType = "String")})
+ public ResultBean<List<Map<String, Object>>> get5MinutesOrHalfHour(HttpServletRequest request) throws Exception {
+ Map<String, Object> parameters = getParametersStartingWith(request, null);
+ List<Map<String, Object>> deviceData = historyMinutelyService.get5MinutesOrHalfHour(parameters);
+ return new ResultBean<List<Map<String, Object>>>(deviceData);
}
@PostMapping("updateForecastWeather")
@@ -2052,7 +2095,7 @@
String startTime = parameters.get("startTime").toString();
String endTime = parameters.get("endTime").toString();
//������������������������������
- Calendar calendar = Calendar.getInstance();
+ Calendar calendar = getInstance();
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
List<Map<String, Object>> list = new ArrayList();
Map device = deviceService.getAllFieldByMac(parameters);
@@ -2183,4 +2226,51 @@
return new ResultBean<List<Map<String, Object>>>(list);
}
+
+
+ @GetMapping("/contrastFactor")
+ @ApiOperation(value = "������������", notes = "������������")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "mac", value = "������mac", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "sensor", value = "������", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "time", value = "������(���������2020-03-19���20���21)", required = true, paramType = "query", dataType = "String")})
+ public ResultBean<List<Map<String, Object>>> contrastFactor(HttpServletRequest request) throws Exception {
+ Map<String, Object> parameters = getParametersStartingWith(request, null);
+ List list=historyHourlyService.getDataByMacAndTime(parameters);
+ //System.out.println(list);
+ return new ResultBean<List<Map<String, Object>>>(list);
+ }
+
+ @GetMapping("/getAlarm")
+ @ResponseBody
+ public List<DeviceRoad> getAlarm(@Param("windData") String windData,@Param("code") String code,@Param("mac") String mac,@Param("speedLevel")String speedLevel){
+ List<DeviceRoad> alarmData = deviceRoadService.getAlarmData(windData, code, mac, speedLevel);
+ return alarmData;
+}
+
+ @GetMapping("/lianxian")
+ @ApiOperation(value = "������", notes = "������" )
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "lonAndLat", value = "���������", required = true, paramType = "query", dataType = "String")})
+ public ModelAndView lianxian(HttpServletRequest request,ModelAndView model) throws Exception {
+ Map<String, Object> parameters = getParametersStartingWith(request, null);
+ String mac= (String) parameters.get("lonAndLat");
+ String[] ll= mac.split(",");
+
+ JSONObject params = new JSONObject();
+ params.put("ll",ll);
+ Double[] array= {116.885217,38.299148};
+ Double[] array1= {116.87061,38.322828};
+ Double[] array2= {116.855206,38.325162};
+ Double distance1=mapUtils.getDistance(Double.parseDouble(ll[0]),Double.parseDouble(ll[1]),116.885217,38.299148);
+ Double distance2=mapUtils.getDistance(Double.parseDouble(ll[0]),Double.parseDouble(ll[1]),116.87061,38.322828);
+ Double distance3=mapUtils.getDistance(Double.parseDouble(ll[0]),Double.parseDouble(ll[1]),116.855206,38.325162);
+
+ params.put("mt",distance1);
+ params.put("mt1",distance2);
+ params.put("mt2",distance3);
+ model.addObject("params", params);
+ model.setViewName("lianxian");
+ return model;
+ }
}
--
Gitblit v1.8.0