Merge remote-tracking branch 'origin/master'

yun-zuoyi
frin.fei 7 years ago
commit 4bc8e7b369

@ -36,4 +36,7 @@ public interface ISysLocaleLanguageService {
@ApiOperation(value = "设置默认语言",notes = "设置默认语言")
void updateSysLocaleLanguageDefaultById(String idStr);
@ApiOperation(value = "根据code查询语言")
SysLocaleLanguage getSysLocaleLanguageByCode(String code);
}

@ -0,0 +1,100 @@
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.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : wei.peng
* @Date : 2018-10-25 16:21
* @Modify :
**/
public interface ISysUserInfoService {
/**
*
* @param userInfo
* @return
*/
@ApiOperation(value = "新增用户",notes = "新增一个用户信息")
SysUserInfo insertSysUserInfo(SysUserInfo userInfo);
/**
*
* @param userInfo
*/
@ApiOperation(value = "修改用户",notes = "修改一个用户信息")
void updateSysUserInfo(SysUserInfo userInfo);
/**
*
* @param userInfoId
* @param departmentId
* @param userName
*/
void refreshRefUserDepartment(String userInfoId, String[] departmentId , String userName);
/**
*
* @param userInfoId
* @param positionIds
* @param userName
*/
void refreshRefUserPosition(String userInfoId, String[] positionIds , String userName);
/**
*
* @param userInfoId
* @param organizeId
* @param userName
*/
void refreshRefUserOrganize(String userInfoId, String organizeId , String userName);
/**
* Key
* @param id
*/
@ApiOperation(value = "删除用户",notes = "根据UserInfoId 删除用户信息")
void deleteSysUserInfoById(String id);
/**
* id
* @param ids id
* @return
*/
@ApiOperation(value = "删除用户-批量",notes = "根据UserInfoId 批量删除用户信息")
void deleteSysUserInfoByIds(String[] ids);
/**
* Key
* @param id
* @return
*/
@ApiOperation(value = "查询用户信息",notes = "根据 UserInfoId查询用户信息")
SysUserInfo getSysUserInfoById(Long id);
/**
*
* @return
*/
@ApiOperation(value = "查询用户信息",notes = "查询所有用户信息")
List listSysUserInfo();
/**
*
* @param userInfo
* @param pager
* @return
*/
@ApiOperation(value = "查询用户信息",notes = "根据复杂查询条件查询用户信息(分页信息)")
ListPager<SysUserInfo> querySysUserInfo(SysUserInfo userInfo, Pager pager);
}

@ -7,7 +7,7 @@ import cn.estsh.i3plus.pojo.platform.bean.*;
import java.util.List;
/**
* @Description :
* @Description :
* @Reference :
* @Author : wei.peng
* @Date : 2018-10-25 16:21
@ -63,14 +63,6 @@ public interface ISysUserService {
SysUser insertSysUser(SysUser sysUser)throws Exception;
/**
*
* @param sysUser
* @param departmentId
* @param user
*/
void refreshRefUserDepartment(SysUser sysUser, String departmentId , SessionUser user);
/**
*
* @param sysUser
* @param roleIds
@ -79,14 +71,6 @@ public interface ISysUserService {
void refreshRefUserRole(SysUser sysUser, String[] roleIds , SessionUser user);
/**
*
* @param sysUser
* @param positionId
* @param user
*/
void refreshRefUserPosition(SysUser sysUser, String positionId , SessionUser user);
/**
* Key
* @param id
* @return
@ -126,7 +110,7 @@ public interface ISysUserService {
* @param id
* @return
*/
SysUserInfo getSysUserInfoById(String id);
SysUserInfo getSysUserInfoById(Long id);
/**
*
@ -136,13 +120,6 @@ public interface ISysUserService {
SysUser getSysUserByLoginName(String loginName);
/**
*
* @param user
* @return
*/
SysUser dealSysUserInfo(SysUser user);
/**
*
* @param userId
* @return

@ -1,10 +1,12 @@
package cn.estsh.i3plus.core.apiservice.controller.base;
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.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
@ -20,6 +22,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @Description :
@ -41,6 +44,8 @@ public class AuthController {
@Autowired
private ISysUserService userService;
@Autowired
private ICoreTreeService coreTreeService;
@GetMapping(value="/login")
@ApiOperation(value="登陆",notes="登陆")
@ -55,10 +60,9 @@ public class AuthController {
LOGGER.info("会员登陆:{}",user);
AuthUtil.setSessionObject("languageCode",languageCode);
String sessionId = request.getSession().getId();
String token = "{accessToken:'"+sessionId+"',expiresIn:1800}";
SysUser sysUser = AuthUtil.getSessionUser().getUser();
return new ResultBean(true,token,sysUser);
ResultBean result = new ResultBean(true, "", AuthUtil.getSessionUser());
result.setUrl("/");
return result;
} catch (ImppBusiException e) {
return new ResultBean(false,e.getErrorDetail() + ",so:" + e.getErrorSolution());
}catch (Exception e){
@ -86,7 +90,7 @@ public class AuthController {
*
* @return
*/
@GetMapping(value="/getUserInfo")
@GetMapping(value="/get-user-info")
@ApiOperation(value="获取登录用户信息",notes="获取当前登录用户详细信息")
public ResultBean getUserInfo(){
LOGGER.info("获取用户信息...lang:{}",AuthUtil.getSessionAttribute("languageCode"));
@ -99,5 +103,22 @@ public class AuthController {
}
}
@GetMapping(value="/find-menu-tree")
@ApiOperation(value="获取登录用户功能权限信息",notes="获取当前登录用户的权限信息")
public ResultBean getUserMenuTree(){
try {
List<SysMenu> listTree = coreTreeService.findSysMenuTreeByParentId(-1);
return ResultBean.success("查询部门树成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(listTree);
}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());
}
}
}

