|
|
@ -6,13 +6,14 @@ import cn.estsh.i3plus.pojo.base.common.Pager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.bean.Organize;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.platform.repository.RefRoleMenuRepository;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
|
|
|
|
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
|
|
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
@ -38,6 +39,9 @@ public class SysMenuService implements ISysMenuService {
|
|
|
|
@Autowired
|
|
|
|
@Autowired
|
|
|
|
private CoreTreeService coreTreeService;
|
|
|
|
private CoreTreeService coreTreeService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private RefRoleMenuRepository refRoleMenuRDao;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void updateSysMenu(SysMenu sysMenu) {
|
|
|
|
public void updateSysMenu(SysMenu sysMenu) {
|
|
|
|
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
|
|
|
|
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
|
|
|
@ -60,6 +64,12 @@ public class SysMenuService implements ISysMenuService {
|
|
|
|
// 父节点检查
|
|
|
|
// 父节点检查
|
|
|
|
coreTreeService.doValidatorSysMenuParentId(sysMenu);
|
|
|
|
coreTreeService.doValidatorSysMenuParentId(sysMenu);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (sysMenu.getParentId() != null && sysMenu.getParentId() > 0) {
|
|
|
|
|
|
|
|
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(parent,"上级权限信息不存在");
|
|
|
|
|
|
|
|
sysMenu.setRedParentName(parent.getName());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
sysMenuRDao.update(sysMenu);
|
|
|
|
sysMenuRDao.update(sysMenu);
|
|
|
|
sysMenuRDao.updateByProperties("parentId",sysMenu.getId(),
|
|
|
|
sysMenuRDao.updateByProperties("parentId",sysMenu.getId(),
|
|
|
|
"redParentName",sysMenu.getName());
|
|
|
|
"redParentName",sysMenu.getName());
|
|
|
@ -105,21 +115,44 @@ public class SysMenuService implements ISysMenuService {
|
|
|
|
.build();
|
|
|
|
.build();
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
refRoleMenuRDao.deleteByProperties("menuId",id);
|
|
|
|
sysMenuRDao.deleteById(Long.parseLong(id));
|
|
|
|
sysMenuRDao.deleteById(Long.parseLong(id));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void deleteSysMenuByIds(String[] ids) {
|
|
|
|
|
|
|
|
LOGGER.info("系统功能 SYS_MENU ids :{}", ids);
|
|
|
|
|
|
|
|
long positionCount = sysMenuRDao.findByHqlWhereCount(CoreHqlPack.packHqlIds("parentId",ids));
|
|
|
|
|
|
|
|
if (positionCount >= 1) {
|
|
|
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
|
|
|
.setErrorDetail("存在相关系统功能信息无法删除!")
|
|
|
|
|
|
|
|
.setErrorSolution("请先删除子集信息在操作")
|
|
|
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
Long[] array = new Long[ids.length];
|
|
|
|
|
|
|
|
for (int i = 0; i < ids.length; i++) {
|
|
|
|
|
|
|
|
array[i] = Long.parseLong(ids[i]);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
refRoleMenuRDao.deleteByTypeLong("menuId",array);
|
|
|
|
|
|
|
|
sysMenuRDao.deleteByIds(array);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public SysMenu insertSysMenu(SysMenu sysMenu) {
|
|
|
|
public SysMenu insertSysMenu(SysMenu sysMenu) {
|
|
|
|
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
|
|
|
|
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
|
|
|
|
|
|
|
|
|
|
|
|
// 代码唯一校验
|
|
|
|
// 代码唯一校验
|
|
|
|
long count = sysMenuRDao.findByPropertyCount("menuCode", sysMenu.getMenuCode());
|
|
|
|
long count = sysMenuRDao.findByPropertyCount("menuCode", sysMenu.getMenuCode());
|
|
|
|
if(count <= 0){
|
|
|
|
if(count <= 0){
|
|
|
|
if (sysMenu.getParentId() != null && sysMenu.getParentId().intValue() > 0) {
|
|
|
|
if (sysMenu.getParentId() != null && sysMenu.getParentId() > 0) {
|
|
|
|
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
|
|
|
|
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
|
|
|
|
if(null != parent){
|
|
|
|
ValidatorBean.checkNotNull(parent,"上级权限信息不存在");
|
|
|
|
sysMenu.setRedParentName(parent.getName());
|
|
|
|
sysMenu.setRedParentName(parent.getName());
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return sysMenuRDao.insert(sysMenu);
|
|
|
|
return sysMenuRDao.insert(sysMenu);
|
|
|
|
}else {
|
|
|
|
}else {
|
|
|
|