用户权限调整

yun-zuoyi
wei.peng 6 years ago
parent aaf76a00dc
commit cb135ade39

@ -51,12 +51,5 @@ public interface ICoreMemTreeService {
@ApiOperation(value = "分装岗位树",notes = "根据制定ID分装岗位树") @ApiOperation(value = "分装岗位树",notes = "根据制定ID分装岗位树")
SysPosition packTreeSysPositionById(List<SysPosition> list, Long id); SysPosition packTreeSysPositionById(List<SysPosition> list, Long id);
/**
* ID
* @param position
* @return
*/
@ApiOperation(value = "查询岗位子节点",notes = "查询字节点岗位ID")
List<Long> findChildSysPosition(SysPosition position);
} }

@ -81,6 +81,9 @@ public interface IPersonnelService {
@ApiOperation(value = "查询账号角色关系") @ApiOperation(value = "查询账号角色关系")
List<SysRefUserRole> findSysRefUserRoleById(Long userId); List<SysRefUserRole> findSysRefUserRoleById(Long userId);
@ApiOperation(value = "查询角色",notes = "查询制定用户的角色信息")
List<SysRole> findSysRoleByUserId(Long userId);
@ApiOperation(value = "查询账号部门关系") @ApiOperation(value = "查询账号部门关系")
List<SysRefUserDepartment> findSysRefUserDepartmentById(Long userId); List<SysRefUserDepartment> findSysRefUserDepartmentById(Long userId);

@ -59,13 +59,18 @@ public interface ISysPositionService {
/** /**
* *
* 使 
* @param position * @param position
* @param pager * @param pager
* @return * @return
*/ */
@Deprecated
@ApiOperation(value = "查询岗位信息",notes = "查询岗位信息 (分页,组合)") @ApiOperation(value = "查询岗位信息",notes = "查询岗位信息 (分页,组合)")
ListPager<SysPosition> querySysPosition(SysPosition position, Pager pager); ListPager<SysPosition> querySysPosition(SysPosition position, Pager pager);
@ApiOperation(value = "查询岗位信息",notes = "查询岗位信息 (分页,组合)")
ListPager<SysPosition> querySysPosition(SysPosition position,List<Long> idList, Pager pager);
/** /**
* Key * Key
* *

@ -144,6 +144,9 @@ public interface ISysRoleService {
@ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)") @ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)")
ListPager<SysRole> querySysRole(SysRole role, Pager pager); ListPager<SysRole> querySysRole(SysRole role, Pager pager);
@ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)")
ListPager<SysRole> querySysRole(SysRole role,List<Long> idList, Pager pager);
/*** /***
* *
* @param role * @param role

@ -68,12 +68,11 @@ public class SysMemTreeController extends CoreBaseController {
/** /**
* ID * ID
* @param userId
* @return * @return
*/ */
@GetMapping(value="/position/user") @GetMapping(value="/position/user")
@ApiOperation(value="查询岗位树",notes="通过部门主键获取岗位树,-1为根节点") @ApiOperation(value="查询岗位树",notes="通过部门主键获取岗位树,-1为根节点")
public ResultBean listSysPositionParentId(Long userId) { public ResultBean listSysPositionParentId() {
try { try {
List list = positionService.listSysPosition(); List list = positionService.listSysPosition();
List listTree = memTreeService.packTreeSysPosition(list, CommonEnumUtil.PARENT.DEFAULT.getValue()); List listTree = memTreeService.packTreeSysPosition(list, CommonEnumUtil.PARENT.DEFAULT.getValue());

@ -1,5 +1,6 @@
package cn.estsh.i3plus.core.apiservice.controller.busi; package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysPositionService; import cn.estsh.i3plus.core.api.iservice.busi.ISysPositionService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
@ -10,6 +11,7 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysPosition; import cn.estsh.i3plus.pojo.platform.bean.SysPosition;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserPosition;
import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppBusiException;
@ -24,6 +26,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -42,6 +45,9 @@ public class SysPositionController extends CoreBaseController {
@Autowired @Autowired
private ISysPositionService positionService; private ISysPositionService positionService;
@Autowired
private IPersonnelService personnelService;
/** /**
* *
* *
@ -139,10 +145,16 @@ public class SysPositionController extends CoreBaseController {
@ApiOperation(value = "查询岗位", notes = "复杂查询岗位带分页") @ApiOperation(value = "查询岗位", notes = "复杂查询岗位带分页")
public ResultBean querySysPosition(SysPosition position, Pager pager) { public ResultBean querySysPosition(SysPosition position, Pager pager) {
try { try {
position.setOrganizeCode(AuthUtil.getOrganize().getOrganizeCode()); List<SysRefUserPosition> refList = personnelService.findSysRefUserPositionById(getSessionUser().getUserInfo().getId());
ListPager<SysPosition> listPager = positionService.querySysPosition(position, pager); if(refList != null && refList.size() > 0){
return ResultBean.success("操作成功").setListPager(listPager) List<Long> idList = new ArrayList<>();
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); refList.forEach(ref -> idList.add(ref.getPositionId()));
ListPager<SysPosition> listPager = positionService.querySysPosition(position,idList, pager);
return ResultBean.success("操作成功").setListPager(listPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) { } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
} catch (Exception e) { } catch (Exception e) {

@ -1,5 +1,6 @@
package cn.estsh.i3plus.core.apiservice.controller.busi; package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
@ -9,6 +10,7 @@ import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysRefRoleMenu; import cn.estsh.i3plus.pojo.platform.bean.SysRefRoleMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserRole;
import cn.estsh.i3plus.pojo.platform.bean.SysRole; import cn.estsh.i3plus.pojo.platform.bean.SysRole;
import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.auth.AuthUtil;
@ -24,6 +26,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -43,6 +46,9 @@ public class SysRoleController extends CoreBaseController{
@Autowired @Autowired
private ISysRoleService sysRoleService; private ISysRoleService sysRoleService;
@Autowired
private IPersonnelService personnelService;
/** /**
* *
* @param role * @param role
@ -141,6 +147,19 @@ public class SysRoleController extends CoreBaseController{
} }
} }
@GetMapping(value = "/list-user")
@ApiOperation(value = "查询角色", notes = "查询用户所拥有的角色信息")
public ResultBean findSysRoleByUser() {
try {
List<SysRole> result = personnelService.findSysRoleByUserId(getSessionUser().getUser().getId());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(result);
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/** /**
* *
* @param ids id * @param ids id
@ -191,10 +210,16 @@ public class SysRoleController extends CoreBaseController{
@ApiOperation(value="查询角色",notes="组合查询角色,外带分页功能") @ApiOperation(value="查询角色",notes="组合查询角色,外带分页功能")
public ResultBean querySysRole(SysRole role, Pager pager){ public ResultBean querySysRole(SysRole role, Pager pager){
try{ try{
ListPager<SysRole> listPager = sysRoleService.querySysRole(role, pager); List<SysRefUserRole> refList = personnelService.findSysRefUserRoleById(getSessionUser().getUser().getId());
return ResultBean.success("操作成功").setListPager(listPager) if(refList != null && refList.size() > 0){
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); List<Long> idList = new ArrayList<>(refList.size());
refList.forEach(ref -> idList.add(ref.getRoleId()));
return ResultBean.success("操作成功").setListPager(sysRoleService.querySysRole(role, idList, pager))
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ }catch(Exception e){

@ -6,6 +6,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService;
import cn.estsh.i3plus.core.apiservice.util.HqlModelPack; import cn.estsh.i3plus.core.apiservice.util.HqlModelPack;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.common.PagerHelper;
@ -227,6 +228,26 @@ public class PersonnelServiceService implements IPersonnelService {
} }
@Override @Override
public List<SysRole> findSysRoleByUserId(Long userId) {
LOGGER.debug("平台账号角色 SysRole userId:{}", userId);
List<SysRefUserRole> refList = findSysRefUserRoleById(userId);
if(refList != null && refList.size() > 0){
List<Long> idList = new ArrayList<>();
StringBuffer findWhere = new StringBuffer();
refList.forEach(ref -> idList.add(ref.getRoleId()));
HqlPack.getInPack(StringUtils.join(idList,","),"id",findWhere);
HqlPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(),"isDeleted",findWhere);
HqlPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(),"isValid",findWhere);
return roleRDao.findByHqlWhere(findWhere.toString());
}
return null;
}
@Override
public List<SysRefUserDepartment> findSysRefUserDepartmentById(Long userId) { public List<SysRefUserDepartment> findSysRefUserDepartmentById(Long userId) {
LOGGER.debug("平台账号部门 SysRefUserDepartment userId:{}", userId); LOGGER.debug("平台账号部门 SysRefUserDepartment userId:{}", userId);
return refUserDepartmentRDao.findByProperty("userId",userId); return refUserDepartmentRDao.findByProperty("userId",userId);

@ -155,18 +155,14 @@ public class SysPositionService implements ISysPositionService {
@ApiOperation(value = "查询岗位信息", notes = "查询岗位信息 (分页,组合)") @ApiOperation(value = "查询岗位信息", notes = "查询岗位信息 (分页,组合)")
public ListPager<SysPosition> querySysPosition(SysPosition position, Pager pager) { public ListPager<SysPosition> querySysPosition(SysPosition position, Pager pager) {
LOGGER.info("岗位信息 SysPosition find SysPosition page"); LOGGER.info("岗位信息 SysPosition find SysPosition page");
return querySysPosition(position, null, pager);
}
if (position == null) { @Override
//不传入实体对象,查询所有 public ListPager<SysPosition> querySysPosition(SysPosition position, List<Long> idList, Pager pager) {
int count = positionRDao.listCount(); DdlPackBean ddlPackBean = CoreHqlPack.packHqlSysPosition(position,idList);
pager = PagerHelper.getPager(pager, count); pager = PagerHelper.getPager(pager, positionRDao.findByHqlWhereCount(ddlPackBean));
return new ListPager(positionRDao.listPager(pager), pager); return new ListPager(positionRDao.findByHqlWherePage(ddlPackBean, pager), pager);
} else {
//生成hql查询语句
DdlPackBean ddlPackBean = CoreHqlPack.packHqlSysPosition(position);
pager = PagerHelper.getPager(pager, positionRDao.findByHqlWhereCount(ddlPackBean));
return new ListPager(positionRDao.findByHqlWherePage(ddlPackBean, pager), pager);
}
} }
@Override @Override

@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService;
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao; import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.common.PagerHelper;
@ -238,18 +239,14 @@ public class SysRoleService implements ISysRoleService {
@ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)") @ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)")
public ListPager<SysRole> querySysRole(SysRole role, Pager pager) { public ListPager<SysRole> querySysRole(SysRole role, Pager pager) {
LOGGER.info("系统角色 SysRole find role :{} page :{}", role, pager); LOGGER.info("系统角色 SysRole find role :{} page :{}", role, pager);
return querySysRole(role, null, pager);
}
if (role == null) { @Override
//不传入实体对象,查询所有 public ListPager<SysRole> querySysRole(SysRole role, List<Long> idList, Pager pager) {
int count = roleRDao.listCount(); DdlPackBean packBean = CoreHqlPack.packDdlBeanSysRole(role,idList);
pager = PagerHelper.getPager(pager, count); pager = PagerHelper.getPager(pager, roleRDao.findByHqlWhereCount(packBean));
return new ListPager(roleRDao.listPager(pager), pager); return new ListPager(roleRDao.findByHqlWherePage(packBean , pager), pager);
} else {
//生成hql查询语句
String hqlPack = CoreHqlPack.packHqlSysRole(role);
pager = PagerHelper.getPager(pager, roleRDao.findByHqlWhereCount(hqlPack));
return new ListPager(roleRDao.findByHqlWherePage(hqlPack + role.orderBy(), pager), pager);
}
} }
@Override @Override

Loading…
Cancel
Save