From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能

---
 java110-db/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml |   85 ++++++++++++++++++++++++++++--------------
 1 files changed, 57 insertions(+), 28 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml b/java110-db/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml
old mode 100644
new mode 100755
index 0d631f8..dbdf958
--- a/java110-db/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml
@@ -3,8 +3,10 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="privilegeDAOImpl">
+
     <select id="queryUserDefaultPrivilege" parameterType="map" resultType="map">
-        SELECT a.`p_id` pId,a.`privilege_flag` privilegeFlag,a.`user_id` userId FROM p_privilege_user a WHERE a.`p_id` = #{pId}
+        SELECT a.`p_id` pId,a.`privilege_flag` privilegeFlag,a.`user_id` userId FROM p_privilege_user a WHERE a.`p_id` =
+        #{pId}
         AND a.`user_id` = #{userId}
         AND a.`privilege_flag` = '1'
         AND a.`status_cd` = '0'
@@ -13,7 +15,7 @@
     <!-- 淇濆瓨灞炴�т俊鎭� c_business_attrs -->
     <insert id="saveUserDefaultPrivilege" parameterType="Map">
         <![CDATA[
-            INSERT INTO p_privilege_user(p_id,privilege_flag,user_id) VALUES(#{pId},'1',#{userId})
+        INSERT INTO p_privilege_user(p_id,privilege_flag,user_id,store_id) VALUES(#{pId},'1',#{userId},#{storeId})
         ]]>
     </insert>
 
@@ -27,14 +29,13 @@
         VALUES(#{pgId},#{name},#{description},#{storeId},#{storeTypeCd})
     </insert>
 
-
     <update id="updatePrivilegeGroup" parameterType="Map">
         UPDATE p_privilege_group a SET
         <if test="name != null and name != ''">
-            and a.name = #{name},
+            a.name = #{name},
         </if>
         <if test="description != null and description != ''">
-            and a.description = #{description}
+            a.description = #{description}
         </if>
         WHERE 1= 1
         <if test="storeId != null and storeId != ''">
@@ -44,8 +45,8 @@
         <if test="storeTypeCd != null and storeTypeCd != ''">
             and a.domain= #{storeTypeCd}
         </if>
-
     </update>
+
     <!-- 鍒犻櫎鏉冮檺缁� -->
     <update id="deletePrivilegeGroup" parameterType="Map">
         UPDATE p_privilege_group a SET a.`status_cd` = '1'
@@ -57,7 +58,6 @@
         <if test="storeTypeCd != null and storeTypeCd != ''">
             and a.domain= #{storeTypeCd}
         </if>
-
     </update>
 
     <!-- 鍒犻櫎鏉冮檺缁� -->
@@ -74,19 +74,18 @@
 
     <select id="queryPrivilegeRel" parameterType="Map" resultType="Map">
         SELECT
-            pp.`name`,
-            pp.`domain`,
-            pp.`p_id` pId,
-            pp.`description`,
-            pp.`create_time` createTime
+        pp.`name`,
+        pp.`domain`,
+        pp.`p_id` pId,
+        pp.`description`,
+        pp.`create_time` createTime
         FROM
-            p_privilege pp,
-            p_privilege_rel ppr
+        p_privilege pp,
+        p_privilege_rel ppr
         WHERE ppr.`p_id` = pp.`p_id`
-            AND ppr.`status_cd` = '0'
-            AND pp.`status_cd` = '0'
-            AND ppr.`pg_id` = #{pgId}
-
+        AND ppr.`status_cd` = '0'
+        AND pp.`status_cd` = '0'
+        AND ppr.`pg_id` = #{pgId}
     </select>
 
     <select id="queryPrivilegeGroup" parameterType="Map" resultType="Map">
@@ -103,17 +102,17 @@
             and ppg.domain = #{storeTypeCd}
         </if>
         and ppg.status_cd = '0'
-
     </select>
 
     <insert id="addPrivilegeRel" parameterType="Map">
         insert into p_privilege_rel(p_id,pg_id)
         values(#{pId},#{pgId})
     </insert>
+
     <!-- 鏌ヨ鏉冮檺 -->
     <select id="queryPrivilege" parameterType="Map" resultType="Map">
         SELECT
-            pp.`p_id` pId,pp.`name`,pp.`description`,pp.`create_time` createTime,pp.`domain`
+        pp.`p_id` pId,pp.`name`,pp.`description`,pp.`create_time` createTime,pp.`domain`
         FROM p_privilege pp
         WHERE 1= 1
         <if test="pId != null and pId != ''">
@@ -122,17 +121,18 @@
         <if test="pId != null and pId != ''">
             AND pp.domain = '800900000003'
         </if>
-            AND pp.`status_cd` = '0'
+        AND pp.`status_cd` = '0'
     </select>
+
     <!-- 鏌ヨ鐢ㄦ埛鏉冮檺 -->
     <select id="queryUserPrivilege" parameterType="Map" resultType="Map">
         SELECT
-            ppu.`pu_id` puId,
-            ppu.`p_id` pId,
-            ppu.`privilege_flag` privilegeFlag,
-            ppu.`user_id` userId
+        ppu.`pu_id` puId,
+        ppu.`p_id` pId,
+        ppu.`privilege_flag` privilegeFlag,
+        ppu.`user_id` userId
         FROM
-            p_privilege_user ppu
+        p_privilege_user ppu
         WHERE 1 = 1
         <if test="privilegeFlag != null and privilegeFlag != ''">
             AND ppu.`privilege_flag` = #{privilegeFlag}
@@ -143,12 +143,13 @@
         <if test="userId != null and userId != ''">
             AND ppu.`user_id` = #{userId}
         </if>
-            AND ppu.`status_cd` = '0'
+        AND ppu.`status_cd` = '0'
     </select>
+
     <!-- 淇濆瓨灞炴�т俊鎭� c_business_attrs -->
     <insert id="addUserPrivilege" parameterType="Map">
         <![CDATA[
-            INSERT INTO p_privilege_user(p_id,privilege_flag,user_id) VALUES(#{pId},#{privilegeFlag},#{userId})
+        INSERT INTO p_privilege_user(p_id,privilege_flag,user_id,store_id) VALUES(#{pId},#{privilegeFlag},#{userId},#{storeId})
         ]]>
     </insert>
 
@@ -168,4 +169,32 @@
         and ppu.status_cd = '0'
     </update>
 
+    <select id="queryPrivilegeUsers" parameterType="map" resultType="map">
+        select t.user_id userId
+        from p_privilege_user t
+        INNER JOIN p_privilege p on t.p_id = p.p_id and p.status_cd = '0'
+        where t.privilege_flag = '0'
+        and t.status_cd = '0'
+        <if test="resource != null and resource != ''">
+            and p.resource = #{resource}
+        </if>
+        <if test="storeId != null and storeId != ''">
+            and t.store_id = #{storeId}
+        </if>
+        union ALL
+        select t.user_id userId
+        from p_privilege_user t
+        inner join p_privilege_group pg on t.p_id = pg.pg_id and pg.status_cd = '0' and pg.pg_id != '600201904002'
+        inner join p_privilege_rel pr on pg.pg_id = pr.pg_id and pr.status_cd ='0'
+        INNER JOIN p_privilege p on pr.p_id = p.p_id and p.status_cd = '0'
+        where t.status_cd = '0'
+        and t.privilege_flag = '1'
+        <if test="resource != null and resource != ''">
+            and p.resource = #{resource}
+        </if>
+        <if test="storeId != null and storeId != ''">
+            and t.store_id = #{storeId}
+        </if>
+    </select>
+
 </mapper>

--
Gitblit v1.8.0