Browse Source

Merge remote-tracking branch 'origin/master'

wangyangyang 4 years ago
parent
commit
fce54518b5

+ 6 - 1
sms_water/src/main/java/com/huaxu/async/CheckDeviceStateAsync.java

@@ -30,11 +30,16 @@ public class CheckDeviceStateAsync implements InitializingBean {
             while (true) {
                 try {
                     alarmDetailsService.checkStateAlarm();
-                    Thread.sleep(300000);
                 } catch (Exception e){
                     e.printStackTrace();
                     log.error("巡检设备状态异常:{}",e.getMessage());
                 }
+                try {
+                    Thread.sleep(100000);
+                } catch (InterruptedException e) {
+                    e.printStackTrace();
+                    log.error(e.getMessage());
+                }
             }
         }).start();
     }

+ 22 - 4
sms_water/src/main/java/com/huaxu/controller/DeviceController.java

@@ -3,7 +3,6 @@ package com.huaxu.controller;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.huaxu.dto.AlarmSettingDto;
 import com.huaxu.dto.DeviceDto;
 import com.huaxu.entity.DeviceEntity;
 import com.huaxu.logAdvice.LogAnnotation;
@@ -18,6 +17,8 @@ import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
+
 /**
  * @description
  * @auto wangli
@@ -42,9 +43,8 @@ public class DeviceController {
     @RequestMapping(value="selectPage" , method = RequestMethod.GET)
     @ApiOperation(value = "分页查询设备信息")
     public AjaxMessage<Pagination<DeviceDto>> selectPage(
-            @ApiParam(value = "设备信息id") @RequestParam(required = false)  Integer id,
             @ApiParam(value = "设备编号/名称") @RequestParam(required = false)  String condition,
-                @ApiParam(value = "所属公司") @RequestParam(required = false)  Integer companyOrgId,
+            @ApiParam(value = "所属公司") @RequestParam(required = false)  Integer companyOrgId,
             @ApiParam(value = "所属部门") @RequestParam(required = false)  Integer deptOrgId,
             @ApiParam(value = "所属场景id") @RequestParam(required = false)  Integer sceneId,
             @ApiParam(value = "设备状态") @RequestParam(required = false) Integer enableState,
@@ -57,7 +57,6 @@ public class DeviceController {
         deviceDto.setDeptOrgId(deptOrgId);
         deviceDto.setSceneId(sceneId);
         deviceDto.setEnableState(enableState);
-        deviceDto.setId(id);
 
         IPage<DeviceDto> iPage = new Page<>(pageNum, pageSize);
         if(iPage.orders().size() == 0){
@@ -75,6 +74,25 @@ public class DeviceController {
         return new AjaxMessage<>(ResultStatus.OK, pages);
     }
 
+    @RequestMapping(value="selectList" , method = RequestMethod.GET)
+    @ApiOperation(value = "查询设备信息")
+    public AjaxMessage<List<DeviceDto>> selectList(
+            @ApiParam(value = "设备编号/名称") @RequestParam(required = false)  String condition,
+            @ApiParam(value = "所属公司") @RequestParam(required = false)  Integer companyOrgId,
+            @ApiParam(value = "所属部门") @RequestParam(required = false)  Integer deptOrgId,
+            @ApiParam(value = "所属场景id") @RequestParam(required = false)  Integer sceneId,
+            @ApiParam(value = "设备状态") @RequestParam(required = false) Integer enableState
+    ){
+        DeviceDto deviceDto = new DeviceDto();
+        deviceDto.setCondition(condition);
+        deviceDto.setCompanyOrgId(companyOrgId);
+        deviceDto.setDeptOrgId(deptOrgId);
+        deviceDto.setSceneId(sceneId);
+        deviceDto.setEnableState(enableState);
+
+        return new AjaxMessage<>(ResultStatus.OK, deviceService.selectList(deviceDto));
+    }
+
     @RequestMapping(value="add" , method = RequestMethod.POST)
     @ApiOperation(value = "新增设备信息")
     @LogAnnotation(module = "【设备管理】新增")

+ 2 - 1
sms_water/src/main/java/com/huaxu/dao/DeviceMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.dto.DeviceDto;
 import com.huaxu.entity.DeviceEntity;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -50,7 +51,7 @@ public interface DeviceMapper {
      * 查询设备信息
      * @return
      */
