Forráskód Böngészése

编辑删除灯带、删除灯带策略

zhj 2 éve
szülő
commit
facd7ac3d1
27 módosított fájl, 494 hozzáadás és 0 törlés
  1. 6 0
      src/main/java/com/welampiot/common/InterfaceResultEnum.java
  2. 127 0
      src/main/java/com/welampiot/controller/LightStripController.java
  3. 16 0
      src/main/java/com/welampiot/controller/LightStripPolicyController.java
  4. 19 0
      src/main/java/com/welampiot/dao/LightStripCollectorDao.java
  5. 5 0
      src/main/java/com/welampiot/dao/LightStripDevDao.java
  6. 3 0
      src/main/java/com/welampiot/dao/LightStripDevLogDao.java
  7. 2 0
      src/main/java/com/welampiot/dao/LightStripPolicyDao.java
  8. 2 0
      src/main/java/com/welampiot/dao/SolarDevDao.java
  9. 37 0
      src/main/java/com/welampiot/dto/LightStripCollectorDTO.java
  10. 18 0
      src/main/java/com/welampiot/service/LightStripCollectorService.java
  11. 2 0
      src/main/java/com/welampiot/service/LightStripDevLogService.java
  12. 5 0
      src/main/java/com/welampiot/service/LightStripDevService.java
  13. 2 0
      src/main/java/com/welampiot/service/LightStripPolicyService.java
  14. 2 0
      src/main/java/com/welampiot/service/SolarDevService.java
  15. 32 0
      src/main/java/com/welampiot/service/impl/LightStripCollectorServiceImpl.java
  16. 5 0
      src/main/java/com/welampiot/service/impl/LightStripDevLogServiceImpl.java
  17. 10 0
      src/main/java/com/welampiot/service/impl/LightStripDevServiceImpl.java
  18. 5 0
      src/main/java/com/welampiot/service/impl/LightStripPolicyServiceImpl.java
  19. 5 0
      src/main/java/com/welampiot/service/impl/SolarDevServiceImpl.java
  20. 77 0
      src/main/java/com/welampiot/vo/LightStripDetailsVO.java
  21. 17 0
      src/main/java/com/welampiot/vo/LightStripDevVO.java
  22. 14 0
      src/main/java/com/welampiot/vo/LightStripPolicyVO.java
  23. 25 0
      src/main/resources/mapper/LightStripCollectorMapper.xml
  24. 6 0
      src/main/resources/mapper/LightStripDevLogMapper.xml
  25. 33 0
      src/main/resources/mapper/LightStripDevMapper.xml
  26. 6 0
      src/main/resources/mapper/LightStripPolicyMapper.xml
  27. 13 0
      src/main/resources/mapper/SolarDevMapper.xml

+ 6 - 0
src/main/java/com/welampiot/common/InterfaceResultEnum.java

