update:修改分组管理,非管理员用户只能看见自己创建的分组
This commit is contained in:
+7
-2
@@ -1,15 +1,17 @@
|
||||
package com.jero.modules.system.controller;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.system.entity.SysGroup;
|
||||
import com.jero.modules.system.service.ISysGroupService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
@@ -98,7 +100,10 @@ public class SysGroupController {
|
||||
@GetMapping("/list")
|
||||
@ApiOperation(value = "分组管理-列表查询", notes = "分组管理-列表查询")
|
||||
public Result<Object> list() {
|
||||
List<SysGroup> list = sysGroupService.list();
|
||||
LambdaQueryWrapper<SysGroup> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
lambdaQueryWrapper.eq(SysGroup::getCreateBy, loginUser.getUsername());
|
||||
List<SysGroup> list = sysGroupService.list(lambdaQueryWrapper);
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
|
||||
@@ -64,4 +64,12 @@ public class SysGroup implements Serializable {
|
||||
@ApiModelProperty("多个用户名")
|
||||
private String userNames;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty("当前登录用户的用户名")
|
||||
private String currentUserName;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty("是否拥有管理员身份 0-否 1-是")
|
||||
private String isAdmin;
|
||||
|
||||
}
|
||||
|
||||
@@ -18,6 +18,9 @@
|
||||
<if test="sysGroup.groupName != null and sysGroup.groupName != ''">
|
||||
AND sg.group_name LIKE CONCAT('%',CONCAT(#{sysGroup.groupName},'%'))
|
||||
</if>
|
||||
<if test="sysGroup.isAdmin != 1">
|
||||
AND sg.create_by = #{sysGroup.currentUserName}
|
||||
</if>
|
||||
<if test="sysGroup.userNameOrWorkId != null and sysGroup.userNameOrWorkId != ''">
|
||||
AND sg.id IN (
|
||||
SELECT sg.id
|
||||
|
||||
+11
@@ -8,11 +8,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.system.entity.SysGroup;
|
||||
import com.jero.modules.system.entity.SysUserGroup;
|
||||
import com.jero.modules.system.mapper.SysGroupMapper;
|
||||
import com.jero.modules.system.service.ISysGroupService;
|
||||
import com.jero.modules.system.service.ISysUserGroupService;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
@@ -36,12 +38,21 @@ public class SysGroupServiceImpl extends ServiceImpl<SysGroupMapper, SysGroup> i
|
||||
@Resource
|
||||
private SysGroupMapper sysGroupMapper;
|
||||
|
||||
|
||||
@Override
|
||||
public IPage<SysGroup> queryPageList(SysGroup sysGroup, Integer pageNo, Integer pageSize, HttpServletRequest req) {
|
||||
Page<SysGroup> page = new Page(pageNo, pageSize);
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
if (loginUser.getRoleIds().contains("admin") || loginUser.getRoleIds().contains("superAdmin")){
|
||||
sysGroup.setIsAdmin("1");
|
||||
}else {
|
||||
sysGroup.setIsAdmin("0");
|
||||
}
|
||||
sysGroup.setCurrentUserName(loginUser.getUsername());
|
||||
return sysGroupMapper.queryPageList(page, sysGroup);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Result<Object> add(SysGroup sysGroup) {
|
||||
if (Objects.isNull(sysGroup) || StringUtils.isBlank(sysGroup.getGroupName())) {
|
||||
|
||||
-5
@@ -76,8 +76,6 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
private String appId;
|
||||
@Value("${feishu.app_secret}")
|
||||
private String appSecret;
|
||||
@Value("${feishu.managersIds}")
|
||||
private String managersIds;
|
||||
|
||||
private static final String USER_INFO = "userInfo";
|
||||
|
||||
@@ -162,9 +160,6 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
approvalsDefinitionVo.setExternal(definitionExternal);
|
||||
approvalsDefinitionVo.setViewers(viewers);
|
||||
approvalsDefinitionVo.setI18n_resources(i18n_resources);
|
||||
List<String> mangers = Arrays.asList(managersIds.split(","));
|
||||
String[] mangersString = mangers.toArray(new String[0]);
|
||||
approvalsDefinitionVo.setManagers(mangersString);
|
||||
return approvalsDefinitionVo;
|
||||
}
|
||||
|
||||
|
||||
@@ -569,8 +569,6 @@ feishu:
|
||||
app_id : cli_a61204ce741ed00b
|
||||
# app秘钥
|
||||
app_secret: lblKYMV4im4nP4YkBdgefKLPEdGBwaXA
|
||||
# 审批定义的流程管理员的user_id:
|
||||
managersIds: aacb77d4
|
||||
# 基础地址:
|
||||
base_url: https://open.feishu.cn/open-apis
|
||||
# 获取token的地址
|
||||
|
||||
Reference in New Issue
Block a user