EmployeeMapper.xml 5.67 KB
Newer Older
liqin's avatar
liqin committed
1 2
<?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">
liqin's avatar
liqin committed
3
<mapper namespace="cn.wisenergy.chnmuseum.party.mapper.EmployeeMapper">
liqin's avatar
liqin committed
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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="Employee">
        <id column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="password_hash" property="passwordHash"/>
        <result column="password_salt" property="passwordSalt"/>
        <result column="code" property="code"/>
        <result column="name" property="name"/>
        <result column="avatar" property="avatar"/>
        <result column="sex" property="sex"/>
        <result column="id_number" property="idNumber"/>
        <result column="mobile" property="mobile"/>
        <result column="email" property="email"/>
        <result column="status" property="status"/>
        <result column="sortorder" property="sortorder"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="bank_branch_id" property="bankBranchId"/>
    </resultMap>

    <select id="selectRolenameList" resultMap="BaseResultMap">
        SELECT
        e.id,
        e.username,
        e.code,
        e.name,
        e.mobile,
        e.status,
        e.id_number,
        e.sex,
        e.avatar,
        r.id AS roleId,
        r.name AS roleName,
        e.bank_branch_id,
        bbi.name AS bankBranchName
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        LEFT JOIN bank_branch_info bbi ON bbi.id = e.bank_branch_id
        WHERE e.is_deleted = '0'
        <if test="name!=null and name!='' ">
            and (e.username LIKE concat('%', #{name}, '%')
            OR e.name LIKE concat('%', #{name}, '%')
            OR r.name LIKE concat('%', #{name}, '%')
            OR bbi.name LIKE concat('%', #{name}, '%'))
        </if>
        ORDER BY
        CONVERT (e.NAME USING gbk) COLLATE gbk_chinese_ci ASC
    </select>

    <select id="selectByEmpId" resultMap="BaseResultMap">
        SELECT
        e.id,
        e.username,
        e.code,
        e.name,
        e.mobile,
        e.status,
        e.id_number,
        e.sex,e.avatar,
        r.id AS roleId,
        r.name AS roleName,
        e.bank_branch_id
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        <where>
            e.is_deleted = '0'
            <if test=" empId != null and empId != '' ">
                AND e.id = #{empId}
            </if>
        </where>
    </select>

    <select id="selectByUsername" resultMap="BaseResultMap">
        SELECT
        e.*,
        r.id AS roleId,
        r.name AS roleName,
        r.is_allow_login AS allowLogin,
        bbi.`name` AS bankBranchName
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        LEFT JOIN bank_branch_info bbi ON bbi.id = e.bank_branch_id
        <where>
            e.is_deleted = '0'
            <if test=" username != null and username != '' ">
                AND e.username = #{username}
            </if>
        </where>
    </select>

    <select id="getEmpCodeBybankId" resultMap="BaseResultMap">
        SELECT
        e.*,
        r.id AS roleId,
        r.name AS roleName,
        r.is_allow_login AS allowLogin,
        bbi.`name` AS bankBranchName
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        LEFT JOIN bank_branch_info bbi ON bbi.id = e.bank_branch_id
        <where>
            e.is_deleted = '0'
            AND e.`status` = '1'
            AND r.id = '4'
            <if test=" bankId != null and bankId != '' ">
                AND e.bank_branch_id = #{bankId}
            </if>
        </where>
        LIMIT 1
    </select>

    <!--给支行管理员查询自己网点人员-->
    <select id="selectOwnEmpList" resultMap="BaseResultMap">
        SELECT
        e.id,
        e.username,
        e.code,
        e.name,
        e.mobile,
        e.status,
        e.id_number,
        e.sex,
        e.avatar,
        r.id AS roleId,
        r.name AS roleName,
        e.bank_branch_id,
        bbi.`name` AS bankBranchName
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        LEFT JOIN bank_branch_info bbi ON bbi.id = e.bank_branch_id
        WHERE e.is_deleted = '0'
        <if test="currBankID!=null and currBankID!='' ">
            and e.bank_branch_id = #{currBankID}
        </if>
        <if test="name!=null and name!='' ">
            and (e.username LIKE concat('%', #{name}, '%')
            OR e.name LIKE concat('%', #{name}, '%'))
        </if>
        ORDER BY
        CONVERT (e.NAME USING gbk) COLLATE gbk_chinese_ci ASC
    </select>

    <!--查询当前网点下启用的大堂主管-->
    <select id="selectEmpListByBankId" resultMap="BaseResultMap">
        SELECT
        e.id
        FROM employee e
        LEFT JOIN ref_employee_role rer ON rer.employee_id = e.id
        LEFT JOIN role r ON r.id = rer.role_id
        WHERE e.is_deleted = '0' AND e.`status` = '1' AND r.id = '4'
        <if test="employeeId!=null and employeeId!='' ">
            and e.id != #{employeeId}
        </if>
        <if test="currBankId!=null and currBankId!='' ">
            and e.bank_branch_id = #{currBankId}
        </if>
    </select>
</mapper>