@@ -160,6 +160,12 @@ public enum InterfaceResultEnum {
     LACK_VOL_ERROR("0350","设备音量不能为空","The device volume cannot be empty","Громкость оборудования не может быть пустой"),
     LACK_PLAY_TYPE_ERROR("0351","播放类型不能为空","The play type cannot be empty","Тип игры не может быть пустым"),
     LACK_PROGRAM_TIME_ERROR("0352","节目播放时间不能为空","The program time cannot be empty","Время шоу не должно быть пустым"),
+    LACK_NUMBER_ERROR("0353","编号不能为空","Lack of the device number","Номер не может быть пустым"),
+    LACK_DEV_ADDRESS_ERROR("0354","设备地址不能为空","Lack of the device address","Адрес устройства не может быть пустым"),
+    LACK_DEV_SN_ERROR("0355","设备序列号不能为空","Lack of the device serial number","Серийный номер устройства не может быть пустым"),
+    LACK_DEV_MODEL_ERROR("0356","请选择设备型号","Please select the device model","Пожалуйста, выберите модель устройства"),
+    LACK_FACTORY_ERROR("0357","请选择厂家","Please select the factory","Пожалуйста, выберите производителя"),
+    LACK_SERIAL_PORT_ERROR("0358","请选择串口号","Please select the serial port","Пожалуйста, выберите номер"),
     ;
     private String code;
     private String msgCn;

+ 127 - 0
src/main/java/com/welampiot/controller/LightStripController.java

@@ -2,12 +2,17 @@ package com.welampiot.controller;
 
 import com.welampiot.common.BaseResult;
 import com.welampiot.common.InterfaceResultEnum;
+import com.welampiot.dto.LightStripCollectorDTO;
 import com.welampiot.dto.LightStripDevDTO;
 import com.welampiot.dto.LightStripDevLogDTO;
+import com.welampiot.dto.SolarDevDTO;
+import com.welampiot.service.LightStripCollectorService;
 import com.welampiot.service.LightStripDevLogService;
 import com.welampiot.service.LightStripDevService;
+import com.welampiot.service.SolarDevService;
 import com.welampiot.utils.ExcelUtil;
 import com.welampiot.utils.ToolUtils;
+import com.welampiot.vo.LightStripDetailsVO;
 import com.welampiot.vo.LightStripDevLogVO;
 import com.welampiot.vo.LightStripDevVO;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +48,12 @@ public class LightStripController {
     @Autowired
     private ToolUtils toolUtils;
 
+    @Autowired
+    private LightStripCollectorService lightStripCollectorService;
+
+    @Autowired
+    private SolarDevService solarDevService;
+
     /**
      * 获取灯带设备概述
      * @param request
@@ -296,4 +307,120 @@ public class LightStripController {
         lightStripDevService.updateLightStripVoltage(lightStripDevDTO);
         return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
     }
+
+    /**
+     * 编辑灯带设备
+     * @param vo 灯带,太阳能,灯带电量采集器
+     * @return 编辑设备
+     */
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public BaseResult<?> save(LightStripDetailsVO vo) {
+        LightStripDetailsVO detailsVO = LightStripDetailsVO.getLightStripDetailsVO(vo);
+        Integer version = detailsVO.getVersion();
+
+        // 编辑灯带
+        Integer id = detailsVO.getId();
+        if (id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        String address = detailsVO.getAddress();
+        if (address == null || address.length() == 0)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_ADDRESS_ERROR,version);
+        Integer factory = detailsVO.getFactory();
+        if (factory == null)
+            return toolUtils.response(InterfaceResultEnum.LACK_FACTORY_ERROR,version);
+        Integer model = detailsVO.getModel();
+        if (model == null)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_MODEL_ERROR,version);
+        Integer netType = detailsVO.getNetType();
+        if (netType == null)
+            return toolUtils.response(InterfaceResultEnum.LACK_PROTOCOL_TYPE_ERROR,version);
+        String name = detailsVO.getName();
+        if (name == null || name.length() == 0)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_NAME_ERROR,version);
+        Integer serialPort = detailsVO.getSerialPort();
+        String imei = detailsVO.getImei();
+        String installDate = detailsVO.getInstallDate();
+        String expirationDate = detailsVO.getExpirationDate();
+        LightStripDevDTO lightStripDevDTO = new LightStripDevDTO();
+        lightStripDevDTO.setName(name);
+        lightStripDevDTO.setId(id);
+        lightStripDevDTO.setAddress(address);
+        lightStripDevDTO.setFactory(factory);
+        lightStripDevDTO.setModel(model);
+        lightStripDevDTO.setNetType(netType);
+        lightStripDevDTO.setSerialPort(serialPort);
+        lightStripDevDTO.setImei(imei);
+        lightStripDevDTO.setInstallDate(installDate);
+        lightStripDevDTO.setExpirationDate(expirationDate);
+
+        // 编辑灯带电量采集器
+        String powerCollectorAddress = detailsVO.getPowerCollectorAddress();
+        String powerCollectorName = detailsVO.getPowerCollectorName();
+        String powerCollectorNumber = detailsVO.getPowerCollectorNumber();
+        Integer powerCollectorModel = detailsVO.getPowerCollectorModel();
+        Integer powerCollectorFactory = detailsVO.getPowerCollectorFactory();
+        LightStripCollectorDTO lightStripCollectorDTO = new LightStripCollectorDTO();
+        lightStripCollectorDTO.setAddress(powerCollectorAddress);
+        lightStripCollectorDTO.setName(powerCollectorName);
+        lightStripCollectorDTO.setAddress(powerCollectorNumber);
+        lightStripCollectorDTO.setModel(powerCollectorModel);
+        lightStripCollectorDTO.setFactory(powerCollectorFactory);
+        lightStripCollectorDTO.setLightStripId(id);
+
+        // 编辑太阳能设备
+        Integer solarId = detailsVO.getSolarId();
+        if (solarId == null) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        String mpptDevAddress = detailsVO.getMpptDevAddress();
+        if (mpptDevAddress == null || mpptDevAddress.length() == 0)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_ADDRESS_ERROR,version);
+        Integer mpptDevType = detailsVO.getMpptDevType();
+        if (mpptDevType == null)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_TYPE_ERROR,version);
+        Integer mpptDevSerialPort = detailsVO.getMpptDevSerialPort();
+        if (mpptDevSerialPort == null)
+            return toolUtils.response(InterfaceResultEnum.LACK_SERIAL_PORT_ERROR,version);
+        String mpptDevNumber = detailsVO.getMpptDevNumber();
+        if (mpptDevNumber == null || mpptDevNumber.length() == 0)
+            return toolUtils.response(InterfaceResultEnum.LACK_NUMBER_ERROR,version);
+        String mpptDevName = detailsVO.getMpptDevName();
+        if (mpptDevName == null || mpptDevName.length() == 0)
+            return toolUtils.response(InterfaceResultEnum.LACK_DEV_NAME_ERROR,version);
+        SolarDevDTO solarDevDTO = new SolarDevDTO();
+        solarDevDTO.setId(solarId);
+        solarDevDTO.setAddress(mpptDevAddress);
+        solarDevDTO.setType(mpptDevType);
+        solarDevDTO.setSerialPort(mpptDevSerialPort);
+        solarDevDTO.setNumber(mpptDevNumber);
+        solarDevDTO.setName(mpptDevName);
+
+        long l = System.currentTimeMillis();
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String format = simpleDateFormat.format(l);
+        lightStripDevDTO.setUpdateTime(format);
+        lightStripDevService.updateLightStripData(lightStripDevDTO);
+        lightStripCollectorDTO.setUpdateTime(format);
+        lightStripCollectorService.updateLightStripCollectorDataByStripId(lightStripCollectorDTO);
+        solarDevService.updateSolarDevData(solarDevDTO);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
+    }
+
+    /**
+     * 删除灯带
+     * @param vo 灯带id
+     * @return 删除灯带
+     */
+    @RequestMapping(value = "/del", method = RequestMethod.POST)
+    public BaseResult<?> del(LightStripDevVO vo) {
+        LightStripDevVO lightStripDevVO = LightStripDevVO.getLightStripDevVO(vo);
+        Integer version = lightStripDevVO.getVersion();
+        String id = lightStripDevVO.getId();
+        if (id.length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        String[] split = id.split(",");
+        for (String s : split) {
+            Integer integer = Integer.valueOf(s);
+            lightStripDevService.deleteLightStripDevData(integer);
+            lightStripCollectorService.deleteLightStripCollectorByStripId(integer);
+            lightStripDevLogService.deleteLightStripLogDataByStripId(integer);
+        }
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
+    }
 }

