2026-04-03 18:23:39 +08:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
|
|
|
|
|
|
|
<mapper namespace="com.zcloud.persistence.mapper.DeviceRegionMapper">
|
|
|
|
|
|
|
|
|
|
<select id="listPage" resultType="com.zcloud.persistence.dataobject.DeviceRegionDO">
|
|
|
|
|
SELECT
|
2026-04-07 16:40:54 +08:00
|
|
|
rc.id,
|
|
|
|
|
rc.region_config_id AS regionConfigId,
|
|
|
|
|
fr.id AS fireRegionId,
|
|
|
|
|
fr.fire_region_name AS fireRegionName,
|
|
|
|
|
fr.fire_region_code AS fireRegionCode,
|
|
|
|
|
fr.department_id AS departmentId,
|
2026-04-03 18:23:39 +08:00
|
|
|
d.name AS departmentName,
|
2026-04-07 16:40:54 +08:00
|
|
|
rc.manager_id AS managerId,
|
|
|
|
|
u.name AS managerName,
|
|
|
|
|
rc.status,
|
|
|
|
|
rc.remarks,
|
|
|
|
|
rc.create_id AS createId,
|
|
|
|
|
rc.create_name AS createName,
|
|
|
|
|
rc.create_time AS createTime,
|
|
|
|
|
rc.update_id AS updateId,
|
|
|
|
|
rc.update_name AS updateName,
|
|
|
|
|
rc.update_time AS updateTime,
|
|
|
|
|
rc.tenant_id AS tenantId,
|
|
|
|
|
rc.org_id AS orgId,
|
|
|
|
|
IFNULL(bindRel.bindSensorCount, 0) AS bindSensorCount
|
|
|
|
|
FROM `jjb-saas-zcloud-fire-check`.fire_region fr
|
|
|
|
|
LEFT JOIN iot_alarm_region_config rc ON rc.fire_region_id = fr.id AND rc.delete_enum = 'FALSE'
|
|
|
|
|
LEFT JOIN department d ON fr.department_id = d.id AND d.delete_enum = 'FALSE'
|
|
|
|
|
LEFT JOIN user u ON rc.manager_id = u.id AND u.delete_enum = 'FALSE'
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT fire_region_id, COUNT(1) AS bindSensorCount
|
|
|
|
|
FROM iot_alarm_region_sensor_rel
|
|
|
|
|
WHERE delete_enum = 'FALSE'
|
|
|
|
|
GROUP BY fire_region_id
|
|
|
|
|
) bindRel ON bindRel.fire_region_id = fr.id
|
2026-04-03 18:23:39 +08:00
|
|
|
<where>
|
2026-04-07 16:40:54 +08:00
|
|
|
fr.delete_enum = 'FALSE'
|
|
|
|
|
AND fr.state = 0
|
2026-04-03 18:23:39 +08:00
|
|
|
<if test="params.tenantId != null">
|
2026-04-07 16:40:54 +08:00
|
|
|
AND fr.corpinfo_id = #{params.tenantId}
|
2026-04-03 18:23:39 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="params.fireRegionCode != null and params.fireRegionCode != ''">
|
2026-04-07 16:40:54 +08:00
|
|
|
AND fr.fire_region_code LIKE CONCAT('%', #{params.fireRegionCode}, '%')
|
|
|
|
|
</if>
|
|
|
|
|
<if test="params.fireRegionId != null">
|
|
|
|
|
AND fr.id = #{params.fireRegionId}
|
2026-04-03 18:23:39 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="params.departmentId != null">
|
2026-04-07 16:40:54 +08:00
|
|
|
AND fr.department_id = #{params.departmentId}
|
2026-04-03 18:23:39 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="params.managerId != null">
|
|
|
|
|
AND rc.manager_id = #{params.managerId}
|
|
|
|
|
</if>
|
|
|
|
|
<if test="params.status != null">
|
|
|
|
|
AND rc.status = #{params.status}
|
|
|
|
|
</if>
|
|
|
|
|
</where>
|
2026-04-07 16:40:54 +08:00
|
|
|
ORDER BY fr.create_time DESC
|
2026-04-03 18:23:39 +08:00
|
|
|
</select>
|
|
|
|
|
</mapper>
|