dao/src/main/java/com/sandu/ximon/dao/enums/DeviceRespStatusEnums.java
ÎļþÃû´Ó dao/src/main/java/com/sandu/ximon/dao/enums/IssueStatusEnums.java ÐÞ¸Ä @@ -1,11 +1,11 @@ package com.sandu.ximon.dao.enums; /** * ä¸åç¶ææä¸¾ç±» * ä¸åç¶æååºæä¸¾ç±» * * @author chenjiantian */ public enum IssueStatusEnums { public enum DeviceRespStatusEnums { /** * SUCCESS @@ -31,7 +31,7 @@ private final Integer code; IssueStatusEnums(Integer code) { DeviceRespStatusEnums(Integer code) { this.code = code; } ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java
@@ -3,6 +3,7 @@ import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.LightControlParam; import com.sandu.ximon.admin.param.LightRemarkParam; import com.sandu.ximon.admin.service.LightReportDataService; import com.sandu.ximon.admin.service.LightReportErrorService; @@ -64,4 +65,11 @@ List<LightReportErrorBo> list = lightReportErrorService.listReportError(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword); return ResponseUtil.successPage(list); } // 亮度æ§å¶ @PostMapping("/control") public ResponseVO<Object> controlBrightness(@RequestBody @Validated LightControlParam param) { Integer status = lightService.controlBrightness(param); return ResponseUtil.success(status); } } ximon-admin/src/main/java/com/sandu/ximon/admin/param/LightControlParam.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,25 @@ package com.sandu.ximon.admin.param; import lombok.Data; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.*; import java.util.List; /** * @author chenjiantian * 亮度æ§å¶ */ @Data public class LightControlParam { @NotNull(message = "è·¯ç¯idä¸è½ä¸ºç©º") private Long lightId; @NotNull(message = "亮度ä¸è½ä¸ºç©º") @Min(value = 0,message = "亮度æå°ä¸º0") @Max(value = 100,message = "亮度æå¤§ä¸º100") private Integer brightness; } ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
@@ -1,6 +1,7 @@ package com.sandu.ximon.admin.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.HexUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; @@ -8,6 +9,13 @@ import com.sandu.common.redis.RedisService; import com.sandu.common.service.impl.BaseServiceImpl; import com.sandu.ximon.admin.dto.LightDataDto; import com.sandu.ximon.admin.manager.iot.frame.A5Frame; import com.sandu.ximon.admin.manager.iot.frame.inner.request.A5LightBrightnessReqInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.response.A5LightBrightnessRespInnerFrame; import com.sandu.ximon.admin.manager.iot.rrpc.dto.WrapResponseCommonFrame; import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5OrderEnum; import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService; import com.sandu.ximon.admin.param.LightControlParam; import com.sandu.ximon.admin.param.LightRemarkParam; import com.sandu.ximon.admin.redis.LightKey; import com.sandu.ximon.admin.security.SecurityUtils; @@ -93,4 +101,25 @@ update.setRemark(param.getRemark()); return updateById(update); } /** * åç¯äº®åº¦æ§å¶ * @param param * @return com.sandu.ximon.dao.enums.DeviceRespStatusEnums */ public Integer controlBrightness(LightControlParam param) { Light light = getById(param.getLightId()); if(light == null){ throw new BusinessException("æ¾ä¸å°è·¯ç¯"); } A5LightBrightnessReqInnerFrame lightControlFrame = new A5LightBrightnessReqInnerFrame(param.getBrightness()); A5Frame a5Frame = new A5Frame(A5OrderEnum.REQUEST_LIGHT_DATA.getCode(), lightControlFrame); WrapResponseCommonFrame<A5LightBrightnessRespInnerFrame> frame = MainBoardInvokeSyncService.getInstance() .sendRRPC(light.getDeviceCode(), a5Frame, A5LightBrightnessRespInnerFrame.class); if(frame == null){ throw new BusinessException("åé请æ±å¤±è´¥"); } String responseStatus = frame.getResponseInnerFrame().getResponseStatus(); return HexUtil.hexToInt(responseStatus); } } ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java
@@ -30,7 +30,7 @@ import com.sandu.ximon.dao.domain.LightTask; import com.sandu.ximon.dao.domain.LightTaskPoleRelation; import com.sandu.ximon.dao.domain.Pole; import com.sandu.ximon.dao.enums.IssueStatusEnums; import com.sandu.ximon.dao.enums.DeviceRespStatusEnums; import com.sandu.ximon.dao.mapper.LightTaskMapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -54,11 +54,8 @@ @AllArgsConstructor public class LightTaskService extends BaseServiceImpl<LightTaskMapper, LightTask> { // private final LightTaskQuartzService lightTaskQuartzService; private final PoleService poleService; private final LightTaskPoleRelationService lightTaskPoleRelationService; /** * æ°å¢è·¯ç¯ä»»å¡ @@ -84,10 +81,6 @@ if (!save(lightTask)) { throw new BusinessException("ä¿åè·¯ç¯ä»»å¡å¤±è´¥"); } // List<LightTaskQuartz> list = lightTaskQuartzService.addLightTaskQuartz(lightTask); // if (CollectionUtil.isEmpty(list)) { // throw new BusinessException("æ·»å 宿¶ä»»å¡å¤±è´¥"); // } List<Long> poleIdList = param.getPoleIdList(); if (CollectionUtil.isNotEmpty(poleIdList)) { @@ -129,11 +122,6 @@ if (!updateById(lightTask)) { throw new BusinessException("ç¼è¾ä»»å¡å¤±è´¥"); } // List<LightTaskQuartz> list = lightTaskQuartzService.updateLightTaskQuartz(lightTask); // if (CollectionUtil.isEmpty(list)) { // throw new BusinessException("ç¼è¾å®æ¶ä»»å¡å¤±è´¥"); // } List<Long> poleIdList = param.getPoleIdList(); if (CollectionUtil.isNotEmpty(poleIdList)) { @@ -192,7 +180,6 @@ return page; } // æ¯ä¸ªè·¯ç¯åéæ§å¶å¸§ è¿åå ³èå表 private List<LightTaskPoleRelation> sendControllerFrame(LightTask lightTask, List<Long> poleIdList,String framePayload) { List<LightTaskPoleRelation> lightTaskPoleRelationList = new ArrayList<>(); @@ -210,7 +197,7 @@ lightTaskPoleRelation.setPoleId(pole.getId()); lightTaskPoleRelation.setTaskId(lightTask.getTaskId()); if (a5LightTimerRespInnerFrame == null) { lightTaskPoleRelation.setIssueStatus(IssueStatusEnums.OTHER_ERROR.getCode()); lightTaskPoleRelation.setIssueStatus(DeviceRespStatusEnums.OTHER_ERROR.getCode()); } else { lightTaskPoleRelation.setIssueStatus(HexUtil.hexToInt(a5LightTimerRespInnerFrame.getResponseStatus())); } @@ -235,11 +222,6 @@ if (!lightTaskPoleRelationService.remove(Wrappers.lambdaQuery(LightTaskPoleRelation.class).in(LightTaskPoleRelation::getTaskId, taskIdList))) { throw new BusinessException("å é¤ç»å®ç¯æå¤±è´¥"); } // // å é¤å®æ¶å¨ // if (!lightTaskQuartzService.removeLightTaskQuartz(taskIdList)) { // throw new BusinessException("å é¤å®æ¶å¨å¤±è´¥"); // } return true; } @@ -307,8 +289,6 @@ /** * ä¸ååä¸ªç¯æçä»»å¡ * * @param param * @return */ public boolean issueLightTask(LightTaskIssueParam param) { LightTask lightTask = getById(param.getTaskId());