| | |
| | | import com.sandu.ximon.admin.utils.response.VnnoxResultResponse; |
| | | import com.sandu.ximon.admin.vo.NovaPushResultVO; |
| | | import com.sandu.ximon.admin.vo.NovaScreenShorUrlVO; |
| | | import com.sandu.ximon.admin.vo.NovaWeatherVO; |
| | | import com.sandu.ximon.dao.domain.LedPlayerEntity; |
| | | import com.sandu.ximon.dao.domain.LedPlayerInfoEntity; |
| | | import com.sandu.ximon.dao.domain.LedV2RegisterResultEntity; |
| | |
| | | VnnoxResult vnnoxResult = vnnoxAPIUtil.volChange(playerList.stream().map(item -> item.getPlayerId()).collect(Collectors.toList()), vol); |
| | | // 根据音量调整REDIS标识位 |
| | | for (String playerId : vnnoxResult.getSuccess()) { |
| | | redisUtils.set(VnnoxConstant.REDIS_VOL + playerId, vol,VnnoxConstant.STATUS_TIME); |
| | | redisUtils.set(VnnoxConstant.REDIS_VOL + playerId, vol, VnnoxConstant.STATUS_TIME); |
| | | } |
| | | List<String> success = vnnoxResult.getSuccess(); |
| | | List<String> fail = vnnoxResult.getFail(); |
| | |
| | | } |
| | | |
| | | |
| | | public VnnoxResult publishWaterData(String playerId, A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage poleSensorEntity) { |
| | | public VnnoxResult WaterData(String playerId, Long duration, A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage poleSensorEntity) { |
| | | List<String> playerIds = new ArrayList<>(); |
| | | playerIds.add(playerId); |
| | | AirDataProgram playerProgram = new AirDataProgram(); |
| | | NovaWeatherVO playerProgram = new NovaWeatherVO(); |
| | | playerProgram.setPlayerIds(playerIds); |
| | | PlayerPage playerPage = new PlayerPage(); |
| | | playerPage.setName("AirData page"); |
| | | List<PlayerWidget> widgetList = generateWaterAndSensorWidget(poleSensorEntity); |
| | | playerPage.setWidgets(widgetList); |
| | | List<PlayerPage> list = new ArrayList<>(); |
| | | list.add(playerPage); |
| | | playerProgram.setPages(list); |
| | | playerProgram.setNoticeUrl(VnnoxConstant.NOTIFY_URL); |
| | | /** |
| | | * 诺瓦推送大气数据 日志记录开始 |
| | | //// */ |
| | | // String content = "{诺瓦playerId:" + playerId + ",节目内容:" + JSON.toJSONString(playerProgram) + " }"; |
| | | // StoreOperationRecordsUtils.storeOperationData(null, null, "大气数据推送到诺瓦", content); |
| | | /** |
| | | * 诺瓦推送大气数据 日志记录结束 |
| | | */ |
| | | |
| | | return vnnoxProgramAPIUtil.normalProgram(playerProgram).getData(); |
| | | NovaWeatherVO.AttributeDTO attributeDTO = new NovaWeatherVO.AttributeDTO(); |
| | | attributeDTO.setDuration(duration); |
| | | playerProgram.setAttribute(attributeDTO); |
| | | List<NovaWeatherVO.PageDTO.WidgetsDTO> widgets = setWeather(duration, poleSensorEntity); |
| | | NovaWeatherVO.PageDTO page = new NovaWeatherVO.PageDTO(); |
| | | page.setWidgets(widgets); |
| | | playerProgram.setPage(page); |
| | | |
| | | return vnnoxProgramAPIUtil.emergencyProgram(playerProgram).getData(); |
| | | } |
| | | |
| | | |
| | | private List<PlayerWidget> generateWaterAndSensorWidget(A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage poleSensorEntity) { |
| | | private List<NovaWeatherVO.PageDTO.WidgetsDTO> setWeather(Long duration, A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage poleSensorEntity) { |
| | | |
| | | List widgetList = new ArrayList<>(); |
| | | List<NovaWeatherVO.PageDTO.WidgetsDTO> widgets = new ArrayList<>(); |
| | | List<String> list = new ArrayList<>(); |
| | | if (Objects.nonNull(poleSensorEntity)) { |
| | | list.add("环境监测:"); |
| | |
| | | list.add("pm10:" + poleSensorEntity.getPm10() + "μg/m³"); |
| | | list.add("甲醛:" + poleSensorEntity.getEch2o() + "μg/m³"); |
| | | list.add("CO2:" + poleSensorEntity.getCo2() + "ppm"); |
| | | } else { |
| | | list.add("大气设备不在线"); |
| | | list.add("目前是固定数据:"); |
| | | list.add("环境监测:"); |
| | | list.add("温度: 40°"); |
| | | list.add("湿度: 60%"); |
| | | list.add("pm25:0.58 μg/m³"); |
| | | list.add("pm10:0.58 μg/m³"); |
| | | list.add("甲醛:99.9 μg/m³"); |
| | | list.add("CO2:200 ppm"); |
| | | } |
| | | |
| | | widgetList.add(new PlayerWidget().generateScrollUpTextWidget("weather", 1, 100000L, list, "#FFFFFF", 15, new PlayerLayout("0%", "5%", "100%", "100%"))); |
| | | |
| | | return widgetList; |
| | | List<NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO> lines = new ArrayList<>(); |
| | | |
| | | list.forEach( |
| | | txt -> { |
| | | List<NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO.TextAttributesDTO> textAttributes = new ArrayList<>(); |
| | | |
| | | NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO linesDTO = new NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO(); |
| | | NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO.TextAttributesDTO textAttributesDTO = new NovaWeatherVO.PageDTO.WidgetsDTO.LinesDTO.TextAttributesDTO(); |
| | | textAttributesDTO.setContent(txt); |
| | | textAttributes.add(textAttributesDTO); |
| | | System.out.println(txt + "文本内容"); |
| | | linesDTO.setTextAttributes(textAttributes); |
| | | lines.add(linesDTO); |
| | | } |
| | | ); |
| | | |
| | | NovaWeatherVO.PageDTO.WidgetsDTO widgetsDTO = new NovaWeatherVO.PageDTO.WidgetsDTO(); |
| | | NovaWeatherVO.PageDTO.WidgetsDTO.ScrollAttributeDTO scrollAttribute = new NovaWeatherVO.PageDTO.WidgetsDTO.ScrollAttributeDTO(); |
| | | |
| | | NovaWeatherVO.PageDTO.WidgetsDTO.LayoutDTO layout = new NovaWeatherVO.PageDTO.WidgetsDTO.LayoutDTO(); |
| | | |
| | | widgetsDTO.setScrollAttribute(scrollAttribute); |
| | | widgetsDTO.setLayout(layout); |
| | | widgetsDTO.setLines(lines); |
| | | |
| | | widgetsDTO.setDuration(duration); |
| | | widgets.add(widgetsDTO); |
| | | System.out.println(lines + "播放内容"); |
| | | |
| | | return widgets; |
| | | } |
| | | |
| | | |