Browse Source

feat:新增房间功能模块并增加对应的逻辑代码

黄渊昊 6 months ago
parent
commit
e7194a985b
16 changed files with 50 additions and 41 deletions
  1. 2 2
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/controller/AppController.java
  2. 4 0
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/param/AppDevicePageParam.java
  3. 4 2
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/service/AppDeviceService.java
  4. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitordevice/service/impl/MonitorDeviceServiceImpl.java
  5. 2 8
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/controller/MonitorTargetController.java
  6. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/mapper/MonitorTargetMapper.java
  7. 4 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/mapper/mapping/MonitorTargetMapper.xml
  8. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/param/MonitorTargetAddWithRoomParam.java
  9. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/param/MonitorTargetEditWithRoomParam.java
  10. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/MonitorTargetService.java
  11. 15 11
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/impl/MonitorTargetServiceImpl.java
  12. 2 2
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/listener/RoomListener.java
  13. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomAddParam.java
  14. 1 1
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomEditParam.java
  15. 3 3
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomPageParam.java
  16. 7 5
      snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/service/impl/TargetRoomServiceImpl.java

+ 2 - 2
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/controller/AppController.java

@@ -31,8 +31,8 @@ public class AppController {
 
     @GetMapping("/device-status")
     @Operation(summary = "设备总缆")
-    public CommonResult<DeviceStatus> getDeviceStatus(String keyword) {
-        DeviceStatus deviceStatus = appDeviceService.getDeviceStatus(keyword);
+    public CommonResult<DeviceStatus> getDeviceStatus(String keyword,String roomId) {
+        DeviceStatus deviceStatus = appDeviceService.getDeviceStatus(keyword,roomId);
         return CommonResult.data(deviceStatus);
     }
 

+ 4 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/param/AppDevicePageParam.java

@@ -73,4 +73,8 @@ public class AppDevicePageParam {
     @Schema(description = "所属组织")
     private String orgId;
 
+
+    /** 房间id */
+    @Schema(description = "房间id")
+    private String roomId;
 }

+ 4 - 2
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/app/service/AppDeviceService.java

@@ -62,6 +62,7 @@ public class AppDeviceService {
         monitorTargetPageParam.setSize(appDevicePageParam.getSize());
         monitorTargetPageParam.setSearchKey(appDevicePageParam.getSearchKey());
         monitorTargetPageParam.setName(appDevicePageParam.getName());
+        monitorTargetPageParam.setRoomId(appDevicePageParam.getRoomId());
         // 调用 monitorTargetService 查询当前用户的监控目标数据,分页结果
         Page<MonitorTarget> pageByUser = monitorTargetService.getPageByUser(monitorTargetPageParam);
         // 遍历监控目标分页记录
@@ -139,10 +140,11 @@ public class AppDeviceService {
      * 获取设备总数
      *
      * @param keyword
+     * @param roomId
      * @return
      */
-    public DeviceStatus getDeviceStatus(String keyword) {
-        TargetStatus targetCount = monitorTargetService.getTargetCount(keyword);
+    public DeviceStatus getDeviceStatus(String keyword, String roomId) {
+        TargetStatus targetCount = monitorTargetService.getTargetCount(keyword,roomId);
         DeviceStatus deviceStatus = new DeviceStatus();
         BeanUtil.copyProperties(targetCount, deviceStatus);
         return deviceStatus;

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitordevice/service/impl/MonitorDeviceServiceImpl.java

@@ -377,7 +377,7 @@ public class MonitorDeviceServiceImpl extends ServiceImpl<MonitorDeviceMapper, M
 
     @Override
     public CountEntity getIndexCount() {
-        TargetStatus targetCount = monitorTargetService.getTargetCount(null);
+        TargetStatus targetCount = monitorTargetService.getTargetCount(null,null);
         CountEntity countEntity = new CountEntity();
         countEntity.setDeviceCount((int) targetCount.getTotal());
 //        LambdaQueryWrapper<MonitorDevice> onlineDeviceQueryWrapper = new LambdaQueryWrapper<>();

+ 2 - 8
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/controller/MonitorTargetController.java

@@ -59,18 +59,12 @@ public class MonitorTargetController {
         return CommonResult.data(monitorTargetService.page(monitorTargetPageParam));
     }
 
-    /**
-     * 根据房间获取监控对象管理分页
-     *
-     * @author 黄渊昊
-     * @date 2024/11/13 16:56
-     */
-    @Operation(summary = "根据房间获取监控对象管理分页")
+/*    @Operation(summary = "根据房间获取监控对象管理分页")
     @SaCheckPermission("/coldchain/monitortarget/pageWithRoom")
     @GetMapping("/coldchain/monitortarget/pageWithRoom")
     public CommonResult<Page<MonitorTarget>> pageWithRoom(MonitorTargetPageParam monitorTargetPageParam) {
         return CommonResult.data(monitorTargetService.page(monitorTargetPageParam));
-    }
+    }*/
 
     /**
      * 添加监控对象管理

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/mapper/MonitorTargetMapper.java

@@ -25,5 +25,5 @@ import java.util.List;
  * @date 2024/11/13 16:56
  **/
 public interface MonitorTargetMapper extends BaseMapper<MonitorTarget> {
-    List<StatusCount> getCountByStatus(String name,String orgId);
+    List<StatusCount> getCountByStatus(String name,String roomId,String orgId);
 }

+ 4 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/mapper/mapping/MonitorTargetMapper.xml

@@ -7,9 +7,12 @@
         from `monitor_target`
         where `CREATE_ORG` = #{orgId}
         and delete_flag = 'NOT_DELETE'
-        <if test="name != null">
+        <if test="name != null and name != ''">
             and name like '%${name}%'
         </if>
+        <if test="roomId != null and roomId != ''">
+            and room_id=#{roomId}
+        </if>
         group by status
     </select>
 

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/param/MonitorTargetAddWithRoomParam.java

@@ -63,6 +63,6 @@ public class MonitorTargetAddWithRoomParam {
      * 房间id
      */
     @NotNull(message = "房间不能为空")
-    private String orgId;
+    private String roomId;
 
 }

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/param/MonitorTargetEditWithRoomParam.java

@@ -84,5 +84,5 @@ public class MonitorTargetEditWithRoomParam {
      * 房间id
      */
     @NotNull(message = "房间不能为空")
-    private String orgId;
+    private String roomId;
 }

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/MonitorTargetService.java

@@ -97,7 +97,7 @@ public interface MonitorTargetService extends IService<MonitorTarget> {
     /**
      * 根据设备对象状态统计数据
      */
-    TargetStatus getTargetCount(String name);
+    TargetStatus getTargetCount(String name,String roomId);
 
     /**
      * 更新最后一次心跳时间

+ 15 - 11
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/impl/MonitorTargetServiceImpl.java

@@ -44,6 +44,7 @@ import vip.xiaonuo.common.page.CommonPageRequest;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 监控对象管理Service接口实现类
@@ -67,10 +68,10 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
     public Page<MonitorTarget> page(MonitorTargetPageParam monitorTargetPageParam) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         QueryWrapper<MonitorTarget> queryWrapper = new QueryWrapper<MonitorTarget>().checkSqlInjection();
-        if (ObjectUtil.isNotEmpty(monitorTargetPageParam.getName())) {
+        if (StrUtil.isNotBlank(monitorTargetPageParam.getName())) {
             queryWrapper.lambda().like(MonitorTarget::getName, monitorTargetPageParam.getName());
         }
-        if (ObjectUtil.isNotEmpty(monitorTargetPageParam.getRoomId())) {
+        if (StrUtil.isNotBlank(monitorTargetPageParam.getRoomId())) {
             queryWrapper.lambda().eq(MonitorTarget::getRoomId, monitorTargetPageParam.getRoomId());
         }
         if (ObjectUtil.isAllNotEmpty(monitorTargetPageParam.getSortField(), monitorTargetPageParam.getSortOrder())) {
@@ -84,7 +85,7 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
         //获取设备区域列表并赋值返回
         page.getRecords().forEach(monitorTarget -> {
             monitorTarget.setMonitorTargetRegionList(monitorTargetRegionService.getRegionListByTargetId(monitorTarget.getId()));
-            monitorTarget.setCreateOrgName(loginUser.getOrgName());
+            monitorTarget.setRoomName(targetRoomService.queryEntity(monitorTarget.getRoomId()).getName());
         });
         return page;
     }
@@ -189,15 +190,18 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
     @Override
     public Page<MonitorTarget> getPageByUser(MonitorTargetPageParam monitorTargetPageParam) {
         QueryWrapper<MonitorTarget> queryWrapper = new QueryWrapper<MonitorTarget>().checkSqlInjection();
-        if (ObjectUtil.isNotEmpty(monitorTargetPageParam.getName())) {
+        if (StrUtil.isNotBlank(monitorTargetPageParam.getName())) {
             queryWrapper.lambda().like(MonitorTarget::getName, monitorTargetPageParam.getName());
         }
-        if (ObjectUtil.isNotNull(monitorTargetPageParam.getUserId())) {
+        if (StrUtil.isNotBlank(monitorTargetPageParam.getUserId())) {
             queryWrapper.lambda().eq(MonitorTarget::getCreateUser, monitorTargetPageParam.getUserId());
         }
-        if (ObjectUtil.isNull(monitorTargetPageParam.getOrgId())) {
+        if (StrUtil.isNotBlank(monitorTargetPageParam.getRoomId())) {
+            queryWrapper.lambda().eq(MonitorTarget::getRoomId, monitorTargetPageParam.getRoomId());
+        }
+        if (StrUtil.isBlank(monitorTargetPageParam.getOrgId())) {
             queryWrapper.lambda().eq(MonitorTarget::getCreateOrg, StpLoginUserUtil.getLoginUser().getOrgId());
-        }else {
+        } else {
             queryWrapper.lambda().eq(MonitorTarget::getCreateOrg, monitorTargetPageParam.getOrgId());
         }
         if (ObjectUtil.isAllNotEmpty(monitorTargetPageParam.getSortField(), monitorTargetPageParam.getSortOrder())) {
@@ -218,9 +222,9 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
     }
 
     @Override
-    public TargetStatus getTargetCount(String name) {
+    public TargetStatus getTargetCount(String name, String roomId) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
-        List<StatusCount> countByStatusList = monitorTargetMapper.getCountByStatus(name,loginUser.getOrgId());
+        List<StatusCount> countByStatusList = monitorTargetMapper.getCountByStatus(name, roomId, loginUser.getOrgId());
         Long total = 0L;
         Long online = 0L;
         Long offline = 0L;
@@ -270,14 +274,14 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
     }
 
     @Override
-    public List<MonitorTarget>  myList(Boolean isAll) {
+    public List<MonitorTarget> myList(Boolean isAll) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         LambdaQueryWrapper<MonitorTarget> queryWrapper = new LambdaQueryWrapper<>();
         if (!isAll) {
             queryWrapper.eq(MonitorTarget::getStatus, MonitorStatusEnum.ONLINE.getCode())
                     .orderByDesc(MonitorTarget::getCreateTime);
         }
-        queryWrapper.eq(MonitorTarget::getCreateOrg,loginUser.getOrgId()).eq(MonitorTarget::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
+        queryWrapper.eq(MonitorTarget::getCreateOrg, loginUser.getOrgId()).eq(MonitorTarget::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
         return list(queryWrapper);
     }
 

+ 2 - 2
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/listener/RoomListener.java

@@ -24,9 +24,9 @@ public class RoomListener implements CommonDataChangeListener {
     public void doAddWithDataIdList(String dataType, List<String> dataIdList) {
         if(dataType.equals(SysDataTypeEnum.ORG.getValue())) {
             TargetRoomAddParam param = new TargetRoomAddParam();
-            param.setName("全屋");
+            param.setName("未分类");
             dataIdList.forEach(orgId -> {
-                param.setOrgId(orgId);
+                param.setCreateOrg(orgId);
                 targetRoomService.add(param);
             });
         }

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomAddParam.java

@@ -37,7 +37,7 @@ public class TargetRoomAddParam {
 
     /** 组织id */
     @Schema(description = "组织id")
-    private String orgId;
+    private String createOrg;
 
     /** 排序码 */
     @Schema(description = "排序码")

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomEditParam.java

@@ -42,7 +42,7 @@ public class TargetRoomEditParam {
 
     /** 组织id */
     @Schema(description = "组织id")
-    private String orgId;
+    private String createOrg;
 
     /** 排序码 */
     @Schema(description = "排序码")

+ 3 - 3
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomPageParam.java

@@ -48,8 +48,8 @@ public class TargetRoomPageParam {
     @Schema(description = "关键词")
     private String searchKey;
 
-    /** 房间 */
-    @Schema(description = "房间")
-    private String name;
+    /** 房间id */
+    @Schema(description = "房间id")
+    private String roomId;
 
 }

+ 7 - 5
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/service/impl/TargetRoomServiceImpl.java

@@ -51,8 +51,8 @@ public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetR
     public Page<TargetRoom> page(TargetRoomPageParam targetRoomPageParam) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         QueryWrapper<TargetRoom> queryWrapper = new QueryWrapper<TargetRoom>().checkSqlInjection();
-        if(ObjectUtil.isNotEmpty(targetRoomPageParam.getName())) {
-            queryWrapper.lambda().like(TargetRoom::getName, targetRoomPageParam.getName());
+        if(ObjectUtil.isNotEmpty(targetRoomPageParam.getRoomId())) {
+            queryWrapper.lambda().like(TargetRoom::getName, targetRoomPageParam.getRoomId());
         }
         queryWrapper.lambda().eq(TargetRoom::getCreateOrg, loginUser.getOrgId()).eq(TargetRoom::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
         if(ObjectUtil.isAllNotEmpty(targetRoomPageParam.getSortField(), targetRoomPageParam.getSortOrder())) {
@@ -70,8 +70,7 @@ public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetR
     public void add(TargetRoomAddParam targetRoomAddParam) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         TargetRoom targetRoom = BeanUtil.toBean(targetRoomAddParam, TargetRoom.class);
-        targetRoom.setCreateOrg(loginUser.getOrgId());
-        this.save(targetRoom);
+         this.save(targetRoom);
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -105,8 +104,11 @@ public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetR
 
     @Override
     public List<TargetRoom> myList() {
+        SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         LambdaQueryWrapper<TargetRoom> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(TargetRoom::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
+        queryWrapper.eq(TargetRoom::getCreateOrg,loginUser.getOrgId())
+                .eq(TargetRoom::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE)
+                .orderByAsc(TargetRoom::getSortCode);
         return list(queryWrapper);
     }
 }