+ 16 - 0
src/main/java/com/welampiot/controller/LightStripPolicyController.java

@@ -389,4 +389,20 @@ public class LightStripPolicyController {
         policyVO.setList(list);
         return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,policyVO);
     }
+
+    /**
+     * 删除灯带策略
+     * @param vo 灯带策略id
+     * @return 删除灯带策略
+     */
+    @RequestMapping(value = "/del", method = RequestMethod.POST)
+    public BaseResult<?> del(LightStripPolicyVO vo) {
+        LightStripPolicyVO policyVO = LightStripPolicyVO.getLightStripPolicyVO(vo);
+        Integer version = policyVO.getVersion();
+        Integer policyId = policyVO.getPolicyId();
+        if (policyId == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        lightStripPolicyService.deleteLightStripPolicyData(policyId);
+        policyCmdService.deleteLightStripPolicyCmdByPolicyId(policyId);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
+    }
 }

+ 19 - 0
src/main/java/com/welampiot/dao/LightStripCollectorDao.java

@@ -0,0 +1,19 @@
+package com.welampiot.dao;
+
+import com.welampiot.dto.LightStripCollectorDTO;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * ClassName: LightStripCollectorDao
+ * Package: com.welampiot.dao
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/8/16 - 9:55
+ * @Version: v1.0
+ */
+public interface LightStripCollectorDao {
+    void updateLightStripCollectorDataByStripId(LightStripCollectorDTO dto);
+
+    void deleteLightStripCollectorByStripId(@Param("lightStripId") Integer lightStripId);
+}

