|  |  | 
 |  |  |         <!--@mbg.generated--> | 
 |  |  |         <!--@Table ba_user--> | 
 |  |  |         <id property="id" column="id" /> | 
 |  |  |         <result property="name" column="name"/> | 
 |  |  |         <result property="blockId" column="blockId"/> | 
 |  |  |         <result property="userName" column="name"/> | 
 |  |  |         <result property="phone" column="phone"/> | 
 |  |  |         <result property="password" column="password"/> | 
 |  |  |         <result property="orgTag" column="orgTag"/> | 
 |  |  |         <result property="supperAdmin" column="supperAdmin"/> | 
 |  |  |         <result property="disabled" column="disabled" typeHandler="com.dy.common.mybatis.envm.EnumCodeTypeHandler" javaType="com.dy.common.mybatis.envm.Disabled"/> | 
 |  |  |         <result property="deleted" column="deleted" typeHandler="com.dy.common.mybatis.envm.EnumCodeTypeHandler" javaType="com.dy.common.mybatis.envm.Deleted"/> | 
 |  |  |         <result property="disabled" column="disabled" typeHandler="com.dy.common.mybatis.envm.EnumCodeTypeHandler" | 
 |  |  |                 javaType="com.dy.common.mybatis.envm.Disabled"/> | 
 |  |  |         <result property="deleted" column="deleted" typeHandler="com.dy.common.mybatis.envm.EnumCodeTypeHandler" | 
 |  |  |                 javaType="com.dy.common.mybatis.envm.Deleted"/> | 
 |  |  |     </resultMap> | 
 |  |  |  | 
 |  |  |     <resultMap id="partResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> | 
 |  |  |         <!--@mbg.generated--> | 
 |  |  |         <!--@Table ba_user--> | 
 |  |  |         <id property="id" column="id" /> | 
 |  |  |         <result property="name" column="name"/> | 
 |  |  |         <result property="userName" column="name"/> | 
 |  |  |         <result property="phone" column="phone"/> | 
 |  |  |         <result property="orgTag" column="orgTag"/> | 
 |  |  |         <result property="supperAdmin" column="supperAdmin"/> | 
 |  |  | 
 |  |  |  | 
 |  |  |     <resultMap id="loginResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> | 
 |  |  |         <id property="id" column="id" /> | 
 |  |  |         <result property="name" column="name"/> | 
 |  |  |         <result property="blockId" column="blockId"/> | 
 |  |  |         <result property="userName" column="name"/> | 
 |  |  |         <result property="phone" column="phone"/> | 
 |  |  |         <result property="orgTag" column="orgTag"/> | 
 |  |  |         <result property="supperAdmin" column="supperAdmin"/> | 
 |  |  | 
 |  |  |     </resultMap> | 
 |  |  |  | 
 |  |  |     <sql id="Base_Column_List"> | 
 |  |  |         id, name, phone, password, orgTag, supperAdmin, disabled, deleted | 
 |  |  |         id, blockId, name, phone, password, orgTag, supperAdmin, disabled, deleted | 
 |  |  |     </sql> | 
 |  |  |  | 
 |  |  |     <sql id="part_Column_List"> | 
 |  |  |         id, name, phone, disabled | 
 |  |  |         #{alias}.id, #{alias}.name, #{alias}.phone, #{alias}.disabled | 
 |  |  |     </sql> | 
 |  |  |  | 
 |  |  |     <sql id="Login_Column_List"> | 
 |  |  |         id, name, phone, orgTag, supperAdmin | 
 |  |  |         id, blockId, name, phone, orgTag, supperAdmin | 
 |  |  |     </sql> | 
 |  |  |  | 
 |  |  |     <select id="login" resultMap="loginResultMap" > | 
 |  |  | 
 |  |  |     <select id="selectTotal" parameterType="java.util.Map" resultType="java.lang.Long"> | 
 |  |  |         select | 
 |  |  |         count(*) | 
 |  |  |         from ba_user where supperAdmin!=1 and deleted!=1 | 
 |  |  |         from ba_user | 
 |  |  |         where supperAdmin!=1 and deleted!=1 | 
 |  |  |         <trim prefix="and" suffixOverrides="and"> | 
 |  |  |             <if test="name != null"> | 
 |  |  |             <if test="name != null and name != ''"> | 
 |  |  |                 name like concat('%', #{name}, '%') and | 
 |  |  |             </if> | 
 |  |  |             <if test="phone != null"> | 
 |  |  |             <if test="phone != null and phone !=''"> | 
 |  |  |                 phone = #{phone,jdbcType=VARCHAR} | 
 |  |  |             </if> | 
 |  |  |         </trim> | 
 |  |  |     </select> | 
 |  |  |     <select id="selectSome" parameterType="java.util.Map" resultMap="someResultMap"> | 
 |  |  |         select | 
 |  |  |         <include refid="part_Column_List" /> | 
 |  |  |         from ba_user where supperAdmin!=1 and deleted!=1 | 
 |  |  |         <include refid="part_Column_List" > | 
 |  |  |             <property name="alias" value="bu"/> | 
 |  |  |         </include>, | 
 |  |  |         bb.`name` blockName | 
 |  |  |         from ba_user bu | 
 |  |  |         left join ba_block bb on bu.blockId = bb.id | 
 |  |  |         where bu.supperAdmin!=1 and bu.deleted!=1 | 
 |  |  |         <trim prefix="and" suffixOverrides="and"> | 
 |  |  |             <if test="name != null"> | 
 |  |  |                 name like concat('%', #{name}, '%') and | 
 |  |  |             <if test="name != null and name != ''"> | 
 |  |  |                 bu.name like concat('%', #{name}, '%') and | 
 |  |  |             </if> | 
 |  |  |             <if test="phone != null"> | 
 |  |  |                 phone = #{phone,jdbcType=VARCHAR} | 
 |  |  |             <if test="phone != null and phone !=''"> | 
 |  |  |                 bu.phone = #{phone,jdbcType=VARCHAR} | 
 |  |  |             </if> | 
 |  |  |         </trim> | 
 |  |  |         order by id DESC | 
 |  |  | 
 |  |  |         </trim> | 
 |  |  |     </select> | 
 |  |  |     <insert id="putin" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> | 
 |  |  |         insert into ba_user (<include refid="Base_Column_List" />) | 
 |  |  | <!--        insert into ba_user (<include refid="Base_Column_List" />)--> | 
 |  |  |         insert into ba_user(id, blockId, name, phone, password, orgTag, supperAdmin, disabled, deleted) | 
 |  |  |         values (#{id,jdbcType=BIGINT}, | 
 |  |  |         #{name,jdbcType=VARCHAR}, | 
 |  |  |         #{blockId,jdbcType=BIGINT}, | 
 |  |  |         #{userName,jdbcType=VARCHAR}, | 
 |  |  |         #{phone,jdbcType=VARCHAR}, | 
 |  |  |         #{password,jdbcType=VARCHAR}, | 
 |  |  |         #{orgTag,jdbcType=VARCHAR}, | 
 |  |  | 
 |  |  |             <if test="id != null"> | 
 |  |  |                 id, | 
 |  |  |             </if> | 
 |  |  |             <if test="name != null"> | 
 |  |  |             <if test="blockId != null"> | 
 |  |  |                 blockId, | 
 |  |  |             </if> | 
 |  |  |            <if test="userName != null"> | 
 |  |  |                 `name`, | 
 |  |  |             </if> | 
 |  |  |             <if test="phone != null"> | 
 |  |  | 
 |  |  |             <if test="id != null"> | 
 |  |  |                 #{id,jdbcType=BIGINT}, | 
 |  |  |             </if> | 
 |  |  |             <if test="name != null"> | 
 |  |  |                 #{name,jdbcType=VARCHAR}, | 
 |  |  |             <if test="blockId != null"> | 
 |  |  |                 #{blockId,jdbcType=BIGINT}, | 
 |  |  |             </if> | 
 |  |  |            <if test="userName != null"> | 
 |  |  |                 #{userName,jdbcType=VARCHAR}, | 
 |  |  |             </if> | 
 |  |  |             <if test="phone != null"> | 
 |  |  |                 #{phone,jdbcType=VARCHAR}, | 
 |  |  | 
 |  |  |     <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> | 
 |  |  |         update ba_user | 
 |  |  |         <set> | 
 |  |  |             <if test="name != null"> | 
 |  |  |                 `name` = #{name,jdbcType=VARCHAR}, | 
 |  |  |             <if test="blockId != null"> | 
 |  |  |                 blockId = #{blockId,jdbcType=BIGINT}, | 
 |  |  |             </if> | 
 |  |  |            <if test="userName != null"> | 
 |  |  |                 `name` = #{userName,jdbcType=VARCHAR}, | 
 |  |  |             </if> | 
 |  |  |             <if test="phone != null"> | 
 |  |  |                 phone = #{phone,jdbcType=VARCHAR}, | 
 |  |  | 
 |  |  |                 deleted = #{deleted,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, | 
 |  |  |             </if> | 
 |  |  |         </set> | 
 |  |  |         where id = #{id,jdbcType=BIGINT} | 
 |  |  |         where id = #{id, jdbcType=BIGINT} | 
 |  |  |     </update> | 
 |  |  |     <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> | 
 |  |  |         update ba_user | 
 |  |  |         set `name` = #{name,jdbcType=VARCHAR}, | 
 |  |  |         set blockId = #{blockId,jdbcType=BIGINT}, | 
 |  |  |         `name` = #{userName,jdbcType=VARCHAR}, | 
 |  |  |         phone = #{phone,jdbcType=VARCHAR}, | 
 |  |  |         password = #{password,jdbcType=VARCHAR}, | 
 |  |  |         disabled = #{disabled,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, | 
 |  |  | 
 |  |  |         update ba_user set deleted = 1 | 
 |  |  |         where id = #{id,jdbcType=BIGINT} | 
 |  |  |     </delete> | 
 |  |  |  | 
 |  |  |     <!--根据用户编号获取用户信息--> | 
 |  |  |     <!--2024-01-09 废弃--> | 
 |  |  |     <select id="getUserInfos" resultType="com.dy.pipIrrGlobal.voBa.VoUserInfo"> | 
 |  |  |         SELECT | 
 |  |  |             user.id AS userId, | 
 |  |  |             user.`name` AS userName, | 
 |  |  |             rol.id AS roleId, | 
 |  |  |             rol.`name` AS roleName, | 
 |  |  |             per.permissions | 
 |  |  |         FROM ba_user user | 
 |  |  |             INNER JOIN ba_user_role use_rol ON user.id = use_rol.userId | 
 |  |  |             INNER JOIN ba_role rol ON rol.id = use_rol.roleId | 
 |  |  |             INNER JOIN ba_role_permissions per ON per.roleId = rol.id | 
 |  |  |         <where> | 
 |  |  |             <if test = "userId != null and userId > 0"> | 
 |  |  |                 AND user.id = #{userId} | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <!--根据用户编号获取用户信息--> | 
 |  |  |     <select id="getUserInfoById" resultType="java.util.Map"> | 
 |  |  |         SELECT | 
 |  |  |             us.id AS userId, | 
 |  |  |             us.name AS userName, | 
 |  |  |             us.phone, | 
 |  |  |             IFNULL(us.blockId, 0) AS blockId, | 
 |  |  |             IFNULL(blo.name, 0) AS blockName | 
 |  |  |         FROM ba_user us | 
 |  |  |             LEFT JOIN ba_block blo ON us.blockId = blo.id | 
 |  |  |         <where> | 
 |  |  |             AND us.disabled = 0 | 
 |  |  |             AND us.deleted = 0 | 
 |  |  |             <if test = "userId != null and userId > 0"> | 
 |  |  |                 AND us.id = #{userId} | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <!--根据指定的条件获取用户记录数--> | 
 |  |  |     <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> | 
 |  |  |         SELECT | 
 |  |  |             COUNT(*) AS recordCount | 
 |  |  |         FROM | 
 |  |  |         ( | 
 |  |  |         SELECT | 
 |  |  |         CAST(id AS char) AS id, | 
 |  |  |         phone, | 
 |  |  |         name AS userName, | 
 |  |  |         disabled AS stateId, | 
 |  |  |         (CASE | 
 |  |  |         WHEN disabled = 0 THEN '正常' | 
 |  |  |         WHEN disabled = 1 THEN '已禁用' | 
 |  |  |         END) AS stateName, | 
 |  |  |         CAST(blockId AS char) AS blockId, | 
 |  |  |         (SELECT name FROM ba_block WHERE id = user.blockId) AS blockName | 
 |  |  |         FROM ba_user user | 
 |  |  |         LEFT JOIN ba_user_role usro ON usro.userId = user.id | 
 |  |  |         <where> | 
 |  |  |             AND user.supperAdmin != 1 | 
 |  |  |             AND user.deleted = 0 | 
 |  |  |  | 
 |  |  |             <if test = "userName != null and userName !=''"> | 
 |  |  |                 AND user.name like CONCAT('%',#{userName},'%') | 
 |  |  |             </if> | 
 |  |  |  | 
 |  |  |             <if test = "phone != null and phone !=''"> | 
 |  |  |                 AND user.phone like CONCAT('%',#{phone},'%') | 
 |  |  |             </if> | 
 |  |  |  | 
 |  |  |             <if test = "roleId != null and roleId > 0"> | 
 |  |  |                 AND usro.roleId = #{roleId} | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |         GROUP BY user.id) c | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <!--根据指定条件获取用户列表--> | 
 |  |  |     <select id="getUsers" resultType="com.dy.pipIrrGlobal.voBa.VoUserInfo"> | 
 |  |  |         SELECT | 
 |  |  |             CAST(id AS char) AS id, | 
 |  |  |             phone, | 
 |  |  |             name AS userName, | 
 |  |  |             disabled AS stateId, | 
 |  |  |             (CASE | 
 |  |  |                  WHEN disabled = 0 THEN '正常' | 
 |  |  |                  WHEN disabled = 1 THEN '已禁用' | 
 |  |  |                 END) AS stateName, | 
 |  |  |             CAST(blockId AS char) AS blockId, | 
 |  |  |             (SELECT name FROM ba_block WHERE id = user.blockId) AS blockName | 
 |  |  |         FROM ba_user user | 
 |  |  |             LEFT JOIN ba_user_role usro ON usro.userId = user.id | 
 |  |  |         <where> | 
 |  |  |             AND user.supperAdmin != 1 | 
 |  |  |             AND user.deleted = 0 | 
 |  |  |  | 
 |  |  |             <if test = "userName != null and userName !=''"> | 
 |  |  |                 AND user.name like CONCAT('%',#{userName},'%') | 
 |  |  |             </if> | 
 |  |  |  | 
 |  |  |             <if test = "phone != null and phone !=''"> | 
 |  |  |                 AND user.phone like CONCAT('%',#{phone},'%') | 
 |  |  |             </if> | 
 |  |  |  | 
 |  |  |             <if test = "roleId != null and roleId > 0"> | 
 |  |  |                 AND usro.roleId = #{roleId} | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |         GROUP BY user.id | 
 |  |  |         ORDER BY user.id DESC | 
 |  |  |         <trim prefix="limit " > | 
 |  |  |             <if test="start != null and count != null"> | 
 |  |  |                 #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} | 
 |  |  |             </if> | 
 |  |  |         </trim> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <!--根据用户编号获取角色ID列表--> | 
 |  |  |     <select id="getRoleIdsByUserId" resultType="java.util.HashMap"> | 
 |  |  |         SELECT | 
 |  |  |             roleId | 
 |  |  |         FROM ba_user_role | 
 |  |  |         WHERE userId = #{userId} | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="getRoleNamesByUserId" resultType="java.util.HashMap"> | 
 |  |  |         SELECT | 
 |  |  |             ro.name AS roleName | 
 |  |  |         FROM ba_user_role usro | 
 |  |  |                  INNER JOIN ba_role ro ON usro.roleId = ro.id | 
 |  |  |         WHERE userId = #{userId} | 
 |  |  |  | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
 |  |  |         <!--@mbg.generated--> | 
 |  |  |         select | 
 |  |  |         <include refid="Base_Column_List" /> | 
 |  |  |         from ba_user | 
 |  |  |         where id = #{id,jdbcType=BIGINT} | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="getPhones" resultType="java.lang.String"> | 
 |  |  |         SELECT phone FROM ba_user WHERE deleted = 0 and disabled = 0 | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <!--获取简单用户数据列表--> | 
 |  |  |     <select id="getSimpleUsers" resultType="com.dy.pipIrrGlobal.voBa.VoSimpleUser"> | 
 |  |  |         SELECT | 
 |  |  |             id AS userId, | 
 |  |  |             name AS userName | 
 |  |  |         FROM  ba_user | 
 |  |  |         WHERE disabled = 0 AND deleted = 0 | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  | </mapper> |