refactor: 项目结构优化
This commit is contained in:
@@ -5,7 +5,7 @@ import cn.hutool.core.io.FileUtil;
|
||||
import cn.hutool.core.lang.Assert;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.youlai.system.pojo.vo.file.FileInfo;
|
||||
import com.youlai.system.pojo.vo.FileInfoVO;
|
||||
import com.youlai.system.service.FileService;
|
||||
import io.minio.*;
|
||||
import io.minio.http.Method;
|
||||
@@ -20,7 +20,6 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
import java.io.InputStream;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
/**
|
||||
* MinIO 文件实现类
|
||||
*
|
||||
@@ -86,7 +85,7 @@ public class MinioServiceImpl implements FileService, InitializingBean {
|
||||
*/
|
||||
@Override
|
||||
@SneakyThrows
|
||||
public FileInfo uploadFile(MultipartFile file) {
|
||||
public FileInfoVO uploadFile(MultipartFile file) {
|
||||
// 存储桶不存在则创建
|
||||
createBucketIfAbsent(bucketName);
|
||||
|
||||
@@ -120,10 +119,10 @@ public class MinioServiceImpl implements FileService, InitializingBean {
|
||||
fileUrl = customDomain + '/' + bucketName + "/" + fileName;
|
||||
}
|
||||
|
||||
FileInfo fileInfo=new FileInfo();
|
||||
fileInfo.setName(fileName);
|
||||
fileInfo.setUrl(fileUrl);
|
||||
return fileInfo;
|
||||
FileInfoVO fileInfoVO = new FileInfoVO();
|
||||
fileInfoVO.setName(fileName);
|
||||
fileInfoVO.setUrl(fileUrl);
|
||||
return fileInfoVO;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -8,13 +8,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.youlai.system.common.constant.SystemConstants;
|
||||
import com.youlai.system.common.enums.StatusEnum;
|
||||
import com.youlai.system.pojo.Option;
|
||||
import com.youlai.system.pojo.vo.Option;
|
||||
import com.youlai.system.converter.DeptConverter;
|
||||
import com.youlai.system.mapper.SysDeptMapper;
|
||||
import com.youlai.system.pojo.entity.SysDept;
|
||||
import com.youlai.system.pojo.form.DeptForm;
|
||||
import com.youlai.system.pojo.query.DeptQuery;
|
||||
import com.youlai.system.pojo.vo.dept.DeptVO;
|
||||
import com.youlai.system.pojo.vo.DeptVO;
|
||||
import com.youlai.system.service.SysDeptService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -10,7 +10,7 @@ import com.youlai.system.mapper.SysDictItemMapper;
|
||||
import com.youlai.system.pojo.entity.SysDictItem;
|
||||
import com.youlai.system.pojo.form.DictItemForm;
|
||||
import com.youlai.system.pojo.query.DictItemPageQuery;
|
||||
import com.youlai.system.pojo.vo.dict.DictItemPageVO;
|
||||
import com.youlai.system.pojo.vo.DictItemPageVO;
|
||||
import com.youlai.system.service.SysDictItemService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -7,14 +7,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.youlai.system.pojo.Option;
|
||||
import com.youlai.system.pojo.vo.Option;
|
||||
import com.youlai.system.converter.DictTypeConverter;
|
||||
import com.youlai.system.mapper.SysDictTypeMapper;
|
||||
import com.youlai.system.pojo.entity.SysDictItem;
|
||||
import com.youlai.system.pojo.entity.SysDictType;
|
||||
import com.youlai.system.pojo.form.DictTypeForm;
|
||||
import com.youlai.system.pojo.query.DictTypePageQuery;
|
||||
import com.youlai.system.pojo.vo.dict.DictTypePageVO;
|
||||
import com.youlai.system.pojo.vo.DictTypePageVO;
|
||||
import com.youlai.system.service.SysDictItemService;
|
||||
import com.youlai.system.service.SysDictTypeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@@ -9,15 +9,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.youlai.system.common.constant.SystemConstants;
|
||||
import com.youlai.system.common.enums.MenuTypeEnum;
|
||||
import com.youlai.system.common.enums.StatusEnum;
|
||||
import com.youlai.system.pojo.Option;
|
||||
import com.youlai.system.pojo.vo.Option;
|
||||
import com.youlai.system.converter.MenuConverter;
|
||||
import com.youlai.system.mapper.SysMenuMapper;
|
||||
import com.youlai.system.pojo.entity.SysMenu;
|
||||
import com.youlai.system.pojo.bo.RouteBO;
|
||||
import com.youlai.system.pojo.query.MenuQuery;
|
||||
import com.youlai.system.pojo.vo.menu.MenuVO;
|
||||
import com.youlai.system.pojo.vo.menu.ResourceVO;
|
||||
import com.youlai.system.pojo.vo.menu.RouteVO;
|
||||
import com.youlai.system.pojo.vo.MenuVO;
|
||||
import com.youlai.system.pojo.vo.ResourceVO;
|
||||
import com.youlai.system.pojo.vo.RouteVO;
|
||||
import com.youlai.system.service.SysMenuService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
|
||||
@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.youlai.system.common.constant.SystemConstants;
|
||||
import com.youlai.system.pojo.Option;
|
||||
import com.youlai.system.pojo.vo.Option;
|
||||
import com.youlai.system.converter.RoleConverter;
|
||||
import com.youlai.system.mapper.SysRoleMapper;
|
||||
import com.youlai.system.pojo.entity.SysRole;
|
||||
@@ -16,11 +16,11 @@ import com.youlai.system.pojo.entity.SysRoleMenu;
|
||||
import com.youlai.system.pojo.entity.SysUserRole;
|
||||
import com.youlai.system.pojo.form.RoleForm;
|
||||
import com.youlai.system.pojo.query.RolePageQuery;
|
||||
import com.youlai.system.pojo.vo.role.RolePageVO;
|
||||
import com.youlai.system.pojo.vo.RolePageVO;
|
||||
import com.youlai.system.service.SysRoleMenuService;
|
||||
import com.youlai.system.service.SysRoleService;
|
||||
import com.youlai.system.service.SysUserRoleService;
|
||||
import com.youlai.system.security.util.SecurityUtils;
|
||||
import com.youlai.system.framework.security.util.SecurityUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -20,21 +20,21 @@ import com.youlai.system.common.enums.GenderEnum;
|
||||
import com.youlai.system.listener.UserImportListener;
|
||||
import com.youlai.system.mapper.SysUserMapper;
|
||||
import com.youlai.system.pojo.bo.UserBO;
|
||||
import com.youlai.system.pojo.dto.UserImportDTO;
|
||||
import com.youlai.system.pojo.vo.UserImportVO;
|
||||
import com.youlai.system.pojo.entity.SysUser;
|
||||
import com.youlai.system.pojo.entity.SysUserRole;
|
||||
import com.youlai.system.pojo.form.UserForm;
|
||||
import com.youlai.system.pojo.bo.UserAuthInfo;
|
||||
import com.youlai.system.pojo.bo.UserFormBO;
|
||||
import com.youlai.system.pojo.query.UserPageQuery;
|
||||
import com.youlai.system.pojo.vo.user.UserExportVO;
|
||||
import com.youlai.system.pojo.vo.user.UserLoginVO;
|
||||
import com.youlai.system.pojo.vo.user.UserVO;
|
||||
import com.youlai.system.pojo.vo.UserExportVO;
|
||||
import com.youlai.system.pojo.vo.UserInfoVO;
|
||||
import com.youlai.system.pojo.vo.UserPageVO;
|
||||
import com.youlai.system.service.SysMenuService;
|
||||
import com.youlai.system.service.SysRoleService;
|
||||
import com.youlai.system.service.SysUserRoleService;
|
||||
import com.youlai.system.service.SysUserService;
|
||||
import com.youlai.system.security.util.SecurityUtils;
|
||||
import com.youlai.system.framework.security.util.SecurityUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
@@ -78,7 +78,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<UserVO> listUserPages(UserPageQuery queryParams) {
|
||||
public IPage<UserPageVO> listUserPages(UserPageQuery queryParams) {
|
||||
|
||||
// 参数构建
|
||||
int pageNum = queryParams.getPageNum();
|
||||
@@ -89,7 +89,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
Page<UserBO> userPoPage = this.baseMapper.listUserPages(page, queryParams);
|
||||
|
||||
// 实体转换
|
||||
Page<UserVO> userVoPage = userConverter.po2Vo(userPoPage);
|
||||
Page<UserPageVO> userVoPage = userConverter.po2Vo(userPoPage);
|
||||
|
||||
return userVoPage;
|
||||
}
|
||||
@@ -232,34 +232,34 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
/**
|
||||
* 导入用户
|
||||
*
|
||||
* @param userImportDTO
|
||||
* @param userImportVO
|
||||
* @return
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public String importUsers(UserImportDTO userImportDTO) throws IOException {
|
||||
public String importUsers(UserImportVO userImportVO) throws IOException {
|
||||
|
||||
Long deptId = userImportDTO.getDeptId();
|
||||
List<Long> roleIds = Arrays.stream(userImportDTO.getRoleIds().split(","))
|
||||
Long deptId = userImportVO.getDeptId();
|
||||
List<Long> roleIds = Arrays.stream(userImportVO.getRoleIds().split(","))
|
||||
.map(roleId -> Convert.toLong(roleId))
|
||||
.collect(Collectors.toList());
|
||||
InputStream inputStream = userImportDTO.getFile().getInputStream();
|
||||
InputStream inputStream = userImportVO.getFile().getInputStream();
|
||||
|
||||
ExcelReaderBuilder excelReaderBuilder = EasyExcel.read(inputStream, UserImportDTO.UserItem.class, userImportListener);
|
||||
ExcelReaderBuilder excelReaderBuilder = EasyExcel.read(inputStream, UserImportVO.UserItem.class, userImportListener);
|
||||
ExcelReaderSheetBuilder sheet = excelReaderBuilder.sheet();
|
||||
List<UserImportDTO.UserItem> list = sheet.doReadSync();
|
||||
List<UserImportVO.UserItem> list = sheet.doReadSync();
|
||||
|
||||
Assert.isTrue(CollectionUtil.isNotEmpty(list), "未检测到任何数据");
|
||||
|
||||
// 有效数据集合
|
||||
List<UserImportDTO.UserItem> validDataList = list.stream()
|
||||
List<UserImportVO.UserItem> validDataList = list.stream()
|
||||
.filter(item -> StrUtil.isNotBlank(item.getUsername()))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
Assert.isTrue(CollectionUtil.isNotEmpty(validDataList), "未检测到有效数据");
|
||||
|
||||
long distinctCount = validDataList.stream()
|
||||
.map(UserImportDTO.UserItem::getUsername)
|
||||
.map(UserImportVO.UserItem::getUsername)
|
||||
.distinct()
|
||||
.count();
|
||||
Assert.isTrue(validDataList.size() == distinctCount, "导入数据中有重复的用户名,请检查!");
|
||||
@@ -268,7 +268,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
|
||||
StringBuilder errMsg = new StringBuilder();
|
||||
for (int i = 0; i < validDataList.size(); i++) {
|
||||
UserImportDTO.UserItem userItem = validDataList.get(i);
|
||||
UserImportVO.UserItem userItem = validDataList.get(i);
|
||||
|
||||
String username = userItem.getUsername();
|
||||
if (StrUtil.isBlank(username)) {
|
||||
@@ -339,7 +339,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public UserLoginVO getUserLoginInfo() {
|
||||
public UserInfoVO getUserLoginInfo() {
|
||||
// 登录用户entity
|
||||
SysUser user = this.getOne(new LambdaQueryWrapper<SysUser>()
|
||||
.eq(SysUser::getUsername, SecurityUtils.getUser().getUsername())
|
||||
@@ -350,17 +350,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
)
|
||||
);
|
||||
// entity->VO
|
||||
UserLoginVO userLoginVO = userConverter.entity2LoginUser(user);
|
||||
UserInfoVO userInfoVO = userConverter.entity2LoginUser(user);
|
||||
|
||||
// 用户角色集合
|
||||
Set<String> roles = SecurityUtils.getRoles();
|
||||
userLoginVO.setRoles(roles);
|
||||
userInfoVO.setRoles(roles);
|
||||
|
||||
// 用户权限集合
|
||||
Set<String> perms = (Set<String>)redisTemplate.opsForValue().get("USER_PERMS:" + user.getId());
|
||||
userLoginVO.setPerms(perms);
|
||||
userInfoVO.setPerms(perms);
|
||||
|
||||
return userLoginVO;
|
||||
return userInfoVO;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user