+ 5 - 0
src/main/java/com/welampiot/dao/LightStripDevDao.java

@@ -1,6 +1,7 @@
 package com.welampiot.dao;
 
 import com.welampiot.dto.LightStripDevDTO;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -23,4 +24,8 @@ public interface LightStripDevDao {
     List<LightStripDevDTO> getLightStripListByDTO(LightStripDevDTO dto);
 
     void updateLightStripVoltage(LightStripDevDTO dto);
+
+    void updateLightStripData(LightStripDevDTO dto);
+
+    void deleteLightStripDevData(@Param("id") Integer id);
 }

+ 3 - 0
src/main/java/com/welampiot/dao/LightStripDevLogDao.java

@@ -1,6 +1,7 @@
 package com.welampiot.dao;
 
 import com.welampiot.dto.LightStripDevLogDTO;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -17,4 +18,6 @@ public interface LightStripDevLogDao {
     List<LightStripDevLogDTO> getStatisticsInfoByDTO(LightStripDevLogDTO dto);
 
     Integer getTimezoneByLightStripDevId(Integer id);
+
+    void deleteLightStripLogDataByStripId(@Param("devId") Integer devId);
 }

+ 2 - 0
src/main/java/com/welampiot/dao/LightStripPolicyDao.java

@@ -25,4 +25,6 @@ public interface LightStripPolicyDao {
     void updateLightStripPolicyData(LightStripPolicyDTO dto);
 
     LightStripPolicyDTO getLightStripPolicyDTOById(@Param("id") Integer id);
+
+    void deleteLightStripPolicyData(@Param("id") Integer id);
 }

+ 2 - 0
src/main/java/com/welampiot/dao/SolarDevDao.java

@@ -25,4 +25,6 @@ public interface SolarDevDao {
     List<SolarDevDTO> getSolarDevDayElectricTotalByDTO(SolarDevDTO dto);
 
     List<SolarDevDTO> getSolarDevSumElectricTotalByDTO(SolarDevDTO dto);
+
+    void updateSolarDevData(SolarDevDTO dto);
 }

+ 37 - 0
src/main/java/com/welampiot/dto/LightStripCollectorDTO.java

@@ -0,0 +1,37 @@
+package com.welampiot.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * ClassName: LightStripCollectorDTO
+ * Package: com.welampiot.dto
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/8/15 - 18:46
+ * @Version: v1.0
+ */
+@Data
+public class LightStripCollectorDTO implements Serializable {
+    private Integer id;
+
+    private Integer lightStripId; // 灯带id
+
+    private String name; // 分组编号
+
+    private Integer sectionId;
+
+    private Integer areaId;
+
+    private Integer factory;
+
+    private Integer model;
+
+    private String address;
+
+    private String createTime;
+
+    private String updateTime;
+}

+ 18 - 0
src/main/java/com/welampiot/service/LightStripCollectorService.java

