Browse Source

1.新增行社类型系统管理员,仅超级管理员可见

jingyuanchao 1 year ago
parent
commit
f6f0c40bf5

+ 7 - 3
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/domain/SysRole.java

@@ -1,13 +1,13 @@
 package com.xunmei.system.api.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.xunmei.common.core.web.domain.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
-import java.util.Date;
-import java.util.List;
 import java.util.Set;
 
 /**
@@ -63,4 +63,8 @@ public class SysRole extends BaseEntity
      * 备注
      */
     private String remark;
+
+    @JsonSerialize(using = ToStringSerializer.class)
+    @ApiModelProperty("特殊角色,值为1时仅管理员可见,默认0")
+    private Integer special;
 }

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java

@@ -1108,6 +1108,10 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
         request.setStartTime(DateUtil.beginOfMonth(request.getStartTime()));
         request.setEndTime(DateUtil.endOfMonth(request.getEndTime()));
         SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(request.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+
+
+
+
         request.setOrgPath(sysOrg.getPath());
     }
 

+ 16 - 5
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysRoleServiceImpl.java

@@ -28,7 +28,6 @@ import com.xunmei.system.service.ISysRoleService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.PathVariable;
 
 import javax.annotation.PostConstruct;
 import java.util.*;
@@ -85,8 +84,8 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         if (null != role.getRoleName()) {
             query.like("role_name", role.getRoleName());
         }
-        if (role.getParams().get("beginTime") != null && role.getParams().get("endTime") != null) {
-            query.between("create_time", role.getParams().get("beginTime") + " 00:00:00", role.getParams().get("endTime") + " 23:59:59");
+        if (!SecurityUtils.isAdmin(SecurityUtils.getLoginUser().getUserid())){
+            query.eq("special", 0);
         }
         query.orderByAsc("role_sort");
         page = roleMapper.selectPage(page, query);
@@ -135,7 +134,11 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
 
     @Override
     public List<SysRole> allRole() {
-        return roleMapper.allRole();
+        List<SysRole> roleList = roleMapper.allRole();
+        if (!SecurityUtils.isAdmin(SecurityUtils.getLoginUser().getUserid())){
+            roleList.removeIf(role -> role.getSpecial() == 1);
+        }
+        return roleList;
     }
 
     /**
@@ -449,6 +452,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
                 queryWrapper.in(SysRole::getId, conditionEto.getIds());
             }
         }
+        if (!SecurityUtils.isAdmin(SecurityUtils.getLoginUser().getUserid())){
+            queryWrapper.eq(SysRole::getSpecial, 0);
+        }
         queryWrapper.orderByAsc(SysRole::getRoleSort);
         return roleMapper.selectList(queryWrapper).stream().map(role -> new IdName<>(role.getId(), role.getRoleName())).collect(Collectors.toList());
     }
@@ -469,6 +475,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         queryWrapper.eq("del_flag", 0);
         queryWrapper.eq("org_type", type);
         queryWrapper.orderByAsc("role_sort");
+        if (!SecurityUtils.isAdmin(SecurityUtils.getLoginUser().getUserid())){
+            queryWrapper.eq("special", 0);
+        }
         return baseMapper.selectList(queryWrapper);
     }
 
@@ -510,6 +519,8 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
 
     @Override
     public List<SysRole> getRoles() {
-        return RedisUtils.getCacheList(CacheConstants.ROLE_CACHE_LIST_KEY);
+        List<SysRole> cacheList = RedisUtils.getCacheList(CacheConstants.ROLE_CACHE_LIST_KEY);
+        cacheList.removeIf(sysRole -> ObjectUtil.equal(sysRole.getSpecial(),1));
+        return cacheList;
     }
 }

+ 8 - 1
soc-modules/soc-modules-system/src/main/resources/mapper/system/SysRoleMapper.xml

@@ -31,7 +31,8 @@
                         r.status,
                         r.del_flag,
                         r.create_time,
-                        r.remark
+                        r.remark,
+                        r.special
         from sys_role r
                  left join sys_user_role ur on ur.role_id = r.id
                  left join sys_user u on u.id = ur.user_id
@@ -160,6 +161,9 @@
         <if test="remark != null and remark != ''">
             remark,
         </if>
+        <if test="special != null and special != ''">
+            special,
+        </if>
         <if test="createBy != null and createBy != ''">
             create_by,
         </if>
@@ -195,6 +199,9 @@
         <if test="remark != null and remark != ''">
             #{remark},
         </if>
+        <if test="special != null and special != ''">
+            #{special},
+        </if>
         <if test="createBy != null and createBy != ''">
             #{createBy},
         </if>