吉安感知网项目-后端
linwei
2026-02-02 970567fcffdb6710288357a0d18fb66bc29d074e
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceServiceImpl.java
@@ -143,14 +143,15 @@
   public List<DeviceTypeStatisticsVO> getDeviceTypeStatistics() {
      // 统计范围限定在当前部门及下级部门
      List<Long> deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId()));
      return baseMapper.getDeviceTypeStatistics(deptList);
      List<DeviceTypeStatisticsVO> deviceTypeStatistics = baseMapper.getDeviceTypeStatistics(deptList, AuthUtil.getDeptId());
      return deviceTypeStatistics;
   }
   @Override
   public List<DeviceStatisticsVO> getDeviceOutStatistics(String effectiveRangeKmIsNotNull) {
      // 统计范围限定在当前部门及下级部门
      List<Long> deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId()));
      return baseMapper.getDeviceOutStatistics(effectiveRangeKmIsNotNull, deptList);
      return baseMapper.getDeviceOutStatistics(effectiveRangeKmIsNotNull, deptList, AuthUtil.getDeptId());
   }
   @Override
@@ -197,23 +198,24 @@
   }
   @Override
   public boolean updateTrackStatusByDeviceId(Long deviceId, Integer trackStatus) {
      return baseMapper.updateTrackStatusByDeviceId(deviceId, trackStatus) > 0;
   public boolean updateTrackStatusByDeviceId(Long deviceId, Integer trackStatus, String outTarget) {
      return baseMapper.updateTrackStatusByDeviceId(deviceId, trackStatus, outTarget) > 0;
   }
   /**
    * 查询非本部门区域的设备
    *
    * @param regionCode 区域编码,用于查询不在该区域内的设备
    * @param deptId 机构ID,用于限定查询范围
    * @return 设备列表
    */
   @Override
   public List<FwDeviceVO> getNonDeptAreaDevices() {
      // 1. 获取当前用户的部门ID
      String currentDeptId = AuthUtil.getDeptId();
      Dept dept = SysCache.getDept(Long.valueOf(currentDeptId));
      // 3. 查询不在这些部门区域内的设备
      Region byCode = RegionCache.getByCode(dept.getAreaCode());
      List<FwDeviceVO> deviceList = baseMapper.selectNonDeptAreaDevices(byCode.getName(), currentDeptId);
   public List<FwDeviceVO> getNonDeptAreaDevices(String regionCode, String deptId) {
      // 1. 根据区域编码获取区域名称
      Region region = RegionCache.getByCode(regionCode);
      String regionName = region != null ? region.getName() : null;
      // 2. 查询不在这些部门区域内的设备
      List<FwDeviceVO> deviceList = baseMapper.selectNonDeptAreaDevices(regionName, deptId);
      return deviceList;
   }
}