吉安感知网项目-后端
linwei
2026-04-02 b954d7a119eb635394bf4ff3619a9ab4b4978e48
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneManageMapper.xml
@@ -26,7 +26,7 @@
            dsm.*,
            ds.scene_name as defense_scene_name
        from ja_fw_defense_scene_manage dsm
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id and ds.is_deleted = 0
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id::VARCHAR and ds.is_deleted = 0
        <where>
            dsm.is_deleted = 0
            <if test="param2.name != null and param2.name != ''">
@@ -46,7 +46,7 @@
            dsm.*,
            ds.scene_name as defense_scene_name
        from ja_fw_defense_scene_manage dsm
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id and ds.is_deleted = 0
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id::VARCHAR and ds.is_deleted = 0
        where dsm.is_deleted = 0
          and dsm.id = #{id}
    </select>
@@ -72,7 +72,7 @@
        and find_in_set(ad.id, ds.area_divide_ids) > 0
        ) as device_count
        from ja_fw_defense_scene_manage dsm
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id and ds.is_deleted = 0
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id::VARCHAR and ds.is_deleted = 0
        <where>
            dsm.is_deleted = 0
            <if test="time != null">
@@ -102,7 +102,7 @@
            SELECT
                ad.device_ids
            FROM ja_fw_defense_scene_manage dsm
            LEFT JOIN ja_fw_defense_scene ds ON ds.id = dsm.defense_scene_id AND ds.is_deleted = 0
            LEFT JOIN ja_fw_defense_scene ds ON ds.id = dsm.defense_scene_id::VARCHAR AND ds.is_deleted = 0
            LEFT JOIN ja_fw_area_divide ad ON FIND_IN_SET(ad.id, ds.area_divide_ids) > 0 AND ad.is_deleted = 0
            WHERE dsm.id = #{id}
        ) ad ON CHAR_LENGTH(ad.device_ids) - CHAR_LENGTH(REPLACE(ad.device_ids, ',', '')) >= numbers.n - 1
@@ -114,7 +114,7 @@
        dsm.*,
        ds.scene_name as defense_scene_name
        from ja_fw_defense_scene_manage dsm
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id and ds.is_deleted = 0
        left join ja_fw_defense_scene ds on ds.id = dsm.defense_scene_id::VARCHAR and ds.is_deleted = 0
        left join ja_fw_area_divide ad on FIND_IN_SET(ad.id, ds.area_divide_ids) > 0 and ad.is_deleted = 0
        inner join (
                SELECT
@@ -125,12 +125,12 @@
                    d.is_deleted = 0
                    AND d.is_enabled = 1
                    AND d.final_outbound_area IS NOT NULL
                <if test="regionCode != null and regionCode != ''">
                    and ( d.final_outbound_area_code like concat(#{regionCode},'%')
                    <if test="currentDeptId != null and currentDeptId != '' ">
        <if test="fwBaseInfo.regionCode != null and fwBaseInfo.regionCode != ''">
            and ( d.final_outbound_area_code like concat(#{fwBaseInfo.regionCode},'%')
            <if test="fwBaseInfo.currentDeptId != null and fwBaseInfo.currentDeptId != '' ">
                        or d.id in (
                        SELECT device_id FROM ja_fw_device_per_share
                        WHERE loan_to_dept_id = #{currentDeptId}
                WHERE loan_to_dept_id = #{fwBaseInfo.currentDeptId}
                        AND is_deleted = 0
                        )
                    </if>
@@ -141,6 +141,10 @@
            ) dd on find_in_set(dd.id, ad.device_ids)
        <where>
            dsm.is_deleted = 0
            <if test="time != null">
                and (dsm.effective_date_start is null or dsm.effective_date_start &lt;= #{time})
                and (dsm.effective_date_end is null or dsm.effective_date_end &gt;= #{time})
            </if>
        </where>
    </select>