冗余字段更新完成

yun-zuoyi
wei.peng 6 years ago
parent e42084ab38
commit ba61957780

@ -101,8 +101,17 @@ public interface IPersonnelService {
@ApiOperation(value = "岗位关系检查")
void checkSysPositionRef(Long positionId);
@ApiOperation(value = "岗位关系检查")
void refreshMenuRdd(Long menuId);
@ApiOperation(value = "岗位关系检查")
void refreshUpdateMenuRdd(Long menuId);
@ApiOperation(value = "刷新组织冗余")
void refreshOrganizeRdd(Long organizeId);
@ApiOperation(value = "刷新组织冗余")
void refreshRefSysUserOrganizeRdd(Long organizeIds);
void refreshUpdateOrganizeRdd(Long organizeId);
@ApiOperation(value = "刷新账号部门")
void refreshRefSysUserDepartment(Long userId, Long[] departmentIds);
@ -110,18 +119,28 @@ public interface IPersonnelService {
@ApiOperation(value = "刷新账号角色")
void refreshRefSysUserRole(Long userId, Long[] roleIds);
@ApiOperation(value = "刷新角色冗余")
void refreshUpdateSysRoleRdd(Long roleId);
@ApiOperation(value = "刷新组织冗余")
void refreshDepartmentRdd(Long departmentId);
@ApiOperation(value = "刷新账号部门")
void refreshRefSysUserDepartmentRdd(Long departmentId);
void refreshUpdateRefSysUserDepartmentRdd(Long departmentId);
@ApiOperation(value = "刷新用户部门")
void refreshRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds);
void refreshUpdateRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds);
@ApiOperation(value = "刷新用户部门")
void refreshRefSysUserInfoDepartmentRdd(Long departmentId);
void refreshUpdateRefSysUserInfoDepartmentRdd(Long departmentId);
@ApiOperation(value = "刷新岗位冗余")
void refreshPositionRdd(Long positionId);
@ApiOperation(value = "刷新用户岗位")
void refreshRefSysUserInfoPosition(Long userInfoId, Long[] positionIds);
@ApiOperation(value = "刷新用户岗位")
void refreshRefSysUserInfoPositionRdd(Long positionId);
void refreshUpdateRefSysUserInfoPositionRdd(Long positionId);
}

