瀏覽代碼

bug修复

lihui001 3 年之前
父節點
當前提交
0eb938b026

+ 10 - 0
zoniot-water/zoniot-water-core/src/main/java/com/bz/zoneiot/water/core/dao/DeviceMapper.java

@@ -82,6 +82,16 @@ public interface DeviceMapper {
     **/
     Integer update(DeviceEntity deviceEntity);
 
+    /**
+    * 修改设备状态
+    * @author Andy
+    * @date 15:25 2021/11/4
+    * @param id:
+    * @param state:
+    * @return java.lang.Integer
+    **/
+    Integer updateDeviceState(@Param("id")Long id, @Param("state")int state);
+
     /**
     * 查询设备信息
     * @author Andy

+ 6 - 2
zoniot-water/zoniot-water-core/src/main/java/com/bz/zoneiot/water/core/mapper/DeviceMapper.xml

@@ -508,10 +508,14 @@
         update sms_device set ENABLE_STATE =#{state} where IOT_DEVICE_ID=#{deviceId}
     </update>
 
-    <update id="findDeviceIdByIotDeviceId">
-        select DEVICE_ID from sms_device where IOT_DEVICE_ID = #{deviceId}
+    <update id="updateDeviceState">
+        update sms_device set ENABLE_STATE =#{state} where id = #{id}
     </update>
 
+    <select id="findDeviceIdByIotDeviceId">
+        select DEVICE_ID from sms_device where IOT_DEVICE_ID = #{deviceId}
+    </select>
+
 
     <select id="selectListBySceneType" resultType="com.bz.zoneiot.water.api.vo.DeviceVo">
         select

+ 5 - 1
zoniot-water/zoniot-water-web/src/main/java/com/bz/zoneiot/water/web/config/WaterApplicationRunner.java

@@ -30,7 +30,11 @@ public class WaterApplicationRunner implements ApplicationRunner {
         /*subscribeService.subscribe(NotificationTypeEnum.DEVICE_ADDED.getType(), null);
         log.info("订阅物联网通知:{}", NotificationTypeEnum.DEVICE_ADDED.getMsg());*/
         log.info("============开始同步产品信息============");
-        syncComponent.sync();
+        try {
+            syncComponent.sync();
+        } catch (Exception e) {
+            log.error("同步产品信息失败", e);
+        }
         log.info("============结束同步产品信息============");
     }
 

+ 7 - 0
zoniot-water/zoniot-water-web/src/main/java/com/bz/zoneiot/water/web/controller/DeviceController.java

@@ -137,4 +137,11 @@ public class DeviceController {
     public AjaxMessage<Integer> batchDelete( @ApiParam(value = "设备信息id") @RequestParam List<Long> ids){
         return AjaxMessage.success(deviceService.batchDelete(ids));
     }
+
+    @RequestMapping(value="edit/status" , method = RequestMethod.GET)
+    @ApiOperation(value = "修改状态")
+    @LogAnnotation(module = "【设备管理】修改状态")
+    public AjaxMessage<Integer> editStatus(@ApiParam(value = "设备信息id") @RequestParam Long id, @ApiParam(value = "设备信息id") @RequestParam int state){
+        return AjaxMessage.success(deviceService.updateDeviceState(id, state));
+    }
 }

+ 10 - 0
zoniot-water/zoniot-water-web/src/main/java/com/bz/zoneiot/water/web/service/DeviceService.java

@@ -60,6 +60,16 @@ public interface DeviceService {
     **/
     Integer update(DeviceAddUpdateDto deviceEntity);
 
+    /**
+    * 修改设备状态
+    * @author Andy
+    * @date 15:24 2021/11/4
+    * @param id:
+    * @param state:
+    * @return java.lang.Integer
+    **/
+    Integer updateDeviceState(Long id, int state);
+
     /**
     * 分页查询
     * @author Andy

+ 1 - 0
zoniot-water/zoniot-water-web/src/main/java/com/bz/zoneiot/water/web/service/impl/AlarmDetailsServiceImpl.java

@@ -3,6 +3,7 @@ package com.bz.zoneiot.water.web.service.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.bz.zoneiot.core.common.pojo.Message;
+import com.bz.zoneiot.core.common.util.BeanCopyUtils;
 import com.bz.zoneiot.core.oauth2.pojo.LoginUser;
 import com.bz.zoneiot.core.oauth2.util.UserUtil;
 import com.bz.zoneiot.water.api.dto.AlarmDetailsDto;

+ 9 - 0
zoniot-water/zoniot-water-web/src/main/java/com/bz/zoneiot/water/web/service/impl/DeviceServiceImpl.java

@@ -125,6 +125,15 @@ public class DeviceServiceImpl implements DeviceService {
         return deviceMapper.update(deviceEntity);
     }
 
+    @Override
+    public Integer updateDeviceState(Long id, int state){
+        if (syncDeviceService.updateDeviceStatus(id, state) > 0){
+            return deviceMapper.updateDeviceState(id, state);
+        }
+        throw BusinessException.builder(500, "同步更新物联网失败");
+    }
+
+
     @Override
     public IPage<DeviceVo> selectPage(IPage<DeviceDto> page, DeviceDto deviceDto) {
         LoginUser loginUser = UserUtil.getCurrentUser();