dao/src/main/java/com/sandu/ximon/dao/domain/AirEquipmentNongGeng.java
@@ -1,13 +1,12 @@ package com.sandu.ximon.dao.domain; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; import java.time.LocalDateTime; import java.util.Date; import lombok.Data; /** * @@ -28,7 +27,7 @@ private String mac; /** * 设å¤ç±»å AirNongGengEnums * 设å¤ç±»å 0常è§åæ°è±¡ç« 1è¾å°åæ°è±¡ç« 2å¤§æ°æ±¡æç©æ°è±¡ç« */ private String type; dao/src/main/java/com/sandu/ximon/dao/enums/MenuEnum.java
@@ -74,6 +74,7 @@ AIR_QUERYVERSION("æ¥è¯¢è½¯ç¡¬ä»¶çæ¬"), AIR_REBOOT("软éå¯"), AIR_DATA_UPDATE("æå¨æ´æ°å¤§æ°æ°æ®"), AIR_SET_TYPE("设置åè设å¤ç±»å"), BANNER_ADD("æ·»å 微信logo"), BANNER_UPDATE("ç¼è¾å¾®ä¿¡logo"), BANNER_DETAIL("è·å微信logo详æ "), @@ -232,10 +233,7 @@ C3_REFUND("å çµæ¡©é款"), CHARGE_UPDATE("ç¼è¾è´¹ç"), ORDER_LIST("订åå表"), CHARGE_LIST("è·åè´¹ç") ; CHARGE_LIST("è·åè´¹ç"); private final String code; ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AirEquipmentNongGengController.java
@@ -6,6 +6,7 @@ import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.service.AirEquipmentNongGengService; import com.sandu.ximon.dao.bo.AirEquipmentNongGengBo; import com.sandu.ximon.dao.domain.AirEquipmentNongGeng; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; @@ -75,10 +76,13 @@ * * @return */ public ResponseVO<Object> setAirEquipmentType() { @PostMapping("/setType") public ResponseVO<Object> setAirEquipmentType(@RequestBody AirEquipmentNongGeng param) { //åæ°ä½¿ç¨æä¸¾ä¼ å¼ //TODO return ResponseUtil.success(null); if (!permissionConfig.check(MenuEnum.AIR_SET_TYPE.getCode())) { return ResponseUtil.fail("缺å°å¯¹åºç¨æ·æé"); } return ResponseUtil.success(airEquipmentNongGengService.setAirEquipmentType(param)); } } ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java
@@ -1,5 +1,6 @@ package com.sandu.ximon.admin.controller; import com.alibaba.fastjson.JSON; import com.sandu.common.domain.ResponseVO; import com.sandu.common.execption.BusinessException; import com.sandu.common.util.ResponseUtil; @@ -9,13 +10,14 @@ import com.sandu.ximon.admin.param.RemotePrarm; import com.sandu.ximon.admin.param.RemoteUpdateParam; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.admin.service.RemoteUpdateService; import com.sandu.ximon.admin.utils.RedisUtils; import com.sandu.ximon.admin.vo.RemoteUpgradeProgress; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import static com.sandu.ximon.admin.manager.iot.rrpc.enums.RemoteUpdateTypeEnum.MQTT_MAIN; /** * åºä»¶å级Controller @@ -115,6 +117,10 @@ //å¯å¨è¿ç¨å级å½ä»¤ boolean startRemoteUpdateFlag = remoteUpdateService.StartRemoteUpdate(orderType, remotePrarm.getMac(), remotePrarm.getHardwareVersion() , remotePrarm.getSoftwareVersion(), remotePrarm.getUpdateFlag()); //åå ¥å级è¿åº¦ RemoteUpgradeProgress progress = new RemoteUpgradeProgress(); RedisUtils.getBean().set(remotePrarm.getDeviceType() + ":" + SecurityUtils.getUserId() + remotePrarm.getMac(), JSON.toJSON(progress)); if (startRemoteUpdateFlag) { //æå¡å¨ä¸åå级æä»¶ä¿¡æ¯ //"C:\\Users\\Administrator\\Desktop\\test\\MQTT-è¿æ»¤å¤§æ°çæ¬1-09-20220310.bin" @@ -122,14 +128,21 @@ if (remoteFileDto != null) { System.out.println(remoteFileDto.getList().size()); progress.setTotalProgress(remoteFileDto.getList().size() + 1); for (int i = 0; i < remoteFileDto.getList().size(); i++) { //åçº§å æ°æ® remoteUpdateService.UpdateData(orderType, remotePrarm.getMac(), i, remoteFileDto.getList().get(i)); progress.setCurrentProgress(i + 1); if (i != remoteFileDto.getList().size()) { RedisUtils.getBean().set(remotePrarm.getDeviceType() + ":" + SecurityUtils.getUserId() + remotePrarm.getMac(), JSON.toJSON(progress)); } } //æå¡å¨ä¸åæ¥è¯¢æ¼å 帧 boolean searchLoseDataFlag = remoteUpdateService.SearchLoseData(orderType, remotePrarm.getMac(), remoteFileDto, 0); if (searchLoseDataFlag) { //æ æ¼å æ åµ æ´æ°æåè¿åº¦ä¸º100% å¦åæé«å¡å¨99% RedisUtils.getBean().set(remotePrarm.getDeviceType() + ":" + SecurityUtils.getUserId() + remotePrarm.getMac(), JSON.toJSON(progress)); //æå¡å¨ä¸åç»æå级帧 boolean finishUpdateFlag = remoteUpdateService.FinishUpdate(orderType, remotePrarm.getMac()); UpdateFlag = finishUpdateFlag; @@ -137,6 +150,7 @@ } } RedisUtils.getBean().delete(remotePrarm.getDeviceType() + ":" + SecurityUtils.getUserId() + remotePrarm.getMac()); if (UpdateFlag) { return ResponseUtil.success("å级æåï¼"); } else { ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentNongGengService.java
@@ -7,12 +7,7 @@ import com.sandu.common.service.impl.BaseServiceImpl; import com.sandu.common.util.SpringContextHolder; import com.sandu.ximon.admin.manager.iot.frame.A5Frame; import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereHeartBeatTimeReportInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereOperationReportInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereQueryVersionReportInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.request.AtmosphereQueryHeartBeatTimeReqInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.request.AtmosphereQueryVersionReqInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.request.AtmosphereRebootReqInnerFrame; import com.sandu.ximon.admin.manager.iot.frame.inner.request.AtmosphereSetHeartBeatTimeReqInnerFrame; import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame; import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5OrderEnum; @@ -23,11 +18,11 @@ import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils; import com.sandu.ximon.admin.utils.StringUtil; import com.sandu.ximon.dao.bo.AirEquipmentNongGengBo; import com.sandu.ximon.dao.domain.AirEquipment; import com.sandu.ximon.dao.domain.AirEquipmentNongGeng; import com.sandu.ximon.dao.mapper.AirEquipmentNongGengMapper; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; @@ -74,11 +69,11 @@ PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); } List<AirEquipmentNongGengBo> airEquipmentBos; // if (SecurityUtils.getClientId() == null) { // airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(keyword, null); // } else { // airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(keyword, SecurityUtils.getUserId()); // } if (SecurityUtils.getClientId() == null) { airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(keyword, null); } else { airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(keyword, SecurityUtils.getUserId()); } if (SecurityUtils.getClientId() == null) { airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(keyword, null); @@ -94,15 +89,15 @@ * 大æ°è®¾å¤å表ï¼åèï¼ç¨äºé¦é¡µæ°æ®ç»è®¡ï¼ */ public List<AirEquipmentNongGengBo> listAirEquipmentOnHome() { // List<AirEquipmentNongGengBo> airEquipmentBos; // if (SecurityUtils.getClientId() == null) { // airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(null, null); // } else { // airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(null, SecurityUtils.getUserId()); // } List<AirEquipmentNongGengBo> airEquipmentBos; if (SecurityUtils.getClientId() == null) { airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(null, null); } else { airEquipmentBos = airEquipmentNongGengMapper.listAirEquipmentByIds(null, SecurityUtils.getUserId()); } // return airEquipmentBos; return null; return airEquipmentBos; // return null; } /** @@ -185,4 +180,28 @@ throw new BusinessException("æ°æ®æ ¡éªå¼å¸¸ï¼"); } } /** * 设置类å * * @param param * @return */ @Transactional(rollbackFor = Exception.class) public boolean setAirEquipmentType(AirEquipmentNongGeng param) { if (param.getType() == null || param.getId() == null || param.getType().isEmpty()) { throw new BusinessException("设å¤idæç±»åä¸è½ä¸ºç©º"); } if (!"0".equals(param.getType()) && !"1".equals(param.getType()) && !"2".equals(param.getType())) { throw new BusinessException("设å¤ç±»å䏿£ç¡®"); } AirEquipmentNongGeng byId = getById(param.getId()); if (byId == null) { throw new BusinessException("设å¤idé误æè®¾å¤ä¸åå¨!"); } byId.setType(param.getType()); return updateById(byId); } } ximon-admin/src/main/java/com/sandu/ximon/admin/vo/RemoteUpgradeProgress.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.sandu.ximon.admin.vo; import lombok.Data; /** * è¿ç¨å级 å级è¿åº¦ */ @Data public class RemoteUpgradeProgress { /** * å½åè¿åº¦ */ private int currentProgress = 0; /** * æ»è¿åº¦ */ private int totalProgress = 0; }