@ -70,7 +70,7 @@ public class EnumController {
}
@GetMapping("/user-status")
@ApiOperation(value = "用户状态", notes = "查询全部用户状态功能")
@ApiOperation(value = "用户账号状态", notes = "查询全部用户账号功能")
public ResultBean getUserStatus(){
return new ResultBean(true, "操作成功",
Arrays.asList(CommonEnumUtil.USER_STATUS.values()));
@ -126,9 +126,30 @@ public class EnumController {
}
@GetMapping("/sys-config-type")
@ApiOperation(value = "系统参数类型", notes = "系统参数类型")
@ApiOperation(value = "系统参数类型", notes = "系统参数")
public ResultBean getSysParamType(){
return new ResultBean(true, "操作成功",
Arrays.asList(ImppEnumUtil.SYS_CONFIG_TYPE.values()));
}
@GetMapping("/sys-locale-resource-type")
@ApiOperation(value = "系统资源类型")
public ResultBean getSysLocaleResourceType(){
return new ResultBean(true, "操作成功",
Arrays.asList(CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.values()));
}
@GetMapping("/user-sex")
@ApiOperation(value = "用户性别", notes = "用户性别")
public ResultBean getUserSex(){
return new ResultBean(true, "操作成功",
Arrays.asList(CommonEnumUtil.USER_ESX.values()));
}
@GetMapping("/user-info-status")
@ApiOperation(value = "用户状态", notes = "用户状态")
public ResultBean getUserInfoStatus(){
return new ResultBean(true, "操作成功",
Arrays.asList(CommonEnumUtil.USER_INFO_STATUS.values()));
}
}

@ -73,7 +73,7 @@ public class SysLocaleLanguageController extends CoreBaseController {
//修改初始化
// ConvertBean.modelUpdate(sysLocaleLanguage, sessionUser);
sysLocaleLanguageService.insertSysLocaleLanguage(sysLocaleLanguage);
sysLocaleLanguageService.updateSysLocaleLanguage(sysLocaleLanguage);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep.getErrorShow());

