| | |
| | | |
| | | <select id="lazyList" resultMap="deptVOResultMap"> |
| | | SELECT |
| | | dept.* , |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept |
| | | WHERE |
| | | parent_id = dept.id and is_deleted = 0 |
| | | ) AS "has_children" |
| | | dept.* , |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept dept |
| | | blade_dept |
| | | WHERE |
| | | parent_id = dept.id and is_deleted = 0 |
| | | ) AS "has_children" |
| | | FROM |
| | | blade_dept dept |
| | | WHERE dept.is_deleted = 0 |
| | | <if test="param1!=null and param1!=''"> |
| | | and dept.tenant_id = #{param1} |
| | |
| | | <if test="param3.fullName!=null and param3.fullName!=''"> |
| | | and dept.full_name like concat(concat('%', #{param3.fullName}),'%') |
| | | </if> |
| | | <if test="param3.showWg != null and param3.showWg != ''"> |
| | | and dept.dept_name not LIKE '第%网格' |
| | | </if> |
| | | ORDER BY dept.sort |
| | | </select> |
| | | |
| | | <select id="tree" resultMap="treeNodeResultMap"> |
| | | select id, parent_id, dept_name as title, id as "value", id as "key" from blade_dept where is_deleted = 0 |
| | | <if test="param1!=null and param1!=''"> |
| | | and tenant_id = #{param1} |
| | | |
| | | <if test="param2!=null"> |
| | | SELECT |
| | | id, |
| | | dept_name AS title, |
| | | id AS "value", |
| | | id AS "key", |
| | | parent_id |
| | | FROM |
| | | ( SELECT * FROM blade_dept WHERE is_deleted = 0 AND tenant_id = #{param1} ORDER BY parent_id, id ) |
| | | org_query, |
| | | ( SELECT @id := #{param2} ) initialisation |
| | | WHERE |
| | | (FIND_IN_SET( parent_id, @id ) > 0 or FIND_IN_SET( id, @id ) > 0) |
| | | AND @id := CONCAT(@id,',',id) ORDER BY sort |
| | | </if> |
| | | |
| | | <if test="param2!=null and param2!=''"> |
| | | and parent_id = #{param2} |
| | | <if test="param2==null"> |
| | | select id, parent_id, dept_name as title, id as "value", id as "key" from blade_dept where is_deleted = 0 |
| | | <if test="param1!=null and param1!=''"> |
| | | and tenant_id = #{param1} |
| | | </if> |
| | | ORDER BY sort |
| | | </if> |
| | | |
| | | <if test="param3!=null and param3!=''"> |
| | | and id = #{param3} |
| | | </if> |
| | | ORDER BY sort |
| | | </select> |
| | | |
| | | <select id="lazyTree" resultMap="treeNodeResultMap" > |
| | | <select id="lazyTree" resultMap="treeNodeResultMap"> |
| | | SELECT |
| | | dept.id, |
| | | dept.parent_id, |
| | | dept.dept_name AS title, |
| | | dept.id AS "value", |
| | | dept.id AS "key", |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept |
| | | WHERE |
| | | parent_id = dept.id and is_deleted = 0 |
| | | ) AS "has_children" |
| | | dept.id, |
| | | dept.parent_id, |
| | | dept.dept_name AS title, |
| | | dept.id AS "value", |
| | | dept.id AS "key", |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept dept |
| | | blade_dept |
| | | WHERE |
| | | dept.parent_id = #{param2} AND dept.is_deleted = 0 |
| | | <if test="param1!=null and param1!=''"> |
| | | and dept.tenant_id = #{param1} |
| | | </if> |
| | | parent_id = dept.id and is_deleted = 0 |
| | | ) AS "has_children" |
| | | FROM |
| | | blade_dept dept |
| | | <where> |
| | | <if test="param2!=null and param2!=''"> |
| | | and dept.parent_id = #{param2} |
| | | </if> |
| | | AND dept.is_deleted = 0 |
| | | <if test="param1!=null and param1!=''"> |
| | | and dept.tenant_id = #{param1} |
| | | </if> |
| | | </where> |
| | | ORDER BY dept.sort |
| | | </select> |
| | | |
| | |
| | | and c.id = #{id} |
| | | </select> |
| | | |
| | | |
| | | <select id="getDeptMap" resultType="org.springblade.modules.system.node.DeptUserTreeNode"> |
| | | SELECT |
| | | cast(dept.id as char) as id, |
| | | dept.parent_id parentId, |
| | | dept.dept_name AS name, |
| | | 1 as isMan, |
| | | 0 AS phone, |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept |
| | | WHERE |
| | | parent_id = dept.id and is_deleted = 0 |
| | | ) AS hasChildren |
| | | FROM |
| | | blade_dept dept WHERE dept.is_deleted = 0 |
| | | <if test="treeNode.id!=null and treeNode.id!=''"> |
| | | and dept.id = #{treeNode.id} |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="getDeptMapAndChildren" resultType="org.springblade.modules.system.node.DeptUserTreeNode"> |
| | | |
| | | SELECT |
| | | cast(dept.id as char) as id, |
| | | dept.parent_id parentId, |
| | | dept.dept_name AS name, |
| | | 1 as isMan, |
| | | 0 AS phone, |
| | | 0 as email, |
| | | (SELECT CASE WHEN count(1) > 0 THEN 1 ELSE 0 END FROM blade_dept WHERE parent_id = dept.id and is_deleted = 0) AS hasChildren, |
| | | IFNULL(bu.num,0) AS userCount |
| | | FROM |
| | | blade_dept dept |
| | | LEFT JOIN |
| | | ( |
| | | SELECT COUNT(*) num,dept_id FROM blade_user where is_deleted = 0 GROUP BY dept_id |
| | | ) bu on dept.id = bu.dept_id |
| | | WHERE dept.is_deleted = 0 |
| | | <if test="treeNode.id!=null and treeNode.id!=''"> |
| | | and dept.id = #{treeNode.id} |
| | | </if> |
| | | |
| | | union |
| | | |
| | | SELECT |
| | | cast(dept.id as char) as id, |
| | | dept.parent_id parentId, |
| | | dept.dept_name AS name, |
| | | 1 as isMan, |
| | | 0 AS phone, |
| | | 0 as email, |
| | | (SELECT CASE WHEN count(1) > 0 THEN 1 ELSE 0 END FROM blade_dept WHERE parent_id = dept.id and is_deleted = 0) AS hasChildren, |
| | | IFNULL(bu.num,0) AS userCount |
| | | FROM |
| | | blade_dept dept |
| | | LEFT JOIN |
| | | ( |
| | | SELECT COUNT(*) num,dept_id FROM blade_user where is_deleted = 0 GROUP BY dept_id |
| | | ) bu on dept.id = bu.dept_id |
| | | WHERE dept.is_deleted = 0 |
| | | <if test="treeNode.id!=null and treeNode.id!=''"> |
| | | AND ancestors LIKE CONCAT( '%', #{treeNode.id}, '%') |
| | | </if> |
| | | |
| | | |
| | | |
| | | |
| | | </select> |
| | | |
| | | <select id="getDeptMapAndChild" resultType="org.springblade.modules.system.node.DeptUserTreeNode"> |
| | | |
| | | SELECT |
| | | cast( dept.id AS CHAR ) AS id, |
| | | dept.parent_id parentId, |
| | | dept.dept_name AS NAME, |
| | | 1 AS isMan, |
| | | 0 AS phone, |
| | | ( SELECT CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END FROM blade_dept WHERE parent_id = dept.id AND is_deleted = 0 ) AS hasChildren |
| | | FROM |
| | | blade_dept dept |
| | | WHERE |
| | | dept.is_deleted = 0 |
| | | AND dept.parent_id = #{treeNode.id} |
| | | |
| | | </select> |
| | | |
| | | |
| | | <!--查询组织机构树数据(下级包含人员信息)(排除组织机构对应不上的人员)--> |
| | | <select id="getUserMap" resultType="org.springblade.modules.system.node.DeptUserTreeNode"> |
| | | select |
| | | bu.id, |
| | | bu.dept_id parentId, |
| | | bu.real_name AS name, |
| | | bu.phone, |
| | | bu.email, |
| | | 2 as isMan, |
| | | 0 as hasChildren |
| | | from blade_user bu join blade_dept bd on find_in_set(bu.dept_id,bd.id) |
| | | where 1=1 and bu.is_deleted = 0 and bu.status = 1 |
| | | <if test="treeNode.id!=null and treeNode.id!=''"> |
| | | and (bu.dept_id = #{treeNode.id} or bd.ancestors LIKE CONCAT( '%', #{treeNode.id}, '%')) |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="getUserMapByDeptIds" resultType="org.springblade.modules.system.node.DeptUserTreeNode"> |
| | | select |
| | | bu.id, |
| | | bu.dept_id parentId, |
| | | bu.real_name AS name, |
| | | bu.phone, |
| | | bu.email, |
| | | 2 as isMan, |
| | | 0 as hasChildren |
| | | from blade_user bu join blade_dept bd on find_in_set(bu.dept_id,bd.id) |
| | | where 1=1 and bu.is_deleted = 0 and bu.status = 1 |
| | | <if test="deptIds !=null and deptIds!=''"> |
| | | and bu.dept_id in |
| | | <foreach collection="deptIds.split(',')" item="id" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </if> |
| | | </select> |
| | | |
| | | |
| | | |
| | | <!--查询网格对应的机构信息(包含父级机构名称)--> |
| | | <select id="getGridDeptAndParentList" resultType="org.springblade.modules.system.vo.DeptVO"> |
| | | select bd.*,bd1.dept_name as parentName from blade_dept bd |
| | |
| | | where bd.dept_name like '%网格%' |
| | | </select> |
| | | |
| | | <!--查询对应的派出所--> |
| | | <select id="getDeptByDeptIds" resultType="org.springblade.modules.system.entity.Dept"> |
| | | select * from blade_dept |
| | | where is_deleted = 0 |
| | | and locate(id,#{deptId})>0 |
| | | and dept_name like '%派出所%' |
| | | </select> |
| | | |
| | | </mapper> |