parent
778faac1fc
commit
3c751ac130
@ -1,441 +1,441 @@
|
||||
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
|
||||
|
||||
import cn.estsh.i3plus.core.api.iservice.base.ISysUserService;
|
||||
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
||||
import cn.estsh.i3plus.pojo.base.shirotoken.AdminToken;
|
||||
import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken;
|
||||
import cn.estsh.i3plus.pojo.base.shirotoken.UserToken;
|
||||
import cn.estsh.i3plus.pojo.model.flatform.UserModel;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.*;
|
||||
import cn.estsh.i3plus.pojo.platform.repository.*;
|
||||
import cn.estsh.impp.framework.boot.auth.AuthUtil;
|
||||
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
||||
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.authc.AuthenticationToken;
|
||||
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-10-25 17:45
|
||||
* @Modify :
|
||||
**/
|
||||
@Service
|
||||
public class SysUserServiceImpl implements ISysUserService {
|
||||
|
||||
public static final Logger LOGGER = LoggerFactory.getLogger(SysUserServiceImpl.class);
|
||||
|
||||
@Autowired
|
||||
private SysUserRepository sysUserRDao;
|
||||
|
||||
@Autowired
|
||||
private SysUserInfoRepository sysUserInfoRDao;
|
||||
|
||||
@Autowired
|
||||
private IUserPermissionDao userPermissionDao;
|
||||
|
||||
@Autowired
|
||||
private OrganizeRepository organizeRDao;
|
||||
|
||||
@Autowired
|
||||
private SysRoleRepository sysRoleRDao;
|
||||
|
||||
@Autowired
|
||||
private DepartmentRepository departmentRDao;
|
||||
|
||||
@Autowired
|
||||
private PositionRepository positionRDao;
|
||||
|
||||
@Autowired
|
||||
private RefUserRoleRepository refUserRoleRDao;
|
||||
|
||||
@Autowired
|
||||
private RefUserDepartmentRepository refUserDepartmentRDao;
|
||||
|
||||
@Autowired
|
||||
private RefUserPositionRepository refUserPositionRDao;
|
||||
|
||||
@Override
|
||||
public SessionUser queryUserLogin(String loginName, String password, String languageCode) {
|
||||
LOGGER.info("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
|
||||
SysUser user = getSysUserByLoginName(loginName);
|
||||
AuthenticationToken token = null;
|
||||
|
||||
if (user == null) {
|
||||
//用户不存在
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.LOGIN_EXCEPTION.getCode())
|
||||
.setErrorDetail("用户不存在")
|
||||
.setErrorSolution("重新登陆")
|
||||
.build();
|
||||
} else if (!StringUtils.equals(user.getUserLoginPassword(), password)) {
|
||||
//密码不符
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.LOGIN_EXCEPTION.getCode())
|
||||
.setErrorDetail("登陆密码错误")
|
||||
.setErrorSolution("重新输入")
|
||||
.build();
|
||||
}
|
||||
|
||||
switch (user.getUserTypeId()) {
|
||||
case 2:
|
||||
token = new AdminToken(loginName, password, languageCode);
|
||||
break;
|
||||
case 3:
|
||||
token = new SaAdminToken(loginName, password, languageCode);
|
||||
break;
|
||||
default:
|
||||
token = new UserToken(loginName, password, languageCode);
|
||||
break;
|
||||
}
|
||||
SessionUser sessionUser = AuthUtil.login(token);
|
||||
|
||||
user = getSysUserInfo(user); //设置用户详细信息
|
||||
packSessionUser(sessionUser, user, user.getUserTypeId(), languageCode);
|
||||
AuthUtil.setSessionUser(sessionUser);
|
||||
return sessionUser;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void updateSysUserStatus(String id, int status, SessionUser user) {
|
||||
LOGGER.info("平台用户 SYS_USER id:{} \t status:{} \t modifyUser:{}", id, status, user.getUserName());
|
||||
SysUser sysUser = sysUserRDao.getById(Long.parseLong(id));
|
||||
sysUser.setUserStatus(status);
|
||||
sysUser.setModifyUser(user.getUserName());
|
||||
sysUserRDao.update(sysUser);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUser updateSysUserModel(UserModel model, SessionUser user) {
|
||||
LOGGER.info("平台用户 SYS_USER model:{}", model);
|
||||
LOGGER.info("平台用户 SYS_USER user:{}", user);
|
||||
|
||||
// 数据真实性校验
|
||||
SysRole sysRole = sysRoleRDao.getById(model.getRole().id);
|
||||
checkSysRole(sysRole);
|
||||
Department dep = departmentRDao.getById(model.getDepartment().getId());
|
||||
checkDepartment(dep);
|
||||
Position pos = positionRDao.getById(model.getPosition().getId());
|
||||
checkPosition(pos);
|
||||
Organize organize = organizeRDao.getById(model.getDepartment().getOrganizeId());
|
||||
checkOrganize(organize);
|
||||
|
||||
SysUser sysUser = model.getUser();
|
||||
|
||||
SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
|
||||
// 判断是否修改登录名称
|
||||
if (null == loginUser || loginUser.getId().equals(sysUser.getId())) {
|
||||
// 冗余部分信息
|
||||
sysUser.setRedDepartmentName(dep.getDepartmentName());
|
||||
sysUser.setRedRoleName(sysRole.getName());
|
||||
sysUser.setRedPositionName(pos.getPositionName());
|
||||
sysUser.setOrganizeId(organize.getId());
|
||||
sysUser.setRedOrganizeName(organize.getRedParentName());
|
||||
|
||||
if (!sysUser.getUserLoginPassword().isEmpty()) {
|
||||
//TODO 密码加密
|
||||
}
|
||||
|
||||
// 刷新用户角色关系信息
|
||||
refreshRefUserRole( model, sysUser);
|
||||
|
||||
// 刷新用户部门关系信息
|
||||
refreshRefUserDepartment( model, sysUser);
|
||||
|
||||
// 刷新用户岗位关系信息
|
||||
refreshRefUserPosition( model, sysUser);
|
||||
|
||||
// 保存用户信息
|
||||
sysUserInfoRDao.save(model.getUserInfo());
|
||||
return sysUserRDao.save(sysUser);
|
||||
} else {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("用户名已存在")
|
||||
.setErrorSolution("请重新输入用户名")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUser insertSysUserModel(UserModel model, SessionUser user) {
|
||||
LOGGER.info("平台用户 SYS_USER model:{}", model);
|
||||
LOGGER.info("平台用户 SYS_USER user:{}", user);
|
||||
|
||||
SysUser sysUser = model.getUser();
|
||||
SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
|
||||
if (null == loginUser) {
|
||||
sysUser = sysUserRDao.insert(sysUser);
|
||||
model.getUserInfo().setUserId(sysUser.getId());
|
||||
model.setUser(sysUser);
|
||||
return updateSysUserModel(model, user);
|
||||
} else {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("用户名已存在")
|
||||
.setErrorSolution("请重新输入用户名")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteSysUserById(String id) {
|
||||
LOGGER.info("平台用户 SYS_USER DELETE By id :{}", id);
|
||||
sysUserRDao.updateByProperties("id", id, "isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
||||
// //TODO 确认是否物理删除
|
||||
refUserRoleRDao.deleteByProperties("userId", Long.parseLong(id)); // 删除用户角色关系
|
||||
refUserDepartmentRDao.deleteByProperties("userId", Long.parseLong(id)); //删除用户部门关系
|
||||
refUserPositionRDao.deleteByProperties("userId", Long.parseLong(id)); //删除用户部门关系
|
||||
|
||||
// refUserRoleRDao.updateByProperties("userId",id,"isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
||||
// refUserDepartmentRDao.updateByProperties("userId",id,"isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
||||
// refUserPositionRDao.updateByProperties("userId",id,"isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysUser> findSysUserAll() {
|
||||
LOGGER.info("平台用户 SYS_USER find All");
|
||||
return sysUserRDao.findByProperty("isValid", CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUser getSysUserById(String id) {
|
||||
LOGGER.info("平台用户 SYS_USER get By id :{}", id);
|
||||
return sysUserRDao.getById(Long.parseLong(id));
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUser getSysUserByLoginName(String loginName) {
|
||||
LOGGER.info("平台用户 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 getSysUserInfo(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;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**************************************** 公共方法封装 ****************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 封装用户登陆信息
|
||||
*
|
||||
* @param sessionUser 当前会话信息
|
||||
* @param user 当前登录用户
|
||||
* @param userType 用户类型
|
||||
* @param languageCode 用户选择的语言
|
||||
* @return
|
||||
*/
|
||||
public static SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode) {
|
||||
sessionUser.setLanguageCode(languageCode);
|
||||
sessionUser.setUserName(user.getName());
|
||||
sessionUser.setUserType(CommonEnumUtil.USER_TYPE.valueOf(userType));
|
||||
sessionUser.setUserCode(user.getUserInfo().getLanguageCode());
|
||||
sessionUser.setRoleList(user.getRoleList());
|
||||
sessionUser.setDepartmentList(user.getDepartmentList());
|
||||
sessionUser.setPositionList(user.getPositionList());
|
||||
sessionUser.setOrganize(user.getOrganize());
|
||||
return sessionUser;
|
||||
}
|
||||
|
||||
/**
|
||||
* 刷新用户 角色关系
|
||||
* @param model
|
||||
* @param sysUser
|
||||
*/
|
||||
private void refreshRefUserRole( UserModel model, SysUser sysUser) {
|
||||
// 用户角色操作
|
||||
refUserRoleRDao.deleteByProperties("userId", sysUser.getId()); // 删除用户角色关系
|
||||
if (null != model.getRoles() && model.getRoles().size() > 0) { //角色非空是操作
|
||||
|
||||
List<RefUserRole> refUserRoles = new ArrayList<>();
|
||||
StringBuffer roleNames = new StringBuffer();
|
||||
RefUserRole refUserRole = null;
|
||||
|
||||
for (SysRole role : model.getRoles()) {
|
||||
roleNames.append("," + role.getName());
|
||||
// 用户角色关系创建
|
||||
refUserRole = new RefUserRole(sysUser.getId(), role.getId(), role.getName());
|
||||
refUserRoles.add(refUserRole);
|
||||
}
|
||||
|
||||
refUserRoleRDao.saveAll(refUserRoles);
|
||||
// 角色名称冗余
|
||||
model.getUserInfo().setRedRoleNames(roleNames.substring(1, roleNames.length()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 刷新用户部门关系
|
||||
* @param model
|
||||
* @param sysUser
|
||||
*/
|
||||
private void refreshRefUserDepartment(UserModel model, SysUser sysUser) {
|
||||
// 用户部门操作
|
||||
refUserDepartmentRDao.deleteByProperties("userId", sysUser.getId()); //删除用户部门关系
|
||||
if (null != model.getDepartments() && model.getDepartments().size() > 0) {
|
||||
|
||||
List<RefUserDepartment> refUserDepartments = new ArrayList<>();
|
||||
StringBuffer departmentNames = new StringBuffer();
|
||||
RefUserDepartment refUserDepartment = null;
|
||||
|
||||
for (Department department : model.getDepartments()) {
|
||||
departmentNames.append("," + department.getDepartmentName());
|
||||
|
||||
// 用户部门关系创建
|
||||
refUserDepartment = new RefUserDepartment(sysUser.getId(), department.getId(), department.getDepartmentName());
|
||||
refUserDepartments.add(refUserDepartment);
|
||||
}
|
||||
|
||||
refUserDepartmentRDao.save(refUserDepartment);
|
||||
// 部门名称冗余
|
||||
model.getUserInfo().setRedDepartmentNames(departmentNames.substring(1, departmentNames.length()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 刷新用户岗位关系
|
||||
* @param model
|
||||
* @param sysUser
|
||||
*/
|
||||
private void refreshRefUserPosition(UserModel model, SysUser sysUser) {
|
||||
refUserPositionRDao.deleteByProperties("userId", sysUser.getId()); //删除用户部门关系
|
||||
if (null != model.getPositions() && model.getPositions().size() > 0) {
|
||||
|
||||
List<RefUserPosition> refUserPositions = new ArrayList<>();
|
||||
StringBuffer positionNames = new StringBuffer();
|
||||
RefUserPosition refUserPosition = null;
|
||||
for (Position position : model.getPositions()) {
|
||||
positionNames.append("," + position.getPositionName());
|
||||
|
||||
// 用户岗位关系创建
|
||||
refUserPosition = new RefUserPosition(sysUser.getId(), position.getId(), position.getPositionName());
|
||||
refUserPositions.add(refUserPosition);
|
||||
}
|
||||
|
||||
refUserPositionRDao.saveAll(refUserPositions);
|
||||
// 岗位名称冗余
|
||||
model.getUserInfo().setRedPositionNames(positionNames.substring(1, positionNames.length()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 部门真实性校验
|
||||
* @param department
|
||||
*/
|
||||
private void checkDepartment(Department department) {
|
||||
if (null == department) {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("部门不存在")
|
||||
.setErrorSolution("请重新输入部门信息")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 岗位真实性 校验
|
||||
* @param position
|
||||
*/
|
||||
private void checkPosition(Position position) {
|
||||
if (null == position) {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("岗位不存在")
|
||||
.setErrorSolution("请重新输入岗位信息")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 角色真实信息校验
|
||||
* @param sysRole
|
||||
*/
|
||||
private void checkSysRole(SysRole sysRole) {
|
||||
if (null == sysRole) {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("角色不存在")
|
||||
.setErrorSolution("请重新输入角色信息")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 组织真实性校验
|
||||
* @param organize
|
||||
*/
|
||||
private void checkOrganize(Organize organize) {
|
||||
if (null == organize) {
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
.setErrorDetail("部门的组织不存在")
|
||||
.setErrorSolution("请先完善组织信息")
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
|
||||
//
|
||||
//import cn.estsh.i3plus.core.api.iservice.base.ISysUserService;
|
||||
//import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
|
||||
//import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
||||
//import cn.estsh.i3plus.pojo.base.shirotoken.AdminToken;
|
||||
//import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken;
|
||||
//import cn.estsh.i3plus.pojo.base.shirotoken.UserToken;
|
||||
//import cn.estsh.i3plus.pojo.model.flatform.UserModel;
|
||||
//import cn.estsh.i3plus.pojo.platform.bean.*;
|
||||
//import cn.estsh.i3plus.pojo.platform.repository.*;
|
||||
//import cn.estsh.impp.framework.boot.auth.AuthUtil;
|
||||
//import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
||||
//import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
||||
//import org.apache.commons.lang3.StringUtils;
|
||||
//import org.apache.shiro.authc.AuthenticationToken;
|
||||
//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-10-25 17:45
|
||||
// * @Modify :
|
||||
// **/
|
||||
//@Service
|
||||
//public class SysUserServiceImpl implements ISysUserService {
|
||||
//
|
||||
// public static final Logger LOGGER = LoggerFactory.getLogger(SysUserServiceImpl.class);
|
||||
//
|
||||
// @Autowired
|
||||
// private SysUserRepository sysUserRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private SysUserInfoRepository sysUserInfoRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private IUserPermissionDao userPermissionDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private OrganizeRepository organizeRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private SysRoleRepository sysRoleRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private DepartmentRepository departmentRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private PositionRepository positionRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private RefUserRoleRepository refUserRoleRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private RefUserDepartmentRepository refUserDepartmentRDao;
|
||||
//
|
||||
// @Autowired
|
||||
// private RefUserPositionRepository refUserPositionRDao;
|
||||
//
|
||||
// @Override
|
||||
// public SessionUser queryUserLogin(String loginName, String password, String languageCode) {
|
||||
// LOGGER.info("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
|
||||
// SysUser user = getSysUserByLoginName(loginName);
|
||||
// AuthenticationToken token = null;
|
||||
//
|
||||
// if (user == null) {
|
||||
// //用户不存在
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.LOGIN_EXCEPTION.getCode())
|
||||
// .setErrorDetail("用户不存在")
|
||||
// .setErrorSolution("重新登陆")
|
||||
// .build();
|
||||
// } else if (!StringUtils.equals(user.getUserLoginPassword(), password)) {
|
||||
// //密码不符
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.LOGIN_EXCEPTION.getCode())
|
||||
// .setErrorDetail("登陆密码错误")
|
||||
// .setErrorSolution("重新输入")
|
||||
// .build();
|
||||
// }
|
||||
//
|
||||
// switch (user.getUserTypeId()) {
|
||||
// case 2:
|
||||
// token = new AdminToken(loginName, password, languageCode);
|
||||
// break;
|
||||
// case 3:
|
||||
// token = new SaAdminToken(loginName, password, languageCode);
|
||||
// break;
|
||||
// default:
|
||||
// token = new UserToken(loginName, password, languageCode);
|
||||
// break;
|
||||
// }
|
||||
// SessionUser sessionUser = AuthUtil.login(token);
|
||||
//
|
||||
// user = getSysUserInfo(user); //设置用户详细信息
|
||||
// packSessionUser(sessionUser, user, user.getUserTypeId(), languageCode);
|
||||
// AuthUtil.setSessionUser(sessionUser);
|
||||
// return sessionUser;
|
||||
// }
|
||||
//
|
||||
//
|
||||
// @Override
|
||||
// public void updateSysUserStatus(String id, int status, SessionUser user) {
|
||||
// LOGGER.info("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
|
||||
// SysUser sysUser = sysUserRDao.getById(Long.parseLong(id));
|
||||
// sysUser.setUserStatus(status);
|
||||
// sysUser.setModifyUser(user.getUserName());
|
||||
// sysUserRDao.update(sysUser);
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public SysUser updateSysUserModel(UserModel model, SessionUser user) {
|
||||
// LOGGER.info("平台用户 SYS_USER model:{}", model);
|
||||
// LOGGER.info("平台用户 SYS_USER user:{}", user);
|
||||
//
|
||||
// // 数据真实性校验
|
||||
// SysRole sysRole = sysRoleRDao.getById(model.getRole().id);
|
||||
// checkSysRole(sysRole);
|
||||
//
|
||||
// Department dep = departmentRDao.getById(model.getDepartment().getId());
|
||||
// checkDepartment(dep);
|
||||
//
|
||||
// Position pos = positionRDao.getById(model.getPosition().getId());
|
||||
// checkPosition(pos);
|
||||
//
|
||||
// Organize organize = organizeRDao.getById(model.getDepartment().getOrganizeId());
|
||||
// checkOrganize(organize);
|
||||
//
|
||||
// SysUser sysUser = model.getUser();
|
||||
//
|
||||
// //TODO UserLoginName Count
|
||||
// SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
|
||||
// // 判断是否修改登录名称
|
||||
// if (loginUser == null || loginUser.getId().equals(sysUser.getId())) {
|
||||
// // 冗余部分信息
|
||||
// sysUser.setRedDepartmentName(dep.getDepartmentName());
|
||||
// sysUser.setRedRoleName(sysRole.getName());
|
||||
// sysUser.setRedPositionName(pos.getPositionName());
|
||||
// sysUser.setOrganizeId(organize.getId());
|
||||
// sysUser.setRedOrganizeName(organize.getRedParentName());
|
||||
//
|
||||
// if (!sysUser.getUserLoginPassword().isEmpty()) {
|
||||
// //TODO 密码加密
|
||||
// }
|
||||
//
|
||||
// // 刷新用户角色关系信息
|
||||
// refreshRefUserRole(model, sysUser);
|
||||
//
|
||||
// // 刷新用户部门关系信息
|
||||
// refreshRefUserDepartment(model, sysUser);
|
||||
//
|
||||
// // 刷新用户岗位关系信息
|
||||
// refreshRefUserPosition(model, sysUser);
|
||||
//
|
||||
// // 保存用户信息
|
||||
// sysUserInfoRDao.save(model.getUserInfo());
|
||||
// return sysUserRDao.save(sysUser);
|
||||
// } else {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("用户名已存在")
|
||||
// .setErrorSolution("请重新输入用户名")
|
||||
// .build();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public SysUser insertSysUserModel(UserModel model, SessionUser user) {
|
||||
// LOGGER.info("平台用户 SYS_USER model:{}", model);
|
||||
// LOGGER.info("平台用户 SYS_USER user:{}", user);
|
||||
//
|
||||
// SysUser sysUser = model.getUser();
|
||||
// SysUser loginUser = getSysUserByLoginName(sysUser.getUserLoginName());
|
||||
// if (null == loginUser) {
|
||||
// sysUser = sysUserRDao.insert(sysUser);
|
||||
// model.getUserInfo().setUserId(sysUser.getId());
|
||||
// model.setUser(sysUser);
|
||||
// return updateSysUserModel(model, user);
|
||||
// } else {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("用户名已存在")
|
||||
// .setErrorSolution("请重新输入用户名")
|
||||
// .build();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void deleteSysUserById(String id) {
|
||||
// LOGGER.info("平台用户 SYS_USER DELETE By id :{}", id);
|
||||
// sysUserRDao.updateByProperties("id", id, "isValid", CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
||||
//
|
||||
// // 删除用户关系(物理删除)
|
||||
// refUserRoleRDao.deleteByProperties("userId", Long.parseLong(id)); // 删除用户角色关系
|
||||
// refUserDepartmentRDao.deleteByProperties("userId", Long.parseLong(id)); //删除用户部门关系
|
||||
// refUserPositionRDao.deleteByProperties("userId", Long.parseLong(id)); //删除用户部门关系
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public List<SysUser> findSysUserAll() {
|
||||
// LOGGER.info("平台用户 SYS_USER find All");
|
||||
// return sysUserRDao.findByProperty("isValid", CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public SysUser getSysUserById(String id) {
|
||||
// LOGGER.info("平台用户 SYS_USER get By id :{}", id);
|
||||
// return sysUserRDao.getById(Long.parseLong(id));
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public SysUser getSysUserByLoginName(String loginName) {
|
||||
// LOGGER.info("平台用户 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 getSysUserInfo(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;
|
||||
// }
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// /**************************************** 公共方法封装 ****************************************/
|
||||
//
|
||||
//// dealUserInfo() 用户信息封装
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 封装用户登陆信息
|
||||
// *
|
||||
// * @param sessionUser 当前会话信息
|
||||
// * @param user 当前登录用户
|
||||
// * @param userType 用户类型
|
||||
// * @param languageCode 用户选择的语言
|
||||
// * @return
|
||||
// */
|
||||
// public static SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode) {
|
||||
// sessionUser.setLanguageCode(languageCode);
|
||||
// sessionUser.setUserName(user.getName());
|
||||
// sessionUser.setUserType(CommonEnumUtil.USER_TYPE.valueOf(userType));
|
||||
// sessionUser.setUserCode(user.getUserInfo().getLanguageCode());
|
||||
// sessionUser.setRoleList(user.getRoleList());
|
||||
// sessionUser.setDepartmentList(user.getDepartmentList());
|
||||
// sessionUser.setPositionList(user.getPositionList());
|
||||
// sessionUser.setOrganize(user.getOrganize());
|
||||
// return sessionUser;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 刷新用户 角色关系
|
||||
// * @param model
|
||||
// * @param sysUser
|
||||
// */
|
||||
// private void refreshRefUserRole( UserModel model, SysUser sysUser) {
|
||||
// // 用户角色操作
|
||||
// refUserRoleRDao.deleteByProperties("userId", sysUser.getId()); // 删除用户角色关系
|
||||
// if (null != model.getRoles() && model.getRoles().size() > 0) { //角色非空是操作
|
||||
// List<RefUserRole> refUserRoles = new ArrayList<>();
|
||||
// List<String> roleNameList = new ArrayList<>();
|
||||
// RefUserRole refUserRole = null;
|
||||
//
|
||||
// for (SysRole role : model.getRoles()) {
|
||||
// roleNameList.add(role.getName());
|
||||
// // 用户角色关系创建
|
||||
// refUserRole = new RefUserRole(sysUser.getId(), role.getId(), role.getName());
|
||||
// refUserRoles.add(refUserRole);
|
||||
// }
|
||||
//
|
||||
// refUserRoleRDao.saveAll(refUserRoles);
|
||||
// // 角色名称冗余
|
||||
// model.getUserInfo().setRedRoleNames(String.join(",",roleNameList));
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 刷新用户部门关系
|
||||
// * @param model
|
||||
// * @param sysUser
|
||||
// */
|
||||
// private void refreshRefUserDepartment(UserModel model, SysUser sysUser) {
|
||||
// // 用户部门操作
|
||||
// refUserDepartmentRDao.deleteByProperties("userId", sysUser.getId()); //删除用户部门关系
|
||||
// /*if (null != model.getDepartments() && model.getDepartments().size() > 0) {
|
||||
//
|
||||
// List<RefUserDepartment> refUserDepartments = new ArrayList<>();
|
||||
// StringBuffer departmentNames = new StringBuffer();
|
||||
// RefUserDepartment refUserDepartment = null;
|
||||
//
|
||||
// for (Department department : model.getDepartments()) {
|
||||
// departmentNames.append("," + department.getDepartmentName());
|
||||
//
|
||||
// // 用户部门关系创建
|
||||
// refUserDepartment = new RefUserDepartment(sysUser.getId(), department.getId(), department.getDepartmentName());
|
||||
// refUserDepartments.add(refUserDepartment);
|
||||
// }
|
||||
//
|
||||
// refUserDepartmentRDao.save(refUserDepartment);
|
||||
// // 部门名称冗余
|
||||
// model.getUserInfo().setRedDepartmentNames(departmentNames.substring(1, departmentNames.length()));
|
||||
// }*/
|
||||
// }
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 刷新用户岗位关系
|
||||
// * @param model
|
||||
// * @param sysUser
|
||||
// */
|
||||
// private void refreshRefUserPosition(UserModel model, SysUser sysUser) {
|
||||
// /*refUserPositionRDao.deleteByProperties("userId", sysUser.getId()); //删除用户部门关系
|
||||
// if (null != model.getPositions() && model.getPositions().size() > 0) {
|
||||
//
|
||||
// List<RefUserPosition> refUserPositions = new ArrayList<>();
|
||||
// StringBuffer positionNames = new StringBuffer();
|
||||
// RefUserPosition refUserPosition = null;
|
||||
// for (Position position : model.getPositions()) {
|
||||
// positionNames.append("," + position.getPositionName());
|
||||
//
|
||||
// // 用户岗位关系创建
|
||||
// refUserPosition = new RefUserPosition(sysUser.getId(), position.getId(), position.getPositionName());
|
||||
// refUserPositions.add(refUserPosition);
|
||||
// }
|
||||
//
|
||||
// refUserPositionRDao.saveAll(refUserPositions);
|
||||
// // 岗位名称冗余
|
||||
// model.getUserInfo().setRedPositionNames(positionNames.substring(1, positionNames.length()));
|
||||
// }*/
|
||||
// }
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 部门真实性校验
|
||||
// * @param department
|
||||
// */
|
||||
// private void checkDepartment(Department department) {
|
||||
// if (null == department) {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("部门不存在")
|
||||
// .setErrorSolution("请重新输入部门信息")
|
||||
// .build();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 岗位真实性 校验
|
||||
// * @param position
|
||||
// */
|
||||
// private void checkPosition(Position position) {
|
||||
// if (null == position) {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("岗位不存在")
|
||||
// .setErrorSolution("请重新输入岗位信息")
|
||||
// .build();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 角色真实信息校验
|
||||
// * @param sysRole
|
||||
// */
|
||||
// private void checkSysRole(SysRole sysRole) {
|
||||
// if (null == sysRole) {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("角色不存在")
|
||||
// .setErrorSolution("请重新输入角色信息")
|
||||
// .build();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 组织真实性校验
|
||||
// * @param organize
|
||||
// */
|
||||
// private void checkOrganize(Organize organize) {
|
||||
// if (null == organize) {
|
||||
// throw ImppExceptionBuilder.newInstance()
|
||||
// .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
// .setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
|
||||
// .setErrorDetail("部门的组织不存在")
|
||||
// .setErrorSolution("请先完善组织信息")
|
||||
// .build();
|
||||
// }
|
||||
//
|
||||
// }
|
||||
//}
|
||||
|
Loading…
Reference in New Issue