baizonghao
2023-02-24 801b7d11f1ce9b49f35af7eec572143662c4daf4
ycl-common/src/main/resources/mapper/depart/UmsDepartMapper.xml
@@ -38,7 +38,7 @@
        FROM ums_depart ud
                 LEFT JOIN ums_depart_manager udm ON ud.id = udm.depart_id
                 LEFT JOIN ums_admin ua ON udm.user_id = ua.id
        where ud.is_deleted = 0
        where ud.is_deleted = 0 and ud.status=1
    </select>
    <select id="selectPageByName" resultMap="DepartVOMap">
        SELECT t_0.*,
@@ -61,5 +61,37 @@
        left join ums_depart as pd on t_0.parent_id = pd.id
    </select>
    <select id="selectSurplusUser" resultType="com.ycl.entity.user.UmsAdmin">
        SELECT
            t.id,
            t3.username
        FROM
            ( SELECT t1.id FROM ums_admin t1 UNION ALL SELECT t2.user_id FROM ums_depart_manager t2 ) t
                LEFT JOIN ums_admin t3  on t3.id =t.id
        GROUP BY
            id
        HAVING
            count( * )= 1
    </select>
    <select id="selectSurplusUserAndExistUser" resultType="com.ycl.entity.user.UmsAdmin" parameterType="java.lang.Long">
        SELECT
            t4.id,
            t4.username
        FROM
            ums_depart_manager t3
                LEFT JOIN ums_admin t4 ON t3.user_id = t4.id
        WHERE
            t3.depart_id = #{id} UNION ALL
        SELECT
            t.id,
            t3.username
        FROM
            ( SELECT t1.id FROM ums_admin t1 UNION ALL SELECT t2.user_id FROM ums_depart_manager t2 ) t
                LEFT JOIN ums_admin t3 ON t3.id = t.id
        GROUP BY
            id
        HAVING
            count( * )= 1
    </select>
</mapper>