|
|
|
@ -57,7 +57,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
public static final Logger LOGGER = LoggerFactory.getLogger(SysUserService.class);
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private SysUserRepository sysUserRDao;
|
|
|
|
|
private SysUserRepository userRDao;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private SysUserInfoRepository sysUserInfoRDao;
|
|
|
|
@ -173,10 +173,19 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@ApiOperation(value = "修改账号", notes = "修改账号状态")
|
|
|
|
|
public void updateSysUserStatus(Long id, int status, SessionUser user) {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
|
|
|
|
|
SysUser sysUser = sysUserRDao.getById(id);
|
|
|
|
|
SysUser sysUser = userRDao.getById(id);
|
|
|
|
|
sysUser.setUserStatus(status);
|
|
|
|
|
sysUser.setModifyUser(user.getUserName());
|
|
|
|
|
sysUserRDao.update(sysUser);
|
|
|
|
|
userRDao.update(sysUser);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void doLockSysUserById(Long id) {
|
|
|
|
|
SysUser user = userRDao.getById(id);
|
|
|
|
|
if(Objects.nonNull(user)){
|
|
|
|
|
user.setUserStatus(CommonEnumUtil.USER_STATUS.LOCKING.getValue());
|
|
|
|
|
userRDao.save(user);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -185,14 +194,14 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER DELETE By ids :{} status:{}, SessionUser :{}", ids,status,user);
|
|
|
|
|
|
|
|
|
|
String where = CoreHqlPack.packHqlIds("id", ids);
|
|
|
|
|
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
|
|
|
|
|
List<SysUser> list = userRDao.findByHqlWhere(where);
|
|
|
|
|
if(null != list && list.size() > 0){
|
|
|
|
|
for (SysUser sysUser : list) {
|
|
|
|
|
sysUser.setUserStatus(status);
|
|
|
|
|
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
|
ConvertBean.modelUpdate(sysUser,user);
|
|
|
|
|
}
|
|
|
|
|
sysUserRDao.saveAll(list);
|
|
|
|
|
userRDao.saveAll(list);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -200,19 +209,19 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@ApiOperation(value = "修改账号", notes = "修改账号信息")
|
|
|
|
|
public void updateSysUser(SysUser sysUser) throws Exception{
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER SysUser :{}", sysUser);
|
|
|
|
|
sysUserRDao.save(sysUser);
|
|
|
|
|
userRDao.save(sysUser);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "修改账号", notes = "修改账号登录密码")
|
|
|
|
|
public void updateSysUserPassword(Long userId, String password, String newPwd) throws Exception {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER Override:{} password:{} newPwd:{}", userId,password,newPwd);
|
|
|
|
|
SysUser user = sysUserRDao.getById(userId);
|
|
|
|
|
SysUser user = userRDao.getById(userId);
|
|
|
|
|
if(user != null){
|
|
|
|
|
String pwdMd5 = EncryptTool.hexMD5(password);
|
|
|
|
|
if(pwdMd5.equals(user.getUserLoginPassword())){
|
|
|
|
|
user.setUserLoginPassword(EncryptTool.hexMD5(newPwd));
|
|
|
|
|
sysUserRDao.save(user);
|
|
|
|
|
userRDao.save(user);
|
|
|
|
|
}else {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
@ -234,10 +243,10 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "刷新账号", notes = "刷新账号登录信息")
|
|
|
|
|
public void refreshUserLoginInformation(Long userId) {
|
|
|
|
|
SysUser user = sysUserRDao.getById(userId);
|
|
|
|
|
SysUser user = userRDao.getById(userId);
|
|
|
|
|
user.setUserLoginLastDateTime(TimeTool.getNowTime(true));
|
|
|
|
|
user.setUserLoginNum(user.getUserLoginNum() + 1);
|
|
|
|
|
sysUserRDao.save(user);
|
|
|
|
|
userRDao.save(user);
|
|
|
|
|
|
|
|
|
|
SysUserInfo userInfo = sysUserInfoRDao.getById(user.getUserInfoId());
|
|
|
|
|
userInfo.setUserLoginLastDateTime(TimeTool.getNowTime(true));
|
|
|
|
@ -255,7 +264,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
// 密码加密 输入的密码不等于密码一致时修改密码
|
|
|
|
|
String md5 = EncryptTool.hexMD5(sysUser.getUserLoginPassword());
|
|
|
|
|
sysUser.setUserLoginPassword(md5);
|
|
|
|
|
return sysUserRDao.insert(sysUser);
|
|
|
|
|
return userRDao.insert(sysUser);
|
|
|
|
|
} else {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
@ -312,7 +321,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
// 角色名称冗余
|
|
|
|
|
// sysUser.setRoleNameRdd(String.join(",", roleNameList));
|
|
|
|
|
|
|
|
|
|
sysUserRDao.save(sysUser);
|
|
|
|
|
userRDao.save(sysUser);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -320,9 +329,9 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@ApiOperation(value = "删除账号", notes = "删除账号信息,逻辑删除,账号关系业务物理删除")
|
|
|
|
|
public void deleteSysUserById(Long id) {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER DELETE By id :{}", id);
|
|
|
|
|
SysUser user = sysUserRDao.getById(id);
|
|
|
|
|
SysUser user = userRDao.getById(id);
|
|
|
|
|
user.setIsValid(CommonEnumUtil.IS_VAILD.INVAILD.getValue());
|
|
|
|
|
sysUserRDao.save(user);
|
|
|
|
|
userRDao.save(user);
|
|
|
|
|
|
|
|
|
|
// 删除用户关系(物理删除)
|
|
|
|
|
refUserRoleRDao.deleteByProperty("userId", id); // 删除用户角色关系
|
|
|
|
@ -338,13 +347,13 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
|
|
|
|
|
// 标记用户已删除
|
|
|
|
|
String where = CoreHqlPack.packHqlIds("id", ids);
|
|
|
|
|
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
|
|
|
|
|
List<SysUser> list = userRDao.findByHqlWhere(where);
|
|
|
|
|
if(null != list && list.size() > 0){
|
|
|
|
|
for (SysUser sysUser : list) {
|
|
|
|
|
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sysUserRDao.saveAll(list);
|
|
|
|
|
userRDao.saveAll(list);
|
|
|
|
|
refUserRoleRDao.deleteByPropertyIn("userId",ids);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -353,7 +362,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@ApiOperation(value = "账号查询", notes = "查询所有账号信息")
|
|
|
|
|
public List<SysUser> list() {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER find All");
|
|
|
|
|
return sysUserRDao.findByProperty(
|
|
|
|
|
return userRDao.findByProperty(
|
|
|
|
|
new String[]{"isDeleted","isValid","organizeCode"},
|
|
|
|
|
new Object[]{
|
|
|
|
|
CommonEnumUtil.IS_DEAL.NO.getValue(),
|
|
|
|
@ -434,22 +443,22 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
|
|
|
|
|
//生成hql查询语句
|
|
|
|
|
String hqlPack = CoreHqlPack.packHqlSysUser(user);
|
|
|
|
|
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(hqlPack));
|
|
|
|
|
return new ListPager(sysUserRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager);
|
|
|
|
|
pager = PagerHelper.getPager(pager, userRDao.findByHqlWhereCount(hqlPack));
|
|
|
|
|
return new ListPager(userRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public ListPager<SysUser> querySysUserByPager(SysUser user, List<Long> idList, Pager pager) {
|
|
|
|
|
DdlPackBean packBean = CoreHqlPack.packDdlBeanSysUser(user, idList);
|
|
|
|
|
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(packBean));
|
|
|
|
|
return new ListPager(sysUserRDao.findByHqlWherePage(packBean, pager), pager);
|
|
|
|
|
pager = PagerHelper.getPager(pager, userRDao.findByHqlWhereCount(packBean));
|
|
|
|
|
return new ListPager(userRDao.findByHqlWherePage(packBean, pager), pager);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "账号查询", notes = "根据ID 查询账号信息")
|
|
|
|
|
public SysUser getSysUserById(Long id) {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER get By id :{}", id);
|
|
|
|
|
return sysUserRDao.getById(id);
|
|
|
|
|
return userRDao.getById(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -463,21 +472,21 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
public SysUser getSysUserByLoginName(String loginName) {
|
|
|
|
|
LOGGER.debug("平台用户 SYS_USER find By Login Name :{}", loginName);
|
|
|
|
|
|
|
|
|
|
return sysUserRDao.getByProperty(new String[]{"userLoginName", "isValid"},
|
|
|
|
|
return userRDao.getByProperty(new String[]{"userLoginName", "isValid"},
|
|
|
|
|
new Object[]{loginName, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "账号查询", notes = "根据邮箱查询用户信息")
|
|
|
|
|
public SysUser getSysUserByEmail(String email) {
|
|
|
|
|
return sysUserRDao.getByProperty(new String[]{"userEmail", "isValid"},
|
|
|
|
|
return userRDao.getByProperty(new String[]{"userEmail", "isValid"},
|
|
|
|
|
new Object[]{email, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "账号查询", notes = "根据手机号查询用户信息")
|
|
|
|
|
public SysUser getSysUserByPhone(String phone) {
|
|
|
|
|
return sysUserRDao.getByProperty(new String[]{"userPhone", "isValid"},
|
|
|
|
|
return userRDao.getByProperty(new String[]{"userPhone", "isValid"},
|
|
|
|
|
new Object[]{phone, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -495,10 +504,10 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
StringBuffer sw = new StringBuffer();
|
|
|
|
|
HqlPack.getStringEqualPack(userLoginName,"userLoginName",sw);
|
|
|
|
|
HqlPack.getNumNOEqualPack(id,"id",sw);
|
|
|
|
|
count = sysUserRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
count = userRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
count = sysUserRDao.findByPropertyCount("userLoginName",userLoginName);
|
|
|
|
|
count = userRDao.findByPropertyCount("userLoginName",userLoginName);
|
|
|
|
|
}
|
|
|
|
|
return count <= 0 ;
|
|
|
|
|
}
|
|
|
|
@ -511,10 +520,10 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
StringBuffer sw = new StringBuffer();
|
|
|
|
|
HqlPack.getStringEqualPack(email,"userEmail",sw);
|
|
|
|
|
HqlPack.getNumNOEqualPack(id,"id",sw);
|
|
|
|
|
count = sysUserRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
count = userRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
count = sysUserRDao.findByPropertyCount("userEmail",email);
|
|
|
|
|
count = userRDao.findByPropertyCount("userEmail",email);
|
|
|
|
|
}
|
|
|
|
|
return count <= 0 ;
|
|
|
|
|
}
|
|
|
|
@ -527,10 +536,10 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
StringBuffer sw = new StringBuffer();
|
|
|
|
|
HqlPack.getStringEqualPack(phone,"userPhone",sw);
|
|
|
|
|
HqlPack.getNumNOEqualPack(id,"id",sw);
|
|
|
|
|
count = sysUserRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
count = userRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
count = sysUserRDao.findByPropertyCount("userPhone",phone);
|
|
|
|
|
count = userRDao.findByPropertyCount("userPhone",phone);
|
|
|
|
|
}
|
|
|
|
|
return count <= 0 ;
|
|
|
|
|
}
|
|
|
|
@ -574,7 +583,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
@Override
|
|
|
|
|
@ApiOperation(value = "查询账户数量")
|
|
|
|
|
public long getSysUserCount() {
|
|
|
|
|
return sysUserRDao.listCount();
|
|
|
|
|
return userRDao.listCount();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
@ -669,7 +678,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
public List<SysUser> findSysUserByIds(Long[] ids) {
|
|
|
|
|
DdlPackBean ddlPackBean = new DdlPackBean();
|
|
|
|
|
DdlPreparedPack.getInPackArray(ids, "id", ddlPackBean);
|
|
|
|
|
return sysUserRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
|
return userRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
@ -762,6 +771,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
|
if(CollectionUtils.isNotEmpty(menuList)){
|
|
|
|
|
for (SysMenu menu : menuList) {
|
|
|
|
|
if(CommonConstWords.SYSTEM_MENU_ROOT_ID.equals(menu.getParentId())){
|
|
|
|
|
menu.getChildList().clear();
|
|
|
|
|
list.add(menu);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|