459242451@qq.com 2 years ago
parent
commit
ef79f0dfbf

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java

@@ -93,7 +93,7 @@ public class SysRoleController extends BaseController {
     @Log(title = "角色管理", businessType = BusinessType.UPDATE)
     @PutMapping
     public AjaxResult edit(@Validated @RequestBody SysRole role) {
-        roleService.checkRoleAllowed(role);
+//        roleService.checkRoleAllowed(role);
         if (UserConstants.NOT_UNIQUE.equals(roleService.checkRoleNameUnique(role))) {
             return AjaxResult.error("修改角色'" + role.getRoleName() + "'失败,角色名称已存在");
         } else if (UserConstants.NOT_UNIQUE.equals(roleService.checkRoleKeyUnique(role))) {

+ 15 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/ResourceController.java

@@ -19,6 +19,7 @@ import com.ruoyi.common.core.validate.QueryGroup;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.UserUtil;
 import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.system.service.ISysDeptService;
 import com.ruoyi.zhdd.domain.Resource;
 import com.ruoyi.zhdd.domain.ResourceDetail;
 import com.ruoyi.zhdd.domain.bo.ResourceBo;
@@ -67,6 +68,7 @@ public class ResourceController extends BaseController {
 
     private final IResourceService iResourceService;
     private final IResourceDetailService iResourceDetailService;
+    private final ISysDeptService sysDeptService;
 
     /**
      * 查询应急资源列表
@@ -113,7 +115,19 @@ public class ResourceController extends BaseController {
         Set<String> userRole = cacheLoginUser.getUserRole();
         boolean admin = CollUtil.containsAny(userRole, CollUtil.newHashSet("admin"));
         if (!admin) {
-            bo.setManageUnitId(cacheLoginUser.getUser().getOrgId());
+            // 查询部门以及子部门资源
+            List<String> deptIds = sysDeptService.queryChildDeptId(cacheLoginUser.getUser().getOrgId());
+            if (deptIds == null || deptIds.size() == 0) {
+                TableDataInfo<ResourceVo> rspData = new TableDataInfo<>();
+                rspData.setCode(HttpStatus.HTTP_OK);
+                rspData.setMsg("查询成功");
+                rspData.setRows(Collections.emptyList());
+                rspData.setTotal(0);
+                rspData.setPageNum(bo.getPageNum());
+                rspData.setPageSize(bo.getPageSize());
+                return rspData;
+            }
+            bo.setDeptIds(deptIds);
         }
         return iResourceService.queryPageList(bo);
     }

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/SecurityInterceptor.java

@@ -206,7 +206,7 @@ public class SecurityInterceptor implements HandlerInterceptor {
                     if (data.getUserGroupId() == 4) {
                         // 设置redis缓存
                         user = new LoginUser(newUser.getUserId(), newUser.getDeptId(), newUser, permissionService.getMenuPermission(newUser));
-                        user.setUserRole(CollUtil.newHashSet("2"));
+                        user.setUserRole(CollUtil.newHashSet("6"));
                         setUserAgent(user);
                         user.setSuQian(true);
                         RedisUtils.setCacheObject(userKey, user, 120, TimeUnit.MINUTES);

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java

@@ -42,4 +42,6 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDept> {
 
     @Select("select * from t_uc_dept")
     List<JSONObject> queryTUcDept();
+
+    List<String> queryChildDeptId(@Param("deptId") String deptId);
 }

+ 8 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java

@@ -125,4 +125,12 @@ public interface ISysDeptService extends IService<SysDept> {
      * @return
      */
     SysDept getOrgDept(SysDept sysDept);
+
+    /**
+     * 查询当前部门以及子部门
+     *
+     * @param deptId
+     * @return
+     */
+    List<String> queryChildDeptId(String deptId);
 }

+ 5 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java

@@ -332,4 +332,9 @@ public class SysDeptServiceImpl extends ServicePlusImpl<SysDeptMapper, SysDept,
         SysDept orgDept = allDept.stream().filter(x -> StrUtil.equals(x.getDeptId(), sysDept.getParentId())).findFirst().get();
         return getOrgDept(orgDept);
     }
+
+    @Override
+    public List<String> queryChildDeptId(String deptId) {
+        return baseMapper.queryChildDeptId(deptId);
+    }
 }

+ 10 - 0
ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -78,6 +78,16 @@
         order by d.parent_id, d.order_num
     </select>
 
+    <select id="queryChildDeptId" resultType="java.lang.String">
+        select dept_id
+        from sys_dept
+        where ((dept_id = #{deptId}) OR
+               dept_id IN (SELECT t.dept_id
+                           FROM sys_dept t
+                           WHERE #{deptId} = ANY
+                                 (string_to_array(ancestors, ','))))
+    </select>
+
     <update id="updateDeptChildren" parameterType="java.util.List">
         update sys_dept set ancestors =
         <foreach collection="depts" item="item" index="index"

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

@@ -8,6 +8,7 @@
         <id property="userId" column="user_id"/>
         <result property="deptId" column="dept_id"/>
         <result property="userName" column="user_name"/>
+        <result property="userType" column="user_type"/>
         <result property="nickName" column="nick_name"/>
         <result property="email" column="email"/>
         <result property="phonenumber" column="phonenumber"/>
@@ -52,6 +53,7 @@
         select u.user_id,
                u.dept_id,
                u.user_name,
+               u.user_type,
                u.nick_name,
                u.email,
                u.avatar,

+ 1 - 1
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/ResourceServiceImpl.java

@@ -109,7 +109,7 @@ public class ResourceServiceImpl extends ServicePlusImpl<ResourceMapper, Resourc
         lqw.eq(StringUtils.isNotBlank(bo.getManageUnitId()), Resource::getManageUnitId, bo.getManageUnitId());
         lqw.in(ObjectUtil.isNotEmpty(bo.getResourceIds()), Resource::getId, bo.getResourceIds());
         lqw.notIn(ObjectUtil.isNotEmpty(bo.getResourceNotIds()), Resource::getId, bo.getResourceNotIds());
-        lqw.in(ObjectUtil.isNotEmpty(bo.getDeptIds()), Resource::getDeptId, bo.getDeptIds());
+        lqw.in(ObjectUtil.isNotEmpty(bo.getDeptIds()), Resource::getManageUnitId, bo.getDeptIds());
         lqw.orderByDesc(Resource::getCreateTime);
         return lqw;
     }