@ -11,6 +11,7 @@ import cn.estsh.impp.framework.base.controller.CoreBaseController;
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.util.ImppRedis;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api;
@ -20,6 +21,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
/**
@ -35,6 +38,9 @@ import java.util.List;
public class SysLocaleResourceController extends CoreBaseController {
public static final Logger LOGGER = LoggerFactory.getLogger(SysFileController.class);
@Resource(name="redisRes")
private ImppRedis redisRes;
@Autowired
private ISysLocaleResourceService sysLocaleResourceService;
@ -50,10 +56,15 @@ public class SysLocaleResourceController extends CoreBaseController {
.notNull("resourceValue",sysLocaleResource.getResourceValue());
//新增初始化
ConvertBean.modelInitialize(sysLocaleResource, sessionUser);
// ConvertBean.modelInitialize(sysLocaleResource, sessionUser);
sysLocaleResource.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
sysLocaleResourceService.insertSysLocaleResource(sysLocaleResource);
sysLocaleResource = sysLocaleResourceService.insertSysLocaleResource(sysLocaleResource);
// 放入缓存
HashMap<String,String> resource = new HashMap<String,String>();
resource.put(sysLocaleResource.getLanguageCode(),sysLocaleResource.getResourceValue());
redisRes.putHashMap(sysLocaleResource.getResourceKey(),resource,0);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep.getErrorShow());
@ -75,9 +86,14 @@ public class SysLocaleResourceController extends CoreBaseController {
.notNull("resourceValue",sysLocaleResource.getResourceValue());
//修改初始化
ConvertBean.modelUpdate(sysLocaleResource, sessionUser);
// ConvertBean.modelUpdate(sysLocaleResource, sessionUser);
sysLocaleResourceService.updateSysLocaleResource(sysLocaleResource);
sysLocaleResourceService.insertSysLocaleResource(sysLocaleResource);
// 放入缓存
HashMap<String,String> resource = new HashMap<String,String>();
resource.put(sysLocaleResource.getLanguageCode(),sysLocaleResource.getResourceValue());
redisRes.putHashMap(sysLocaleResource.getResourceKey(),resource,0);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep.getErrorShow());

@ -1,5 +1,6 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserInfoService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
@ -42,18 +43,20 @@ public class SysUserController {
@Autowired
private ISysUserService sysUserService;
@Autowired
private ISysUserInfoService sysUserInfoService;
@PostMapping(value = "/insert")
@ApiOperation(value = "新增用户", notes = "新增系统用户")
public ResultBean insertSysUser(SysUser sysUser,String departmentId,String positionId ,String[] roleIds) {
public ResultBean insertSysUser(SysUser sysUser,String[] roleIds) {
try {
ConvertBean.modelSafeArrayNumber(roleIds,true);
ValidatorBean.beginValid(sysUser)
.numberCheck("userInfoId",sysUser.getUserInfoId())
.notNull("userLoginName",sysUser.getUserLoginName())
.notNull("userLoginPassword",sysUser.getUserLoginPassword())
.notNull("userEmpNo",sysUser.getUserEmpNo())
.notNull("userEmail",sysUser.getUserEmpNo());
ValidatorBean.checkNotNull(departmentId,"部门 id 不能为空");
ValidatorBean.checkNotNull(positionId,"岗位 id 不能为空");
.notNull("userEmail",sysUser.getUserEmail())
.notNull("userLoginPassword",sysUser.getUserLoginPassword());
if(roleIds == null || roleIds.length <= 0){
throw ImppExceptionBuilder.newInstance()
@ -63,21 +66,27 @@ public class SysUserController {
.build();
}
SysUserInfo userInfo = sysUserInfoService.getSysUserInfoById(sysUser.getUserInfoId());
if(userInfo == null){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("用户信息不存在请重新操作")
.build();
}
//新增初始化
ConvertBean.modelInitialize(sysUser, AuthUtil.getSessionUser());
sysUser.setUserStatusId(CommonEnumUtil.USER_STATUS.NORMAL.getValue());
sysUser.setUserTypeId(CommonEnumUtil.USER_TYPE.USER.getValue());
sysUser.setUserName(userInfo.getName());
sysUser.setUserStatus(CommonEnumUtil.USER_STATUS.NORMAL.getValue());
sysUser.setDepartmentId(userInfo.getDepartmentId());
sysUser.setDepartmentNameRdd(userInfo.getDepartmentNameRdd());
ConvertBean.modelInitialize(sysUser,AuthUtil.getSessionUser());
SysUser user = sysUserService.insertSysUser(sysUser);
// 更新用户关系
sysUserService.refreshRefUserDepartment(user,departmentId,AuthUtil.getSessionUser());
sysUserService.refreshRefUserPosition(user,positionId,AuthUtil.getSessionUser());
sysUserService.refreshRefUserRole(user,roleIds,AuthUtil.getSessionUser());
// 更新冗余信息
sysUserService.updateSysUser(user);
return ResultBean.success("操作成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultObject(user);
@ -92,17 +101,14 @@ public class SysUserController {
@PutMapping(value = "/update")
@ApiOperation(value = "修改用户", notes = "修改用户信息")
public ResultBean updateSysUser(SysUser sysUser,String departmentId,String positionId ,String[] roleIds) {
public ResultBean updateSysUser(SysUser sysUser,String[] roleIds) {
try {
ConvertBean.modelSafeArrayNumber(roleIds,true);
ValidatorBean.beginValid(sysUser)
.notNull("id",sysUser.getId())
.numberCheck("id",sysUser.getUserInfoId())
.numberCheck("userInfoId",sysUser.getUserInfoId())
.notNull("userLoginName",sysUser.getUserLoginName())
.notNull("userLoginPassword",sysUser.getUserLoginPassword())
.notNull("userEmpNo",sysUser.getUserEmpNo())
.notNull("userEmail",sysUser.getUserEmpNo());
ValidatorBean.checkNotNull(departmentId,"部门 id 不能为空");
ValidatorBean.checkNotNull(positionId,"岗位 id 不能为空");
.notNull("userEmail",sysUser.getUserEmail());
if(roleIds == null || roleIds.length <= 0){
throw ImppExceptionBuilder.newInstance()
@ -113,17 +119,22 @@ public class SysUserController {
}
// 用户信息封装
SysUserInfo userInfo = sysUserService.getSysUserInfoById(sysUser.getId().toString());
sysUser.setUserInfo(userInfo);
ConvertBean.modelUpdate(sysUser, AuthUtil.getSessionUser());
ConvertBean.modelUpdate(userInfo, AuthUtil.getSessionUser());
SysUserInfo userInfo = sysUserService.getSysUserInfoById(sysUser.getUserInfoId());
if(userInfo == null){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("用户信息不存在请重新操作")
.build();
}
sysUser.setUserName(userInfo.getName());
sysUser.setDepartmentId(userInfo.getDepartmentId());
sysUser.setDepartmentNameRdd(userInfo.getDepartmentNameRdd());
ConvertBean.modelUpdate(sysUser,AuthUtil.getSessionUser());
// 更新用户关系
sysUserService.refreshRefUserDepartment(sysUser,departmentId,AuthUtil.getSessionUser());
sysUserService.refreshRefUserPosition(sysUser,positionId,AuthUtil.getSessionUser());
sysUserService.refreshRefUserRole(sysUser,roleIds,AuthUtil.getSessionUser());
// 更新冗余信息
sysUserService.updateSysUser(sysUser);
return ResultBean.success("操作成功")

@ -0,0 +1,225 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.IDepartmentService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserInfoService;
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.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.Department;
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
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.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : wei.peng
* @Date : 2018-11-08 19:57
* @Modify :
**/
@RestController
@RequestMapping("/sys-user-info")
@Api(description = "系统用户服务")
public class SysUserInfoController {
public static final Logger LOGGER = LoggerFactory.getLogger(SysUserInfoController.class);
@Autowired
private ISysUserInfoService sysUserInfoService;
@Autowired
private IDepartmentService departmentService;
@PostMapping(value="/insert")
@ApiOperation(value="添加用户信息",notes="返回内容添加用户信息")
public ResultBean insertSysUserInfo(SysUserInfo userInfo){
try {
//登陆用户
SessionUser user = AuthUtil.getSessionUser();
//条件验证
ValidatorBean.beginValid(userInfo)
.notNull("name",userInfo.getName())
.notNull("userEmpNo",userInfo.getUserEmpNo())
.checkNotZero("departmentId",userInfo.getDepartmentId())
.checkNotZero("positionId",userInfo.getPositionId());
ConvertBean.modelInitialize(userInfo,user);
SysUserInfo pos = sysUserInfoService.insertSysUserInfo(userInfo);
sysUserInfoService.refreshRefUserDepartment(pos.getId().toString(),
new String[]{userInfo.getDepartmentId().toString()},
user.getUserName());
sysUserInfoService.refreshRefUserPosition(pos.getId().toString(),
new String[]{userInfo.getPositionId().toString()},
user.getUserName());
Department department = departmentService.getDepartmentById(userInfo.getDepartmentId().toString());
if(department != null){
sysUserInfoService.refreshRefUserOrganize(pos.getId().toString(),
department.getOrganizeId().toString(),user.getUserName());
}
return ResultBean.success("添加成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultObject(pos);
} 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());
}
}
@PutMapping(value="/update")
@ApiOperation(value="修改用户信息",notes="根据用户信息id修改信息")
public ResultBean updateSysUserInfoById(SysUserInfo userInfo){
try {
//登陆用户
SessionUser user = AuthUtil.getSessionUser();
//条件验证
ValidatorBean.beginValid(userInfo)
.notNull("id",userInfo.getId())
.notNull("name",userInfo.getName())
.notNull("userEmpNo",userInfo.getUserEmpNo())
.checkNotZero("departmentId",userInfo.getDepartmentId())
.checkNotZero("positionId",userInfo.getPositionId());
//修改初始化
ConvertBean.modelUpdate(userInfo,user);
sysUserInfoService.updateSysUserInfo(userInfo);
sysUserInfoService.refreshRefUserDepartment(userInfo.getId().toString(),
new String[]{userInfo.getDepartmentId().toString()},
user.getUserName());
sysUserInfoService.refreshRefUserPosition(userInfo.getId().toString(),
new String[]{userInfo.getPositionId().toString()},
user.getUserName());
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());
}
}
@DeleteMapping(value="/delete/{id}")
@ApiOperation(value="删除用户信息",notes="根据用户信息id删除信息")
public ResultBean deleteSysUserInfo(@PathVariable("id") String id){
try {
//条件验证
ValidatorBean.checkNotNull(id,"id为空");
sysUserInfoService.deleteSysUserInfoById(id);
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());
}
}
@GetMapping(value="/list")
@ApiOperation(value="查询所有用户信息",notes="查询所有用户信息")
public ResultBean findSysUserInfoAll(){
try{
List<SysUserInfo> SysUserInfoList = sysUserInfoService.listSysUserInfo();
return ResultBean.success("操作成功").setResultList(SysUserInfoList)
.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="/query")
@ApiOperation(value="查询用户信息",notes="复杂查询用户信息带分页")
public ResultBean querySysUserInfo(SysUserInfo SysUserInfo, Pager pager){
try{
ListPager<SysUserInfo> listPager = sysUserInfoService.querySysUserInfo(SysUserInfo, 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());
}
}
@GetMapping(value="/get/{id}")
@ApiOperation(value="根据id查询用户信息",notes="根据id用户信息")
public ResultBean getSysUserInfoById(@PathVariable("id") String id){
try{
ValidatorBean.checkIsNumber(id, "id 不能为空");
SysUserInfo SysUserInfo = sysUserInfoService.getSysUserInfoById(Long.parseLong(id));
ValidatorBean.beginValid(SysUserInfo)
.notNull("id",SysUserInfo.getId());
return ResultBean.success("查询成功")
.setResultObject(SysUserInfo)
.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 = "/batch-delete")
@ApiOperation(value = "根据id批量删除", notes = "根据id批量删除")
public ResultBean deleteSysUserInfoByIds(String[] ids){
try{
ids = ConvertBean.modelSafeArrayNumber(ids,true);
if(ids.length == 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("请选择需要删除的用户信息。")
.build();
}
sysUserInfoService.deleteSysUserInfoByIds(ids);
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());
}
}
}

