fengxiang
2018-05-10 f9abb9474b09cf37ac4bbd6a65ea6229ebc06214
src/main/java/com/moral/controller/ScreenController.java
@@ -17,6 +17,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import com.moral.entity.alarm.AlarmConfig;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.log4j.Logger;
@@ -55,7 +56,7 @@
import com.moral.entity.alarm.AlarmSensorLevel;
import com.moral.service.AccountService;
import com.moral.service.AlarmConfigService;
import com.moral.service.AlarmService;
import com.moral.service.AlarmDailyService;
import com.moral.service.AreaService;
import com.moral.service.DeviceService;
import com.moral.service.HistoryMinutelyService;
@@ -113,7 +114,7 @@
   private String levelKey = "alarm_";
   @Resource
   private AlarmService alarmService;
   private AlarmDailyService alarmDailyService;
   /**
    * Screen login. 大屏登录
    * 
@@ -262,7 +263,7 @@
    * 大屏程序在线升级配置读取
    *********************************************/
   private String fileName = "Version.xml";
   private String ip = "121.40.92.176";
   private String ip = "47.96.19.115";
   private String userName = "ftp_user";
   private String userPwd = "qwer1234";
   private int port = 21;
@@ -276,8 +277,9 @@
         ftpClient.connect(ip, port);
         ftpClient.login(userName, userPwd);
         ftpClient.changeWorkingDirectory(path);
         //ftpClient.enterRemotePassiveMode();
         ftpClient.enterLocalPassiveMode();
         //ftpClient.enterLocalActiveMode();
         InputStream ins = ftpClient.retrieveFileStream(fileName);
         BufferedReader reader = new BufferedReader(new InputStreamReader(ins,"utf-8"));
         String line;
@@ -295,6 +297,19 @@
            ftpClient.logout();
            ftpClient.disconnect();
         }
//         String urlStr = "http://www.7drlb.com/apps/Version.xml";
//         URL realUrl = new URL(urlStr);
//         URLConnection connection = realUrl.openConnection();
//         connection.connect();
//         StringBuffer result = new StringBuffer();
//         BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
//         String line;
//         while ((line = in.readLine()) != null) {
//            result.append(line);
//         }
//         String content = result.toString();
         SAXReader saxReader = new SAXReader();
         Document document = saxReader.read(new InputSource(new ByteArrayInputStream(content.getBytes("utf-8"))));
         Element root = document.getRootElement();
@@ -306,6 +321,13 @@
      }
      return version;
   }
   public static void main(String[] args) {
      ScreenController sc = new ScreenController();
      Version a = sc.index();
      System.out.println(a.getVer());
   }
   /**
    * 地图接口
    * 开始
@@ -469,8 +491,44 @@
            parameters.remove("organizationId");
         }
      }
      Map pieData = alarmService.getPieData(parameters);
      Map pieData = alarmDailyService.getPieData(parameters);
      List<Map<String, Object>> list = (List<Map<String, Object>>) pieData.get(sensorKey);
      return new ResultBean<List<Map<String, Object>>>(list);
   }
   /**
    * 获取报警阀值
    * @param mpid
    * @return
    */
   @GetMapping("getalevels")
   public ResultBean<Map<String,AlarmSensorLevel>> getAlarmLevelByMonitorPointId(int mpid){
      AlarmConfig alarmConfig = alarmConfigService.queryByMonitorPointId(mpid).get();
        Map<String,AlarmSensorLevel> alarmSensorLevelMap = alarmConfig.getValue().getAlarmLevels();
        // 当前非取默认值,未设值将用默认值覆盖
        if(alarmConfig.getId()!=null){
            AlarmConfigValue defaultAlarmValue = alarmConfigService.getDefaultAlarmConfigValue();
            Map<String,AlarmSensorLevel> defaultSensorLevelMap = defaultAlarmValue.getAlarmLevels();
            Map<String,AlarmSensorLevel> alarmSensorLevelMapNotZO = alarmSensorLevelMap.entrySet().stream().collect(
                    HashMap::new,
                    (map,entry) -> {
                        AlarmSensorLevel alarmSensorLevel = entry.getValue();
                        if(alarmSensorLevel.isEnable()||alarmSensorLevel.isDegressEnable()){
                            map.put(entry.getKey(),entry.getValue());
                        }
                    },
                    (oMap,nMap) -> {
                        oMap.putAll(nMap);
                    }
            );
            // 已设置的选项覆盖默认选项
            defaultSensorLevelMap.putAll(alarmSensorLevelMapNotZO);
            alarmSensorLevelMap = defaultSensorLevelMap;
        }
      ResultBean<Map<String,AlarmSensorLevel>> resultBean = new ResultBean();
      resultBean.setCode(ResultBean.SUCCESS);
      resultBean.setData(alarmSensorLevelMap);
      return resultBean;
   }
}