|
|
@@ -10,20 +10,18 @@ import cn.tr.module.sys.user.dto.SysUserDTO;
|
|
|
import cn.tr.module.sys.user.dto.SysUserEditDTO;
|
|
|
import cn.tr.module.sys.user.dto.SysUserQueryDTO;
|
|
|
import cn.tr.module.sys.user.dto.SysUserRoleDTO;
|
|
|
+import cn.tr.module.sys.user.repository.SysUserRepository;
|
|
|
import cn.tr.module.sys.user.service.ISysUserRoleService;
|
|
|
import cn.tr.module.sys.user.service.ISysUserService;
|
|
|
import cn.tr.module.sys.user.po.SysUserPO;
|
|
|
-import cn.tr.module.sys.user.repository.SysUserRepository;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.Collection;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Set;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
@@ -33,9 +31,7 @@ import java.util.stream.Collectors;
|
|
|
* @Date: 2023年03月31日
|
|
|
*/
|
|
|
@Service
|
|
|
-public class SysUserServiceImpl implements ISysUserService {
|
|
|
- @Autowired
|
|
|
- private SysUserRepository userRepository;
|
|
|
+public class SysUserServiceImpl extends ServiceImpl<SysUserRepository,SysUserPO> implements ISysUserService {
|
|
|
|
|
|
@Autowired
|
|
|
@Lazy
|
|
|
@@ -45,14 +41,14 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
private ISysUserRoleService userRoleService;
|
|
|
@Override
|
|
|
public List<SysUserDTO> selectSysUserList(SysUserQueryDTO query) {
|
|
|
- return SysUserMapper.INSTANCE.toUserDTOList(userRepository.selectList(
|
|
|
+ return SysUserMapper.INSTANCE.toUserDTOList(baseMapper.selectList(
|
|
|
new LambdaQueryWrapper<SysUserPO>()
|
|
|
));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public SysUserDTO selectSysUserById(String id) {
|
|
|
- SysUserDTO result = SysUserMapper.INSTANCE.toUserDTO(userRepository.selectById(id));
|
|
|
+ SysUserDTO result = SysUserMapper.INSTANCE.toUserDTO(baseMapper.selectById(id));
|
|
|
if(result==null){
|
|
|
return result;
|
|
|
}
|
|
|
@@ -76,7 +72,7 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
|
|
|
@Override
|
|
|
public SysUserDTO selectUserByUsername(String username) {
|
|
|
- return SysUserMapper.INSTANCE.toUserDTO(userRepository.selectOne(new LambdaQueryWrapper<SysUserPO>()
|
|
|
+ return SysUserMapper.INSTANCE.toUserDTO(baseMapper.selectOne(new LambdaQueryWrapper<SysUserPO>()
|
|
|
.eq(SysUserPO::getUsername,username)
|
|
|
.last("limit 1")));
|
|
|
}
|
|
|
@@ -84,7 +80,7 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public boolean updatePsw(String username, String oldPsw, String newPsw) {
|
|
|
- SysUserPO user = userRepository.selectOne(new LambdaQueryWrapper<SysUserPO>()
|
|
|
+ SysUserPO user = baseMapper.selectOne(new LambdaQueryWrapper<SysUserPO>()
|
|
|
.eq(SysUserPO::getUsername, username)
|
|
|
.last("limit 1"));
|
|
|
if(user==null){
|
|
|
@@ -96,7 +92,7 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
SysUserPO updateUser = new SysUserPO();
|
|
|
updateUser.setId(user.getId());
|
|
|
updateUser.setPassword(PswUtils.encryptPassword(newPsw));
|
|
|
- return userRepository.updateById(updateUser) != 0;
|
|
|
+ return baseMapper.updateById(updateUser) != 0;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -111,13 +107,13 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
throw new ServiceException(TRExcCode.SYSTEM_ERROR_B0001,String.format("系统中已存在账户{%s},不可重复添加",source.getUsername()));
|
|
|
}
|
|
|
//当前租户下的账号
|
|
|
- SysUserPO delUser = userRepository.selectUserByUsernameIgnoreDel(source.getUsername());
|
|
|
+ SysUserPO delUser = baseMapper.selectUserByUsernameIgnoreDel(source.getUsername());
|
|
|
if(delUser==null){
|
|
|
- result= userRepository.insert(insertUser)!=0;
|
|
|
+ result= baseMapper.insert(insertUser)!=0;
|
|
|
}else {
|
|
|
if(Boolean.TRUE.equals(delUser.getDeleted())){
|
|
|
- userRepository.recoverBatch(Arrays.asList(delUser));
|
|
|
- result= userRepository.updateById(insertUser)!=0;
|
|
|
+ baseMapper.recoverBatch(Arrays.asList(delUser));
|
|
|
+ result= baseMapper.updateById(insertUser)!=0;
|
|
|
}else {
|
|
|
throw new ServiceException(TRExcCode.SYSTEM_ERROR_B0001,String.format("当前租户中已存在账户{%s},不可重复添加",source.getUsername()));
|
|
|
}
|
|
|
@@ -131,14 +127,23 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
|
@Override
|
|
|
@TenantIgnore
|
|
|
public List<SysUserDTO> selectUserByUsernameIgnoreTenant(String username) {
|
|
|
- return SysUserMapper.INSTANCE.toUserDTOList(userRepository.selectList(new LambdaQueryWrapper<SysUserPO>()
|
|
|
+ return SysUserMapper.INSTANCE.toUserDTOList(baseMapper.selectList(new LambdaQueryWrapper<SysUserPO>()
|
|
|
.eq(SysUserPO::getUsername,username)));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public int deleteSysUserByIds(Collection<String> ids) {
|
|
|
- return userRepository.deleteBatchIds(ids);
|
|
|
+ return baseMapper.deleteBatchIds(ids);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void updateLastLoginInfo(String id, Date loginTime, String ip, String cityInfo) {
|
|
|
+ SysUserPO user = this.getById(id);
|
|
|
+ user.setLastLoginDate(loginTime);
|
|
|
+ user.setLastLoginIp(ip);
|
|
|
+ user.setLastLoginAddress(cityInfo);
|
|
|
+ this.updateById(user);
|
|
|
}
|
|
|
|
|
|
|