Selaa lähdekoodia

pms 移动端 瑞恒 瑞鹰 日报菜单标识

zhangcl 1 viikko sitten
vanhempi
commit
bd363c3f3a

+ 53 - 1
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserProfileController.java

@@ -29,6 +29,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
@@ -65,23 +66,74 @@ public class UserProfileController {
         AdminUserDO user = userService.getUser(getLoginUserId());
         // 获得用户角色
         List<RoleDO> userRoles = roleService.getRoleListFromCache(permissionService.getUserRoleIdListByUserId(user.getId()));
+        Set<String> roleCodes = new HashSet<>();
+        if (CollUtil.isNotEmpty(userRoles)) {
+            userRoles.forEach(userRole -> {
+                roleCodes.add(userRole.getCode());
+            });
+        }
         // 获得部门信息
         DeptDO dept = user.getDeptId() != null ? deptService.getDept(user.getDeptId()) : null;
+        // 瑞都日报 菜单标识 移动端使用
         boolean rdReportFlag = false;
+        // 瑞恒日报 菜单标识 移动端使用 157
+        boolean rhReportFlag = false;
+        // 瑞恒日报 菜单标识 移动端使用
+        boolean rhReportApprovalFlag = false;
+        // 瑞鹰钻井日报 菜单标识 移动端使用 158
+        boolean ryReportFlag = false;
+        // 瑞鹰钻井日报 菜单标识 移动端使用
+        boolean ryReportApprovalFlag = false;
+        // 瑞鹰修井日报 菜单标识 移动端使用
+        boolean ryXjReportFlag = false;
+        // 瑞鹰修井日报 菜单标识 移动端使用
+        boolean ryXjReportApprovalFlag = false;
         // 获取当前登录人的公司级部门 如果 是 四川瑞都163 则设置 标识 rdReportFlag = true
         // 查询瑞都下所有部门
         Set<Long> childDeptIds = deptService.getChildDeptIdListFromCache(163l);
         childDeptIds.add(163l);
+
+        // 添加瑞恒日报 填报 审批 标识
+        Set<Long> rhChildDeptIds = deptService.getChildDeptIdListFromCache(157l);
+        rhChildDeptIds.add(157l);
+
+        // 添加瑞恒日报 填报 审批 标识
+        Set<Long> ryChildDeptIds = deptService.getChildDeptIdListFromCache(158l);
+        ryChildDeptIds.add(158l);
+
         if (ObjUtil.isNotEmpty(dept)) {
             if (childDeptIds.contains(dept.getId())) {
                 rdReportFlag = true;
             }
+            // 瑞恒日报标识
+            if (rhChildDeptIds.contains(dept.getId()) && roleCodes.contains("日报填报RH")) {
+                rhReportFlag = true;
+            }
+            if (rhChildDeptIds.contains(dept.getId()) && roleCodes.contains("项目部日报审批RH")) {
+                rhReportApprovalFlag = true;
+            }
+            // 瑞鹰钻井日报标识
+            if (ryChildDeptIds.contains(dept.getId()) && roleCodes.contains("日报填报RYZJ")) {
+                ryReportFlag = true;
+            }
+            if (ryChildDeptIds.contains(dept.getId()) && roleCodes.contains("项目部日报审批RY")) {
+                ryReportApprovalFlag = true;
+            }
+            // 瑞鹰修井日报标识
+            if (ryChildDeptIds.contains(dept.getId()) && roleCodes.contains("日报填报RYXJ")) {
+                ryXjReportFlag = true;
+            }
+            if (ryChildDeptIds.contains(dept.getId()) && roleCodes.contains("项目部日报审批RYXJ")) {
+                ryXjReportApprovalFlag = true;
+            }
         }
+
         // 获得岗位信息
         List<PostDO> posts = CollUtil.isNotEmpty(user.getPostIds()) ? postService.getPostList(user.getPostIds()) : null;
         // 获得社交用户信息
         List<SocialUserDO> socialUsers = socialService.getSocialUserList(user.getId(), UserTypeEnum.ADMIN.getValue());
-        return success(UserConvert.INSTANCE.convert(user, userRoles, dept, posts, socialUsers, rdReportFlag));
+        return success(UserConvert.INSTANCE.convert(user, userRoles, dept, posts, socialUsers,
+                rdReportFlag, rhReportFlag, rhReportApprovalFlag, ryReportFlag, ryReportApprovalFlag, ryXjReportFlag, ryXjReportApprovalFlag));
     }
 
     @PutMapping("/update")

+ 15 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java

@@ -63,6 +63,21 @@ public class UserProfileRespVO {
     @Schema(description = "瑞都日报 功能模块标识", example = "true false")
     private boolean rdReportFlag;
 
+    @Schema(description = "瑞恒日报 功能模块标识", example = "true false")
+    private boolean rhReportFlag;
+    @Schema(description = "瑞恒日报 功能模块标识", example = "true false")
+    private boolean rhReportApprovalFlag;
+
+    @Schema(description = "瑞鹰钻井日报 功能模块标识", example = "true false")
+    private boolean ryReportFlag;
+    @Schema(description = "瑞鹰钻井日报 功能模块标识", example = "true false")
+    private boolean ryReportApprovalFlag;
+
+    @Schema(description = "瑞鹰修井日报 功能模块标识", example = "true false")
+    private boolean ryXjReportFlag;
+    @Schema(description = "瑞鹰修井日报 功能模块标识", example = "true false")
+    private boolean ryXjReportApprovalFlag;
+
     @Schema(description = "社交用户")
     @Data
     public static class SocialUser {

+ 9 - 1
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/user/UserConvert.java

@@ -46,13 +46,21 @@ public interface UserConvert {
     }
 
     default UserProfileRespVO convert(AdminUserDO user, List<RoleDO> userRoles,
-                                      DeptDO dept, List<PostDO> posts, List<SocialUserDO> socialUsers, boolean rdReportFlag) {
+                                      DeptDO dept, List<PostDO> posts, List<SocialUserDO> socialUsers,
+                                      boolean rdReportFlag, boolean rhReportFlag, boolean rhReportApprovalFlag, boolean ryReportFlag,
+                                      boolean ryReportApprovalFlag, boolean ryXjReportFlag, boolean ryXjReportApprovalFlag) {
         UserProfileRespVO userVO = BeanUtils.toBean(user, UserProfileRespVO.class);
         userVO.setRoles(BeanUtils.toBean(userRoles, RoleSimpleRespVO.class));
         userVO.setDept(BeanUtils.toBean(dept, DeptSimpleRespVO.class));
         userVO.setPosts(BeanUtils.toBean(posts, PostSimpleRespVO.class));
         userVO.setSocialUsers(BeanUtils.toBean(socialUsers, UserProfileRespVO.SocialUser.class));
         userVO.setRdReportFlag(rdReportFlag);
+        userVO.setRhReportFlag(rhReportFlag);
+        userVO.setRhReportApprovalFlag(rhReportApprovalFlag);
+        userVO.setRyReportFlag(ryReportFlag);
+        userVO.setRyReportApprovalFlag(ryReportApprovalFlag);
+        userVO.setRyXjReportFlag(ryXjReportFlag);
+        userVO.setRyXjReportApprovalFlag(ryXjReportApprovalFlag);
         return userVO;
     }