-    List<DeviceEntity> selectList(DeviceDto deviceDto);
+    List<DeviceDto> selectList( @Param("deviceDto") DeviceDto deviceDto);
 
     /**
      * 分页查询

+ 4 - 0
sms_water/src/main/java/com/huaxu/service/DeviceService.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.dto.DeviceDto;
 import com.huaxu.entity.DeviceEntity;
 
+import java.util.List;
+
 /**
  * @description
  * @auto wangli
@@ -39,4 +41,6 @@ public interface DeviceService {
      * @return
      */
     IPage<DeviceDto> selectPage(IPage<DeviceDto> page, DeviceDto deviceDto);
+
+    List<DeviceDto> selectList(DeviceDto deviceDto);
 }

+ 12 - 0
sms_water/src/main/java/com/huaxu/service/impl/DeviceServiceImpl.java

@@ -11,6 +11,7 @@ import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @description
@@ -65,4 +66,15 @@ public class DeviceServiceImpl implements DeviceService {
 
         return deviceMapper.selectPage(page,deviceDto);
     }
+
+    @Override
+    public List<DeviceDto> selectList(DeviceDto deviceDto){
+        LoginUser loginUser = UserUtil.getCurrentUser();
+        deviceDto.setTenantId(loginUser.getTenantId());
+        deviceDto.setProgramItems(loginUser.getProgramItemList());
+        deviceDto.setUserType(loginUser.getType());
+        //1是公司,2是公司及以下,3部门,4部门及以下,5自定义
+        deviceDto.setPermissonType(loginUser.getPermissonType());
+        return deviceMapper.selectList(deviceDto);
+    }
 }

+ 6 - 6
sms_water/src/main/resources/mapper/AlarmDetailMapper.xml

@@ -119,7 +119,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">
@@ -262,7 +262,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">
@@ -317,7 +317,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">
@@ -372,7 +372,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">
@@ -427,7 +427,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">
@@ -482,7 +482,7 @@
             and a.ALARM_START_TIME >=#{alarmDetailsDto.startTime}
         </if>
         <if test="alarmDetailsDto.endTime != null">
-            and a.ALARM_START_TIME &lt;=DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
+            and a.ALARM_START_TIME &lt;=DATE_ADD(#{alarmDetailsDto.endTime},INTERVAL 1 DAY)
         </if>
         <if test="alarmDetailsDto.userType!=null and alarmDetailsDto.userType!=-999 and alarmDetailsDto.userType!=-9999 and  alarmDetailsDto.programItems != null and alarmDetailsDto.programItems.size() > 0">
             <if test="alarmDetailsDto.permissonType == 5 or alarmDetailsDto.permissonType == 2">

+ 31 - 2
sms_water/src/main/resources/mapper/DeviceMapper.xml

@@ -51,8 +51,8 @@
         from sms_device d
         <include refid="deviceJoins"/>
         where d.status = 1
-        <if test="deviceDto.id != null ">
-            and d.ID = #{deviceDto.id}
+        <if test="deviceDto.tenantId != null and deviceDto.tenantId != '' ">
+            and d.tenant_id = #{deviceDto.tenantId}
         </if>
         <if test="deviceDto.condition != null and deviceDto.condition != ''">
             and (device_code like concat('%', #{deviceDto.condition},'%') or device_name like concat('%', #{deviceDto.condition},'%'))
@@ -72,6 +72,35 @@
         <if test="deviceDto.sceneName != null and deviceDto.sceneName != ''">
             and s.SCENE_NAME like concat('%', #{sceneName},'%')
         </if>
+
+        <if test="deviceDto.userType!=null and deviceDto.userType!=-999 and deviceDto.userType!=-9999 and  deviceDto.programItems != null and deviceDto.programItems.size() > 0">
+            <if test="deviceDto.permissonType == 5 or deviceDto.permissonType == 2">
+                and ( d.DEPT_ORG_ID in
+                <foreach collection="deviceDto.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+                or
+                d.COMPANY_ORG_ID in
+                <foreach collection="deviceDto.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+                )
+            </if>
+            <if test="deviceDto.permissonType == 4 or deviceDto.permissonType == 3">
+                and d.DEPT_ORG_ID in
+                <foreach collection="deviceDto.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+            </if>
+            <if test="deviceDto.permissonType == 1">
+                and d.COMPANY_ORG_ID in
+                <foreach collection="deviceDto.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+                and (d.DEPT_ORG_ID is null or d.DEPT_ORG_ID =0)
+            </if>
+        </if>
+
     </select>
 
     <!-- 新增所有列 -->