内部工作组左侧属性修改

This commit is contained in:
梁琦涛
2023-11-08 17:45:52 +08:00
parent 0eb1d3e6ff
commit c3d69e74a1
3 changed files with 63 additions and 15 deletions
@@ -7,9 +7,11 @@ import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.CommonConstant;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.ImportExcelUtil;
import com.jero.common.util.MessageUtils;
import com.jero.modules.laws.common.constant.ResultCommon;
import com.jero.modules.sys.entity.LawsWorkingGroup;
import com.jero.modules.sys.entity.LawsWorkingGroupUser;
import com.jero.modules.sys.entity.LawsWorkingGroupUserImport;
import com.jero.modules.sys.service.ILawsWorkingGroupUserService;
@@ -21,6 +23,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
@@ -58,6 +61,7 @@ public class LawsWorkingGroupUserController extends JeroController<LawsWorkingGr
private ISysUserService sysUserService;
/**
* 分页列表查询
*/
@@ -101,6 +105,9 @@ public class LawsWorkingGroupUserController extends JeroController<LawsWorkingGr
if (StringUtils.isBlank(lawsWorkingGroupUser.getWorkingGroupId()) || StringUtils.isBlank(lawsWorkingGroupUser.getUserId())) {
throw new JeroBootException(ResultCommon.PLEASE_SELECT_PERSONNEL_AND_WORKGROUP);
}
// 校验是否有权限
lawsWorkingGroupUserService.checkAuth(lawsWorkingGroupUser.getWorkingGroupId());
String userId = lawsWorkingGroupUser.getUserId();
List<String> asList = Arrays.asList(userId.split(","));
LambdaQueryWrapper<LawsWorkingGroupUser> wrapper = new LambdaQueryWrapper<>();
@@ -108,7 +115,7 @@ public class LawsWorkingGroupUserController extends JeroController<LawsWorkingGr
wrapper.in(LawsWorkingGroupUser::getUserId, asList);
wrapper.eq(LawsWorkingGroupUser::getWorkingGroupId, lawsWorkingGroupUser.getWorkingGroupId());
List<LawsWorkingGroupUser> list = lawsWorkingGroupUserService.list(wrapper);
if (CollectionUtils.isEmpty(list)) {
if (!CollectionUtils.isEmpty(list)) {
String workNo;
List<String> collect = list.stream().map(LawsWorkingGroupUser::getUserId).distinct().collect(Collectors.toList());
StringJoiner joiner = new StringJoiner(",");
@@ -144,6 +151,12 @@ public class LawsWorkingGroupUserController extends JeroController<LawsWorkingGr
if (!map.containsKey("id") || StringUtils.isEmpty(map.get("id"))) {
throw new JeroBootException(ResultCommon.PLEASE_SELECT_DATA);
}
LawsWorkingGroupUser lawsWorkingGroupUser = lawsWorkingGroupUserService.getById(map.get("id"));
if(Objects.isNull(lawsWorkingGroupUser)){
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
}
// 校验是否有权限
lawsWorkingGroupUserService.checkAuth(lawsWorkingGroupUser.getWorkingGroupId());
lawsWorkingGroupUserService.deleteById(map.get("id"));
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
}
@@ -165,6 +178,10 @@ public class LawsWorkingGroupUserController extends JeroController<LawsWorkingGr
if (StringUtils.isBlank(workingGroupId)) {
throw new JeroBootException(ResultCommon.PLEASE_SELECT_A_WORKGROUP_TO_IMPORT);
}
// 校验是否有权限
lawsWorkingGroupUserService.checkAuth(workingGroupId);
// 上传文件名格式不正确
if (fileName.lastIndexOf(".") != -1 && !".xlsx".equals(fileName.substring(fileName.lastIndexOf(".")))) {
throw new JeroBootException(ResultCommon.PLEASE_USE_A_FILE_WITH_THE_SUFFIX_XLSX);
@@ -89,4 +89,13 @@ public interface ILawsWorkingGroupUserService extends IService<LawsWorkingGroupU
* @return
*/
List<String> lawsWorkingGroupUserSearch(String realname, String username, String userRoleName, String userPostName);
/**
* 校验用户有无权限
* @author LQT
* @date 2023/11/8 17:27
* @param workingGroupId 工作id
* @return void
*/
void checkAuth(String workingGroupId);
}
@@ -2,10 +2,19 @@ package com.jero.modules.sys.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.CommonConstant;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.laws.common.constant.ResultCommon;
import com.jero.modules.sys.entity.LawsWorkingGroup;
import com.jero.modules.sys.entity.LawsWorkingGroupUser;
import com.jero.modules.sys.mapper.LawsWorkingGroupUserMapper;
import com.jero.modules.sys.service.ILawsWorkingGroupService;
import com.jero.modules.sys.service.ILawsWorkingGroupUserService;
import com.jero.modules.system.entity.SysRole;
import com.jero.modules.system.entity.SysUser;
@@ -14,25 +23,16 @@ import com.jero.modules.system.service.ISysRoleService;
import com.jero.modules.system.service.ISysUserRoleService;
import com.jero.modules.system.service.ISysUserService;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.jero.common.exception.JeroBootException;
import java.util.ArrayList;
import java.util.List;
import java.util.Date;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.system.query.QueryGenerator;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
@@ -51,6 +51,8 @@ public class LawsWorkingGroupUserServiceImpl extends ServiceImpl<LawsWorkingGrou
private ISysRoleService sysRoleService;
@Autowired
private ISysUserRoleService sysUserRoleService;
@Resource
private ILawsWorkingGroupService lawsWorkingGroupService;
/**
@@ -125,7 +127,27 @@ public class LawsWorkingGroupUserServiceImpl extends ServiceImpl<LawsWorkingGrou
return userRoles.stream().map(SysUser::getId).distinct().collect(Collectors.toList());
}
/**
@Override
public void checkAuth(String workingGroupId) {
// 验证当前登录人员是否可以维护人员
LawsWorkingGroup lawsWorkingGroup = lawsWorkingGroupService.queryById(workingGroupId);
if(Objects.isNull(lawsWorkingGroup)){
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
}
LawsWorkingGroup lawsWorkingGroupPid = lawsWorkingGroupService.queryById(lawsWorkingGroup.getPid());
if(Objects.isNull(lawsWorkingGroupPid)){
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
}
if(!Objects.equals(lawsWorkingGroupPid.getLevel(),2)){
throw new JeroBootException(ResultCommon.HORIZONTAL_TRANSGRESSION);
}
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Objects.equals(lawsWorkingGroupPid.getUserId(),loginUser.getId())){
throw new JeroBootException(ResultCommon.HORIZONTAL_TRANSGRESSION);
}
}
/**
* 列表查询
*/
@Override