yunhao.wang 7 years ago
commit 16a773ee90

@ -1,5 +1,6 @@
package cn.estsh.i3plus.core.api.iservice.busi; package cn.estsh.i3plus.core.api.iservice.busi;
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.platform.bean.LogOperate; import cn.estsh.i3plus.pojo.platform.bean.LogOperate;
@ -27,7 +28,7 @@ public interface ILogOperateService {
* @param pager * @param pager
* @return * @return
*/ */
List<LogOperate> listLogOperate(LogOperate logOperate,Pager pager); ListPager<LogOperate> listLogOperate(LogOperate logOperate, Pager pager);
/** /**
* id * id
@ -47,4 +48,11 @@ public interface ILogOperateService {
* @return * @return
*/ */
LogOperate getLogOperateById(long id); LogOperate getLogOperateById(long id);
/**
*
* @param operateUserName
* @return
*/
List<LogOperate> listLogOperateByOperateUserName(String operateUserName);
} }

@ -1,5 +1,7 @@
package cn.estsh.i3plus.core.api.iservice.base; package cn.estsh.i3plus.core.api.iservice.busi;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.bean.*;
import java.util.List; import java.util.List;
@ -32,6 +34,14 @@ public interface ISysUserService {
void updateSysUserStatus(String id, int status, SessionUser user); void updateSysUserStatus(String id, int status, SessionUser user);
/** /**
*
* @param ids
* @param status
* @param user
*/
void updateBatchSysUserStatus(String[] ids, int status, SessionUser user);
/**
* *
* @param sysUser * @param sysUser
*/ */
@ -76,12 +86,27 @@ public interface ISysUserService {
void deleteSysUserById(String id); void deleteSysUserById(String id);
/** /**
*
* @param ids ID
* @param user
*/
void deleteBatchSysUserById(String[] ids, SessionUser user);
/**
* *
* @return * @return
*/ */
List<SysUser> list(); List<SysUser> list();
/** /**
*
* @param user
* @param pager
* @return
*/
ListPager<SysUser> querySysUserByPager(SysUser user, Pager pager);
/**
* id * id
* @param id * @param id
* @return * @return

@ -100,6 +100,12 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
<exclusions>
<exclusion>
<artifactId>spring-boot-starter-logging</artifactId>
<groupId>org.springframework.boot</groupId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>

@ -84,7 +84,23 @@ public class DemoMongoController {
@ApiOperation(value="查询日志",notes = "查询日志") @ApiOperation(value="查询日志",notes = "查询日志")
public ResultBean queryLanguage(LogOperate logOperate,Pager pager) { public ResultBean queryLanguage(LogOperate logOperate,Pager pager) {
try { try {
List logList = logOperateService.listLogOperate(logOperate,pager); ListPager logList = logOperateService.listLogOperate(logOperate,pager);
return ResultBean.success("操作成功").setListPager(logList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep.getErrorShow());
}catch(Exception e){
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail().setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@GetMapping(value="/logoperate/operate-user-name")
@ApiOperation(value="查询日志",notes = "查询日志")
public ResultBean queryLanguage(String OperateUserName) {
try {
List<LogOperate> logList = logOperateService.listLogOperateByOperateUserName(OperateUserName);
return ResultBean.success("操作成功").setResultList(logList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setResultList(logList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep); LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);

@ -1,11 +1,8 @@
package cn.estsh.i3plus.core.apiservice.controller.base; package cn.estsh.i3plus.core.apiservice.controller.base;
import cn.estsh.i3plus.core.api.iservice.base.ISysUserService;
import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService; import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService;
import cn.estsh.i3plus.core.api.iservice.busi.ICoreTreeService; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.core.apiservice.controller.DemoAuthController; import cn.estsh.i3plus.core.apiservice.controller.DemoAuthController;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.Department;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysUser; import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.auth.AuthUtil;

@ -157,7 +157,7 @@ public class DepartmentController {
} }
@GetMapping(value = "/query") @GetMapping(value = "/query")
@ApiOperation(value = "根据名称和代码查询部门", notes = "根据名称和代码查询部门") @ApiOperation(value = "查询部门", notes = "组合查询部门信息外加分页信息")
public ResultBean queryDepartment(Department department, Pager pager) { public ResultBean queryDepartment(Department department, Pager pager) {
try { try {
ListPager departmentListPager = departmentService.findDepartmentByPager(department, pager); ListPager departmentListPager = departmentService.findDepartmentByPager(department, pager);

@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ILogOperateService; import cn.estsh.i3plus.core.api.iservice.busi.ILogOperateService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.LogOperate; import cn.estsh.i3plus.pojo.platform.bean.LogOperate;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
@ -79,9 +80,9 @@ public class LogOperateController {
@ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志") @ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志")
public ResultBean findLogOperateAll(){ public ResultBean findLogOperateAll(){
try { try {
List<LogOperate> logOperateList = logOperateService.listLogOperate(null,null); ListPager<LogOperate> logOperateList = logOperateService.listLogOperate(null,null);
return ResultBean.success("查询成功") return ResultBean.success("查询成功")
.setResultList(logOperateList) .setListPager(logOperateList)
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep); LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);

@ -125,7 +125,7 @@ public class OrganizeController {
} }
@GetMapping(value="/query") @GetMapping(value="/query")
@ApiOperation(value="查询所有组织",notes="查询所有组织") @ApiOperation(value="查询组织",notes="组合查询组织外加分页")
public ResultBean queryPosition(Organize organize, Pager pager){ public ResultBean queryPosition(Organize organize, Pager pager){
try{ try{
ListPager<Organize> listPager = organizeService.queryOrganize(organize, pager); ListPager<Organize> listPager = organizeService.queryOrganize(organize, pager);
@ -163,12 +163,12 @@ public class OrganizeController {
} }
@PutMapping(value = "/status") @PutMapping(value = "/status")
@ApiOperation(value = "修改权限状态", notes = "根据ID修改权限状态") @ApiOperation(value = "修改组织状态", notes = "根据ID修改组织状态")
public ResultBean updateStatus(String id, int status) { public ResultBean updateStatus(String id, int status) {
try { try {
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(id, "角色id 不能为空"); ValidatorBean.checkNotNull(id, "组织id 不能为空");
ValidatorBean.checkNotZero(status, "角色状态不能为空"); ValidatorBean.checkNotZero(status, "组织状态不能为空");
organizeService.updateOrganizeStatus(id, status, AuthUtil.getSessionUser()); organizeService.updateOrganizeStatus(id, status, AuthUtil.getSessionUser());
return new ResultBean(true); return new ResultBean(true);

@ -132,7 +132,7 @@ public class PositionController {
} }
@GetMapping(value="/query") @GetMapping(value="/query")
@ApiOperation(value="查询所有岗位",notes="查询所有岗位") @ApiOperation(value="查询岗位",notes="复杂查询岗位带分页")
public ResultBean queryPosition(Position position,Pager pager){ public ResultBean queryPosition(Position position,Pager pager){
try{ try{
ListPager<Position> listPager = positionService.queryPosition(position, pager); ListPager<Position> listPager = positionService.queryPosition(position, pager);

@ -46,6 +46,7 @@ public class SysMenuController {
//条件验证 //条件验证
ValidatorBean.beginValid(menu) ValidatorBean.beginValid(menu)
.notNull("name", menu.getName()) .notNull("name", menu.getName())
.notNull("menuCode", menu.getMenuCode())
.notNull("menuTypeId", menu.getMenuTypeId()); .notNull("menuTypeId", menu.getMenuTypeId());
//新增初始化 //新增初始化
@ -73,6 +74,7 @@ public class SysMenuController {
ValidatorBean.beginValid(sysMenu) ValidatorBean.beginValid(sysMenu)
.notNull("id", sysMenu.getId()) .notNull("id", sysMenu.getId())
.notNull("menuTypeId", sysMenu.getMenuTypeId()) .notNull("menuTypeId", sysMenu.getMenuTypeId())
.notNull("menuCode", sysMenu.getMenuCode())
.notNull("name", sysMenu.getName()); .notNull("name", sysMenu.getName());
ConvertBean.modelUpdate(sysMenu, AuthUtil.getSessionUser()); ConvertBean.modelUpdate(sysMenu, AuthUtil.getSessionUser());
@ -123,7 +125,7 @@ public class SysMenuController {
} }
@GetMapping(value="/query") @GetMapping(value="/query")
@ApiOperation(value="查询所有权限",notes="查询所有权限") @ApiOperation(value="查询权限",notes="组合查询权限,外带分页功能")
public ResultBean queryPosition(SysMenu menu, Pager pager){ public ResultBean queryPosition(SysMenu menu, Pager pager){
try{ try{
ListPager<SysMenu> listPager = sysMenuService.querySysMenu(menu, pager); ListPager<SysMenu> listPager = sysMenuService.querySysMenu(menu, pager);

@ -4,12 +4,13 @@ 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.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.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.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.RefRoleMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysRole; import cn.estsh.i3plus.pojo.platform.bean.SysRole;
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;
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.ResultBean; import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
@ -20,7 +21,6 @@ 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 javax.websocket.server.PathParam;
import java.util.List; import java.util.List;
/** /**
@ -37,7 +37,6 @@ public class SysRoleController {
public static final Logger LOGGER = LoggerFactory.getLogger(SysRoleController.class); public static final Logger LOGGER = LoggerFactory.getLogger(SysRoleController.class);
@Autowired @Autowired
private ISysRoleService sysRoleService; private ISysRoleService sysRoleService;
@ -51,6 +50,9 @@ public class SysRoleController {
//新增初始化 //新增初始化
ConvertBean.modelInitialize(role, AuthUtil.getSessionUser()); ConvertBean.modelInitialize(role, AuthUtil.getSessionUser());
role.setRoleStatusId(CommonEnumUtil.DATA_STATUS.ENABLE.getValue());
role.setRedMenuNumber(0);
role.setRedModuleNumber(0);
role = sysRoleService.insertSysRole(role); role = sysRoleService.insertSysRole(role);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(role); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(role);
@ -118,8 +120,27 @@ public class SysRoleController {
} }
} }
@GetMapping(value = "/find-ref-menu/{roleId}")
@ApiOperation(value = "查询角色的所有角色权限关系", notes = "查询角色的所有角色权限关系")
public ResultBean findRefRoleMenu(@PathVariable("roleId") String roleId) {
try {
ValidatorBean.checkNotNull(roleId, "角色id 不能为空");
List<RefRoleMenu> list = sysRoleService.findRefRoleMenuByRoleId(roleId);
return ResultBean.success("操作成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(list);
} catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
return ResultBean.fail(busExcep.getErrorShow());
} catch (Exception e) {
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}", e.getMessage(), e);
return ResultBean.fail().setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@GetMapping(value="/query") @GetMapping(value="/query")
@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); ListPager<SysRole> listPager = sysRoleService.querySysRole(role, pager);
@ -179,6 +200,8 @@ public class SysRoleController {
@ApiOperation(value = "批量修改系统角色状态", notes = "根据ID修改系统角色状态") @ApiOperation(value = "批量修改系统角色状态", notes = "根据ID修改系统角色状态")
public ResultBean updateBatchStatus(String[] ids,int status) { public ResultBean updateBatchStatus(String[] ids,int status) {
try { try {
ids = ConvertBean.modelSafeArrayNumber(ids,true);
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(ids, "角色id 不能为空"); ValidatorBean.checkNotNull(ids, "角色id 不能为空");
ValidatorBean.checkNotZero(status, "角色状态不能为空"); ValidatorBean.checkNotZero(status, "角色状态不能为空");
@ -201,7 +224,8 @@ public class SysRoleController {
try { try {
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(roleId, "角色roleId 不能为空"); ValidatorBean.checkNotNull(roleId, "角色roleId 不能为空");
ValidatorBean.checkNotZero(refIds, "角色状态不能为空");
ConvertBean.modelSafeArrayNumber(refIds,true);
sysRoleService.refreshSysRoleRef(roleId,refIds,AuthUtil.getSessionUser()); sysRoleService.refreshSysRoleRef(roleId,refIds,AuthUtil.getSessionUser());
@ -215,14 +239,22 @@ public class SysRoleController {
} }
} }
@PutMapping(value = "/ref-menu/batch-insert") @PutMapping(value = "/ref-menu/batch-insert")
@ApiOperation(value = "批量新增角色权限关系", notes = "批量新增角色权限关系") @ApiOperation(value = "批量新增角色权限关系", notes = "批量新增角色权限关系")
public ResultBean insertBatchRefMenu(String[] roleIds,String[] menuIds) { public ResultBean insertBatchRefMenu(String[] roleIds,String[] menuIds) {
try { try {
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(roleIds, "角色roleIds 不能为空"); ValidatorBean.checkNotNull(roleIds, "角色roleIds 不能为空");
ValidatorBean.checkNotNull(menuIds, "权限menuIds 不能为空");
roleIds = ConvertBean.modelSafeArrayNumber(roleIds,true);
if(roleIds.length == 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("请输入需要更新的角色信息。")
.build();
}
sysRoleService.refreshBatchSysRoleRef(roleIds,menuIds,AuthUtil.getSessionUser()); sysRoleService.refreshBatchSysRoleRef(roleIds,menuIds,AuthUtil.getSessionUser());

@ -1,7 +1,9 @@
package cn.estsh.i3plus.core.apiservice.controller.busi; package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.base.ISysUserService; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
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.SysUser; import cn.estsh.i3plus.pojo.platform.bean.SysUser;
@ -38,7 +40,6 @@ public class SysUserController {
@Autowired @Autowired
private ISysUserService sysUserService; private ISysUserService sysUserService;
@PostMapping(value = "/insert") @PostMapping(value = "/insert")
@ApiOperation(value = "新增用户", notes = "新增系统用户") @ApiOperation(value = "新增用户", notes = "新增系统用户")
public ResultBean insertSysUser(SysUser sysUser,String departmentId,String positionId ,String[] roleIds) { public ResultBean insertSysUser(SysUser sysUser,String departmentId,String positionId ,String[] roleIds) {
@ -152,6 +153,29 @@ public class SysUserController {
} }
} }
@GetMapping(value="/query-user-by-pager")
@ApiOperation(value="查询系统用户",notes="组合查询用户,外带分页查询(isValid = 1)")
public ResultBean querySysUserByPager(SysUser user, Pager pager){
try{
// 初始化用户查询讯息
if(null == user) {
user = new SysUser();
}
user.setIsValid(CommonEnumUtil.IS_VAILD.VAILD.getValue());
ListPager<SysUser> listPager = sysUserService.querySysUserByPager(user, pager);
return ResultBean.success("操作成功").setListPager(listPager)
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep.getErrorShow());
}catch(Exception e){
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail().setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@DeleteMapping(value = "/delete") @DeleteMapping(value = "/delete")
@ApiOperation(value = "删除定时任务", notes = "删除定时任务") @ApiOperation(value = "删除定时任务", notes = "删除定时任务")
public ResultBean delete(String id) { public ResultBean delete(String id) {
@ -189,4 +213,48 @@ public class SysUserController {
} }
} }
@DeleteMapping(value = "/batch-delete")
@ApiOperation(value = "根据id批量删除", notes = "根据id批量删除")
public ResultBean deleteBatchSysUserByIds(String[] ids){
try{
if(ids.length == 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("请选择需要删除的用户。")
.build();
}
sysUserService.deleteBatchSysUserById(ids,AuthUtil.getSessionUser());
return ResultBean.success("删除成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep.getErrorShow());
}catch(Exception e){
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail().setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@PutMapping(value = "/batch-status")
@ApiOperation(value = "批量修改系统功能状态", notes = "根据ID修改系统功能状态")
public ResultBean updateBatchStatus(String[] ids,int status) {
try {
// 数据校验
ValidatorBean.checkNotNull(ids, "功能id 不能为空");
ValidatorBean.checkNotZero(status, "功能状态不能为空");
sysUserService.updateBatchSysUserStatus(ids,status,AuthUtil.getSessionUser());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep.getErrorShow());
}catch(Exception e){
LOGGER.error(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail().setCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode());
}
}
} }

@ -1,7 +1,6 @@
package cn.estsh.i3plus.core.apiservice.daoimpl; package cn.estsh.i3plus.core.apiservice.daoimpl;
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao; import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.CoreTreeServiceImpl;
import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.bean.*;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

@ -7,7 +7,6 @@ import cn.estsh.i3plus.pojo.platform.repository.OrganizeRepository;
import cn.estsh.i3plus.pojo.platform.repository.PositionRepository; import cn.estsh.i3plus.pojo.platform.repository.PositionRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository; import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
import javafx.scene.layout.VBox;
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;
@ -22,11 +21,10 @@ import java.util.List;
* @Date : 2018-10-24 11:17 * @Date : 2018-10-24 11:17
* @Modify : * @Modify :
**/ **/
//TODO for -> 传统for
@Service @Service
public class CoreTreeServiceImpl implements ICoreTreeService { public class CoreTreeService implements ICoreTreeService {
public static final Logger LOGGER = LoggerFactory.getLogger(CoreTreeServiceImpl.class); public static final Logger LOGGER = LoggerFactory.getLogger(CoreTreeService.class);
@Autowired @Autowired
private DepartmentRepository departmentRDao; private DepartmentRepository departmentRDao;
@ -46,7 +44,9 @@ public class CoreTreeServiceImpl implements ICoreTreeService {
// 循环设置子集 // 循环设置子集
if(result != null && result.size() > 0){ if(result != null && result.size() > 0){
result.stream().forEach(position -> findPositionChildrenTreePack(position,0)); for (Position position : result) {
findPositionChildrenTreePack(position,0);
}
} }
return result; return result;
@ -86,7 +86,9 @@ public class CoreTreeServiceImpl implements ICoreTreeService {
// 循环设置子集 // 循环设置子集
if(result != null && result.size() > 0){ if(result != null && result.size() > 0){
result.stream().forEach(department -> findDepartmentChildrenTreePack(department,0)); for (Department department : result) {
findDepartmentChildrenTreePack(department,0);
}
} }
return result; return result;
@ -126,7 +128,9 @@ public class CoreTreeServiceImpl implements ICoreTreeService {
// 循环设置子集 // 循环设置子集
if(result != null && result.size() > 0){ if(result != null && result.size() > 0){
result.stream().forEach(organize -> findOrganizeChildrenTreePack(organize,0)); for (Organize organize : result) {
findOrganizeChildrenTreePack(organize,0);
}
} }
return result; return result;
@ -165,7 +169,9 @@ public class CoreTreeServiceImpl implements ICoreTreeService {
// 循环设置子集 // 循环设置子集
if(result != null && result.size() > 0){ if(result != null && result.size() > 0){
result.stream().forEach(menu -> findSysMenuChildrenTreePack(menu,0)); for (SysMenu menu : result) {
findSysMenuChildrenTreePack(menu,0);
}
} }
return result; return result;

@ -28,8 +28,8 @@ import java.util.List;
* @Modify : * @Modify :
**/ **/
@Service @Service
public class DepartmentServiceImpl implements IDepartmentService { public class DepartmentService implements IDepartmentService {
public static final Logger LOGGER = LoggerFactory.getLogger(DepartmentServiceImpl.class); public static final Logger LOGGER = LoggerFactory.getLogger(DepartmentService.class);
@Autowired @Autowired
private DepartmentRepository departmentRDao; private DepartmentRepository departmentRDao;
@ -39,34 +39,49 @@ public class DepartmentServiceImpl implements IDepartmentService {
@Override @Override
public Department insertDepartment(Department department) { public Department insertDepartment(Department department) {
if (department.getParentId() != null && department.getParentId().intValue() > 0) { LOGGER.info("部门信息 Department department:{}", department);
LOGGER.info("部门信息 DEPARTMENT :{}", department.getParentId()); // 代码唯一校验
Department parentPosition = departmentRDao.getById(department.getParentId()); long count = organizeRDao.findByPropertyCount("departmentCode", department.getDepartmentCode());
ValidatorBean.checkNotNull(parentPosition); if(count <= 0){
department.setRedParentName(parentPosition.getName()); //冗余父节点信息
} if (department.getParentId() != null && department.getParentId().intValue() > 0) {
LOGGER.info("部门信息 DEPARTMENT :{}", department.getParentId());
Department parentPosition = departmentRDao.getById(department.getParentId());
ValidatorBean.checkNotNull(parentPosition);
department.setRedParentName(parentPosition.getName());
}
LOGGER.info("组织信息 ORGANIZE :{}", department.getOrganizeId()); LOGGER.info("组织信息 ORGANIZE :{}", department.getOrganizeId());
Organize organize = organizeRDao.getById(department.getOrganizeId()); Organize organize = organizeRDao.getById(department.getOrganizeId());
ValidatorBean.checkNotNull(organize); ValidatorBean.checkNotNull(organize);
department.setRedOrganizeName(organize.getName()); department.setRedOrganizeName(organize.getName());
LOGGER.info("部门信息 DEPARTMENT {}",department); LOGGER.info("部门信息 DEPARTMENT {}",department);
return departmentRDao.insert(department); return departmentRDao.insert(department);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("部门代码已存在")
.setErrorSolution("请重新输入部门代码")
.build();
}
} }
@Override @Override
public void deleteDepartmentById(String id) { public void deleteDepartmentById(String id) {
LOGGER.info("部门信息 Department id :{}", id);
// 查询是否存在子级 // 查询是否存在子级
LOGGER.info("部门信息 DEPARTMENT :{}", id); LOGGER.info("部门信息 DEPARTMENT :{}", id);
if (departmentRDao.findByPropertyCount("parentId",Long.parseLong(id)) > 0) { if (departmentRDao.findByPropertyCount("parentId",Long.parseLong(id)) > 0) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.WMS.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.WMS.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在子节点无法删除!") .setErrorDetail("存在相关部门信息无法删除!")
.setErrorSolution("请重新操作") .setErrorSolution("请先删除子集信息在操作")
.build(); .build();
} }
@ -77,13 +92,14 @@ public class DepartmentServiceImpl implements IDepartmentService {
@Override @Override
public void deleteDepartmentByIds(String[] ids) { public void deleteDepartmentByIds(String[] ids) {
LOGGER.info("部门信息 DEPARTMENT ids :{}", ids);
long positionCount = departmentRDao.findByHqlWhereCount(CoreHqlPack.packHqlIds("parentId",ids)); long positionCount = departmentRDao.findByHqlWhereCount(CoreHqlPack.packHqlIds("parentId",ids));
if (positionCount >= 1) { if (positionCount >= 1) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在子节点无法删除!") .setErrorDetail("存在相关部门信息无法删除!")
.setErrorSolution("请重新操作") .setErrorSolution("请先删除子集信息在操作")
.build(); .build();
}else { }else {
Long[] array = new Long[ids.length]; Long[] array = new Long[ids.length];
@ -96,6 +112,22 @@ public class DepartmentServiceImpl implements IDepartmentService {
@Override @Override
public void updateDepartment(Department department) { public void updateDepartment(Department department) {
LOGGER.info("部门信息 DEPARTMENT department :{}", department);
// 唯一校验 CODE 相同 ID 不同 则视为相同
List<Department> list = departmentRDao.findByProperty("departmentCode", department.getDepartmentCode());
if(null != list && list.size() > 0){
for (Department dep : list) {
if(!dep.getId().equals(department.getId())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("部门代码已存在")
.setErrorSolution("请重新输入部门代码")
.build();
}
}
}
// 查询父级部门名称 // 查询父级部门名称
if (department.getParentId() != null && department.getParentId() > 0) { if (department.getParentId() != null && department.getParentId() > 0) {
LOGGER.info("部门信息 DEPARTMENT :{}", department.getParentId()); LOGGER.info("部门信息 DEPARTMENT :{}", department.getParentId());
@ -148,6 +180,9 @@ public class DepartmentServiceImpl implements IDepartmentService {
@Override @Override
public ListPager<Department> findDepartmentByPager(Department department, Pager pager) { public ListPager<Department> findDepartmentByPager(Department department, Pager pager) {
LOGGER.info("部门信息 DEPARTMENT department :{}", department);
LOGGER.info("部门信息 DEPARTMENT pager :{}", pager);
if (department == null) { if (department == null) {
pager = PagerHelper.getPager(pager, departmentRDao.listCount()); pager = PagerHelper.getPager(pager, departmentRDao.listCount());
return new ListPager(departmentRDao.listPager(pager),pager); return new ListPager(departmentRDao.listPager(pager),pager);

@ -1,9 +1,14 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ILogOperateService; import cn.estsh.i3plus.core.api.iservice.busi.ILogOperateService;
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.tool.BsonPackTool;
import cn.estsh.i3plus.pojo.platform.bean.LogOperate; import cn.estsh.i3plus.pojo.platform.bean.LogOperate;
import cn.estsh.i3plus.pojo.platform.repository.LogOperateRepository; import cn.estsh.i3plus.pojo.platform.repository.LogOperateRepository;
import com.mongodb.client.model.Filters;
import org.bson.conversions.Bson;
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;
@ -32,8 +37,20 @@ public class LogOperateService implements ILogOperateService {
} }
@Override @Override
public List<LogOperate> listLogOperate(LogOperate logOperate, Pager pager) { public ListPager<LogOperate> listLogOperate(LogOperate logOperate, Pager pager) {
return logOperateRDao.findAll(); if(logOperate == null) {
return new ListPager(logOperateRDao.findAll(),pager);
}else{
Bson bson = Filters.and();
BsonPackTool.getStringLikerPack(logOperate.getOperateUserName(),"operateUserName",bson);
BsonPackTool.timeBuilder(logOperate.getCreateDateTimeStart(),logOperate.getCreateDateTimeEnd(),"reateDateTime",bson,false);
BsonPackTool.getNumEqualPack(logOperate.getOperateModuleId(),"operateModuleId",bson);
BsonPackTool.getNumEqualPack(logOperate.getOperateTypeId(),"operateTypeId",bson);
pager = PagerHelper.getPager(pager,(int)logOperateRDao.findByBsonCount(bson));
//分页,排序
return new ListPager(logOperateRDao.findByBsonPager(bson,pager,logOperate.getOrderByParam(),logOperate.getAscOrDesc()),pager);
}
} }
@Override @Override
@ -50,17 +67,11 @@ public class LogOperateService implements ILogOperateService {
@Override @Override
public LogOperate getLogOperateById(long id) { public LogOperate getLogOperateById(long id) {
System.out.println("id====" + id); return logOperateRDao.getById(id);
List list = logOperateRDao.findAll(); }
System.out.println(list.size());
Optional optional = logOperateRDao.findById(id);
if(optional != null) {
System.out.println(optional);
System.out.println(optional.get()); @Override
return (LogOperate) optional.get(); public List<LogOperate> listLogOperateByOperateUserName(String operateUserName) {
}else{ return logOperateRDao.findByProperty("operateUserName",operateUserName);
return null;
}
} }
} }

@ -5,7 +5,9 @@ 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;
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.platform.bean.Organize; import cn.estsh.i3plus.pojo.platform.bean.Organize;
import cn.estsh.i3plus.pojo.platform.bean.Position;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.repository.OrganizeRepository; import cn.estsh.i3plus.pojo.platform.repository.OrganizeRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
@ -27,9 +29,9 @@ import java.util.List;
* @Modify : * @Modify :
**/ **/
@Service @Service
public class OrganizeServiceImpl implements IOrganizeService { public class OrganizeService implements IOrganizeService {
public static final Logger LOGGER = LoggerFactory.getLogger(OrganizeServiceImpl.class); public static final Logger LOGGER = LoggerFactory.getLogger(OrganizeService.class);
@Autowired @Autowired
private OrganizeRepository organizeRDao; private OrganizeRepository organizeRDao;
@ -37,7 +39,22 @@ public class OrganizeServiceImpl implements IOrganizeService {
@Override @Override
public void updateOrganize(Organize organize) { public void updateOrganize(Organize organize) {
LOGGER.info("组织 ORGANIZE :{}", organize); LOGGER.info("组织 ORGANIZE :{}", organize);
// 唯一校验 CODE 相同 ID 不同 则视为相同
List<Organize> list = organizeRDao.findByProperty("organizeCode", organize.getOrganizeCode());
if(null != list && list.size() > 0){
for (Organize org : list) {
if(!org.getId().equals(organize.getId())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("组织代码已存在")
.setErrorSolution("请重新输入组织代码")
.build();
}
}
}
// 冗余父节点
if(organize.getParentId() != null){ if(organize.getParentId() != null){
Organize org = getOrganizeById(organize.getParentId().toString()); Organize org = getOrganizeById(organize.getParentId().toString());
ValidatorBean.checkNotNull(org); ValidatorBean.checkNotNull(org);
@ -45,6 +62,7 @@ public class OrganizeServiceImpl implements IOrganizeService {
organize.setRedParentName(org.getName()); organize.setRedParentName(org.getName());
} }
// 更新数据
organizeRDao.update(organize); organizeRDao.update(organize);
} }
@ -65,8 +83,8 @@ public class OrganizeServiceImpl implements IOrganizeService {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("该数据有子集") .setErrorDetail("存在相关组织信息无法删除!")
.setErrorSolution("请先删除子集在操作") .setErrorSolution("请先删除子集信息在操作")
.build(); .build();
} }
organizeRDao.deleteById(Long.parseLong(id)); organizeRDao.deleteById(Long.parseLong(id));
@ -79,8 +97,8 @@ public class OrganizeServiceImpl implements IOrganizeService {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在子节点无法删除!") .setErrorDetail("存在相关组织信息无法删除!")
.setErrorSolution("请重新操作") .setErrorSolution("请先删除子集信息在操作")
.build(); .build();
}else { }else {
Long[] array = new Long[ids.length]; Long[] array = new Long[ids.length];
@ -95,13 +113,27 @@ public class OrganizeServiceImpl implements IOrganizeService {
public Organize insertOrganize(Organize organize) { public Organize insertOrganize(Organize organize) {
LOGGER.info("组织 ORGANIZE :{}", organize); LOGGER.info("组织 ORGANIZE :{}", organize);
if(organize.getParentId() != null && organize.getParentId().intValue() > 0){ // 代码唯一校验
Organize org = getOrganizeById(organize.getParentId().toString()); long count = organizeRDao.findByPropertyCount("organizeCode", organize.getOrganizeCode());
ValidatorBean.checkNotNull(org); if(count <= 0){
// 冗余信息
if(organize.getParentId() != null && organize.getParentId().intValue() > 0){
Organize org = getOrganizeById(organize.getParentId().toString());
ValidatorBean.checkNotNull(org);
organize.setRedParentName(org.getName()); organize.setRedParentName(org.getName());
}
// 插入数据入库
return organizeRDao.insert(organize);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("组织代码已存在")
.setErrorSolution("请重新输入组织代码")
.build();
} }
return organizeRDao.insert(organize);
} }
@Override @Override

@ -5,6 +5,7 @@ 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;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.Organize;
import cn.estsh.i3plus.pojo.platform.bean.Position; import cn.estsh.i3plus.pojo.platform.bean.Position;
import cn.estsh.i3plus.pojo.platform.repository.PositionRepository; import cn.estsh.i3plus.pojo.platform.repository.PositionRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
@ -26,30 +27,59 @@ import java.util.List;
* @Modify : * @Modify :
**/ **/
@Service @Service
public class PositionServiceImpl implements IPositionService { public class PositionService implements IPositionService {
public static final Logger LOGGER = LoggerFactory.getLogger(PositionServiceImpl.class); public static final Logger LOGGER = LoggerFactory.getLogger(PositionService.class);
@Autowired @Autowired
private PositionRepository positionRDao; private PositionRepository positionRDao;
@Override @Override
public Position insertPosition(Position position) { public Position insertPosition(Position position) {
// 查询父级岗位名称 LOGGER.info("岗位信息 POSITION position:{}", position);
if (position.getParentId() != null && position.getParentId() > 0) { // CODE 唯一校验
LOGGER.info("岗位信息 POSITION parentId:{}", position.getParentId()); long count = positionRDao.findByPropertyCount("positionCode", position.getPositionCode());
if(count > 0){
// 查询父级岗位名称
if (position.getParentId() != null && position.getParentId() > 0) {
LOGGER.info("岗位信息 POSITION parentId:{}", position.getParentId());
Position parentPosition = positionRDao.getById(position.getParentId());
ValidatorBean.checkNotNull(parentPosition);
position.setRedParentName(parentPosition.getName());
}
Position parentPosition = positionRDao.getById(position.getParentId()); // 添加岗位
ValidatorBean.checkNotNull(parentPosition); LOGGER.info("岗位信息 POSITION position:{}", position);
position.setRedParentName(parentPosition.getName()); return positionRDao.insert(position);
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("岗位代码已存在")
.setErrorSolution("请重新输入岗位代码")
.build();
} }
// 添加岗位
LOGGER.info("岗位信息 POSITION position:{}", position);
return positionRDao.insert(position);
} }
@Override @Override
public void updatePosition(Position position) { public void updatePosition(Position position) {
LOGGER.info("岗位信息 POSITION position:{}", position);
// 唯一校验 CODE 相同 ID 不同 则视为相同
List<Position> list = positionRDao.findByProperty("organizeCode", position.getPositionCode());
if(null != list && list.size() > 0){
for (Position pos : list) {
if(!pos.getId().equals(position.getId())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("岗位代码已存在")
.setErrorSolution("请重新输入岗位代码")
.build();
}
}
}
// 查询父级岗位名称 // 查询父级岗位名称
if (position.getParentId() != null && position.getParentId() > 0) { if (position.getParentId() != null && position.getParentId() > 0) {
LOGGER.info("岗位信息 POSITION parentId:{}", position.getParentId()); LOGGER.info("岗位信息 POSITION parentId:{}", position.getParentId());
@ -73,8 +103,8 @@ public class PositionServiceImpl implements IPositionService {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在子节点无法删除!") .setErrorDetail("存在相关岗位信息无法删除!")
.setErrorSolution("请重新操作") .setErrorSolution("请先删除子集信息在操作")
.build(); .build();
} }
@ -85,20 +115,22 @@ public class PositionServiceImpl implements IPositionService {
@Override @Override
public void deletePositionByIds(String[] ids) { public void deletePositionByIds(String[] ids) {
LOGGER.info("岗位信息 POSITION ids:{}", ids);
long positionCount = positionRDao.findByHqlWhereCount(CoreHqlPack.packHqlIds("parentId",ids)); long positionCount = positionRDao.findByHqlWhereCount(CoreHqlPack.packHqlIds("parentId",ids));
if (positionCount >= 1) { // 判断是否有子节点
throw ImppExceptionBuilder.newInstance() if (positionCount <= 0) {
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在子节点无法删除!")
.setErrorSolution("请重新操作")
.build();
}else {
Long[] array = new Long[ids.length]; Long[] array = new Long[ids.length];
for (int i = 0; i < ids.length; i++) { for (int i = 0; i < ids.length; i++) {
array[i] = Long.parseLong(ids[i]); array[i] = Long.parseLong(ids[i]);
} }
positionRDao.deleteByIds(array); positionRDao.deleteByIds(array);
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("存在相关岗位信息无法删除!")
.setErrorSolution("请重新操作")
.build();
} }
} }
@ -127,12 +159,15 @@ public class PositionServiceImpl implements IPositionService {
@Override @Override
public Position getPositionById(String id) { public Position getPositionById(String id) {
LOGGER.info("岗位信息 根据Id查询岗位信息 id:{}", id); LOGGER.info("岗位信息 Position id:{}", id);
return positionRDao.getById(Long.parseLong(id)); return positionRDao.getById(Long.parseLong(id));
} }
@Override @Override
public ListPager findPositionByPager(Position position, Pager pager) { public ListPager findPositionByPager(Position position, Pager pager) {
LOGGER.info("岗位信息 Position position", position);
LOGGER.info("岗位信息 Position pager:{}", pager);
if (position == null) { if (position == null) {
pager = PagerHelper.getPager(pager, positionRDao.listCount()); pager = PagerHelper.getPager(pager, positionRDao.listCount());
return new ListPager(positionRDao.listPager(pager),pager); return new ListPager(positionRDao.listPager(pager),pager);

@ -6,6 +6,7 @@ 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.SysMenuRepository; import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository;
@ -37,6 +38,22 @@ public class SysMenuService implements ISysMenuService {
@Override @Override
public void updateSysMenu(SysMenu sysMenu) { public void updateSysMenu(SysMenu sysMenu) {
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu); LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
// 唯一校验 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();
}
}
}
sysMenuRDao.update(sysMenu); sysMenuRDao.update(sysMenu);
} }
@ -77,14 +94,25 @@ public class SysMenuService implements ISysMenuService {
@Override @Override
public SysMenu insertSysMenu(SysMenu sysMenu) { public SysMenu insertSysMenu(SysMenu sysMenu) {
LOGGER.info("系统功能 SYS_MENU :{}", sysMenu); LOGGER.info("系统功能 SYS_MENU :{}", sysMenu);
if (sysMenu.getParentId() != null && sysMenu.getParentId().intValue() > 0) {
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
if(null != parent){
sysMenu.setRedParentName(parent.getName());
}
// 代码唯一校验
long count = sysMenuRDao.findByPropertyCount("menuCode", sysMenu.getMenuCode());
if(count <= 0){
if (sysMenu.getParentId() != null && sysMenu.getParentId().intValue() > 0) {
SysMenu parent = sysMenuRDao.getById(sysMenu.getParentId());
if(null != parent){
sysMenu.setRedParentName(parent.getName());
}
}
return sysMenuRDao.insert(sysMenu);
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("角色代码已存在")
.setErrorSolution("请重新输入角色代码")
.build();
} }
return sysMenuRDao.insert(sysMenu);
} }
@Override @Override

@ -89,34 +89,7 @@ public class SysRoleService implements ISysRoleService {
LOGGER.info("系统角色 SYS_ROLE :{}", roleId); LOGGER.info("系统角色 SYS_ROLE :{}", roleId);
LOGGER.info("系统角色 List<SysMenu> :{}", ids); LOGGER.info("系统角色 List<SysMenu> :{}", ids);
SysRole role = sysRoleRDao.getById(Long.parseLong(roleId)); refreshBatchSysRoleRef(new String[]{roleId}, ids, user);
if(role != null){
String where = CoreHqlPack.packHqlIds("id", ids);
List<SysMenu> list = sysMenuRDao.findByHqlWhere(where);
// 删除角色权限关系
refRoleMenuRDao.deleteByProperties("roleId",role.getId());
if(list != null && list.size() > 0){
List<RefRoleMenu> refs = new ArrayList<>(list.size());
for (SysMenu menu : list) {
RefRoleMenu ref = new RefRoleMenu(menu.getId(), menu.getName(), role.getId(), role.getName());
ConvertBean.modelInitialize(ref, user);
refs.add(ref);
}
// 插入角色权限关系
refRoleMenuRDao.saveAll(refs);
}
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("角色信息不存在")
.setErrorSolution("请重新输入")
.build();
}
} }
@Override @Override
@ -124,36 +97,59 @@ public class SysRoleService implements ISysRoleService {
LOGGER.info("系统角色 String[] :{}", roleIds); LOGGER.info("系统角色 String[] :{}", roleIds);
LOGGER.info("系统角色 List<SysMenu> :{}", ids); LOGGER.info("系统角色 List<SysMenu> :{}", ids);
String roleWhere = CoreHqlPack.packHqlIds("id", ids); String roleWhere = CoreHqlPack.packHqlIds("id", roleIds);
List<SysRole> roleList = sysRoleRDao.findByHql(roleWhere); List<SysRole> roleList = sysRoleRDao.findByHqlWhere(roleWhere);
if(roleList != null && roleList.size() > 0){ if(roleList != null && roleList.size() > 0){
String menuWhere = CoreHqlPack.packHqlIds("id", ids); List<String> moduleListRdd = new ArrayList<>();
List<SysMenu> list = sysMenuRDao.findByHqlWhere(menuWhere); List<String> featuresListRdd = new ArrayList<>(); // 冗余
List<RefRoleMenu> refs = new ArrayList<>(); // 角色权限关系
// 封装需要删除的IDS // 封装需要删除的IDS
Long[] rids = new Long[roleList.size()]; Long[] rids = new Long[roleList.size()];
for (int i = 0; i < roleList.size(); i++) { for (int i = 0; i < roleList.size(); i++) {
rids[i] = roleList.get(i).getId(); rids[i] = roleList.get(i).getId();
} }
// 删除角色权限关系 // 删除角色权限关系
refRoleMenuRDao.deleteByIds(rids); String deleteWhere = CoreHqlPack.packHqlIds("roleId", roleIds);
List<RefRoleMenu> refRoleMenuList = refRoleMenuRDao.findByHqlWhere(deleteWhere);
// 插入角色权限关系 refRoleMenuRDao.deleteAll(refRoleMenuList);
if(list != null && list.size() > 0){
List<RefRoleMenu> refs = new ArrayList<>(list.size()); if(ids != null && ids.length > 0){
for (SysMenu menu : list) { String menuWhere = CoreHqlPack.packHqlIds("id", ids);
for (SysRole role : roleList) { List<SysMenu> list = sysMenuRDao.findByHqlWhere(menuWhere);
RefRoleMenu ref = new RefRoleMenu(menu.getId(), menu.getName(), role.getId(), role.getName());
ConvertBean.modelInitialize(ref, user); // 插入角色权限关系
refs.add(ref); if(list != null && list.size() > 0){
for (SysMenu menu : list) {
for (SysRole role : roleList) {
RefRoleMenu ref = new RefRoleMenu(menu.getId(), menu.getName(), role.getId(), role.getName());
ConvertBean.modelInitialize(ref, user);
refs.add(ref);
}
// 冗余信息封装
if(CommonEnumUtil.METHOD_LEVEL.MODULE.getValue() == menu.getMenuTypeId().intValue()){
moduleListRdd.add(menu.getName());
}
if(CommonEnumUtil.METHOD_LEVEL.BUTTON.getValue() == menu.getMenuTypeId().intValue()){
featuresListRdd.add(menu.getName());
}
} }
} }
}
// 插入角色权限关系 // 冗余信息
refRoleMenuRDao.saveAll(refs); for (SysRole role : roleList) {
role.setRedModuleNumber(moduleListRdd.size());
role.setRedModuleNames(String.join(",",moduleListRdd));
role.setRedMenuNumber(featuresListRdd.size());
role.setRedMenuNames(String.join(",",featuresListRdd));
} }
refRoleMenuRDao.saveAll(refs);
sysRoleRDao.saveAll(roleList);
}else { }else {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
@ -167,7 +163,7 @@ public class SysRoleService implements ISysRoleService {
@Override @Override
public List<RefRoleMenu> findRefRoleMenuByRoleId(String roleId) { public List<RefRoleMenu> findRefRoleMenuByRoleId(String roleId) {
LOGGER.info("系统角色权限关系 RefRoleMenu find By RoleId"); LOGGER.info("系统角色权限关系 RefRoleMenu find By RoleId");
return refRoleMenuRDao.findByProperty("roleId",roleId); return refRoleMenuRDao.findByProperty("roleId",Long.parseLong(roleId));
} }
@Override @Override

@ -1,8 +1,12 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.base.ISysUserService; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao; import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.EncryptTool; import cn.estsh.i3plus.platform.common.tool.EncryptTool;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
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.shirotoken.AdminToken; import cn.estsh.i3plus.pojo.base.shirotoken.AdminToken;
import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken; import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken;
@ -100,7 +104,6 @@ public class SysUserService implements ISysUserService {
return sessionUser; return sessionUser;
} }
@Override @Override
public void updateSysUserStatus(String id, int status, SessionUser user) { public void updateSysUserStatus(String id, int status, SessionUser user) {
LOGGER.info("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName()); LOGGER.info("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
@ -111,6 +114,23 @@ public class SysUserService implements ISysUserService {
} }
@Override @Override
public void updateBatchSysUserStatus(String[] ids, int status, SessionUser user) {
LOGGER.info("平台用户 SYS_USER DELETE By ids :{} status:{}, SessionUser :{}", ids,status,user);
// 标记用户已删除
String where = CoreHqlPack.packHqlIds("id", ids);
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
if(null != list && list.size() > 0){
for (SysUser sysUser : list) {
sysUser.setUserStatusId(status);
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
ConvertBean.modelUpdate(sysUser,user);
}
sysUserRDao.saveAll(list);
}
}
@Override
public void updateSysUser(SysUser sysUser) throws Exception{ public void updateSysUser(SysUser sysUser) throws Exception{
LOGGER.info("平台用户 SYS_USER SysUser :{}", sysUser); LOGGER.info("平台用户 SYS_USER SysUser :{}", sysUser);
@ -259,12 +279,38 @@ public class SysUserService implements ISysUserService {
} }
@Override @Override
public void deleteBatchSysUserById(String[] ids,SessionUser user) {
LOGGER.info("平台用户 SYS_USER DELETE By ids :{}", ids);
// 标记用户已删除
String where = CoreHqlPack.packHqlIds("id", ids);
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
if(null != list && list.size() > 0){
for (SysUser sysUser : list) {
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
ConvertBean.modelUpdate(sysUser,user);
}
sysUserRDao.saveAll(list);
}
}
@Override
public List<SysUser> list() { public List<SysUser> list() {
LOGGER.info("平台用户 SYS_USER find All"); LOGGER.info("平台用户 SYS_USER find All");
return sysUserRDao.findByProperty("isValid", CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); return sysUserRDao.findByProperty("isValid", CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
} }
@Override @Override
public ListPager<SysUser> querySysUserByPager(SysUser user, Pager pager) {
LOGGER.info("系统用户 SysUser find user :{} page :{}", user, pager);
//生成hql查询语句
String hqlPack = CoreHqlPack.packHqlSysUser(user);
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(hqlPack));
return new ListPager(sysUserRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager);
}
@Override
public SysUser getSysUserById(String id) { public SysUser getSysUserById(String id) {
LOGGER.info("平台用户 SYS_USER get By id :{}", id); LOGGER.info("平台用户 SYS_USER get By id :{}", id);
return sysUserRDao.getById(Long.parseLong(id)); return sysUserRDao.getById(Long.parseLong(id));

@ -157,6 +157,12 @@
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<version>2.0.3.RELEASE</version> <version>2.0.3.RELEASE</version>
<scope>test</scope> <scope>test</scope>
<exclusions>
<exclusion>
<artifactId>spring-boot-starter-logging</artifactId>
<groupId>org.springframework.boot</groupId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>

Loading…
Cancel
Save