From 3bf4a89e8470abf09ca61db5a5e8e8e84f45455b Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 30 Sep 2020 14:12:56 +0800
Subject: [PATCH] 添加标识符

---
 src/main/java/com/moral/controller/ScreenController.java |  187 +++++++++++++++++++++++++++++-----------------
 1 files changed, 117 insertions(+), 70 deletions(-)

diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index a4d4a42..8ecf130 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -17,7 +17,6 @@
 import com.alibaba.fastjson.JSONArray;
 
 import com.alibaba.fastjson.JSONObject;
-import com.google.gson.Gson;
 import com.googlecode.aviator.AviatorEvaluator;
 import com.googlecode.aviator.Expression;
 import com.moral.common.bean.Constants;
@@ -35,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.*;
@@ -89,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.������������
@@ -116,6 +96,9 @@
     MonitorPointService monitorPointService;
     @Resource
     DeviceVersionService deviceVersionService;
+
+  /*  @Resource
+    HistorySpecialService historySpecialService;*/
 
     /**
      * The screen service.
@@ -175,6 +158,7 @@
 
     @Resource
     private QualityDailyService qualityDailyService;
+
 
     /**
      * Screen login. ������������
@@ -691,28 +675,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 {
@@ -1500,13 +1499,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();
@@ -1521,6 +1522,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;
@@ -1612,6 +1614,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);
@@ -1959,6 +1962,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());
@@ -1976,47 +1982,50 @@
 
     @GetMapping("/windAndDeviceData")
     @ResponseBody
-    public List windAndDeviceData(HttpServletRequest request, String monitorPointId) {
-        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 +2033,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 +2041,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 +2085,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 +2216,18 @@
         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);
+    }
 }

--
Gitblit v1.8.0