From 72c5c813e55bb2bac61b6972137be1292ac5958a Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期三, 29 五月 2024 17:34:38 +0800 Subject: [PATCH] 修改用户模块的一些代码问题 1.全局userId变id 2.修改分页查询SQL 3.修改修改用户信息接口 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml | 423 ++++++++++++++++++++++++++++++++++------------------ 1 files changed, 278 insertions(+), 145 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml index 20721d8..e2e5d47 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml @@ -3,95 +3,128 @@ <!--namespace瀵瑰簲mapper鎺ュ彛鎵�鍦ㄧ殑浣嶇疆--> <mapper namespace="com.dy.pipIrrGlobal.daoBa.BaUserMapper"> - <resultMap id="login" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <!--@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"/> + </resultMap> + + <resultMap id="partResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <!--@mbg.generated--> + <!--@Table ba_user--> + <id property="id" column="id" /> + <result property="userName" column="name"/> <result property="phone" column="phone"/> <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"/> </resultMap> - <!-- - <select id="login" resultMap="login"> - select id, name, phone, orgTag - from ba_user - where disabled=0 and deleted=0 and phone=#{phone} and password=#{password} - </select> - <select id="login" resultType="com.dy.pipIrrGlobal.pojoBa.BaUser"> - select id, name, phone, orgTag - --> - <select id="login" resultMap="login" > - select * - from ba_user r - where disabled=0 and deleted=0 and phone=#{phone} and password=#{password} + + <resultMap id="loginResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <id property="id" column="id" /> + <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> + + <resultMap id="someResultMap" extends="partResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <collection property="roleList" fetchType="eager" column="{userId=id}" select="com.dy.pipIrrGlobal.daoBa.BaRoleMapper.selectByUserId" /> + </resultMap> + + <sql id="Base_Column_List"> + id, blockId, name, phone, password, orgTag, supperAdmin, disabled, deleted + </sql> + + <sql id="part_Column_List"> + ${alias}.id, ${alias}.name, ${alias}.phone, ${alias}.disabled + </sql> + + <sql id="Login_Column_List"> + id, blockId, name, phone, orgTag, supperAdmin + </sql> + + <select id="login" resultMap="loginResultMap" > + select + <include refid="Login_Column_List" /> + from ba_user + where disabled!=1 and deleted!=1 and phone=#{phone} and password=#{password} </select> - <!-- - <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> - <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long" id="selectKey"> - SELECT LAST_INSERT_ID() - </selectKey> - insert into ba_user - <trim prefix="(" suffix=")" suffixOverrides=","> - <if test="id != null"> - id, + <select id="selectTotal" parameterType="java.util.Map" resultType="java.lang.Long"> + select + count(*) + from ba_user + where supperAdmin!=1 and deleted!=1 + <trim prefix="and" suffixOverrides="and"> + <if test="name != null and name != ''"> + name like concat('%', #{name}, '%') and </if> - <if test="name != null"> - name, - </if> - <if test="phone != null"> - phone, - </if> - <if test="password != null"> - password, - </if> - <if test="orgTag != null"> - orgTag, - </if> - <if test="supperAdmin != null"> - supperAdmin, - </if> - <if test="disabled != null"> - disabled, - </if> - <if test="deleted != null"> - deleted, + <if test="phone != null and phone !=''"> + phone = #{phone,jdbcType=VARCHAR} </if> </trim> - <trim prefix="values (" suffix=")" suffixOverrides=","> - <if test="id != null"> - #{id, jdbcType=BIGINT}, + </select> + <select id="selectSome" parameterType="java.util.Map" resultMap="someResultMap"> + select + <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 and name != ''"> + bu.name like concat('%', #{name}, '%') and </if> - <if test="name != null"> - #{name, jdbcType=VARCHAR}, - </if> - <if test="phone != null"> - #{phone, jdbcType=VARCHAR}, - </if> - <if test="password != null"> - #{password, jdbcType=VARCHAR}, - </if> - <if test="orgTag != null"> - #{orgTag, jdbcType=VARCHAR}, - </if> - <if test="supperAdmin != null"> - #{supperAdmin, jdbcType=SMALLINT}, - </if> - <if test="disabled != null"> - #{disabled, jdbcType=SMALLINT}, - </if> - <if test="deleted != null"> - #{deleted, jdbcType=SMALLINT}, + <if test="phone != null and phone !=''"> + bu.phone = #{phone,jdbcType=VARCHAR} </if> </trim> + order by 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> + <insert id="putin" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> +<!-- 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}, + #{blockId,jdbcType=BIGINT}, + #{userName,jdbcType=VARCHAR}, + #{phone,jdbcType=VARCHAR}, + #{password,jdbcType=VARCHAR}, + #{orgTag,jdbcType=VARCHAR}, + #{supperAdmin,jdbcType=TINYINT}, + #{disabled,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, + #{deleted,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT} + ) </insert> - - <insert id="insertOnDuplicateUpdate" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> + <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> insert into ba_user <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null"> id, </if> - <if test="name != null"> - name, + <if test="blockId != null"> + blockId, + </if> + <if test="userName != null"> + `name`, </if> <if test="phone != null"> phone, @@ -105,109 +138,209 @@ <if test="supperAdmin != null"> supperAdmin, </if> - <if test="disabled != null"> - disabled, + <if test="disabled != null"> + disabled, </if> - <if test="deleted != null"> + <if test="deleted != null"> deleted, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null"> - #{id, jdbcType=BIGINT}, + #{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}, + #{phone,jdbcType=VARCHAR}, </if> <if test="password != null"> - #{password, jdbcType=VARCHAR}, + #{password,jdbcType=VARCHAR}, </if> <if test="orgTag != null"> - #{orgTag, jdbcType=VARCHAR}, + #{orgTag,jdbcType=VARCHAR}, </if> <if test="supperAdmin != null"> - #{supperAdmin, jdbcType=SMALLINT}, + #{supperAdmin,jdbcType=TINYINT}, </if> <if test="disabled != null"> - #{disabled, jdbcType=SMALLINT}, + #{disabled,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, </if> <if test="deleted != null"> - #{deleted, jdbcType=SMALLINT}, - </if> - </trim> - ON DUPLICATE KEY UPDATE - <trim suffixOverrides="," > - <if test="id != null" > - id = #{id, jdbcType=BIGINT}, + #{deleted,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, </if> </trim> </insert> - <update id="updateSelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser" > - UPDATE ba_user - <set > - <if test="name != null" > - name = #{name, jdbcType=VARCHAR}, + <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> + update ba_user + <set> + <if test="blockId != null"> + blockId = #{blockId,jdbcType=BIGINT}, </if> - <if test="phone != null" > - phone = #{phone, jdbcType=VARCHAR}, + <if test="userName != null"> + `name` = #{userName,jdbcType=VARCHAR}, </if> - <if test="password != null" > - phone = #{password, jdbcType=VARCHAR}, + <if test="phone != null"> + phone = #{phone,jdbcType=VARCHAR}, + </if> + <if test="password != null"> + password = #{password,jdbcType=VARCHAR}, + </if> + <if test="disabled != null"> + disabled = #{disabled,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, + </if> + <if test="deleted != null"> + deleted = #{deleted,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}, </if> </set> - WHERE - <trim prefixOverrides="and | or"> - <if test="id != null"> - AND id = #{id,jdbcType=BIGINT} + where id = #{id, jdbcType=BIGINT} + </update> + <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoBa.BaUser"> + update ba_user + 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}, + deleted = #{deleted,typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT} + where id = #{id,jdbcType=BIGINT} + </update> + <update id="changePassword" > + update ba_user + set password = #{password,jdbcType=VARCHAR} + where id = #{id,jdbcType=BIGINT} + </update> + + <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> + delete from ba_user + where id = #{id,jdbcType=BIGINT} + </delete> + <delete id="deleteLogicById" parameterType="java.lang.Long"> + 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 ba_user user +<!-- INNER 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> + </select> + + <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鐢ㄦ埛鍒楄〃--> + <select id="getUsers" resultType="com.dy.pipIrrGlobal.voBa.VoUserInfo"> + SELECT + CAST(id AS char) AS userId, + phone, + name AS userName, + disabled AS stateId, + (CASE + WHEN disabled = 0 THEN "姝e父" + 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 +<!-- INNER 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> + 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> - </update> + </select> - <insert id="batchInsert" parameterType="java.util.List"> - <selectKey resultType="java.lang.Long" keyProperty="id" order="AFTER" id="batchInsert"> - SELECT LAST_INSERT_ID() - </selectKey> - INSERT INTO ba_user(id, name, phone, password, orgTag, supperAdmin, disabled, deleted) - VALUES - <foreach collection="list" item="it" index="index" separator=","> - ( - #{it.id, jdbcType=BIGINT}, - #{it.name, jdbcType=VARCHAR}, - #{it.phone, jdbcType=VARCHAR}, - #{it.password, jdbcType=VARCHAR}, - #{it.orgTag, jdbcType=VARCHAR}, - #{it.supperAdmin, jdbcType=SMALLINT}, - #{it.disabled, jdbcType=SMALLINT}, - #{it.deleted, jdbcType=SMALLINT} - ) - </foreach> - </insert> + <!--鏍规嵁鐢ㄦ埛缂栧彿鑾峰彇瑙掕壊ID鍒楄〃--> + <select id="getRoleIdsByUserId" resultType="java.util.HashMap"> + SELECT + roleId + FROM ba_user_role + WHERE userId = ${userId} + </select> - <update id="batchUpdate" parameterType="java.util.List"> - <foreach collection="list" item="it" separator=";"> - UPDATE ba_user - <set > - <if test="it.name != null" > - name = #{it.name, jdbcType=VARCHAR}, - </if> - <if test="it.phone != null" > - phone = #{it.phone, jdbcType=VARCHAR}, - </if> - <if test="it.password != null" > - phone = #{it.password, jdbcType=VARCHAR}, - </if> - </set> - WHERE - <trim prefixOverrides="and | or"> - <if test="it.id != null"> - AND id = #{it.id,jdbcType=BIGINT} - </if> - </trim> - </foreach> - </update> - --> + <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> </mapper> \ No newline at end of file -- Gitblit v1.8.0