aix
2024-07-24 2cba01a6b6f67cfa97d0c4e0cc589302fab817ba
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml
@@ -13,6 +13,7 @@
        <result column="sort" property="sort"/>
        <result column="remark" property="remark"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="ad_code" property="adCode"/>
    </resultMap>
    <resultMap id="deptVOResultMap" type="cn.gistack.system.vo.DeptVO">
@@ -26,6 +27,7 @@
        <result column="remark" property="remark"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="has_children" property="hasChildren"/>
        <result column="ad_code" property="adCode"/>
    </resultMap>
    <resultMap id="treeNodeResultMap" type="org.springblade.core.tool.node.TreeNode">
@@ -74,6 +76,22 @@
        ORDER BY sort
    </select>
    <select id="treeByParentId" 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="parentIds!=null and parentIds!=''">
            and
            <foreach item="id" collection="parentIds" open="(" separator="or" close=")">
                id = #{id} or parent_id = #{id} or parent_id in (
                select b.id from blade_dept b where b.is_deleted = 0 and b.PARENT_ID = #{id}
                )
            </foreach>
        </if>
        ORDER BY sort
    </select>
    <select id="lazyTree" resultMap="treeNodeResultMap" >
        SELECT
            dept.id,
@@ -92,7 +110,10 @@
        FROM
            blade_dept dept
        WHERE
            dept.parent_id = #{param2} AND dept.is_deleted = 0
        <foreach item="id" collection="param2" open="(" separator="or" close=")">
            dept.parent_id = #{id}
        </foreach>
             AND dept.is_deleted = 0
        <if test="param1!=null and param1!=''">
            and dept.tenant_id = #{param1}
        </if>
@@ -156,6 +177,7 @@
        dept.id,
        dept.parent_id parentId,
        dept.dept_name AS name,
        1 as isMan,
        0 AS phone,
        (
            SELECT
@@ -172,19 +194,30 @@
        </if>
    </select>
    <!--查询组织机构树数据(下级包含人员信息)-->
    <!--查询组织机构树数据(下级包含人员信息)(排除组织机构对应不上的人员)-->
    <select id="getUserMap" resultType="cn.gistack.common.node.DeptUserTreeNode">
        select
        bu.id,
        bu.dept_id parentId,
        bu.account AS name,
        bu.real_name AS name,
        bu.phone,
        2 as isMan,
        0 as hasChildren
        from blade_user bu left join blade_dept bd on bd.id = bu.dept_id
        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 like concat(concat('%',#{treeNode.id}),'%')
        </if>
    </select>
    <select id="getResDept" resultType="java.lang.String">
        SELECT WM_CONCAT(res_guid)
        FROM blade_dept where res_guid is not null and res_guid != ''
        and id in
        <foreach collection="deptIds.split(',')" item="item" index="index" open="(" separator="," close=")">
            #{item}
        </foreach>
    </select>
</mapper>