refactor: 使用 CollUtils 替代部分 Stream 操作,提高代码的可读性,减少代码行数(缺点:方法写起来不如流式代码舒爽)

This commit is contained in:
2025-07-17 23:05:59 +08:00
parent 08f45b5f4d
commit 33d89431cf
25 changed files with 79 additions and 69 deletions

View File

@@ -33,6 +33,7 @@ import org.springframework.util.AntPathMatcher;
import org.springframework.web.bind.annotation.*;
import top.continew.starter.apidoc.autoconfigure.SpringDocExtensionProperties;
import top.continew.starter.auth.satoken.autoconfigure.SaTokenExtensionProperties;
import top.continew.starter.core.util.CollUtils;
import top.continew.starter.extension.crud.annotation.CrudRequestMapping;
import java.lang.reflect.Method;
@@ -103,7 +104,7 @@ public class GlobalAuthenticationCustomizer implements GlobalOpenApiCustomizer {
return;
}
Map<String, SecurityScheme> securitySchemes = components.getSecuritySchemes();
List<String> schemeNames = securitySchemes.values().stream().map(SecurityScheme::getName).toList();
List<String> schemeNames = CollUtils.mapToList(securitySchemes.values(), SecurityScheme::getName);
pathItem.readOperations().forEach(operation -> {
SecurityRequirement securityRequirement = new SecurityRequirement();
schemeNames.forEach(securityRequirement::addList);

View File

@@ -19,13 +19,12 @@ package top.continew.admin.common.config.mybatis;
import cn.hutool.core.convert.Convert;
import top.continew.admin.common.context.UserContext;
import top.continew.admin.common.context.UserContextHolder;
import top.continew.starter.core.util.CollUtils;
import top.continew.starter.extension.datapermission.enums.DataScope;
import top.continew.starter.extension.datapermission.filter.DataPermissionUserDataProvider;
import top.continew.starter.extension.datapermission.model.RoleData;
import top.continew.starter.extension.datapermission.model.UserData;
import java.util.stream.Collectors;
/**
* 数据权限用户数据提供者
*
@@ -45,10 +44,8 @@ public class DefaultDataPermissionUserDataProvider implements DataPermissionUser
UserData userData = new UserData();
userData.setUserId(Convert.toStr(userContext.getId()));
userData.setDeptId(Convert.toStr(userContext.getDeptId()));
userData.setRoles(userContext.getRoles()
.stream()
.map(r -> new RoleData(Convert.toStr(r.getId()), DataScope.valueOf(r.getDataScope().name())))
.collect(Collectors.toSet()));
userData.setRoles(CollUtils.mapToSet(userContext.getRoles(), r -> new RoleData(Convert.toStr(r
.getId()), DataScope.valueOf(r.getDataScope().name()))));
return userData;
}
}

View File

@@ -20,12 +20,12 @@ import cn.hutool.core.collection.CollUtil;
import lombok.Data;
import lombok.NoArgsConstructor;
import top.continew.admin.common.constant.SysConstants;
import top.continew.starter.core.util.CollUtils;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Set;
import java.util.stream.Collectors;
/**
* 用户上下文
@@ -103,7 +103,7 @@ public class UserContext implements Serializable {
public void setRoles(Set<RoleContext> roles) {
this.roles = roles;
this.roleCodes = roles.stream().map(RoleContext::getCode).collect(Collectors.toSet());
this.roleCodes = CollUtils.mapToSet(roles, RoleContext::getCode);
}
/**

View File

@@ -22,13 +22,13 @@ import cn.hutool.crypto.asymmetric.KeyType;
import cn.hutool.extra.spring.SpringUtil;
import top.continew.admin.common.config.RsaProperties;
import top.continew.starter.core.exception.BusinessException;
import top.continew.starter.core.util.CollUtils;
import top.continew.starter.core.util.validation.ValidationUtils;
import top.continew.starter.security.crypto.autoconfigure.CryptoProperties;
import top.continew.starter.security.crypto.encryptor.AesEncryptor;
import top.continew.starter.security.crypto.encryptor.IEncryptor;
import java.util.List;
import java.util.stream.Collectors;
/**
* 加密/解密工具类
@@ -96,12 +96,12 @@ public class SecureUtils {
public static List<String> encryptFieldByAes(List<String> values) {
IEncryptor encryptor = new AesEncryptor();
CryptoProperties properties = SpringUtil.getBean(CryptoProperties.class);
return values.stream().map(value -> {
return CollUtils.mapToList(values, value -> {
try {
return encryptor.encrypt(value, properties.getPassword(), properties.getPublicKey());
} catch (Exception e) {
throw new BusinessException("字段加密异常");
}
}).collect(Collectors.toList());
});
}
}