From 23f8f5155749bbe0d2494c52d8adc3e6476b9cac Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 20 十二月 2023 17:23:55 +0800
Subject: [PATCH] 2023-12-20 朱宝民 IC卡15个接口重构,角色授权,获取用户信息

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml |  296 +++++++++++++++++++++++++++++++----------------------------
 1 files changed, 155 insertions(+), 141 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 af96f76..0383d9c 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml
@@ -7,107 +7,121 @@
         <!--@mbg.generated-->
         <!--@Table ba_user-->
         <id property="id" column="id" />
+        <result property="blockId" column="blockId"/>
         <result property="name" 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="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="login" type="com.dy.pipIrrGlobal.pojoBa.BaUser">
+    <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="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>
+
+    <resultMap id="loginResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser">
+        <id property="id" column="id" />
+        <result property="blockId" column="blockId"/>
         <result property="name" 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">
-        <!--@mbg.generated-->
-        id, name, phone, password, orgTag, supperAdmin, deleted
+        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">
-        <!--@mbg.generated-->
-        id, name, phone, orgTag, supperAdmin
+        id, blockId, name, phone, orgTag, supperAdmin
     </sql>
 
-    <select id="login" resultMap="login" >
+    <select id="login" resultMap="loginResultMap" >
         select
         <include refid="Login_Column_List" />
         from ba_user
-        where disabled=0 and deleted=0 and phone=#{phone} and password=#{password}
+        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" />)
+        values (#{id,jdbcType=BIGINT},
+        #{blockId,jdbcType=BIGINT},
+        #{name,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="name != null">
+                `name`,
             </if>
             <if test="phone != null">
                 phone,
@@ -121,109 +135,109 @@
             <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="name != null">
+                #{name,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="name != null">
+                `name` = #{name,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` = #{name,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>
+
+    <!--鏍规嵁鐢ㄦ埛缂栧彿鑾峰彇鐢ㄦ埛淇℃伅-->
+    <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>
-        </trim>
-    </update>
-
-    <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>
-
-    <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>
-    -->
+        </where>
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0