@@ -0,0 +1,18 @@
+package com.welampiot.service;
+
+import com.welampiot.dto.LightStripCollectorDTO;
+
+/**
+ * ClassName: LightStripCollectorService
+ * Package: com.welampiot.service
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/8/16 - 9:55
+ * @Version: v1.0
+ */
+public interface LightStripCollectorService {
+    void updateLightStripCollectorDataByStripId(LightStripCollectorDTO dto);
+
+    void deleteLightStripCollectorByStripId(Integer lightStripId);
+}

+ 2 - 0
src/main/java/com/welampiot/service/LightStripDevLogService.java

@@ -17,4 +17,6 @@ public interface LightStripDevLogService {
     List<LightStripDevLogDTO> getStatisticsInfoByDTO(LightStripDevLogDTO dto);
 
     Integer getTimezoneByLightStripDevId(Integer id);
+
+    void deleteLightStripLogDataByStripId(Integer devId);
 }

+ 5 - 0
src/main/java/com/welampiot/service/LightStripDevService.java

@@ -2,6 +2,7 @@ package com.welampiot.service;
 
 import com.welampiot.dto.LightStripDevDTO;
 import com.welampiot.vo.LightStripDevVO;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * ClassName: LightStripDevService
@@ -18,4 +19,8 @@ public interface LightStripDevService {
     LightStripDevVO getLightStripListByDTO(LightStripDevDTO dto);
 
     void updateLightStripVoltage(LightStripDevDTO dto);
+
+    void updateLightStripData(LightStripDevDTO dto);
+
+    void deleteLightStripDevData(@Param("id") Integer id);
 }

+ 2 - 0
src/main/java/com/welampiot/service/LightStripPolicyService.java

@@ -24,4 +24,6 @@ public interface LightStripPolicyService {
     void updateLightStripPolicyData(LightStripPolicyDTO dto);
 
     LightStripPolicyDTO getLightStripPolicyDTOById(Integer id);
+
+    void deleteLightStripPolicyData(Integer id);
 }

+ 2 - 0
src/main/java/com/welampiot/service/SolarDevService.java

@@ -14,4 +14,6 @@ import com.welampiot.vo.SolarDevVO;
  */
 public interface SolarDevService {
     SolarDevVO getSolarListByDTO(SolarDevDTO dto);
+
+    void updateSolarDevData(SolarDevDTO dto);
 }

+ 32 - 0
src/main/java/com/welampiot/service/impl/LightStripCollectorServiceImpl.java

@@ -0,0 +1,32 @@
+package com.welampiot.service.impl;
+
+import com.welampiot.dao.LightStripCollectorDao;
+import com.welampiot.dto.LightStripCollectorDTO;
+import com.welampiot.service.LightStripCollectorService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * ClassName: LightStripCollectorServiceImpl
+ * Package: com.welampiot.service.impl
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/8/16 - 9:56
+ * @Version: v1.0
+ */
+@Service
+public class LightStripCollectorServiceImpl implements LightStripCollectorService {
+    @Autowired
+    private LightStripCollectorDao lightStripCollectorDao;
+
+    @Override
+    public void updateLightStripCollectorDataByStripId(LightStripCollectorDTO dto) {
+        lightStripCollectorDao.updateLightStripCollectorDataByStripId(dto);
+    }
+
+    @Override
+    public void deleteLightStripCollectorByStripId(Integer lightStripId) {
+        lightStripCollectorDao.deleteLightStripCollectorByStripId(lightStripId);
+    }
+}

+ 5 - 0
src/main/java/com/welampiot/service/impl/LightStripDevLogServiceImpl.java

@@ -31,4 +31,9 @@ public class LightStripDevLogServiceImpl implements LightStripDevLogService {
     public Integer getTimezoneByLightStripDevId(Integer id) {
         return lightStripDevLogDao.getTimezoneByLightStripDevId(id);
     }
+
+    @Override
+    public void deleteLightStripLogDataByStripId(Integer devId) {
+        lightStripDevLogDao.deleteLightStripLogDataByStripId(devId);
+    }
 }

+ 10 - 0
src/main/java/com/welampiot/service/impl/LightStripDevServiceImpl.java