@ -415,7 +415,6 @@ public class PersonnelController extends CoreBaseController {
}
List<SysUser> result = personnelService.querySysUserByUserDetailModelOrIds(model, idList);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(result);
} catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
@ -531,7 +530,7 @@ public class PersonnelController extends CoreBaseController {
if(info != null){
// 刷新用户 部门关系
personnelService.refreshRefSysUserInfoDepartment(info.getId(),StringTool.getArrayLong(model.getInfoDepartmentIdList()));
personnelService.refreshUpdateRefSysUserInfoDepartment(info.getId(),StringTool.getArrayLong(model.getInfoDepartmentIdList()));
// 刷新用户 岗位关系
personnelService.refreshRefSysUserInfoPosition(info.getId(),StringTool.getArrayLong(model.getInfoPositionIdList()));
}

@ -99,6 +99,7 @@ public class SysMenuController extends CoreBaseController {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
return ResultBean.fail(busExcep).build();
} catch (Exception e) {
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@ -126,9 +127,7 @@ public class SysMenuController extends CoreBaseController {
public ResultBean findAll() {
try {
List<SysMenu> list = sysMenuService.findSysMenuAll();
return ResultBean.success("操作成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(list);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(list);
} catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
return ResultBean.fail(busExcep);
@ -144,8 +143,7 @@ public class SysMenuController extends CoreBaseController {
try{
ListPager<SysMenu> listPager = sysMenuService.querySysMenu(menu, pager);
return ResultBean.success("操作成功").setListPager(listPager)
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
return ResultBean.success("操作成功").setListPager(listPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep);

@ -123,7 +123,10 @@ public class SystemLoginService implements ISystemLoginService {
* @return
*/
public SysUser getUserLoginInfo(String loginName,String pwd) {
SysUser user = sysUserRDao.getByProperty("userLoginName",loginName);
SysUser user = sysUserRDao.getByProperty(
new String[]{"userLoginName","isValid"},
new Object[]{loginName,CommonEnumUtil.IS_VAILD.VAILD.getValue()}
);
if(user == null){ //用户不存在
throw new CredentialsException("用户不存在");
}else {

@ -294,7 +294,9 @@ public class CoreTreeService implements ICoreTreeService {
@ApiOperation(value = "封装菜单树",notes = "封装当前菜单树")
public void findSysMenuChildrenTreePack(SysMenu parent, int step) {
++step;
List<SysMenu> childList = menuRDao.findByProperty("parentId", parent.getId());
List<SysMenu> childList = menuRDao.findByProperty(
new String[]{"parentId","menuStatus"},
new Object[]{parent.getId(),CommonEnumUtil.DATA_STATUS.ENABLE.getValue()});
if (childList.size() > 0) { //说明有子集
for (SysMenu child : childList) {

@ -1,6 +1,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.ISysRoleService;
import cn.estsh.i3plus.core.apiservice.util.HqlModelPack;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
@ -71,6 +72,15 @@ public class PersonnelServiceService implements IPersonnelService {
@Autowired
private SysPositionRepository positionRDao;
@Autowired
private SysMenuRepository menuRDao;
@Autowired
private SysRefRoleMenuRepository refRoleMenuRDao;
@Autowired
private ISysRoleService roleService;
@Resource(name="redisCore")
protected ImppRedis redisCore;
@ -496,8 +506,89 @@ public class PersonnelServiceService implements IPersonnelService {
}
@Override
public void refreshRefSysUserOrganizeRdd(Long organizeIds) {
public void refreshMenuRdd(Long menuId) {
LOGGER.info("系统功能 SysMenu menuId:{} ",menuId);
if(menuId != null){
SysMenu menu = menuRDao.getById(menuId);
if(menu != null){
menuRDao.updateByProperties(
new String[]{"parentId"},
new Object[]{menu.getId()},
new String[]{"parentNameRdd"},
new Object[]{menu.getName()});
}
}
}
@Override
public void refreshUpdateMenuRdd(Long menuId) {
LOGGER.info("系统功能 SysMenu menuId:{} ",menuId);
if(menuId != null){
SysMenu menu = menuRDao.getById(menuId);
if(menu != null){
refRoleMenuRDao.updateByProperties(
new String[]{"menuId"},
new Object[]{menu.getId()},
new String[]{"menuNameRdd"},
new Object[]{menu.getName()});
// 更新角色权限关系
List<SysRefRoleMenu> refs = refRoleMenuRDao.findByProperty("menuId", menu.getId());
if(refs != null && refs.size() >0){
Long[] idArray = null;
for (SysRefRoleMenu ref : refs) {
List<SysRefRoleMenu> userRefList = refRoleMenuRDao.findByProperty("roleId", ref.getRoleId());
if(userRefList != null && userRefList.size() > 0){
idArray = new Long[userRefList.size()];
for (int i = 0; i < userRefList.size(); i++) {
idArray[i] = userRefList.get(i).getMenuId();
}
}
roleService.refreshSysRoleRef(ref.getRoleId(),idArray,null);
idArray = null;
}
}
}
}
}
@Override
public void refreshOrganizeRdd(Long organizeId) {
LOGGER.info("组织信息 SysOrganize organizeId:{} ",organizeId);
if(organizeId != null){
SysOrganize organize = organizeRDao.getById(organizeId);
if(organize != null){
organizeRDao.updateByProperties(
new String[]{"parentId"},
new Object[]{organize.getId()},
new String[]{"parentNameRdd"},
new Object[]{organize.getName()});
}
}
}
@Override
public void refreshUpdateOrganizeRdd(Long organizeId) {
LOGGER.info("组织信息 SysOrganize organizeId:{} ",organizeId);
if(organizeId != null){
SysOrganize organize = organizeRDao.getById(organizeId);
if(organize != null){
departmentRDao.updateByProperties(
new String[]{"organizeId"},
new Object[]{organize.getId()},
new String[]{"organizeNameRdd"},
new Object[]{organize.getName()});
// 更新用户、账号 组织冗余信息
List<SysDepartment> departmentList = departmentRDao.findByProperty("organizeId", organize.getId());
if(departmentList != null && departmentList.size() >0 ){
for (SysDepartment department : departmentList) {
refreshUpdateRefSysUserDepartmentRdd(department.getId());
refreshUpdateRefSysUserInfoDepartmentRdd(department.getId());
}
}
}
}
}
@Override
@ -540,13 +631,21 @@ public class PersonnelServiceService implements IPersonnelService {
LOGGER.info("账号部门信息 SysUserInfo RefUserDepartmentRDao Insert Size :{}",list.size());
}
}
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("用户信息不存在")
.setErrorSolution("请重新操作")
.build();
}
}
@Override
public void refreshDepartmentRdd(Long departmentId) {
LOGGER.info("部门信息 SysDepartment departmentId:{} ",departmentId);
if(departmentId != null){
SysDepartment department = departmentRDao.getById(departmentId);
if(department != null){
departmentRDao.updateByProperties(
new String[]{"parentId"},
new Object[]{department.getId()},
new String[]{"parentNameRdd"},
new Object[]{department.getName()});
}
}
}
@ -589,12 +688,83 @@ public class PersonnelServiceService implements IPersonnelService {
}
@Override
public void refreshRefSysUserDepartmentRdd(Long departmentId) {
public void refreshUpdateSysRoleRdd(Long roleId) {
LOGGER.debug("角色信息 RefSysUserRole roleId:{}", roleId);
if(roleId != null){
SysRole role = roleRDao.getById(roleId);
if(role != null){
// 更新账号角色关系冗余信息
refUserRoleRDao.updateByProperties(
new String[]{"roleId"},
new Object[]{role.getId()},
new String[]{"roleNameRdd"},
new Object[]{role.getName()}
);
// 账号组织关系集合
List<SysRefUserRole> refs = refUserRoleRDao.findByProperty("roleId", role.getId());
if(refs != null && refs.size() >0){
Long[] idArray = null;
for (SysRefUserRole ref : refs) {
List<SysRefUserRole> userRefList = refUserRoleRDao.findByProperty("userId", ref.getUserId());
if(userRefList != null && userRefList.size() > 0){
idArray = new Long[userRefList.size()];
for (int i = 0; i < userRefList.size(); i++) {
idArray[i] = userRefList.get(i).getRoleId();
}
}
refreshRefSysUserRole(ref.getUserId(),idArray);
idArray = null;
}
}
}
}
}
@Override
public void refreshUpdateRefSysUserDepartmentRdd(Long departmentId) {
LOGGER.info("部门信息 SysDepartment departmentId:{} ",departmentId);
if(departmentId != null){
SysDepartment department = departmentRDao.getById(departmentId);
if(department != null){
// 更新账号组织关系冗余信息
refUserDepartmentRDao.updateByProperties(
new String[]{"departmentId"},
new Object[]{department.getId()},
new String[]{"departmentNameRdd","organizeId","organizeNameRdd"},
new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()}
);
// 更新账号组织冗余信息
userRDao.updateByProperties(
new String[]{"departmentId"},
new Object[]{department.getId()},
new String[]{"departmentNameRdd","organizeId","organizeNameRdd"},
new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()}
);
// 账号组织关系集合
List<SysRefUserDepartment> refs = refUserDepartmentRDao.findByProperty("departmentId", department.getId());
if(refs != null && refs.size() >0){
Long[] idArray = null;
for (SysRefUserDepartment ref : refs) {
List<SysRefUserDepartment> userRefList = refUserDepartmentRDao.findByProperty("userId", ref.getUserId());
if(userRefList != null && userRefList.size() > 0){
idArray = new Long[userRefList.size()];
for (int i = 0; i < userRefList.size(); i++) {
idArray[i] = userRefList.get(i).getDepartmentId();
}
}
refreshRefSysUserDepartment(ref.getUserId(),idArray);
idArray = null;
}
}
}
}
}
@Override
public void refreshRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds) {
public void refreshUpdateRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds) {
LOGGER.info("用户部门关系信息 SysUser userInfoId:{} departmentIds:{}",userInfoId,departmentIds);
SysUserInfo info = userInfoRDao.getById(userInfoId);
@ -644,8 +814,60 @@ public class PersonnelServiceService implements IPersonnelService {
}
@Override
public void refreshRefSysUserInfoDepartmentRdd(Long departmentId) {
public void refreshUpdateRefSysUserInfoDepartmentRdd(Long departmentId) {
LOGGER.info("部门信息 SysInfoDepartment departmentId:{} ",departmentId);
if(departmentId != null){
SysDepartment department = departmentRDao.getById(departmentId);
if(department != null){
// 更新账号组织关系冗余信息
refUserInfoDepartmentRDao.updateByProperties(
new String[]{"departmentId"},
new Object[]{department.getId()},
new String[]{"departmentNameRdd","organizeId","organizeNameRdd"},
new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()}
);
// 更新账号组织冗余信息
userInfoRDao.updateByProperties(
new String[]{"departmentId"},
new Object[]{department.getId()},
new String[]{"departmentNameRdd","organizeId","organizeNameRdd"},
new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()}
);
// 账号组织关系集合
List<SysRefUserInfoDepartment> refs = refUserInfoDepartmentRDao.findByProperty("departmentId", department.getId());
if(refs != null && refs.size() >0){
Long[] idArray = null;
for (SysRefUserInfoDepartment ref : refs) {
List<SysRefUserInfoDepartment> userRefList = refUserInfoDepartmentRDao.findByProperty("userId", ref.getUserId());
if(userRefList != null && userRefList.size() > 0){
idArray = new Long[userRefList.size()];
for (int i = 0; i < userRefList.size(); i++) {
idArray[i] = userRefList.get(i).getDepartmentId();
}
}
refreshRefSysUserDepartment(ref.getUserId(),idArray);
idArray = null;
}
}
}
}
}
@Override
public void refreshPositionRdd(Long positionId) {
LOGGER.info("岗位信息 SysPosition positionId:{} ",positionId);
if(positionId != null){
SysPosition position = positionRDao.getById(positionId);
if(position != null){
positionRDao.updateByProperties(
new String[]{"parentId"},
new Object[]{position.getId()},
new String[]{"parentNameRdd"},
new Object[]{position.getName()});
}
}
}
@Override
@ -696,52 +918,43 @@ public class PersonnelServiceService implements IPersonnelService {
}
@Override
public void refreshRefSysUserInfoPositionRdd(Long positionId) {
List<Long> result = new ArrayList<>(); // 需要更新的用户ID 集合
// 更新关系表中数据
public void refreshUpdateRefSysUserInfoPositionRdd(Long positionId) {
LOGGER.info("岗位信息 SysPosition positionId:{} ",positionId);
if(positionId != null){
SysPosition position = positionRDao.getById(positionId);
if(position != null){
List<SysRefUserPosition> list = refUserPositionRDao.findByProperty("positionId", position.getId());
if(list != null && list.size() > 0){
// 更新关系表中的冗余信息
refUserPositionRDao.updateByProperties(
"positionId",position.getId(),
"positionNameRdd", position.getName());
// 更新父节点冗余信息
positionRDao.updateByProperties("parentId",position.getId(),
"parentNameRdd",position.getName());
for (SysRefUserPosition ref : list) {
result.add(ref.getUserId());
}
}
}
}
// 删除关系表中数据
refUserPositionRDao.deleteByProperty("positionId", positionId);
// 获取需要更新的用户
StringBuffer strWhere = new StringBuffer();
List<String> nameList = null;
HqlPack.getInPack(StringUtils.join(result, ","), "userId", strWhere);
List<SysUserInfo> infoList = userInfoRDao.findByHqlWhere(strWhere.toString());
// 更新用户的冗余信息
if(infoList != null && infoList.size() > 0){
for (SysUserInfo info : infoList) {
List<SysRefUserPosition> list = refUserPositionRDao.findByProperty("userId", info.getId());
if (list != null) {
for (SysRefUserPosition ref : list) {
nameList.add(ref.getPositionNameRdd());
// 更新用户岗位关系冗余信息
refUserPositionRDao.updateByProperties(
new String[]{"positionId"},
new Object[]{position.getId()},
new String[]{"positionNameRdd"},
new Object[]{position.getName()}
);
// 更新用户主岗位冗余信息
userInfoRDao.updateByProperties(
new String[]{"positionId"},
new Object[]{position.getId()},
new String[]{"positionNameRdd"},
new Object[]{position.getName()}
);
// 用户用户岗位关系集合
List<SysRefUserPosition> refs = refUserPositionRDao.findByProperty("positionId", position.getId());
if(refs != null && refs.size() >0){
Long[] positionIdArray = null;
for (SysRefUserPosition ref : refs) {
List<SysRefUserPosition> userRefList = refUserPositionRDao.findByProperty("userId", ref.getUserId());
if(userRefList != null && userRefList.size() > 0){
positionIdArray = new Long[userRefList.size()];
for (int i = 0; i < userRefList.size(); i++) {
positionIdArray[i] = userRefList.get(i).getPositionId();
}
}
refreshRefSysUserInfoPosition(ref.getUserId(),positionIdArray);
positionIdArray = null;
}
}
info.setPositionNamesRdd(StringUtils.join(nameList, ","));
userInfoRDao.save(info);
}
}
}

@ -1,5 +1,6 @@
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.ISysDepartmentService;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -42,6 +43,9 @@ public class SysDepartmentService implements ISysDepartmentService {
@Autowired
private CoreTreeService coreTreeService;
@Autowired
private IPersonnelService personnelService;
@Override
@ApiOperation(value = "新增部门信息")
public SysDepartment insertSysDepartment(SysDepartment department) {
@ -156,10 +160,9 @@ public class SysDepartmentService implements ISysDepartmentService {
LOGGER.info("部门信息 DEPARTMENT department:{}",department);
departmentRDao.update(department);
// 修改冗余信息
departmentRDao.updateByProperties("parentId",department.getId(),
new String[]{"parentNameRdd", "organizeId", "organizeNameRdd"},
new Object[]{department.getName(), department.getOrganizeId(), department.getOrganizeNameRdd()});
personnelService.refreshDepartmentRdd(department.getId());
personnelService.refreshUpdateRefSysUserDepartmentRdd(department.getId());
personnelService.refreshUpdateRefSysUserInfoDepartmentRdd(department.getId());
}
@Override

@ -1,5 +1,6 @@
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.ISysMenuService;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -44,38 +45,44 @@ public class SysMenuService implements ISysMenuService {
@Autowired
private SysRefRoleMenuRepository refRoleMenuRDao;
@Autowired
private IPersonnelService personnelService;
@Override
@ApiOperation(value = "更新菜单信息")
public void updateSysMenu(SysMenu sysMenu) {
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
public void updateSysMenu(SysMenu menu) {
LOGGER.info("系统功能 SYS_MENU :{}", menu);
// 唯一校验 CODE 相同 ID 不同 则视为相同
List<SysMenu> list = sysMenuRDao.findByProperty("menuCode", sysMenu.getMenuCode());
if(null != list && list.size() > 0){
for (SysMenu menu : list) {
if(!menu.getId().equals(sysMenu.getId())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("权限代码已存在")
.setErrorSolution("请重新输入权限代码")
.build();
}
}
StringBuffer countWhere = new StringBuffer();
HqlPack.getStringEqualPack( menu.getMenuCode(),"menuCode",countWhere);
HqlPack.getNumNOEqualPack(menu.getId().toString(),"id",countWhere);
int count = sysMenuRDao.findByHqlWhereCount(countWhere.toString());
if(count > 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("权限代码已存在")
.setErrorSolution("请重新输入权限代码")
.build();
}
// 父节点检查
coreTreeService.doValidatorSysMenuParentId(sysMenu);
coreTreeService.doValidatorSysMenuParentId(menu);
if (sysMenu.getParentId() != null && sysMenu.getParentId() > 0) {
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
if (menu.getParentId() != null && menu.getParentId() > 0) {
SysMenu parent = sysMenuRDao.getById(menu.getParentId());
ValidatorBean.checkNotNull(parent,"上级权限信息不存在");
sysMenu.setParentNameRdd(parent.getName());
menu.setParentNameRdd(parent.getName());
}
sysMenuRDao.update(sysMenu);
sysMenuRDao.updateByProperties("parentId",sysMenu.getId(),
"parentNameRdd",sysMenu.getName());
sysMenuRDao.update(menu);
// 更新冗余信息
personnelService.refreshMenuRdd(menu.getId());
personnelService.refreshUpdateMenuRdd(menu.getId());
}
@Override
@ -172,7 +179,7 @@ public class SysMenuService implements ISysMenuService {
@ApiOperation(value = "查询菜单信息",notes = "查询所有菜单信息")
public List<SysMenu> findSysMenuAll() {
LOGGER.info("系统功能 SYS_MENU find All");
return sysMenuRDao.findAll();
return sysMenuRDao.findByProperty(new String[]{"menuStatus"},new Object[]{CommonEnumUtil.DATA_STATUS.ENABLE.getValue()});
}
@Override

@ -1,5 +1,6 @@
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.ISysOrganizeService;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -38,6 +39,9 @@ public class SysOrganizeService implements ISysOrganizeService {
@Autowired
private CoreTreeService coreTreeService;
@Autowired
private IPersonnelService personnelService;
@Override
@ApiOperation(value = "更新组织",notes = "传入持久化组织对象,进行更新")
public void updateSysOrganize(SysOrganize organize) {
@ -71,8 +75,8 @@ public class SysOrganizeService implements ISysOrganizeService {
// 更新数据
organizeRDao.update(organize);
// 修改冗余信息
organizeRDao.updateByProperties("parentId",organize.getId(),
"parentNameRdd",organize.getName());
personnelService.refreshOrganizeRdd(organize.getId());
personnelService.refreshUpdateOrganizeRdd(organize.getId());
}
@Override

@ -108,8 +108,9 @@ public class SysPositionService implements ISysPositionService {
// 修改岗位信息
LOGGER.info("岗位信息 POSITION position:{}", position);
positionRDao.update(position);
// 修改冗余信息
// personnelService.refreshRefSysUserInfoPositionRdd(position.getId());
// 更新冗余信息
personnelService.refreshPositionRdd(position.getId());
personnelService.refreshUpdateRefSysUserInfoPositionRdd(position.getId());
}
@Override
@ -119,7 +120,6 @@ public class SysPositionService implements ISysPositionService {
personnelService.checkSysPositionRef(id);
positionRDao.deleteById(id);
personnelService.refreshRefSysUserInfoPositionRdd(id);
}
@Override
@ -133,7 +133,7 @@ public class SysPositionService implements ISysPositionService {
positionRDao.deleteByIds(ids);
for (Long id : ids) {
personnelService.refreshRefSysUserInfoPositionRdd(id);
personnelService.refreshUpdateRefSysUserInfoPositionRdd(id);
}
}

@ -1,5 +1,6 @@
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.ISysRoleService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
@ -48,11 +49,16 @@ public class SysRoleService implements ISysRoleService {
@Autowired
private SysRefRoleMenuRepository refRoleMenuRDao;
@Autowired
private IPersonnelService personnelService;
@Override
@ApiOperation(value = "更新角色信息",notes = "更新角色信息")
public void updateSysRole(SysRole sysRole) {
LOGGER.info("系统角色 SYS_ROLE :{}", sysRole);
sysRoleRDao.update(sysRole);
// 更新冗余信息
personnelService.refreshUpdateSysRoleRdd(sysRole.getId());
}
@Override
@ -157,7 +163,7 @@ public class SysRoleService implements ISysRoleService {
ref.setMenuId(menu.getId());
ref.setMenuTypeRdd(menu.getMenuType());
ConvertBean.serviceModelInitialize(ref,userName);
// ConvertBean.serviceModelInitialize(ref,userName);
refs.add(ref);
}
@ -181,7 +187,7 @@ public class SysRoleService implements ISysRoleService {
role.setMenuNumber(featuresListRdd.size());
role.setMenuNamesRdd(String.join(",",featuresListRdd));
ConvertBean.serviceModelUpdate(role,userName);
// ConvertBean.serviceModelUpdate(role,userName);
}
refRoleMenuRDao.saveAll(refs);
@ -210,7 +216,7 @@ public class SysRoleService implements ISysRoleService {
@ApiOperation(value = "查信角色信息",notes = "查询所有角色信息")
public List<SysRole> findSysRoleAll() {
LOGGER.info("系统角色 SYS_ROLE find All");
return sysRoleRDao.findAll();
return sysRoleRDao.findByProperty(new String[]{"roleStatus"},new Object[]{CommonEnumUtil.DATA_STATUS.ENABLE.getValue()});
}
@Override

@ -500,8 +500,58 @@ public class SysUserService implements ISysUserService {
}
/**
*
*
* +
*
*
* @param user
*/
public void packSysUserSort(SysUser user){
if(user != null){
// 创建时间升序
if(user.getRoleList() != null){
user.getRoleList().sort(Comparator.comparing(SysRole::getCreateDatetime));
}
if(user.getMenuList() != null){
user.getMenuList().sort(Comparator.comparing(SysMenu::getMenuSort).reversed() // 倒序
.thenComparing(SysMenu::getMenuCode)); //升序
}
if(user.getOrganizeList() != null){
user.getOrganizeList().sort(Comparator.comparing(SysOrganize::getCreateDatetime));
}
if(user.getDepartmentList() != null){
user.getDepartmentList().sort(Comparator.comparing(SysDepartment::getCreateDatetime));
}
}
}
/**
*
*
*
*
* @param info
*/
public void packSysUserInfoSort(SysUserInfo info){
if(info != null){
if(info.getPositionList() != null){
info.getPositionList().sort(Comparator.comparing(SysPosition::getCreateDatetime));
}
if(info.getDepartmentList() != null){
info.getDepartmentList().sort(Comparator.comparing(SysDepartment::getCreateDatetime));
}
if(info.getOrganizeList() != null){
info.getOrganizeList().sort(Comparator.comparing(SysOrganize::getCreateDatetime));
}
}
}
/**
*
* @param sessionUser
* @param user
* @return
*/
@ -521,7 +571,6 @@ public class SysUserService implements ISysUserService {
/**
*
* @param sessionUser
* @param user
* @return
*/

Loading…
Cancel
Save