@ -15,10 +15,10 @@ public interface IUserPermissionDao {
/**
*
* @param user
` * @param userInfo
* @return
*/
List<Department> findDepartmentByUser(SysUser user);
List<Department> findDepartmentByUser(SysUserInfo userInfo);
/**
*
@ -36,9 +36,9 @@ public interface IUserPermissionDao {
/**
*
* @param user
* @param userInfo
* @return
*/
List<Position> findPositionByUser(SysUser user);
List<Position> findPositionByUser(SysUserInfo userInfo);
}

@ -27,12 +27,12 @@ public class UserPermissionDaoImpl implements IUserPermissionDao {
@Override
public List<Department> findDepartmentByUser(SysUser user) {
LOGGER.info(" 查询用户所有部门 user id:{}", user.getId());
public List<Department> findDepartmentByUser(SysUserInfo userInfo) {
LOGGER.info(" 查询用户所有部门 user id:{}", userInfo.getId());
String hql = "select d from RefUserDepartment as rud " +
" left join Department as d on d.id = rud.departmentId " +
" where rud.userId =:userId";
return entityManager.createQuery(hql).setParameter("userId",user.getId()).getResultList();
return entityManager.createQuery(hql).setParameter("userId",userInfo.getId()).getResultList();
}
@Override
@ -57,12 +57,12 @@ public class UserPermissionDaoImpl implements IUserPermissionDao {
}
@Override
public List<Position> findPositionByUser(SysUser user) {
LOGGER.info(" 查询用户所有岗位 user id:{}", user.getId());
public List<Position> findPositionByUser(SysUserInfo userInfo) {
LOGGER.info(" 查询用户所有岗位 user id:{}", userInfo.getId());
String hql = "select p from RefUserPosition as rup " +
" left join Position as p on p.id = rup.positionId" +
" where rup.userId =:userId";
return entityManager.createQuery(hql).setParameter("userId",user.getId()).getResultList();
return entityManager.createQuery(hql).setParameter("userId",userInfo.getId()).getResultList();
}

@ -7,14 +7,12 @@ import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.platform.bean.LogSystem;
import cn.estsh.i3plus.pojo.platform.repositorymongo.LogSystemRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreBsonPack;
import io.swagger.annotations.ApiOperation;
import org.bson.conversions.Bson;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**

@ -7,10 +7,12 @@ import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleResourceRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.base.service.IBaseService;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -32,6 +34,9 @@ public class SysLocaleLanguageService implements ISysLocaleLanguageService {
@Autowired
private SysLocaleLanguageRepository sysLocaleLanguageRDao;
@Autowired
private SysLocaleResourceRepository sysLocaleResourceRDao;
@Override
public SysLocaleLanguage insertSysLocaleLanguage(SysLocaleLanguage sysLocaleLanguage) {
LOGGER.info("系统语言 SYS_LOCALE_LANGUAGE SysLocaleLanguage:{}",sysLocaleLanguage);
@ -50,7 +55,8 @@ public class SysLocaleLanguageService implements ISysLocaleLanguageService {
@Override
public void updateSysLocaleLanguage(SysLocaleLanguage sysLocaleLanguage) {
LOGGER.info("系统语言 SYS_LOCALE_LANGUAGE SysLocaleLanguage:{}",sysLocaleLanguage);
SysLocaleLanguage data = sysLocaleLanguageRDao.getById(sysLocaleLanguage.getId());
String hqlPack = CoreHqlPack.packHqlSysLocaleLanguageCode(sysLocaleLanguage);
int count = sysLocaleLanguageRDao.findByHqlWhereCount(hqlPack);
if (count > 0){
@ -62,12 +68,29 @@ public class SysLocaleLanguageService implements ISysLocaleLanguageService {
.build();
}
// 根据资源中的语言代码和名称
sysLocaleResourceRDao.updateByProperties(
"languageCode", data.getLanguageCode(),
new String[]{"languageCode", "languageNameRdd"},
new Object[]{sysLocaleLanguage.getLanguageCode(), sysLocaleLanguage.getLanguageName()}
);
sysLocaleLanguageRDao.update(sysLocaleLanguage);
}
@Override
public void deleteSysLocaleLanguageById(String idStr) {
LOGGER.info("系统语言 SYS_LOCALE_LANGUAGE id:{}",idStr);
SysLocaleLanguage sysLocaleLanguage = sysLocaleLanguageRDao.getById(Long.parseLong(idStr));
ValidatorBean.checkNotNull(sysLocaleLanguage,"需要删除的资源不存在");
if(sysLocaleResourceRDao.isExitByProperty("languageCode",sysLocaleLanguage.getLanguageCode())){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
.setErrorDetail("存在关联资源无法删除")
.build();
}
sysLocaleLanguageRDao.deleteById(Long.parseLong(idStr));
}
@ -109,4 +132,9 @@ public class SysLocaleLanguageService implements ISysLocaleLanguageService {
sysLocaleLanguageRDao.updateByProperties("id",Long.parseLong(idStr),
"isDefault",CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
@Override
public SysLocaleLanguage getSysLocaleLanguageByCode(String code) {
return sysLocaleLanguageRDao.getByProperty("languageCode",code);
}
}

@ -5,11 +5,15 @@ 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.platform.bean.SysLocaleLanguage;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleResourceRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -31,10 +35,14 @@ public class SysLocaleResourceService implements ISysLocaleResourceService {
@Autowired
private SysLocaleResourceRepository sysLocaleResourceRDao;
@Autowired
private SysLocaleLanguageRepository sysLocaleLanguageRDao;
@Override
@ApiOperation(value = "新增系统资源")
public SysLocaleResource insertSysLocaleResource(SysLocaleResource sysLocaleResource) {
LOGGER.info("系统资源 SYS_LOCALE_RESOURCE SysLocaleResource{}",sysLocaleResource);
int count = sysLocaleResourceRDao.findByPropertyCount(new String[]{"language_code","resource_key"},
int count = sysLocaleResourceRDao.findByPropertyCount(new String[]{"languageCode","resourceKey"},
new String[]{sysLocaleResource.getLanguageCode(),sysLocaleResource.getResourceKey()});
if (count > 0){
throw ImppExceptionBuilder.newInstance()
@ -45,6 +53,12 @@ public class SysLocaleResourceService implements ISysLocaleResourceService {
.build();
}
// 设置语言名称冗余
SysLocaleLanguage sysLocaleLanguage = sysLocaleLanguageRDao.getByProperty("languageCode",
sysLocaleResource.getLanguageCode());
ValidatorBean.checkNotNull(sysLocaleLanguage,"选中的语言不存在");
sysLocaleResource.setLanguageNameRdd(sysLocaleLanguage.getLanguageName());
return sysLocaleResourceRDao.insert(sysLocaleResource);
}
@ -62,6 +76,12 @@ public class SysLocaleResourceService implements ISysLocaleResourceService {
.build();
}
// 设置语言名称冗余
SysLocaleLanguage sysLocaleLanguage = sysLocaleLanguageRDao.getByProperty("languageCode",
sysLocaleResource.getLanguageCode());
ValidatorBean.checkNotNull(sysLocaleLanguage,"选中的语言不存在");
sysLocaleResource.setLanguageNameRdd(sysLocaleLanguage.getLanguageName());
sysLocaleResourceRDao.update(sysLocaleResource);
}

@ -8,7 +8,9 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
import cn.estsh.i3plus.pojo.platform.repository.SysMessageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysUserInfoRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
@ -38,15 +40,17 @@ public class SysMessageService implements ISysMessageService {
@Autowired
public SysUserRepository sysUserRDao;
@Autowired
private SysUserInfoRepository userInfoRDao;
@Override
public SysMessage insertSysMessage(SysMessage sysMessage) {
// 查询接收人名称
if (sysMessage.getMessageRecipientId() != null && sysMessage.getMessageRecipientId() > 0) {
LOGGER.info("用户信息 SYSUSER id:{}", sysMessage.getMessageRecipientId());
SysUser acceptUser = sysUserRDao.getById(sysMessage.getMessageRecipientId());
ValidatorBean.checkNotNull(acceptUser);
SysUserInfo userInfo = userInfoRDao.getById(sysMessage.getMessageRecipientId());
sysMessage.setRedMessageRecipientName(acceptUser.getName());
sysMessage.setRedMessageRecipientName(userInfo.getName());
}
LOGGER.info("消息 SYS_MESSAGE :{}",sysMessage);
@ -65,10 +69,9 @@ public class SysMessageService implements ISysMessageService {
// 查询接收人名称
if (sysMessage.getMessageRecipientId() != null && sysMessage.getMessageRecipientId() > 0) {
LOGGER.info("用户信息 SYSUSER id:{}", sysMessage.getMessageRecipientId());
SysUser acceptUser = sysUserRDao.getById(sysMessage.getMessageRecipientId());
ValidatorBean.checkNotNull(acceptUser);
SysUserInfo userInfo = userInfoRDao.getById(sysMessage.getMessageRecipientId());
sysMessage.setRedMessageRecipientName(acceptUser.getName());
sysMessage.setRedMessageRecipientName(userInfo.getName());
}
LOGGER.info("消息 SYS_MESSAGE :{}",sysMessage);

@ -0,0 +1,229 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserInfoService;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
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.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : wei.peng
* @Date : 2018-11-08 19:44
* @Modify :
**/
@Service
public class SysUserInfoService implements ISysUserInfoService {
public static final Logger LOGGER = LoggerFactory.getLogger(SysUserInfoService.class);
@Autowired
private SysUserInfoRepository userInfoRDao;
@Autowired
private SysUserRepository userRDao;
@Autowired
private DepartmentRepository departmentRDao;
@Autowired
private RefUserDepartmentRepository refUserDepartmentRDao;
@Autowired
private PositionRepository positionRDao;
@Autowired
private RefUserPositionRepository refUserPositionRDao;
@Autowired
private OrganizeRepository organizeRDao;
/***
* @param userInfo
* @return
*/
@Override
public SysUserInfo insertSysUserInfo(SysUserInfo userInfo) {
LOGGER.info("用户信息 SysUserInfo userInfo:{}",userInfo);
return userInfoRDao.insert(userInfo);
}
@Override
public void updateSysUserInfo(SysUserInfo userInfo) {
LOGGER.info("用户信息 SysUserInfo userInfo:{}",userInfo);
userInfoRDao.update(userInfo);
}
@Override
public void refreshRefUserDepartment(String userInfoId, String[] departmentIds, String userName) {
LOGGER.info("用户信息 SysUserInfo userInfoId:{} departmentIds:{} userName:{}",userInfoId,departmentIds,userName);
SysUserInfo userInfo = userInfoRDao.getById(Long.parseLong(userInfoId));
if(userInfo != null ){
// 查询部门信息
StringBuffer where = new StringBuffer();
HqlPack.getInPack(String.join(",",departmentIds),"id",where);
List<Department> departmentList = departmentRDao.findByHqlWhere(where.toString());
// 删除用户部门关系
refUserDepartmentRDao.deleteByProperty("userId",userInfo.getId());
if(departmentList != null && departmentList.size() >0){
List<RefUserDepartment> list = new ArrayList<>();
List<String> nameList = new ArrayList<>();
RefUserDepartment ref = null;
for (Department department : departmentList) {
ref = new RefUserDepartment();
ref.setDepartmentId(department.getId());
ref.setDepartmentNameRdd(department.getName());
ref.setUserId(userInfo.getId());
ref.setUserNameRdd(userInfo.getName());
ref.setCreateUser(userName);
ref.setCreateDatetime(TimeTool.getNowTime(true));
list.add(ref);
nameList.add(department.getName());
}
userInfo.setDepartmentNameRdd(String.join(",",nameList));
refUserDepartmentRDao.saveAll(list);
userInfoRDao.save(userInfo);
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 refreshRefUserPosition(String userInfoId, String[] positionIds, String userName) {
LOGGER.info("用户信息 SysUserInfo userInfoId:{} positionIds:{} userName:{}",userInfoId,positionIds,userName);
SysUserInfo userInfo = userInfoRDao.getById(Long.parseLong(userInfoId));
if(userInfo != null ){
// 查询部门信息
StringBuffer where = new StringBuffer();
HqlPack.getInPack(String.join(",",positionIds),"id",where);
List<Position> positionList = positionRDao.findByHqlWhere(where.toString());
// 删除用户岗位关系
refUserPositionRDao.deleteByProperty("userId",userInfo.getId());
if(positionList != null && positionList.size() >0){
List<RefUserPosition> list = new ArrayList<>();
List<String> nameList = new ArrayList<>();
RefUserPosition ref = null;
for (Position position : positionList) {
ref = new RefUserPosition();
ref.setUserId(userInfo.getId());
ref.setUserNameRdd(userInfo.getName());
ref.setPositionId(position.getId());
ref.setPositionNameRdd(position.getName());
ref.setCreateUser(userName);
ref.setCreateDatetime(TimeTool.getNowTime(true));
list.add(ref);
nameList.add(position.getName());
}
userInfo.setPositionNameRdd(String.join(",",nameList));
refUserPositionRDao.saveAll(list);
userInfoRDao.save(userInfo);
LOGGER.info("用户信息 SysUserInfo RefUserPositionRDao 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 refreshRefUserOrganize(String userInfoId, String organizeId, String userName) {
LOGGER.info("用户信息 SysUserInfo userInfoId:{} organizeId:{} userName:{}",userInfoId,organizeId,userName);
SysUserInfo userInfo = userInfoRDao.getById(Long.parseLong(userInfoId));
if(userInfo != null ){
Organize organize = organizeRDao.getById(Long.parseLong(organizeId));
if(organize != null ){
userInfo.setOrganizeId(organize.getId());
userInfo.setOrganizeNameRdd(organize.getName());
userInfo.setModifyUser(userName);
userInfo.setModifyDatetime(TimeTool.getNowTime(true));
userInfoRDao.update(organize);
}
}else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("用户信息不存在")
.setErrorSolution("请重新操作")
.build();
}
}
@Override
public void deleteSysUserInfoById(String id) {
LOGGER.info("用户信息 SysUserInfo id:{}",id);
userInfoRDao.deleteById(Long.parseLong(id));
}
@Override
public void deleteSysUserInfoByIds(String[] ids) {
LOGGER.info("用户信息 SysUserInfo ids:{}",ids);
userInfoRDao.deleteByIds(StringTool.getArrayLong(ids));
}
@Override
public SysUserInfo getSysUserInfoById(Long id) {
return userInfoRDao.getById(id);
}
@Override
public List listSysUserInfo() {
return userInfoRDao.findAll();
}
@Override
public ListPager<SysUserInfo> querySysUserInfo(SysUserInfo userInfo, Pager pager) {
LOGGER.info("定时任务 TASK_TIME TaskTime:{}Pager:{}",userInfo,pager);
if(userInfo == null) {
pager = PagerHelper.getPager(pager, userInfoRDao.listCount());
return new ListPager(userInfoRDao.listPager(pager),pager);
}else {
String hqlPack = CoreHqlPack.packHqlSysUserInfo(userInfo);
pager = PagerHelper.getPager(pager, userInfoRDao.findByHqlWhereCount(hqlPack));
return new ListPager(userInfoRDao.findByHqlWherePage(hqlPack + userInfo.orderBy(),pager),pager);
}
}
}

@ -71,7 +71,7 @@ public class SysUserService implements ISysUserService {
@Override
public SessionUser queryUserLogin(String loginName, String password, String languageCode) {
LOGGER.info("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
LOGGER.debug("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
SysUser user = getSysUserByLoginName(loginName);
@ -98,7 +98,6 @@ public class SysUserService implements ISysUserService {
}
SessionUser sessionUser = AuthUtil.login(token);
user = dealSysUserInfo(user); //设置用户详细信息
packSessionUser(sessionUser, user, user.getUserTypeId(), languageCode);
AuthUtil.setSessionUser(sessionUser);
return sessionUser;
@ -106,22 +105,22 @@ public class SysUserService implements ISysUserService {
@Override
public void updateSysUserStatus(String id, int status, SessionUser user) {
LOGGER.info("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
LOGGER.debug("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
SysUser sysUser = sysUserRDao.getById(Long.parseLong(id));
sysUser.setUserStatusId(status);
// sysUser.setUserStatusId(status);
sysUser.setModifyUser(user.getUserName());
sysUserRDao.update(sysUser);
}
@Override
public void updateBatchSysUserStatus(String[] ids, int status, SessionUser user) {
LOGGER.info("平台用户 SYS_USER DELETE By ids :{} status:{}, SessionUser :{}", ids,status,user);
LOGGER.debug("平台用户 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.setUserStatusId(status);
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
ConvertBean.modelUpdate(sysUser,user);
}
@ -131,19 +130,19 @@ public class SysUserService implements ISysUserService {
@Override
public void updateSysUser(SysUser sysUser) throws Exception{
LOGGER.info("平台用户 SYS_USER SysUser :{}", sysUser);
LOGGER.debug("平台用户 SYS_USER SysUser :{}", sysUser);
SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
// 判断是否修改登录名称
if (loginUser == null || loginUser.getId().equals(sysUser.getId())) {
// 密码加密 输入的密码不等于密码一致时修改密码
if(!sysUser.getUserLoginPassword().isEmpty()){
if(null != sysUser.getUserLoginPassword() && sysUser.getUserLoginPassword().trim().length() > 0){
if(sysUser.getUserLoginPassword().equals(loginUser.getUserLoginPassword())){
String md5 = EncryptTool.hexMD5(sysUser.getUserLoginPassword());
sysUser.setUserLoginPassword(md5);
}
}
sysUserInfoRDao.update(sysUser.getUserInfo());
sysUserRDao.save(sysUser);
}else {
throw ImppExceptionBuilder.newInstance()
@ -157,7 +156,7 @@ public class SysUserService implements ISysUserService {
@Override
public void updateSysUserPassword(String userIdStr, String password, String newPwd) throws Exception {
LOGGER.info("平台用户 SYS_USER userIdStr:{} password:{} newPwd:{}", userIdStr,password,newPwd);
LOGGER.debug("平台用户 SYS_USER userIdStr:{} password:{} newPwd:{}", userIdStr,password,newPwd);
SysUser user = sysUserRDao.getById(Long.parseLong(userIdStr));
if(user != null){
String md5 = EncryptTool.hexMD5(password);
@ -183,24 +182,15 @@ public class SysUserService implements ISysUserService {
}
@Override
public SysUser insertSysUser(SysUser sysUser )throws Exception {
LOGGER.info("平台用户 SYS_USER SysUser:{}", sysUser);
public SysUser insertSysUser(SysUser sysUser)throws Exception {
LOGGER.debug("平台用户 SYS_USER SysUser:{}", sysUser);
SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
if (null == loginUser) {
// 密码加密 输入的密码不等于密码一致时修改密码
String md5 = EncryptTool.hexMD5(sysUser.getUserLoginPassword());
sysUser.setUserLoginPassword(md5);
SysUser user = sysUserRDao.insert(sysUser);
// 保存用户详细信息
SysUserInfo userInfo = new SysUserInfo();
userInfo.setUserId(user.getId());
SysUserInfo info = sysUserInfoRDao.insert(userInfo);
user.setUserInfo(info);
return user;
return sysUserRDao.insert(sysUser);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
@ -212,39 +202,9 @@ public class SysUserService implements ISysUserService {
}
@Override
public void refreshRefUserDepartment(SysUser sysUser, String departmentId, SessionUser user) {
LOGGER.info("平台用户 SYS_USER SysUser:{}", sysUser);
LOGGER.info("平台用户 SYS_USER departmentId:{}", departmentId);
LOGGER.info("平台用户 SYS_USER SessionUser:{}", user);
refUserDepartmentRDao.deleteByProperty("userId", sysUser.getId()); //删除用户部门关系
Department dep = departmentRDao.getById(Long.parseLong(departmentId));
if(dep != null ){
ValidatorBean.checkNotNull(dep);
// 用户部门关系保存
RefUserDepartment refUserDepartment = new RefUserDepartment(sysUser.getId(), dep.getId(), dep.getName());
refUserDepartmentRDao.save(refUserDepartment);
// 组织信息冗余
Organize organize = organizeRDao.getById(dep.getOrganizeId());
if(organize != null){
sysUser.setRedOrganizeName(organize.getName());
sysUser.setOrganizeId(organize.getId());
}
// 冗余 部门信息
sysUser.setRedDepartmentName(dep.getName());
}
}
@Override
public void refreshRefUserRole(SysUser sysUser, String[] roleIds, SessionUser user) {
LOGGER.info("平台用户 SYS_USER SysUser:{}", sysUser);
LOGGER.info("平台用户 SYS_USER String[] :{}", roleIds);
LOGGER.info("平台用户 SYS_USER SessionUser:{}", user);
LOGGER.debug("平台用户 SYS_USER SysUser:{}", sysUser);
LOGGER.debug("平台用户 SYS_USER String[] :{}", roleIds);
// 根据IDS 查询所有的角色信息
String where = CoreHqlPack.packHqlIds("id", roleIds);
@ -257,45 +217,31 @@ public class SysUserService implements ISysUserService {
// 新增用户角色关系
List<RefUserRole> refUserRoles = new ArrayList<>();
List<String> roleNameList = new ArrayList<>();
SysRole sysRole = list.get(0);
RefUserRole refUserRole = null;
for (SysRole role : list) {
roleNameList.add(role.getName());
// 用户角色关系创建
refUserRole = new RefUserRole(sysUser.getId(), role.getId(), role.getName());
refUserRole = new RefUserRole();
refUserRole.setRoleId(role.getId());
refUserRole.setRoleNameRdd(role.getName());
refUserRole.setUserId(sysUser.getId());
refUserRole.setUserNameRdd(sysUser.getUserName());
refUserRoles.add(refUserRole);
}
refUserRoleRDao.saveAll(refUserRoles);
// 角色名称冗余
sysUser.getUserInfo().setRedRoleNames(String.join(",", roleNameList));
sysUser.setRoleId(sysRole.getId());
sysUser.setRedRoleName(sysRole.getName());
}
}
@Override
public void refreshRefUserPosition(SysUser sysUser, String positionId, SessionUser user) {
LOGGER.info("平台用户 SYS_USER SysUser:{}", sysUser);
LOGGER.info("平台用户 SYS_USER positionId :{}", positionId);
LOGGER.info("平台用户 SYS_USER SessionUser:{}", user);
Position pos = positionRDao.getById(Long.parseLong(positionId));
ValidatorBean.checkNotNull(pos);
refUserPositionRDao.deleteByProperty("userId", sysUser.getId()); //删除用户部门关系
RefUserPosition refUserPosition = new RefUserPosition(sysUser.getId(), pos.getId(), pos.getName());
refUserPositionRDao.insert(refUserPosition);
sysUser.setRoleNameRdd(String.join(",", roleNameList));
sysUser.setRoleId(list.get(0).getId());
// 岗位名称冗余
sysUser.getUserInfo().setRedPositionNames(pos.getName());
sysUser.setRedPositionName(pos.getName());
sysUserRDao.save(sysUser);
}
}
@Override
public void deleteSysUserById(String id) {
LOGGER.info("平台用户 SYS_USER DELETE By id :{}", id);
LOGGER.debug("平台用户 SYS_USER DELETE By id :{}", id);
sysUserRDao.updateByProperties("id", id, "isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
// 删除用户关系(物理删除)
@ -306,7 +252,7 @@ public class SysUserService implements ISysUserService {
@Override
public void deleteBatchSysUserById(String[] ids,SessionUser user) {
LOGGER.info("平台用户 SYS_USER DELETE By ids :{}", ids);
LOGGER.debug("平台用户 SYS_USER DELETE By ids :{}", ids);
// 标记用户已删除
String where = CoreHqlPack.packHqlIds("id", ids);
@ -314,21 +260,22 @@ public class SysUserService implements ISysUserService {
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);
refUserRoleRDao.deleteByPropertyIn("userId",ids);
}
}
@Override
public List<SysUser> list() {
LOGGER.info("平台用户 SYS_USER find All");
LOGGER.debug("平台用户 SYS_USER find All");
return sysUserRDao.findByProperty("isValid", CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
@Override
public ListPager<SysUser> querySysUserByPager(SysUser user, Pager pager) {
LOGGER.info("系统用户 SysUser find user :{} page :{}", user, pager);
LOGGER.debug("系统用户 SysUser find user :{} page :{}", user, pager);
//生成hql查询语句
String hqlPack = CoreHqlPack.packHqlSysUser(user);
@ -338,57 +285,22 @@ public class SysUserService implements ISysUserService {
@Override
public SysUser getSysUserById(String id) {
LOGGER.info("平台用户 SYS_USER get By id :{}", id);
LOGGER.debug("平台用户 SYS_USER get By id :{}", id);
return sysUserRDao.getById(Long.parseLong(id));
}
@Override
public SysUserInfo getSysUserInfoById(String id) {
LOGGER.info("平台用户明细 SYS_USER_INFO get By id :{}", id);
return sysUserInfoRDao.getByProperty("userId",Long.parseLong(id));
public SysUserInfo getSysUserInfoById(Long id) {
return sysUserInfoRDao.getByProperty("id",id);
}
@Override
public SysUser getSysUserByLoginName(String loginName) {
LOGGER.info("平台用户 SYS_USER find By Login Name :{}", loginName);
LOGGER.debug("平台用户 SYS_USER find By Login Name :{}", loginName);
return sysUserRDao.getByProperty(new String[]{"userLoginName", "isValid"},
new Object[]{loginName, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()});
}
/**
*
*
* @param user
* @return
*/
@Override
public SysUser dealSysUserInfo(SysUser user) {
LOGGER.info("平台用户 SYS_USER user id :{}", user.getId());
SysUserInfo userInfo = sysUserInfoRDao.getByProperty("userId", user.getId());
Organize organize = organizeRDao.getById(user.getOrganizeId());
List<Department> departmentList = userPermissionDao.findDepartmentByUser(user);
List<Position> positionList = userPermissionDao.findPositionByUser(user);
List<SysMenu> menuList = userPermissionDao.findSysMenuByUser(user);
List<SysRole> roleList = userPermissionDao.findSysRoleByUser(user);
LOGGER.info("平台用户 SYS_USER userInfo :{}", userInfo);
LOGGER.info("平台用户 SYS_USER organize :{}", organize);
LOGGER.info("平台用户 SYS_USER departmentList size :{}", departmentList.size());
LOGGER.info("平台用户 SYS_USER positionList size :{}", positionList.size());
LOGGER.info("平台用户 SYS_USER menuList size :{}", menuList.size());
LOGGER.info("平台用户 SYS_USER roleList size :{}", roleList.size());
user.setUserInfo(userInfo);
user.setOrganize(organize);
user.setDepartmentList(departmentList);
user.setMenuList(menuList);
user.setPositionList(positionList);
user.setRoleList(roleList);
return user;
}
@Override
public List<RefUserRole> findRefUserRoleByUserId(String userId) {
return refUserRoleRDao.findByProperty("userId",Long.parseLong(userId));
@ -403,21 +315,39 @@ public class SysUserService implements ISysUserService {
* @param languageCode
* @return
*/
public static SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode) {
public SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode) {
LOGGER.debug("平台用户 SYS_USER user id :{}", user.getId());
SysUserInfo userInfo = sysUserInfoRDao.getById(user.getUserInfoId());
Organize organize = organizeRDao.getById(userInfo.getOrganizeId());
// 权限信息查询
List<SysMenu> menuList = userPermissionDao.findSysMenuByUser(user);
List<SysRole> roleList = userPermissionDao.findSysRoleByUser(user);
List<Department> departmentList = userPermissionDao.findDepartmentByUser(userInfo);
List<Position> positionList = userPermissionDao.findPositionByUser(userInfo);
LOGGER.debug("平台用户 SYS_USER userInfo :{}", userInfo);
LOGGER.debug("平台用户 SYS_USER organize :{}", organize);
LOGGER.debug("平台用户 SYS_USER departmentList size :{}", departmentList.size());
LOGGER.debug("平台用户 SYS_USER positionList size :{}", positionList.size());
LOGGER.debug("平台用户 SYS_USER menuList size :{}", menuList.size());
LOGGER.debug("平台用户 SYS_USER roleList size :{}", roleList.size());
user.setMenuList(menuList);
user.setRoleList(roleList);
userInfo.setUser(user);
userInfo.setOrganize(organize);
userInfo.setDepartmentList(departmentList);
userInfo.setPositionList(positionList);
sessionUser.setLanguageCode(languageCode);
sessionUser.setUserName(user.getName());
sessionUser.setUserName(userInfo.getName());
sessionUser.setUserTypeId(CommonEnumUtil.USER_TYPE.valueOf(userType));
sessionUser.setUserCode(user.getUserEmpNo());
sessionUser.setRoleList(user.getRoleList());
sessionUser.setDepartmentList(user.getDepartmentList());
sessionUser.setPositionList(user.getPositionList());
sessionUser.setOrganize(user.getOrganize());
sessionUser.setUserCode(userInfo.getUserEmpNo());
sessionUser.setUser(user);
sessionUser.setUserInfo(user.getUserInfo());
if(null != user.getPositionList() && user.getPositionList().size() > 0){
sessionUser.setPosition(user.getPositionList().get(0));
}
sessionUser.setUserInfo(userInfo);
return sessionUser;
}

@ -1,5 +1,5 @@
#项目端口
server.port=51010
server.port=8080
#用户登陆路径
filter.shiro.user.loginuri = /login

@ -1,6 +1,5 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import org.junit.After;
import org.junit.Before;
import org.junit.FixMethodOrder;

@ -1,10 +1,8 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService;
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.platform.bean.SysFile;
import com.alibaba.fastjson.JSON;
import org.junit.Test;
@ -24,7 +22,7 @@ import java.util.List;
public class TestSysFileService extends TestBase {
@Autowired
ISysFileService sysFileService;
public ISysFileService sysFileService;
/**
*

Loading…
Cancel
Save