吉安感知网项目-后端
rain
2026-01-13 ba0fbe5e47b484d3c2cc89b8d28f78c7ecf9b44c
场景,区域的列表新增父子级id查询
10 files modified
96 ■■■■■ changed files
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwAreaDivideController.java 8 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseSceneController.java 8 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml 33 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml 27 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseSceneService.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java 4 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseSceneServiceImpl.java 4 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwAreaDivideController.java
@@ -86,9 +86,11 @@
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "列表", notes = "传入filterSelected")
    public R<List<FwAreaDivideVO>> list(@ApiParam(value = "是否过滤已被选择的数据(1过滤 0不过滤)") @RequestParam(required = false) Integer filterSelected) {
        List<FwAreaDivideVO> list = fwAreaDivideService.selectFwAreaDivideList(filterSelected);
    @ApiOperation(value = "列表", notes = "传入filterSelected或id")
    public R<List<FwAreaDivideVO>> list(
        @ApiParam(value = "是否过滤已被选择的数据(1过滤 0不过滤)") @RequestParam(required = false) Integer filterSelected,
        @ApiParam(value = "场景id") @RequestParam(required = false) Long id) {
        List<FwAreaDivideVO> list = fwAreaDivideService.selectFwAreaDivideList(filterSelected, id);
        return R.data(list);
    }
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseSceneController.java
@@ -77,9 +77,11 @@
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "列表", notes = "传入filterSelected")
    public R<List<FwDefenseSceneVO>> list(@ApiParam(value = "是否过滤已被选择的数据(1过滤 0不过滤)") @RequestParam(required = false) Integer filterSelected) {
        List<FwDefenseSceneVO> list = fwDefenseSceneService.selectFwDefenseSceneList(filterSelected);
    @ApiOperation(value = "列表", notes = "传入filterSelected或id")
    public R<List<FwDefenseSceneVO>> list(
        @ApiParam(value = "是否过滤已被选择的数据(1过滤 0不过滤)") @RequestParam(required = false) Integer filterSelected,
        @ApiParam(value = "区域id") @RequestParam(required = false) Long id) {
        List<FwDefenseSceneVO> list = fwDefenseSceneService.selectFwDefenseSceneList(filterSelected, id);
        return R.data(list);
    }
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java
@@ -49,9 +49,10 @@
     * 列表
     *
     * @param filterSelected
     * @param sceneId
     * @return
     */
    List<FwAreaDivideVO> selectFwAreaDivideList(@Param("filterSelected") Integer filterSelected);
    List<FwAreaDivideVO> selectFwAreaDivideList(@Param("filterSelected") Integer filterSelected, @Param("sceneId") Long sceneId);
    /**
     * 统计分页
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml
@@ -156,16 +156,29 @@
        left join ja_fw_police_station ps on ps.id = ad.police_station_id and ps.is_deleted = 0
        <where>
            ad.is_deleted = 0
            <if test="filterSelected != null and filterSelected == 1">
                and not exists (
                    select 1
                    from ja_fw_defense_scene ds
                    where ds.is_deleted = 0
                      and ds.area_divide_ids is not null
                      and ds.area_divide_ids != ''
                      and find_in_set(ad.id, ds.area_divide_ids)
                )
            </if>
            <choose>
                <when test="sceneId != null">
                    and exists (
                        select 1
                        from ja_fw_defense_scene ds
                        where ds.is_deleted = 0
                          and ds.id = #{sceneId}
                          and ds.area_divide_ids is not null
                          and ds.area_divide_ids != ''
                          and find_in_set(ad.id, replace(ds.area_divide_ids, ' ', ''))
                    )
                </when>
                <when test="filterSelected != null and filterSelected == 1">
                    and not exists (
                        select 1
                        from ja_fw_defense_scene ds
                        where ds.is_deleted = 0
                          and ds.area_divide_ids is not null
                          and ds.area_divide_ids != ''
                          and find_in_set(ad.id, ds.area_divide_ids)
                    )
                </when>
            </choose>
        </where>
    </select>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.java
@@ -46,9 +46,10 @@
     * 列表
     *
     * @param filterSelected
     * @param areaId
     * @return
     */
    List<FwDefenseSceneVO> selectFwDefenseSceneList(@Param("filterSelected") Integer filterSelected);
    List<FwDefenseSceneVO> selectFwDefenseSceneList(@Param("filterSelected") Integer filterSelected, @Param("areaId") Long areaId);
    /**
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml
@@ -87,16 +87,23 @@
        select ds.* from ja_fw_defense_scene ds
        <where>
            ds.is_deleted = 0
            <if test="filterSelected != null and filterSelected == 1">
                and not exists (
                    select 1
                    from ja_fw_defense_zone dz
                    where dz.is_deleted = 0
                      and dz.defense_scene_ids is not null
                      and dz.defense_scene_ids != ''
                      and find_in_set(ds.id, dz.defense_scene_ids)
                )
            </if>
            <choose>
                <when test="areaId != null">
                    and ds.area_divide_ids is not null
                    and ds.area_divide_ids != ''
                    and find_in_set(#{areaId}, replace(ds.area_divide_ids, ' ', ''))
                </when>
                <when test="filterSelected != null and filterSelected == 1">
                    and not exists (
                        select 1
                        from ja_fw_defense_zone dz
                        where dz.is_deleted = 0
                          and dz.defense_scene_ids is not null
                          and dz.defense_scene_ids != ''
                          and find_in_set(ds.id, dz.defense_scene_ids)
                    )
                </when>
            </choose>
        </where>
    </select>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java
@@ -47,9 +47,10 @@
     * 列表
     *
     * @param filterSelected
     * @param sceneId
     * @return
     */
    List<FwAreaDivideVO> selectFwAreaDivideList(Integer filterSelected);
    List<FwAreaDivideVO> selectFwAreaDivideList(Integer filterSelected, Long sceneId);
    /**
     * 统计分页
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseSceneService.java
@@ -44,9 +44,10 @@
     * 列表
     *
     * @param filterSelected
     * @param areaId
     * @return
     */
    List<FwDefenseSceneVO> selectFwDefenseSceneList(Integer filterSelected);
    List<FwDefenseSceneVO> selectFwDefenseSceneList(Integer filterSelected, Long areaId);
    /**
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java
@@ -49,8 +49,8 @@
    }
    @Override
    public List<FwAreaDivideVO> selectFwAreaDivideList(Integer filterSelected) {
        return baseMapper.selectFwAreaDivideList(filterSelected);
    public List<FwAreaDivideVO> selectFwAreaDivideList(Integer filterSelected, Long sceneId) {
        return baseMapper.selectFwAreaDivideList(filterSelected, sceneId);
    }
    @Override
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseSceneServiceImpl.java
@@ -134,8 +134,8 @@
    }
    @Override
    public List<FwDefenseSceneVO> selectFwDefenseSceneList(Integer filterSelected) {
        return baseMapper.selectFwDefenseSceneList(filterSelected);
    public List<FwDefenseSceneVO> selectFwDefenseSceneList(Integer filterSelected, Long areaId) {
        return baseMapper.selectFwDefenseSceneList(filterSelected, areaId);
    }
    private List<Long> parseIdList(String ids) {