Browse Source

仓库库管权限修改

lazhaoqian 4 years ago
parent
commit
db2730a205

+ 16 - 0
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java

@@ -51,6 +51,10 @@ public class DataScopeAspect
      * 仅本人数据权限
      */
     public static final String DATA_SCOPE_SELF = "5";
+    /**
+     * 库管数据权限
+     */
+    public static final String DATA_SCOPE_INVENTORY_KEEPER= "6";
 
     /**
      * 数据权限过滤关键字
@@ -138,6 +142,18 @@ public class DataScopeAspect
                     sqlString.append(" OR 1=0 ");
                 }
             }
+            else if (DATA_SCOPE_INVENTORY_KEEPER.equals(dataScope))
+            {
+                if (StringUtils.isNotBlank(userAlias))
+                {
+                    sqlString.append(StringUtils.format(" OR {}.user_id = {} OR u1.user_id = {}", userAlias, user.getUserId(),user.getUserId()));
+                }
+                else
+                {
+                    // 数据权限为仅本人且没有userAlias别名不查询任何数据
+                    sqlString.append(" OR 1=0 ");
+            }
+        }
         }
 
         if (StringUtils.isNotBlank(sqlString.toString()))

+ 1 - 0
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -66,6 +66,7 @@
 	<select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
 		select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.user_type, u.user_system, u.open_id, u.union_id, u.img_src, u.session_key, u.related_no, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u
 		left join sys_dept d on u.dept_id = d.dept_id
+		left join sys_user u1 on u.user_id = u1.user_id
 		where u.del_flag = '0'
 		<if test="userName != null and userName != ''">
 			AND u.user_name like concat('%', #{userName}, '%')

+ 8 - 2
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml

@@ -295,6 +295,7 @@
             t_warehousebills bill
             LEFT JOIN t_goods g ON g.f_id = bill.f_goodsid
             left join sys_user u on bill.create_by = u.user_name
+            left join sys_user u1 on bill.f_storekeeper = u1.user_name
             left join sys_dept d on bill.f_bsdeptid = d.dept_id
             LEFT JOIN t_corps corp ON corp.f_id = bill.f_corpid
             LEFT JOIN t_corps corpTo ON corpTo.f_id = bill.f_tocorpid
@@ -459,6 +460,7 @@
         t_warehousebills bill
         LEFT JOIN t_goods g ON g.f_id = bill.f_goodsid
         left join sys_user u on bill.create_by = u.user_name
+        left join sys_user u1 on bill.f_storekeeper = u1.user_name
         left join sys_dept d on bill.f_bsdeptid = d.dept_id
         LEFT JOIN t_corps corp ON corp.f_id = bill.f_corpid
         LEFT JOIN t_corps corpTo ON corpTo.f_id = bill.f_tocorpid
@@ -1716,7 +1718,9 @@
         tw.f_updete_status fUpdeteStatus,
         tw.f_submit_update fSubmitUpdate,
         tw.f_delete_status fDeleteStatus,
-        tw.f_cargo_planning fCargoPlanning
+        tw.f_cargo_planning fCargoPlanning,
+        tw.f_vslid fVslid,
+        tw.f_voyid fVoyid
         FROM
         t_warehousebills tw
         LEFT JOIN t_address ta ON ta.f_id = tw.f_laneid
@@ -2336,7 +2340,8 @@
             LEFT JOIN t_corps c ON c.f_id = w.f_corpid
             LEFT JOIN t_goods g ON g.f_id = w.f_goodsid
             LEFT JOIN t_warehouse t ON t.f_id = w.f_warehouseid
-            left join sys_user u on w.f_storekeeper = u.user_name
+            left join sys_user u on w.create_by = u.user_name
+            left join sys_user u1 on w.f_storekeeper = u1.user_name
             left join sys_dept d on w.f_bsdeptid = d.dept_id
         where
             IF( w.f_planqty IS NOT NULL, w.f_planqty != w.f_qty, w.f_id != '')
@@ -2594,6 +2599,7 @@
             and f_cargo_planning = '0'
         <if test="fVslid != null ">and tw.f_vslid = #{fVslid}</if>
         <if test="fVoyid != null ">and tw.f_voyid = #{fVoyid}</if>
+        GROUP BY tw.f_vslid,tw.f_voyid
     </select>
 
 </mapper>