@@ -269,4 +269,14 @@ public class LightStripDevServiceImpl implements LightStripDevService {
     public void updateLightStripVoltage(LightStripDevDTO dto) {
         lightStripDevDao.updateLightStripVoltage(dto);
     }
+
+    @Override
+    public void updateLightStripData(LightStripDevDTO dto) {
+        lightStripDevDao.updateLightStripData(dto);
+    }
+
+    @Override
+    public void deleteLightStripDevData(Integer id) {
+        lightStripDevDao.deleteLightStripDevData(id);
+    }
 }

+ 5 - 0
src/main/java/com/welampiot/service/impl/LightStripPolicyServiceImpl.java

@@ -47,4 +47,9 @@ public class LightStripPolicyServiceImpl implements LightStripPolicyService {
     public LightStripPolicyDTO getLightStripPolicyDTOById(Integer id) {
         return lightStripPolicyDao.getLightStripPolicyDTOById(id);
     }
+
+    @Override
+    public void deleteLightStripPolicyData(Integer id) {
+        lightStripPolicyDao.deleteLightStripPolicyData(id);
+    }
 }

+ 5 - 0
src/main/java/com/welampiot/service/impl/SolarDevServiceImpl.java

@@ -104,4 +104,9 @@ public class SolarDevServiceImpl implements SolarDevService {
         vo.setList(list);
         return vo;
     }
+
+    @Override
+    public void updateSolarDevData(SolarDevDTO dto) {
+        solarDevDao.updateSolarDevData(dto);
+    }
 }

+ 77 - 0
src/main/java/com/welampiot/vo/LightStripDetailsVO.java

@@ -0,0 +1,77 @@
+package com.welampiot.vo;
+
+import lombok.Data;
+import org.jetbrains.annotations.Contract;
+import org.jetbrains.annotations.NotNull;
+
+import java.io.Serializable;
+
+/**
+ * ClassName: LightStripDetailsVO
+ * Package: com.welampiot.vo
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/8/16 - 10:42
+ * @Version: v1.0
+ */
+@Data
+public class LightStripDetailsVO implements Serializable {
+    private Integer id;
+
+    private Integer version;
+
+    private String name;
+
+    private String address;
+
+    private String number;
+
+    private Integer model;
+
+    private Integer factory;
+
+    private Integer netType;
+
+    private String imei;
+
+    private Integer serialPort;
+
+    private String powerCollectorAddress;
+
+    private String powerCollectorNumber;
+
+    private String powerCollectorName;
+
+    private Integer powerCollectorModel;
+
+    private Integer powerCollectorFactory;
+
+    private Integer solarId;
+
+    private String mpptDevAddress;
+
+    private Integer mpptDevType;
+
+    private Integer mpptDevSerialPort;
+
+    private String mpptDevNumber;
+
+    private String mpptDevName;
+
+    private String installDate;
+
+    private String expirationDate;
+
+    @NotNull
+    @Contract("_ -> param1")
+    public static LightStripDetailsVO getLightStripDetailsVO(@NotNull LightStripDetailsVO vo) {
+        if (vo.getId() == null) {
+            vo.setId(0);
+        }
+        if (vo.getVersion() == null) {
+            vo.setVersion(0);
+        }
+        return vo;
+    }
+}

+ 17 - 0
src/main/java/com/welampiot/vo/LightStripDevVO.java

@@ -2,6 +2,8 @@ package com.welampiot.vo;
 
 import com.welampiot.dto.LightStripDevDTO;
 import lombok.Data;
+import org.jetbrains.annotations.Contract;
+import org.jetbrains.annotations.NotNull;
 
 import java.io.Serializable;
 import java.util.List;
@@ -27,5 +29,20 @@ public class LightStripDevVO implements Serializable {
 
     private String path;
 
+    private String id;
+    private Integer version;
+
     private static final long serialVersionUID = 1L;
+
+    @NotNull
+    @Contract("_ -> param1")
+    public static LightStripDevVO getLightStripDevVO(@NotNull LightStripDevVO vo) {
+        if (vo.getId() == null) {
+            vo.setId("");
+        }
+        if (vo.getVersion() == null) {
+            vo.setVersion(0);
+        }
+        return vo;
+    }
 }

