吉安感知网项目-后端
rain
2026-01-26 ae03722bfb1d5612ac666cf8c5b8f25863f08606
查询设备是否绑定区域
7 files modified
63 ■■■■■ changed files
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java 8 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml 11 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java 8 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java 9 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceController.java 14 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceService.java 8 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java
@@ -72,6 +72,14 @@
    List<FwDefenseSceneVO> selectFwDefenseSceneListByAreaIds(@Param("areaIds") List<Long> areaIds);
    /**
     * 根据设备ID统计关联区域数量
     *
     * @param deviceId
     * @return
     */
    Integer selectAreaCountByDeviceId(@Param("deviceId") Long deviceId);
    /**
     * 统计分页
     *
     * @param page
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml
@@ -232,6 +232,17 @@
        </where>
    </select>
    <select id="selectAreaCountByDeviceId" resultType="java.lang.Integer">
        select count(1)
        from ja_fw_area_divide ad
        <where>
            ad.is_deleted = 0
            and ad.device_ids is not null
            and ad.device_ids != ''
            and find_in_set(#{deviceId}, replace(ad.device_ids, ' ', ''))
        </where>
    </select>
    <select id="selectFwAreaDivideDetail" resultMap="fwAreaDivideResultMap">
        select
        ad.id,
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java
@@ -62,6 +62,14 @@
    Map<Long, String> selectSceneNameByDeviceIds(List<Long> deviceIds);
    /**
     * 根据设备ID判断是否绑定区域
     *
     * @param deviceId
     * @return
     */
    boolean existsAreaByDeviceId(Long deviceId);
    /**
     * 统计分页
     *
     * @param page
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java
@@ -152,6 +152,15 @@
    }
    @Override
    public boolean existsAreaByDeviceId(Long deviceId) {
        if (deviceId == null) {
            return false;
        }
        Integer count = baseMapper.selectAreaCountByDeviceId(deviceId);
        return count != null && count > 0;
    }
    @Override
    public IPage<FwAreaDivideStatisticsVO> selectFwAreaDivideStatisticsPage(IPage<FwAreaDivideStatisticsVO> page,
            FwAreaDivideStatisticsDTO fwAreaDivideStatistics) {
        return page.setRecords(baseMapper.selectFwAreaDivideStatisticsPage(page, fwAreaDivideStatistics));
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceController.java
@@ -160,6 +160,20 @@
    }
    /**
     * 设备区域绑定校验
     */
    @GetMapping("/checkAreaBind")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "设备区域绑定校验", notes = "传入deviceId")
    public R<Boolean> checkAreaBind(@ApiParam(value = "设备ID", required = true) @RequestParam Long deviceId) {
        FwDeviceEntity device = fwDeviceService.getById(deviceId);
        if (device == null || (device.getIsDeleted() != null && device.getIsDeleted() != 0)) {
            return R.fail("该设备不存在");
        }
        return R.data(fwDeviceService.existsAreaBindByDeviceId(deviceId));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDevice")
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceService.java
@@ -121,4 +121,12 @@
     * @return
     */
    Map<Long, String> selectSceneNameByDeviceIds(List<Long> deviceIds);
    /**
     * 判断设备是否绑定区域
     *
     * @param deviceId
     * @return
     */
    boolean existsAreaBindByDeviceId(Long deviceId);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceServiceImpl.java
@@ -145,4 +145,9 @@
    public Map<Long, String> selectSceneNameByDeviceIds(List<Long> deviceIds) {
        return fwAreaDivideService.selectSceneNameByDeviceIds(deviceIds);
    }
    @Override
    public boolean existsAreaBindByDeviceId(Long deviceId) {
        return fwAreaDivideService.existsAreaByDeviceId(deviceId);
    }
}