dao/src/main/java/com/sandu/ximon/dao/domain/PlayPlanNv.java
@@ -4,15 +4,14 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; import java.util.Map; import com.fasterxml.jackson.annotation.JsonIgnore; import com.sandu.common.mybatis.JsonIntegerArrayTypeHandler; import com.sandu.ximon.dao.bo.SchedulesDTO; import lombok.Data; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; /** * 播放计划表 @@ -103,12 +102,20 @@ private String endTime; /** * schedule实体 * 定时schedule实体 */ @JsonIgnore private String schedule; /** * 节目用schedules实体 */ @JsonIgnore private String schedules; /** * 创建时间 */ private LocalDateTime createTime; dao/src/main/java/com/sandu/ximon/dao/domain/PushToLed.java
@@ -13,6 +13,6 @@ @Data public class PushToLed implements Serializable { private String schedule; private String schedules; private String pages; } dao/src/main/resources/mapper/PlayPlanNvMapper.xml
@@ -20,6 +20,7 @@ <result property="startTime" column="start_time" jdbcType="VARCHAR"/> <result property="endTime" column="end_time" jdbcType="VARCHAR"/> <result property="schedule" column="schedule" jdbcType="VARCHAR"/> <result property="schedules" column="schedules" jdbcType="VARCHAR"/> <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> </resultMap> @@ -35,7 +36,7 @@ <select id="pushToLed" resultType="com.sandu.ximon.dao.domain.PushToLed" parameterType="java.lang.Long"> SELECT t1.SCHEDULE, t1.SCHEDULEs, t2.pages FROM play_plan_nv t1 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PlayPlanNvController.java
@@ -1,12 +1,12 @@ package com.sandu.ximon.admin.controller; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.security.annotation.AnonymousAccess; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.PlayPlanParam; import com.sandu.ximon.admin.security.PermissionConfig; @@ -14,16 +14,13 @@ import com.sandu.ximon.admin.service.PlayPlanNvService; import com.sandu.ximon.admin.vo.NovaPushResultVO; import com.sandu.ximon.dao.bo.SchedulesDTO; import com.sandu.ximon.dao.domain.Client; import com.sandu.ximon.dao.domain.PlayPlanNv; import com.sandu.ximon.dao.enums.AdministratorEnums; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; /** * @Author liuhaonan @@ -57,6 +54,7 @@ return ResponseUtil.success(playPlanNvService.deletePlan(plianIds)); } @AnonymousAccess @PostMapping(value = "/push/{plianId}", produces = "application/json;charset=UTF-8") public ResponseVO<Object> pushToLed(@PathVariable Long plianId, @RequestBody List<NovaPushResultVO> playerIds) { return ResponseUtil.success(playPlanNvService.pushToLed(plianId, playerIds)); ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
@@ -1,14 +1,11 @@ package com.sandu.ximon.admin.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.security.annotation.AnonymousAccess; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.VnnoxParam; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.admin.service.LedPlayerEntityService; import com.sandu.ximon.admin.service.PoleBindingService; import com.sandu.ximon.admin.service.PoleService; @@ -17,10 +14,7 @@ import com.sandu.ximon.admin.utils.response.VnnoxResult; import com.sandu.ximon.dao.domain.LedPlayerEntity; import com.sandu.ximon.dao.domain.LedV2RegisterResultEntity; import com.sandu.ximon.dao.domain.PoleBinding; import com.sandu.ximon.dao.enums.AdministratorEnums; import com.sandu.ximon.dao.enums.MenuEnum; import com.sun.javafx.collections.MappingChange; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -82,6 +76,7 @@ /** * 同步播放 */ @AnonymousAccess @PostMapping("/syncPlay") public ResponseVO<Object> syncPlay(@RequestBody Map map) { List playIdlist = (List)map.get("playIdlist"); @@ -93,6 +88,7 @@ /** * ntp对时 */ @AnonymousAccess @PostMapping("/ntp") public ResponseVO<Object> ntp(@RequestBody Map map) { boolean enable = (boolean)map.get("enable"); ximon-admin/src/main/java/com/sandu/ximon/admin/dto/nova/PlayerProgram.java
@@ -1,7 +1,6 @@ package com.sandu.ximon.admin.dto.nova; import com.sandu.ximon.admin.config.VnnoxConstant; import com.sandu.ximon.admin.dto.SchedulesDTO; import com.sandu.ximon.admin.utils.request.VnnoxRequest; import lombok.Data; @@ -17,8 +16,7 @@ // 需要处理的播放器ID集合,最多支持100个播放器同时处理 private List<String> playerIds; // 播放时间排期,如果为空,会全天24小时循环播放 // private List<SchedulesDTO> schedules; private List<SchedulesDTO> schedules; private Map schedules; // 需要播放的页面内容集合 private List<Map<String,Object>> pages ; // 节目下载进度通知接口,会通过此接口将节目的下载进度发给客户,接口的响应时间不能超过3s ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
@@ -660,7 +660,7 @@ BigDecimal totalTime = (hour.add(min)); BigDecimal energySaving = BigDecimal.valueOf((100 - v1.getBrightness())).divide(BigDecimal.valueOf(100)).multiply(totalTime).divide(BigDecimal.valueOf(24), 2); BigDecimal energySaving = BigDecimal.valueOf((100 - v1.getBrightness())).divide(BigDecimal.valueOf(100)).multiply(totalTime).divide(BigDecimal.valueOf(24)); System.out.println(energySaving); return energySaving; } ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlayPlanNvService.java
@@ -103,7 +103,8 @@ schedulesDTOS.add(openDto); } playPlan.setSchedule(JSON.toJSONString(schedulesDTOS)); playPlan.setSchedule(JSON.toJSONString(playPlanParam.getSchedule())); playPlan.setSchedules(JSON.toJSONString(schedulesDTOS)); playPlan.setStartTime(playPlanParam.getStartTime()); playPlan.setEndTime(playPlanParam.getEndTime()); // BeanUtils.copyProperties(playPlanParam, playPlan); @@ -154,24 +155,23 @@ program.setPlayerIds(playerIds); System.out.println(pushToLed.getPages()); //获取节目实体 program.setPages(JSON.parseObject(pushToLed.getPages(), List.class)); // // test test = JSON.parseObject(pushToLed.getSchedule(), test.class); // // SchedulesDTO schedulesDTO = new SchedulesDTO(); // schedulesDTO.setExecTime(A.get); program.setSchedules((JSON.parseArray(pushToLed.getSchedule(), SchedulesDTO.class))); //获取节目定时实体 program.setSchedules((JSON.parseObject(pushToLed.getSchedules(), Map.class))); //获取定时开关屏幕 // program.setSchedules((JSON.parseArray(pushToLed.getSchedule(), SchedulesDTO.class))); // Map map = JSON.parseObject(pushToLed.getSchedule(), Map.class); program.setNoticeUrl(VnnoxConstant.NOTIFY_URL); VnnoxResultResponse vnnoxResultResponse = vnnoxProgramAPIUtil.timeProgram(program); // VnnoxResultResponse vnnoxResultResponse = vnnoxProgramAPIUtil.timeProgram(program); VnnoxResultResponse vnnoxResultResponse = vnnoxProgramAPIUtil.normalProgram(program); VnnoxResult vnnoxResult = vnnoxAPIUtil.volChange(playerIds, Integer.valueOf(one.getVolume()).intValue()); // VnnoxResultResponse vnnoxResultResponse = vnnoxProgramAPIUtil.normalProgram(push); List<String> success = new ArrayList<>(); List<String> fail = new ArrayList<>(); if (vnnoxResultResponse.getData() != null) { @@ -201,7 +201,6 @@ return result; // return program; } /** ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java
@@ -39,6 +39,19 @@ return JSON.parseObject(result,VnnoxResultResponse.class); } public VnnoxResultResponse normalProgram(PlayerProgram program) { String result = VnnoxRequestUtil.PostWithHeader( VnnoxUrl.getUrl(VnnoxUrl.NORMAL_PROGRAM), program.toJson(), new CommonHeader(CommonHeader.JSON, true) ); System.out.println(program.toJson()); LogUtils.error("节目播放response:"+result); return JSON.parseObject(result,VnnoxResultResponse.class); } /** * 定时节目播放 * @param program