+ 14 - 0
src/main/java/com/welampiot/vo/LightStripPolicyVO.java

@@ -28,6 +28,10 @@ public class LightStripPolicyVO implements Serializable {
 
     private Integer id;
 
+    private Integer policyId;
+
+    private Integer version;
+
     private Integer type;
 
     private String name;
@@ -35,4 +39,14 @@ public class LightStripPolicyVO implements Serializable {
     private List<StripPolicyContentDTO> contentList;
 
     private List<LightStripPolicyDTO> list;
+
+    public static LightStripPolicyVO getLightStripPolicyVO(LightStripPolicyVO vo) {
+        if (vo.getVersion() == null) {
+            vo.setVersion(0);
+        }
+        if (vo.getPolicyId() == null) {
+            vo.setPolicyId(0);
+        }
+        return vo;
+    }
 }

+ 25 - 0
src/main/resources/mapper/LightStripCollectorMapper.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.welampiot.dao.LightStripCollectorDao">
+    
+    <update id="updateLightStripCollectorDataByStripId" parameterType="LightStripCollectorDTO">
+        update
+            light_strip_collector l
+        set
+            l.address = #{address},
+            l.number = #{number},
+            l.name = #{name},
+            l.model = #{model},
+            l.factory = #{factory},
+            l.updatetime = #{updateTime}
+        where
+            l.light_strip_id = #{lightStripId}
+    </update>
+
+    <delete id="deleteLightStripCollectorByStripId">
+        delete
+        from light_strip_collector
+        where light_strip_id = #{lightStripId};
+    </delete>
+
+</mapper>

+ 6 - 0
src/main/resources/mapper/LightStripDevLogMapper.xml

@@ -21,5 +21,11 @@
         left join section s on lp.sectionid = s.id
         where lsd.id = #{id}
     </select>
+
+    <delete id="deleteLightStripLogDataByStripId">
+        delete
+        from light_strip_dev_log
+        where dev_id = #{devId};
+    </delete>
     
 </mapper>

+ 33 - 0
src/main/resources/mapper/LightStripDevMapper.xml

@@ -103,4 +103,37 @@
             l.id = #{id}
     </update>
 
+    <update id="updateLightStripData" parameterType="LightStripDevDTO">
+        update
+            light_strip_dev l
+        set
+            l.address = #{address},
+            l.number = #{number},
+            l.name = #{name},
+            l.model = #{model},
+            l.factory = #{factory},
+            <if test="imei != null and imei != ''">
+                l.imei = #{imei},
+            </if>
+            <if test="serialPort != null and serialPort != ''">
+                l.serial_port = #{serialPort},
+            </if>
+            <if test="installDate != null and installDate != ''">
+                l.install_date = #{installDate},
+            </if>
+            <if test="expirationDate != null and expirationDate != ''">
+                l.expiration_date = #{expirationDate},
+            </if>
+            l.netType = #{netType},
+            l.updatetime = #{updateTime}
+        where
+            l.id = #{id}
+    </update>
+
+    <delete id="deleteLightStripDevData">
+        delete
+        from light_strip_dev
+        where id = #{id};
+    </delete>
+
 </mapper>

+ 6 - 0
src/main/resources/mapper/LightStripPolicyMapper.xml

@@ -51,4 +51,10 @@
         where l.id = #{id}
     </select>
 
+    <delete id="deleteLightStripPolicyData">
+        delete
+        from light_strip_policy
+        where id = #{id};
+    </delete>
+
 </mapper>

+ 13 - 0
src/main/resources/mapper/SolarDevMapper.xml

@@ -104,4 +104,17 @@
         </if>
     </select>
 
+    <update id="updateSolarDevData" parameterType="SolarDevDTO">
+        update
+            solar_dev s
+        set
+            s.number = #{number},
+            s.address = #{address},
+            s.type = #{type},
+            s.serial_port = #{serialPort},
+            s.name = #{name}
+        where
+            s.id = #{id}
+    </update>
+
 </mapper>