|  |  |  | 
|---|
|  |  |  | * @Date 2021/6/15 13:56 | 
|---|
|  |  |  | * @Version TODO | 
|---|
|  |  |  | **/ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ServerEndpoint("/singleDevice/{mac}") | 
|---|
|  |  |  | @Component | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Map<String, Object> regionAqi; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Map<String,Object> adjustFormula; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @OnOpen | 
|---|
|  |  |  | public void onOpen(Session session, @PathParam("mac") String mac) throws Exception { | 
|---|
|  |  |  | this.session = session; | 
|---|
|  |  |  | this.mac = mac; | 
|---|
|  |  |  | this.deviceAlarmInfo = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac); | 
|---|
|  |  |  | this.unitConversions = redisTemplate.opsForList().range(RedisConstants.UNIT_CONVERSION, 0, -1); | 
|---|
|  |  |  | this.adjustFormula = redisTemplate.opsForHash().entries("adjust_"+mac); | 
|---|
|  |  |  | //获取设备地区对应的AQI用于补偿使用 | 
|---|
|  |  |  | Map<String, Object> deviceInfo = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE, mac); | 
|---|
|  |  |  | Map<String, Object> monitorPointMap = (Map<String, Object>) deviceInfo.get("monitorPoint"); | 
|---|
|  |  |  | String areaCode = String.valueOf(monitorPointMap.get("areaCode")); | 
|---|
|  |  |  | String cityCode = String.valueOf(monitorPointMap.get("cityCode")); | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, areaCode); | 
|---|
|  |  |  | this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.CITY_AQI, areaCode); | 
|---|
|  |  |  | if (ObjectUtils.isEmpty(this.regionAqi)) | 
|---|
|  |  |  | this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, cityCode); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|