xuhy
2025-04-27 5fa6e6f8410ef9d057174bcff2a3c5038c54a551
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?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.ruoyi.system.mapper.TDeptMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TDept">
        <id column="id" property="id" />
        <result column="dept_id" property="deptId" />
        <result column="dept_name" property="deptName" />
        <result column="status" property="status" />
        <result column="remark" property="remark" />
        <result column="disable_remark" property="disableRemark" />
        <result column="operating_time" property="operatingTime" />
        <result column="operating_person" property="operatingPerson" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
    </resultMap>
 
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, dept_id, dept_name, status, remark, disable_remark, operating_time, operating_person, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.vo.DeptVO">
        select
            t.id,
            t.dept_id,
            t.dept_name,
            t.status,
            t.remark,
            t.disable_remark,
            t.operating_time,
            t.operating_person,
            t.create_time,
            t.update_time,
            t.create_by,
            t.update_by,
            t.disabled,
            b.userCount
        from t_dept t
                 LEFT JOIN
             (SELECT a.id,COUNT(tu.user_id) AS userCount
              FROM t_dept a
              LEFT JOIN t_dept_to_user tu ON a.id = tu.dept_id
              where a.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
              GROUP BY a.id) b on t.id = b.id
        <where>
            <if test="query.deptIdOrName != null and query.deptIdOrName != ''">
                AND (t.dept_id like concat('%', #{query.deptIdOrName},'%')
                         OR t.dept_name like concat('%', #{query.deptIdOrName},'%'))
            </if>
            AND t.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        ORDER BY t.create_time DESC
    </select>
 
</mapper>