Переглянути джерело

增加create_tounit 字段

skcj 2 роки тому
батько
коміт
1130e82bfd

+ 14 - 1
ruoyi-common/ruoyi-common-datascope/src/main/java/com/ruoyi/common/datascope/handler/DataScopeType.java

@@ -59,8 +59,21 @@ public enum DataScopeType {
     /**
      * 仅本行政区划以下数据权限
      */
-    XZQH_AND_CHILD("8", " #{#xzqhName} IN ( SELECT code FROM sys_dept_jl WHERE code = #{#user.sysUser.dept.locationCode} or find_in_set( #{#user.sysUser.dept.locationCode} , ancestors ) )", "");
+    XZQH_AND_CHILD("8", " #{#xzqhName} IN ( SELECT code FROM sys_dept_jl WHERE code = #{#user.sysUser.dept.locationCode} or find_in_set( #{#user.sysUser.dept.locationCode} , ancestors ) )", ""),
 
+    /**
+     * 数据归属部门数据权限
+     */
+    TODEPT("9", " #{#todeptName} = #{#user.sysUser.dept.directly} ", ""),
+
+    /**
+     * 数据归属部门及以下数据权限
+     */
+//    DEPT_AND_CHILD("4", " #{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )} )", ""),
+    TODEPT_AND_CHILD("10", " #{#todeptName} IN ( SELECT dept_id FROM sys_dept WHERE dept_id = #{#user.sysUser.dept.directly} or find_in_set( #{#user.sysUser.dept.directly} , ancestors ) )", "");
+    /**
+     * 仅本人数据权限
+     */
     private final String code;
 
     /**

+ 2 - 2
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java

@@ -278,8 +278,8 @@ public class SecurityUtils
      */
     public static String getUserToUnitId()
     {
-        if (getLoginUser().getSysUser().getDept().getDirectly().equals("1")) {
-            return getLoginUser().getSysUser().getDept().getParentId() + "";
+        if (!StringUtils.isEmpty(getLoginUser().getSysUser().getDept().getDirectly())) {
+            return getLoginUser().getSysUser().getDept().getDirectly() + "";
         }
         else {
             return getLoginUser().getSysUser().getDeptId() + "";

+ 1 - 0
ruoyi-modules/mz-business-lrgl/src/main/java/com/ruoyi/business/mapper/ZwywLrJbxxMapper.java

@@ -18,6 +18,7 @@ import java.util.Map;
 @DataPermission({
         @DataColumn(key = "deptName", value = "create_unit"),
         @DataColumn(key = "xzqhName", value = "create_area_code"),
+        @DataColumn(key = "todeptName", value = "create_tounit"),
 })
 public interface ZwywLrJbxxMapper extends BaseMapperPlus<ZwywLrJbxx> {
 

+ 16 - 2
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java

@@ -36,7 +36,10 @@ import javax.validation.Validator;
 import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
-
+import com.ruoyi.system.db.DBExecResult;
+import com.ruoyi.system.db.DBFactory;
+import com.ruoyi.system.db.DBImpl;
+import com.ruoyi.system.db.DBResult;
 /**
  * 用户 业务层处理
  *
@@ -116,7 +119,13 @@ public class SysUserServiceImpl implements ISysUserService {
      */
     @Override
     public SysUser selectUserByUserName(String userName) {
-        return userMapper.selectUserByUserName(userName);
+        SysUser res=userMapper.selectUserByUserName(userName);
+        res.getDept().setDirectly("3");
+        DBImpl dbs = DBFactory.getDBImpl("master");
+        DBResult dbset = dbs.getDataBySql("select get_dept_directly("+res.getDept().getDeptId().toString()+") pid");
+        res.getDept().setDirectly(dbset.getString(0,0));
+        return res;
+
     }
 
     /**
@@ -133,6 +142,11 @@ public class SysUserServiceImpl implements ISysUserService {
         } else if (StringUtils.equals(res.getUserType(), SysUserTypeStatus.SYS.getCode())) {
             res.setIsCx(WhetherStatus.NO.getCode());
         }
+        DBImpl dbs = DBFactory.getDBImpl("master");
+
+        DBResult dbset = dbs.getDataBySql("select get_dept_directly("+res.getDept().getDeptId().toString()+") pid");
+
+        res.getDept().setDirectly(dbset.getString(0,0));
         return res;
     }
 

+ 12 - 3
ruoyi-ui/src/views/system/role/index.vue

@@ -239,7 +239,7 @@ export default {
         },
         {
           value: "4",
-          label: "本部门及下数据权限"
+          label: "本部门及下数据权限"
         },
         {
           value: "5",
@@ -251,11 +251,20 @@ export default {
         },
         {
           value: "7",
-          label: "本行政区划数据权限"
+          label: "本行政区划数据权限"
         },
         {
           value: "8",
-          label: "仅本行政区划及以下数据权限"
+          label: "本行政区划及下属数据权限"
+        }
+        ,
+        {
+          value: "9",
+          label: "本数据归属部门数据权限"
+        },
+        {
+          value: "10",
+          label: "本数据归属部门及下属数据权限"
         }
       ],
       // 菜单列表