Commit 6c6babb4c3b76cfaec8a765fb57f3890d23fc09d
1 parent
abf5fae9
reactor:yudao-common 增加 biz 包,将 framework 依赖的 api 统一迁移,方便后续 yudao-framework 独立仓库
Showing
84 changed files
with
309 additions
and
334 deletions
yudao-module-infra/yudao-module-infra-api/src/main/java/cn/iocoder/yudao/module/infra/api/logger/ApiAccessLogApi.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/infra/logger/ApiAccessLogCommonApi.java
| 1 | -package cn.iocoder.yudao.module.infra.api.logger; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | 1 | +package cn.iocoder.yudao.framework.common.biz.infra.logger; |
| 4 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 5 | import jakarta.validation.Valid; | 4 | import jakarta.validation.Valid; |
| 6 | import org.springframework.scheduling.annotation.Async; | 5 | import org.springframework.scheduling.annotation.Async; |
| 7 | 6 | ||
| @@ -10,7 +9,7 @@ import org.springframework.scheduling.annotation.Async; | @@ -10,7 +9,7 @@ import org.springframework.scheduling.annotation.Async; | ||
| 10 | * | 9 | * |
| 11 | * @author 芋道源码 | 10 | * @author 芋道源码 |
| 12 | */ | 11 | */ |
| 13 | -public interface ApiAccessLogApi { | 12 | +public interface ApiAccessLogCommonApi { |
| 14 | 13 | ||
| 15 | /** | 14 | /** |
| 16 | * 创建 API 访问日志 | 15 | * 创建 API 访问日志 |
yudao-module-infra/yudao-module-infra-api/src/main/java/cn/iocoder/yudao/module/infra/api/logger/ApiErrorLogApi.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/infra/logger/ApiErrorLogCommonApi.java
| 1 | -package cn.iocoder.yudao.module.infra.api.logger; | 1 | +package cn.iocoder.yudao.framework.common.biz.infra.logger; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; |
| 4 | 4 | ||
| 5 | import jakarta.validation.Valid; | 5 | import jakarta.validation.Valid; |
| 6 | import org.springframework.scheduling.annotation.Async; | 6 | import org.springframework.scheduling.annotation.Async; |
| @@ -10,7 +10,7 @@ import org.springframework.scheduling.annotation.Async; | @@ -10,7 +10,7 @@ import org.springframework.scheduling.annotation.Async; | ||
| 10 | * | 10 | * |
| 11 | * @author 芋道源码 | 11 | * @author 芋道源码 |
| 12 | */ | 12 | */ |
| 13 | -public interface ApiErrorLogApi { | 13 | +public interface ApiErrorLogCommonApi { |
| 14 | 14 | ||
| 15 | /** | 15 | /** |
| 16 | * 创建 API 错误日志 | 16 | * 创建 API 错误日志 |
yudao-module-infra/yudao-module-infra-api/src/main/java/cn/iocoder/yudao/module/infra/api/logger/dto/ApiAccessLogCreateReqDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/infra/logger/dto/ApiAccessLogCreateReqDTO.java
| 1 | -package cn.iocoder.yudao.module.infra.api.logger.dto; | 1 | +package cn.iocoder.yudao.framework.common.biz.infra.logger.dto; |
| 2 | 2 | ||
| 3 | +import jakarta.validation.constraints.NotNull; | ||
| 3 | import lombok.Data; | 4 | import lombok.Data; |
| 4 | 5 | ||
| 5 | -import jakarta.validation.constraints.NotNull; | ||
| 6 | import java.time.LocalDateTime; | 6 | import java.time.LocalDateTime; |
| 7 | 7 | ||
| 8 | /** | 8 | /** |
yudao-module-infra/yudao-module-infra-api/src/main/java/cn/iocoder/yudao/module/infra/api/logger/dto/ApiErrorLogCreateReqDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/infra/logger/dto/ApiErrorLogCreateReqDTO.java
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/infra/package-info.java
0 → 100644
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/package-info.java
0 → 100644
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/dict/DictDataCommonApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.framework.common.biz.system.dict; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.dict.dto.DictDataRespDTO; | ||
| 4 | + | ||
| 5 | +import java.util.List; | ||
| 6 | + | ||
| 7 | +/** | ||
| 8 | + * 字典数据 API 接口 | ||
| 9 | + * | ||
| 10 | + * @author 芋道源码 | ||
| 11 | + */ | ||
| 12 | +public interface DictDataCommonApi { | ||
| 13 | + | ||
| 14 | + /** | ||
| 15 | + * 获得指定字典类型的字典数据列表 | ||
| 16 | + * | ||
| 17 | + * @param dictType 字典类型 | ||
| 18 | + * @return 字典数据列表 | ||
| 19 | + */ | ||
| 20 | + List<DictDataRespDTO> getDictDataList(String dictType); | ||
| 21 | + | ||
| 22 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dict/dto/DictDataRespDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/dict/dto/DictDataRespDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.dict.dto; | 1 | +package cn.iocoder.yudao.framework.common.biz.system.dict.dto; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 3 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 4 | import lombok.Data; | 4 | import lombok.Data; |
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/logger/OperateLogCommonApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.framework.common.biz.system.logger; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; | ||
| 4 | +import jakarta.validation.Valid; | ||
| 5 | +import org.springframework.scheduling.annotation.Async; | ||
| 6 | + | ||
| 7 | +/** | ||
| 8 | + * 操作日志 API 接口 | ||
| 9 | + * | ||
| 10 | + * @author 芋道源码 | ||
| 11 | + */ | ||
| 12 | +public interface OperateLogCommonApi { | ||
| 13 | + | ||
| 14 | + /** | ||
| 15 | + * 创建操作日志 | ||
| 16 | + * | ||
| 17 | + * @param createReqDTO 请求 | ||
| 18 | + */ | ||
| 19 | + void createOperateLog(@Valid OperateLogCreateReqDTO createReqDTO); | ||
| 20 | + | ||
| 21 | + /** | ||
| 22 | + * 【异步】创建操作日志 | ||
| 23 | + * | ||
| 24 | + * @param createReqDTO 请求 | ||
| 25 | + */ | ||
| 26 | + @Async | ||
| 27 | + default void createOperateLogAsync(OperateLogCreateReqDTO createReqDTO) { | ||
| 28 | + createOperateLog(createReqDTO); | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/logger/dto/OperateLogCreateReqDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/logger/dto/OperateLogCreateReqDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.logger.dto; | 1 | +package cn.iocoder.yudao.framework.common.biz.system.logger.dto; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 4 | import jakarta.validation.constraints.NotEmpty; | 4 | import jakarta.validation.constraints.NotEmpty; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/oauth2/OAuth2TokenApi.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/oauth2/OAuth2TokenCommonApi.java
| 1 | -package cn.iocoder.yudao.module.system.api.oauth2; | 1 | +package cn.iocoder.yudao.framework.common.biz.system.oauth2; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | ||
| 4 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 5 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenRespDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCheckRespDTO; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 5 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenRespDTO; | ||
| 6 | 6 | ||
| 7 | import jakarta.validation.Valid; | 7 | import jakarta.validation.Valid; |
| 8 | 8 | ||
| @@ -11,7 +11,7 @@ import jakarta.validation.Valid; | @@ -11,7 +11,7 @@ import jakarta.validation.Valid; | ||
| 11 | * | 11 | * |
| 12 | * @author 芋道源码 | 12 | * @author 芋道源码 |
| 13 | */ | 13 | */ |
| 14 | -public interface OAuth2TokenApi { | 14 | +public interface OAuth2TokenCommonApi { |
| 15 | 15 | ||
| 16 | /** | 16 | /** |
| 17 | * 创建访问令牌 | 17 | * 创建访问令牌 |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/oauth2/dto/OAuth2AccessTokenCheckRespDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/oauth2/dto/OAuth2AccessTokenCheckRespDTO.java
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/oauth2/dto/OAuth2AccessTokenCreateReqDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/oauth2/dto/OAuth2AccessTokenCreateReqDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.oauth2.dto; | 1 | +package cn.iocoder.yudao.framework.common.biz.system.oauth2.dto; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 4 | import cn.iocoder.yudao.framework.common.validation.InEnum; | 4 | import cn.iocoder.yudao.framework.common.validation.InEnum; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/oauth2/dto/OAuth2AccessTokenRespDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/oauth2/dto/OAuth2AccessTokenRespDTO.java
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/package-info.java
0 → 100644
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/permission/PermissionCommonApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.framework.common.biz.system.permission; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * 权限 API 接口 | ||
| 7 | + * | ||
| 8 | + * @author 芋道源码 | ||
| 9 | + */ | ||
| 10 | +public interface PermissionCommonApi { | ||
| 11 | + | ||
| 12 | + /** | ||
| 13 | + * 判断是否有权限,任一一个即可 | ||
| 14 | + * | ||
| 15 | + * @param userId 用户编号 | ||
| 16 | + * @param permissions 权限 | ||
| 17 | + * @return 是否 | ||
| 18 | + */ | ||
| 19 | + boolean hasAnyPermissions(Long userId, String... permissions); | ||
| 20 | + | ||
| 21 | + /** | ||
| 22 | + * 判断是否有角色,任一一个即可 | ||
| 23 | + * | ||
| 24 | + * @param userId 用户编号 | ||
| 25 | + * @param roles 角色数组 | ||
| 26 | + * @return 是否 | ||
| 27 | + */ | ||
| 28 | + boolean hasAnyRoles(Long userId, String... roles); | ||
| 29 | + | ||
| 30 | + /** | ||
| 31 | + * 获得登陆用户的部门数据权限 | ||
| 32 | + * | ||
| 33 | + * @param userId 用户编号 | ||
| 34 | + * @return 部门数据权限 | ||
| 35 | + */ | ||
| 36 | + DeptDataPermissionRespDTO getDeptDataPermission(Long userId); | ||
| 37 | + | ||
| 38 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/permission/dto/DeptDataPermissionRespDTO.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/permission/dto/DeptDataPermissionRespDTO.java
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/tenant/TenantApi.java renamed to yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/biz/system/tenant/TenantCommonApi.java
| 1 | -package cn.iocoder.yudao.module.system.api.tenant; | 1 | +package cn.iocoder.yudao.framework.common.biz.system.tenant; |
| 2 | 2 | ||
| 3 | import java.util.List; | 3 | import java.util.List; |
| 4 | 4 | ||
| @@ -7,7 +7,7 @@ import java.util.List; | @@ -7,7 +7,7 @@ import java.util.List; | ||
| 7 | * | 7 | * |
| 8 | * @author 芋道源码 | 8 | * @author 芋道源码 |
| 9 | */ | 9 | */ |
| 10 | -public interface TenantApi { | 10 | +public interface TenantCommonApi { |
| 11 | 11 | ||
| 12 | /** | 12 | /** |
| 13 | * 获得所有租户 | 13 | * 获得所有租户 |
yudao-framework/yudao-spring-boot-starter-biz-data-permission/pom.xml
| @@ -34,13 +34,6 @@ | @@ -34,13 +34,6 @@ | ||
| 34 | <artifactId>yudao-spring-boot-starter-mybatis</artifactId> | 34 | <artifactId>yudao-spring-boot-starter-mybatis</artifactId> |
| 35 | </dependency> | 35 | </dependency> |
| 36 | 36 | ||
| 37 | - <!-- 业务组件 --> | ||
| 38 | - <dependency> | ||
| 39 | - <groupId>cn.iocoder.boot</groupId> | ||
| 40 | - <artifactId>yudao-module-system-api</artifactId> <!-- 需要使用它,进行数据权限的获取 --> | ||
| 41 | - <version>${revision}</version> | ||
| 42 | - </dependency> | ||
| 43 | - | ||
| 44 | <!-- Test 测试相关 --> | 37 | <!-- Test 测试相关 --> |
| 45 | <dependency> | 38 | <dependency> |
| 46 | <groupId>cn.iocoder.boot</groupId> | 39 | <groupId>cn.iocoder.boot</groupId> |
yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission/config/YudaoDeptDataPermissionAutoConfiguration.java
| 1 | package cn.iocoder.yudao.framework.datapermission.config; | 1 | package cn.iocoder.yudao.framework.datapermission.config; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.datapermission.core.rule.dept.DeptDataPermissionRule; | 4 | import cn.iocoder.yudao.framework.datapermission.core.rule.dept.DeptDataPermissionRule; |
| 4 | import cn.iocoder.yudao.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer; | 5 | import cn.iocoder.yudao.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer; |
| 5 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 6 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 6 | -import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 7 | import org.springframework.boot.autoconfigure.AutoConfiguration; | 7 | import org.springframework.boot.autoconfigure.AutoConfiguration; |
| 8 | import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; | 8 | import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; |
| 9 | import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; | 9 | import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; |
| @@ -18,11 +18,11 @@ import java.util.List; | @@ -18,11 +18,11 @@ import java.util.List; | ||
| 18 | */ | 18 | */ |
| 19 | @AutoConfiguration | 19 | @AutoConfiguration |
| 20 | @ConditionalOnClass(LoginUser.class) | 20 | @ConditionalOnClass(LoginUser.class) |
| 21 | -@ConditionalOnBean(value = {PermissionApi.class, DeptDataPermissionRuleCustomizer.class}) | 21 | +@ConditionalOnBean(value = {PermissionCommonApi.class, DeptDataPermissionRuleCustomizer.class}) |
| 22 | public class YudaoDeptDataPermissionAutoConfiguration { | 22 | public class YudaoDeptDataPermissionAutoConfiguration { |
| 23 | 23 | ||
| 24 | @Bean | 24 | @Bean |
| 25 | - public DeptDataPermissionRule deptDataPermissionRule(PermissionApi permissionApi, | 25 | + public DeptDataPermissionRule deptDataPermissionRule(PermissionCommonApi permissionApi, |
| 26 | List<DeptDataPermissionRuleCustomizer> customizers) { | 26 | List<DeptDataPermissionRuleCustomizer> customizers) { |
| 27 | // 创建 DeptDataPermissionRule 对象 | 27 | // 创建 DeptDataPermissionRule 对象 |
| 28 | DeptDataPermissionRule rule = new DeptDataPermissionRule(permissionApi); | 28 | DeptDataPermissionRule rule = new DeptDataPermissionRule(permissionApi); |
yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java
| @@ -3,6 +3,8 @@ package cn.iocoder.yudao.framework.datapermission.core.rule.dept; | @@ -3,6 +3,8 @@ package cn.iocoder.yudao.framework.datapermission.core.rule.dept; | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.ObjectUtil; | 4 | import cn.hutool.core.util.ObjectUtil; |
| 5 | import cn.hutool.core.util.StrUtil; | 5 | import cn.hutool.core.util.StrUtil; |
| 6 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; | ||
| 7 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; | ||
| 6 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 8 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 7 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 9 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 8 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | 10 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| @@ -11,12 +13,13 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | @@ -11,12 +13,13 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | ||
| 11 | import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils; | 13 | import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils; |
| 12 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 14 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 13 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 15 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 14 | -import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 15 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | ||
| 16 | import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; | 16 | import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; |
| 17 | import lombok.AllArgsConstructor; | 17 | import lombok.AllArgsConstructor; |
| 18 | import lombok.extern.slf4j.Slf4j; | 18 | import lombok.extern.slf4j.Slf4j; |
| 19 | -import net.sf.jsqlparser.expression.*; | 19 | +import net.sf.jsqlparser.expression.Alias; |
| 20 | +import net.sf.jsqlparser.expression.Expression; | ||
| 21 | +import net.sf.jsqlparser.expression.LongValue; | ||
| 22 | +import net.sf.jsqlparser.expression.NullValue; | ||
| 20 | import net.sf.jsqlparser.expression.operators.conditional.OrExpression; | 23 | import net.sf.jsqlparser.expression.operators.conditional.OrExpression; |
| 21 | import net.sf.jsqlparser.expression.operators.relational.EqualsTo; | 24 | import net.sf.jsqlparser.expression.operators.relational.EqualsTo; |
| 22 | import net.sf.jsqlparser.expression.operators.relational.ExpressionList; | 25 | import net.sf.jsqlparser.expression.operators.relational.ExpressionList; |
| @@ -59,7 +62,7 @@ public class DeptDataPermissionRule implements DataPermissionRule { | @@ -59,7 +62,7 @@ public class DeptDataPermissionRule implements DataPermissionRule { | ||
| 59 | 62 | ||
| 60 | static final Expression EXPRESSION_NULL = new NullValue(); | 63 | static final Expression EXPRESSION_NULL = new NullValue(); |
| 61 | 64 | ||
| 62 | - private final PermissionApi permissionApi; | 65 | + private final PermissionCommonApi permissionApi; |
| 63 | 66 | ||
| 64 | /** | 67 | /** |
| 65 | * 基于部门的表字段配置 | 68 | * 基于部门的表字段配置 |
yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/test/java/cn/iocoder/yudao/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java
| @@ -2,13 +2,13 @@ package cn.iocoder.yudao.framework.datapermission.core.rule.dept; | @@ -2,13 +2,13 @@ package cn.iocoder.yudao.framework.datapermission.core.rule.dept; | ||
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.ReflectUtil; | 4 | import cn.hutool.core.util.ReflectUtil; |
| 5 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; | ||
| 6 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; | ||
| 5 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 7 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 6 | import cn.iocoder.yudao.framework.common.util.collection.SetUtils; | 8 | import cn.iocoder.yudao.framework.common.util.collection.SetUtils; |
| 7 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 9 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 8 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 10 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 9 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; | 11 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; |
| 10 | -import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 11 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | ||
| 12 | import net.sf.jsqlparser.expression.Alias; | 12 | import net.sf.jsqlparser.expression.Alias; |
| 13 | import net.sf.jsqlparser.expression.Expression; | 13 | import net.sf.jsqlparser.expression.Expression; |
| 14 | import org.junit.jupiter.api.BeforeEach; | 14 | import org.junit.jupiter.api.BeforeEach; |
| @@ -39,7 +39,7 @@ class DeptDataPermissionRuleTest extends BaseMockitoUnitTest { | @@ -39,7 +39,7 @@ class DeptDataPermissionRuleTest extends BaseMockitoUnitTest { | ||
| 39 | private DeptDataPermissionRule rule; | 39 | private DeptDataPermissionRule rule; |
| 40 | 40 | ||
| 41 | @Mock | 41 | @Mock |
| 42 | - private PermissionApi permissionApi; | 42 | + private PermissionCommonApi permissionApi; |
| 43 | 43 | ||
| 44 | @BeforeEach | 44 | @BeforeEach |
| 45 | @SuppressWarnings("unchecked") | 45 | @SuppressWarnings("unchecked") |
yudao-framework/yudao-spring-boot-starter-biz-tenant/src/main/java/cn/iocoder/yudao/framework/tenant/config/YudaoTenantAutoConfiguration.java
| 1 | package cn.iocoder.yudao.framework.tenant.config; | 1 | package cn.iocoder.yudao.framework.tenant.config; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.tenant.TenantCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.WebFilterOrderEnum; | 4 | import cn.iocoder.yudao.framework.common.enums.WebFilterOrderEnum; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils; | 5 | import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils; |
| 5 | import cn.iocoder.yudao.framework.redis.config.YudaoCacheProperties; | 6 | import cn.iocoder.yudao.framework.redis.config.YudaoCacheProperties; |
| @@ -19,7 +20,6 @@ import cn.iocoder.yudao.framework.tenant.core.web.TenantContextWebFilter; | @@ -19,7 +20,6 @@ import cn.iocoder.yudao.framework.tenant.core.web.TenantContextWebFilter; | ||
| 19 | import cn.iocoder.yudao.framework.tenant.core.web.TenantVisitContextInterceptor; | 20 | import cn.iocoder.yudao.framework.tenant.core.web.TenantVisitContextInterceptor; |
| 20 | import cn.iocoder.yudao.framework.web.config.WebProperties; | 21 | import cn.iocoder.yudao.framework.web.config.WebProperties; |
| 21 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; | 22 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; |
| 22 | -import cn.iocoder.yudao.module.system.api.tenant.TenantApi; | ||
| 23 | import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; | 23 | import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; |
| 24 | import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; | 24 | import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; |
| 25 | import jakarta.annotation.Resource; | 25 | import jakarta.annotation.Resource; |
| @@ -58,7 +58,7 @@ public class YudaoTenantAutoConfiguration { | @@ -58,7 +58,7 @@ public class YudaoTenantAutoConfiguration { | ||
| 58 | private ApplicationContext applicationContext; | 58 | private ApplicationContext applicationContext; |
| 59 | 59 | ||
| 60 | @Bean | 60 | @Bean |
| 61 | - public TenantFrameworkService tenantFrameworkService(TenantApi tenantApi) { | 61 | + public TenantFrameworkService tenantFrameworkService(TenantCommonApi tenantApi) { |
| 62 | return new TenantFrameworkServiceImpl(tenantApi); | 62 | return new TenantFrameworkServiceImpl(tenantApi); |
| 63 | } | 63 | } |
| 64 | 64 |
yudao-framework/yudao-spring-boot-starter-biz-tenant/src/main/java/cn/iocoder/yudao/framework/tenant/core/service/TenantFrameworkServiceImpl.java
| 1 | package cn.iocoder.yudao.framework.tenant.core.service; | 1 | package cn.iocoder.yudao.framework.tenant.core.service; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.tenant.TenantCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.common.exception.ServiceException; | 4 | import cn.iocoder.yudao.framework.common.exception.ServiceException; |
| 4 | import cn.iocoder.yudao.framework.common.util.cache.CacheUtils; | 5 | import cn.iocoder.yudao.framework.common.util.cache.CacheUtils; |
| 5 | -import cn.iocoder.yudao.module.system.api.tenant.TenantApi; | ||
| 6 | import com.google.common.cache.CacheLoader; | 6 | import com.google.common.cache.CacheLoader; |
| 7 | import com.google.common.cache.LoadingCache; | 7 | import com.google.common.cache.LoadingCache; |
| 8 | import lombok.RequiredArgsConstructor; | 8 | import lombok.RequiredArgsConstructor; |
| @@ -21,7 +21,7 @@ public class TenantFrameworkServiceImpl implements TenantFrameworkService { | @@ -21,7 +21,7 @@ public class TenantFrameworkServiceImpl implements TenantFrameworkService { | ||
| 21 | 21 | ||
| 22 | private static final ServiceException SERVICE_EXCEPTION_NULL = new ServiceException(); | 22 | private static final ServiceException SERVICE_EXCEPTION_NULL = new ServiceException(); |
| 23 | 23 | ||
| 24 | - private final TenantApi tenantApi; | 24 | + private final TenantCommonApi tenantApi; |
| 25 | 25 | ||
| 26 | /** | 26 | /** |
| 27 | * 针对 {@link #getTenantIds()} 的缓存 | 27 | * 针对 {@link #getTenantIds()} 的缓存 |
yudao-framework/yudao-spring-boot-starter-excel/pom.xml
| @@ -27,13 +27,6 @@ | @@ -27,13 +27,6 @@ | ||
| 27 | <artifactId>spring-boot-starter</artifactId> | 27 | <artifactId>spring-boot-starter</artifactId> |
| 28 | </dependency> | 28 | </dependency> |
| 29 | 29 | ||
| 30 | - <!-- 业务组件 --> | ||
| 31 | - <dependency> | ||
| 32 | - <groupId>cn.iocoder.boot</groupId> | ||
| 33 | - <artifactId>yudao-module-system-api</artifactId> <!-- 需要使用它,进行 Dict 的查询 --> | ||
| 34 | - <version>${revision}</version> | ||
| 35 | - </dependency> | ||
| 36 | - | ||
| 37 | <!-- Web 相关 --> | 30 | <!-- Web 相关 --> |
| 38 | <dependency> | 31 | <dependency> |
| 39 | <groupId>org.springframework</groupId> | 32 | <groupId>org.springframework</groupId> |
yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/dict/config/YudaoDictAutoConfiguration.java
| 1 | package cn.iocoder.yudao.framework.dict.config; | 1 | package cn.iocoder.yudao.framework.dict.config; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.dict.DictDataCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.dict.core.DictFrameworkUtils; | 4 | import cn.iocoder.yudao.framework.dict.core.DictFrameworkUtils; |
| 4 | -import cn.iocoder.yudao.module.system.api.dict.DictDataApi; | ||
| 5 | import org.springframework.boot.autoconfigure.AutoConfiguration; | 5 | import org.springframework.boot.autoconfigure.AutoConfiguration; |
| 6 | import org.springframework.context.annotation.Bean; | 6 | import org.springframework.context.annotation.Bean; |
| 7 | 7 | ||
| @@ -10,7 +10,7 @@ public class YudaoDictAutoConfiguration { | @@ -10,7 +10,7 @@ public class YudaoDictAutoConfiguration { | ||
| 10 | 10 | ||
| 11 | @Bean | 11 | @Bean |
| 12 | @SuppressWarnings("InstantiationOfUtilityClass") | 12 | @SuppressWarnings("InstantiationOfUtilityClass") |
| 13 | - public DictFrameworkUtils dictUtils(DictDataApi dictDataApi) { | 13 | + public DictFrameworkUtils dictUtils(DictDataCommonApi dictDataApi) { |
| 14 | DictFrameworkUtils.init(dictDataApi); | 14 | DictFrameworkUtils.init(dictDataApi); |
| 15 | return new DictFrameworkUtils(); | 15 | return new DictFrameworkUtils(); |
| 16 | } | 16 | } |
yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/dict/core/DictFrameworkUtils.java
| 1 | package cn.iocoder.yudao.framework.dict.core; | 1 | package cn.iocoder.yudao.framework.dict.core; |
| 2 | 2 | ||
| 3 | -import cn.hutool.core.util.ObjectUtil; | ||
| 4 | -import cn.iocoder.yudao.framework.common.core.KeyValue; | 3 | +import cn.hutool.core.collection.CollUtil; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.dict.DictDataCommonApi; | ||
| 5 | import cn.iocoder.yudao.framework.common.util.cache.CacheUtils; | 5 | import cn.iocoder.yudao.framework.common.util.cache.CacheUtils; |
| 6 | -import cn.iocoder.yudao.module.system.api.dict.DictDataApi; | ||
| 7 | -import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | 6 | +import cn.iocoder.yudao.framework.common.biz.system.dict.dto.DictDataRespDTO; |
| 8 | import com.google.common.cache.CacheLoader; | 7 | import com.google.common.cache.CacheLoader; |
| 9 | import com.google.common.cache.LoadingCache; | 8 | import com.google.common.cache.LoadingCache; |
| 10 | import lombok.SneakyThrows; | 9 | import lombok.SneakyThrows; |
| @@ -12,6 +11,9 @@ import lombok.extern.slf4j.Slf4j; | @@ -12,6 +11,9 @@ import lombok.extern.slf4j.Slf4j; | ||
| 12 | 11 | ||
| 13 | import java.time.Duration; | 12 | import java.time.Duration; |
| 14 | import java.util.List; | 13 | import java.util.List; |
| 14 | +import java.util.Objects; | ||
| 15 | + | ||
| 16 | +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; | ||
| 15 | 17 | ||
| 16 | /** | 18 | /** |
| 17 | * 字典工具类 | 19 | * 字典工具类 |
| @@ -21,76 +23,57 @@ import java.util.List; | @@ -21,76 +23,57 @@ import java.util.List; | ||
| 21 | @Slf4j | 23 | @Slf4j |
| 22 | public class DictFrameworkUtils { | 24 | public class DictFrameworkUtils { |
| 23 | 25 | ||
| 24 | - private static DictDataApi dictDataApi; | ||
| 25 | - | ||
| 26 | - private static final DictDataRespDTO DICT_DATA_NULL = new DictDataRespDTO(); | ||
| 27 | - | ||
| 28 | - // TODO @puhui999:GET_DICT_DATA_CACHE、GET_DICT_DATA_LIST_CACHE、PARSE_DICT_DATA_CACHE 这 3 个缓存是有点重叠,可以思考下,有没可能减少 1 个。微信讨论好私聊,再具体改哈 | ||
| 29 | - /** | ||
| 30 | - * 针对 {@link #getDictDataLabel(String, String)} 的缓存 | ||
| 31 | - */ | ||
| 32 | - private static final LoadingCache<KeyValue<String, String>, DictDataRespDTO> GET_DICT_DATA_CACHE = CacheUtils.buildAsyncReloadingCache( | ||
| 33 | - Duration.ofMinutes(1L), // 过期时间 1 分钟 | ||
| 34 | - new CacheLoader<KeyValue<String, String>, DictDataRespDTO>() { | ||
| 35 | - | ||
| 36 | - @Override | ||
| 37 | - public DictDataRespDTO load(KeyValue<String, String> key) { | ||
| 38 | - return ObjectUtil.defaultIfNull(dictDataApi.getDictData(key.getKey(), key.getValue()), DICT_DATA_NULL); | ||
| 39 | - } | ||
| 40 | - | ||
| 41 | - }); | ||
| 42 | - | ||
| 43 | - /** | ||
| 44 | - * 针对 {@link #getDictDataLabelList(String)} 的缓存 | ||
| 45 | - */ | ||
| 46 | - private static final LoadingCache<String, List<String>> GET_DICT_DATA_LIST_CACHE = CacheUtils.buildAsyncReloadingCache( | ||
| 47 | - Duration.ofMinutes(1L), // 过期时间 1 分钟 | ||
| 48 | - new CacheLoader<String, List<String>>() { | ||
| 49 | - | ||
| 50 | - @Override | ||
| 51 | - public List<String> load(String dictType) { | ||
| 52 | - return dictDataApi.getDictDataLabelList(dictType); | ||
| 53 | - } | ||
| 54 | - | ||
| 55 | - }); | 26 | + private static DictDataCommonApi dictDataApi; |
| 56 | 27 | ||
| 57 | /** | 28 | /** |
| 58 | - * 针对 {@link #parseDictDataValue(String, String)} 的缓存 | 29 | + * 针对 dictType 的字段数据缓存 |
| 59 | */ | 30 | */ |
| 60 | - private static final LoadingCache<KeyValue<String, String>, DictDataRespDTO> PARSE_DICT_DATA_CACHE = CacheUtils.buildAsyncReloadingCache( | 31 | + private static final LoadingCache<String, List<DictDataRespDTO>> GET_DICT_DATA_CACHE = CacheUtils.buildAsyncReloadingCache( |
| 61 | Duration.ofMinutes(1L), // 过期时间 1 分钟 | 32 | Duration.ofMinutes(1L), // 过期时间 1 分钟 |
| 62 | - new CacheLoader<KeyValue<String, String>, DictDataRespDTO>() { | 33 | + new CacheLoader<String, List<DictDataRespDTO>>() { |
| 63 | 34 | ||
| 64 | @Override | 35 | @Override |
| 65 | - public DictDataRespDTO load(KeyValue<String, String> key) { | ||
| 66 | - return ObjectUtil.defaultIfNull(dictDataApi.parseDictData(key.getKey(), key.getValue()), DICT_DATA_NULL); | 36 | + public List<DictDataRespDTO> load(String dictType) { |
| 37 | + return dictDataApi.getDictDataList(dictType); | ||
| 67 | } | 38 | } |
| 68 | 39 | ||
| 69 | }); | 40 | }); |
| 70 | 41 | ||
| 71 | - public static void init(DictDataApi dictDataApi) { | 42 | + public static void init(DictDataCommonApi dictDataApi) { |
| 72 | DictFrameworkUtils.dictDataApi = dictDataApi; | 43 | DictFrameworkUtils.dictDataApi = dictDataApi; |
| 73 | log.info("[init][初始化 DictFrameworkUtils 成功]"); | 44 | log.info("[init][初始化 DictFrameworkUtils 成功]"); |
| 74 | } | 45 | } |
| 75 | 46 | ||
| 47 | + public static void clearCache() { | ||
| 48 | + GET_DICT_DATA_CACHE.invalidateAll(); | ||
| 49 | + } | ||
| 50 | + | ||
| 76 | @SneakyThrows | 51 | @SneakyThrows |
| 77 | - public static String getDictDataLabel(String dictType, Integer value) { | ||
| 78 | - return GET_DICT_DATA_CACHE.get(new KeyValue<>(dictType, String.valueOf(value))).getLabel(); | 52 | + public static String parseDictDataLabel(String dictType, Integer value) { |
| 53 | + if (value == null) { | ||
| 54 | + return null; | ||
| 55 | + } | ||
| 56 | + return parseDictDataLabel(dictType, String.valueOf(value)); | ||
| 79 | } | 57 | } |
| 80 | 58 | ||
| 81 | @SneakyThrows | 59 | @SneakyThrows |
| 82 | - public static String getDictDataLabel(String dictType, String value) { | ||
| 83 | - return GET_DICT_DATA_CACHE.get(new KeyValue<>(dictType, value)).getLabel(); | 60 | + public static String parseDictDataLabel(String dictType, String value) { |
| 61 | + List<DictDataRespDTO> dictDatas = GET_DICT_DATA_CACHE.get(dictType); | ||
| 62 | + DictDataRespDTO dictData = CollUtil.findOne(dictDatas, data -> Objects.equals(data.getValue(), value)); | ||
| 63 | + return dictData != null ? dictData.getLabel(): null; | ||
| 84 | } | 64 | } |
| 85 | 65 | ||
| 86 | @SneakyThrows | 66 | @SneakyThrows |
| 87 | public static List<String> getDictDataLabelList(String dictType) { | 67 | public static List<String> getDictDataLabelList(String dictType) { |
| 88 | - return GET_DICT_DATA_LIST_CACHE.get(dictType); | 68 | + List<DictDataRespDTO> dictDatas = GET_DICT_DATA_CACHE.get(dictType); |
| 69 | + return convertList(dictDatas, DictDataRespDTO::getLabel); | ||
| 89 | } | 70 | } |
| 90 | 71 | ||
| 91 | @SneakyThrows | 72 | @SneakyThrows |
| 92 | public static String parseDictDataValue(String dictType, String label) { | 73 | public static String parseDictDataValue(String dictType, String label) { |
| 93 | - return PARSE_DICT_DATA_CACHE.get(new KeyValue<>(dictType, label)).getValue(); | 74 | + List<DictDataRespDTO> dictDatas = GET_DICT_DATA_CACHE.get(dictType); |
| 75 | + DictDataRespDTO dictData = CollUtil.findOne(dictDatas, data -> Objects.equals(data.getLabel(), label)); | ||
| 76 | + return dictData!= null ? dictData.getValue(): null; | ||
| 94 | } | 77 | } |
| 95 | 78 | ||
| 96 | } | 79 | } |
yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/convert/DictConvert.java
| @@ -56,7 +56,7 @@ public class DictConvert implements Converter<Object> { | @@ -56,7 +56,7 @@ public class DictConvert implements Converter<Object> { | ||
| 56 | // 使用字典格式化 | 56 | // 使用字典格式化 |
| 57 | String type = getType(contentProperty); | 57 | String type = getType(contentProperty); |
| 58 | String value = String.valueOf(object); | 58 | String value = String.valueOf(object); |
| 59 | - String label = DictFrameworkUtils.getDictDataLabel(type, value); | 59 | + String label = DictFrameworkUtils.parseDictDataLabel(type, value); |
| 60 | if (label == null) { | 60 | if (label == null) { |
| 61 | log.error("[convertToExcelData][type({}) 转换不了 label({})]", type, value); | 61 | log.error("[convertToExcelData][type({}) 转换不了 label({})]", type, value); |
| 62 | return new WriteCellData<>(""); | 62 | return new WriteCellData<>(""); |
yudao-framework/yudao-spring-boot-starter-excel/src/test/java/cn/iocoder/yudao/framework/dict/core/util/DictFrameworkUtilsTest.java
| 1 | package cn.iocoder.yudao.framework.dict.core.util; | 1 | package cn.iocoder.yudao.framework.dict.core.util; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.dict.DictDataCommonApi; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.dict.dto.DictDataRespDTO; | ||
| 4 | import cn.iocoder.yudao.framework.dict.core.DictFrameworkUtils; | 5 | import cn.iocoder.yudao.framework.dict.core.DictFrameworkUtils; |
| 5 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; | 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; |
| 6 | -import cn.iocoder.yudao.module.system.api.dict.DictDataApi; | ||
| 7 | -import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | ||
| 8 | import org.junit.jupiter.api.BeforeEach; | 7 | import org.junit.jupiter.api.BeforeEach; |
| 9 | import org.junit.jupiter.api.Test; | 8 | import org.junit.jupiter.api.Test; |
| 10 | import org.mockito.Mock; | 9 | import org.mockito.Mock; |
| 11 | 10 | ||
| 11 | +import java.util.List; | ||
| 12 | + | ||
| 12 | import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo; | 13 | import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo; |
| 13 | import static org.junit.jupiter.api.Assertions.assertEquals; | 14 | import static org.junit.jupiter.api.Assertions.assertEquals; |
| 15 | +import static org.mockito.ArgumentMatchers.eq; | ||
| 14 | import static org.mockito.Mockito.when; | 16 | import static org.mockito.Mockito.when; |
| 15 | 17 | ||
| 16 | /** | 18 | /** |
| @@ -19,33 +21,40 @@ import static org.mockito.Mockito.when; | @@ -19,33 +21,40 @@ import static org.mockito.Mockito.when; | ||
| 19 | public class DictFrameworkUtilsTest extends BaseMockitoUnitTest { | 21 | public class DictFrameworkUtilsTest extends BaseMockitoUnitTest { |
| 20 | 22 | ||
| 21 | @Mock | 23 | @Mock |
| 22 | - private DictDataApi dictDataApi; | 24 | + private DictDataCommonApi dictDataApi; |
| 23 | 25 | ||
| 24 | @BeforeEach | 26 | @BeforeEach |
| 25 | public void setUp() { | 27 | public void setUp() { |
| 26 | DictFrameworkUtils.init(dictDataApi); | 28 | DictFrameworkUtils.init(dictDataApi); |
| 29 | + DictFrameworkUtils.clearCache(); | ||
| 27 | } | 30 | } |
| 28 | 31 | ||
| 29 | @Test | 32 | @Test |
| 30 | - public void testGetDictDataLabel() { | 33 | + public void testParseDictDataLabel() { |
| 31 | // mock 数据 | 34 | // mock 数据 |
| 32 | - DictDataRespDTO dataRespDTO = randomPojo(DictDataRespDTO.class, o -> o.setStatus(CommonStatusEnum.ENABLE.getStatus())); | 35 | + List<DictDataRespDTO> dictDatas = List.of( |
| 36 | + randomPojo(DictDataRespDTO.class, o -> o.setDictType("animal").setValue("cat").setLabel("猫")), | ||
| 37 | + randomPojo(DictDataRespDTO.class, o -> o.setDictType("animal").setValue("dog").setLabel("狗")) | ||
| 38 | + ); | ||
| 33 | // mock 方法 | 39 | // mock 方法 |
| 34 | - when(dictDataApi.getDictData(dataRespDTO.getDictType(), dataRespDTO.getValue())).thenReturn(dataRespDTO); | 40 | + when(dictDataApi.getDictDataList(eq("animal"))).thenReturn(dictDatas); |
| 35 | 41 | ||
| 36 | // 断言返回值 | 42 | // 断言返回值 |
| 37 | - assertEquals(dataRespDTO.getLabel(), DictFrameworkUtils.getDictDataLabel(dataRespDTO.getDictType(), dataRespDTO.getValue())); | 43 | + assertEquals("狗", DictFrameworkUtils.parseDictDataLabel("animal", "dog")); |
| 38 | } | 44 | } |
| 39 | 45 | ||
| 40 | @Test | 46 | @Test |
| 41 | public void testParseDictDataValue() { | 47 | public void testParseDictDataValue() { |
| 42 | // mock 数据 | 48 | // mock 数据 |
| 43 | - DictDataRespDTO resp = randomPojo(DictDataRespDTO.class, o -> o.setStatus(CommonStatusEnum.ENABLE.getStatus())); | 49 | + List<DictDataRespDTO> dictDatas = List.of( |
| 50 | + randomPojo(DictDataRespDTO.class, o -> o.setDictType("animal").setValue("cat").setLabel("猫")), | ||
| 51 | + randomPojo(DictDataRespDTO.class, o -> o.setDictType("animal").setValue("dog").setLabel("狗")) | ||
| 52 | + ); | ||
| 44 | // mock 方法 | 53 | // mock 方法 |
| 45 | - when(dictDataApi.parseDictData(resp.getDictType(), resp.getLabel())).thenReturn(resp); | 54 | + when(dictDataApi.getDictDataList(eq("animal"))).thenReturn(dictDatas); |
| 46 | 55 | ||
| 47 | // 断言返回值 | 56 | // 断言返回值 |
| 48 | - assertEquals(resp.getValue(), DictFrameworkUtils.parseDictDataValue(resp.getDictType(), resp.getLabel())); | 57 | + assertEquals("dog", DictFrameworkUtils.parseDictDataValue("animal", "狗")); |
| 49 | } | 58 | } |
| 50 | 59 | ||
| 51 | } | 60 | } |
yudao-framework/yudao-spring-boot-starter-security/pom.xml
| @@ -59,13 +59,6 @@ | @@ -59,13 +59,6 @@ | ||
| 59 | <groupId>io.github.mouzt</groupId> | 59 | <groupId>io.github.mouzt</groupId> |
| 60 | <artifactId>bizlog-sdk</artifactId> | 60 | <artifactId>bizlog-sdk</artifactId> |
| 61 | </dependency> | 61 | </dependency> |
| 62 | - | ||
| 63 | - <!-- 业务组件 --> | ||
| 64 | - <dependency> | ||
| 65 | - <groupId>cn.iocoder.boot</groupId> | ||
| 66 | - <artifactId>yudao-module-system-api</artifactId> <!-- 需要使用它,进行 Token 的校验 --> | ||
| 67 | - <version>${revision}</version> | ||
| 68 | - </dependency> | ||
| 69 | </dependencies> | 62 | </dependencies> |
| 70 | 63 | ||
| 71 | </project> | 64 | </project> |
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/operatelog/core/service/LogRecordServiceImpl.java
| 1 | package cn.iocoder.yudao.framework.operatelog.core.service; | 1 | package cn.iocoder.yudao.framework.operatelog.core.service; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.logger.OperateLogCommonApi; | ||
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; | ||
| 3 | import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; | 5 | import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; |
| 4 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | 6 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; |
| 5 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 7 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 6 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 8 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 7 | -import cn.iocoder.yudao.module.system.api.logger.OperateLogApi; | ||
| 8 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | ||
| 9 | import com.mzt.logapi.beans.LogRecord; | 9 | import com.mzt.logapi.beans.LogRecord; |
| 10 | import com.mzt.logapi.service.ILogRecordService; | 10 | import com.mzt.logapi.service.ILogRecordService; |
| 11 | import jakarta.annotation.Resource; | 11 | import jakarta.annotation.Resource; |
| @@ -17,7 +17,7 @@ import java.util.List; | @@ -17,7 +17,7 @@ import java.util.List; | ||
| 17 | /** | 17 | /** |
| 18 | * 操作日志 ILogRecordService 实现类 | 18 | * 操作日志 ILogRecordService 实现类 |
| 19 | * | 19 | * |
| 20 | - * 基于 {@link OperateLogApi} 实现,记录操作日志 | 20 | + * 基于 {@link OperateLogCommonApi} 实现,记录操作日志 |
| 21 | * | 21 | * |
| 22 | * @author HUIHUI | 22 | * @author HUIHUI |
| 23 | */ | 23 | */ |
| @@ -25,7 +25,7 @@ import java.util.List; | @@ -25,7 +25,7 @@ import java.util.List; | ||
| 25 | public class LogRecordServiceImpl implements ILogRecordService { | 25 | public class LogRecordServiceImpl implements ILogRecordService { |
| 26 | 26 | ||
| 27 | @Resource | 27 | @Resource |
| 28 | - private OperateLogApi operateLogApi; | 28 | + private OperateLogCommonApi operateLogApi; |
| 29 | 29 | ||
| 30 | @Override | 30 | @Override |
| 31 | public void record(LogRecord logRecord) { | 31 | public void record(LogRecord logRecord) { |
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoSecurityAutoConfiguration.java
| 1 | package cn.iocoder.yudao.framework.security.config; | 1 | package cn.iocoder.yudao.framework.security.config; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; | ||
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.security.core.context.TransmittableThreadLocalSecurityContextHolderStrategy; | 5 | import cn.iocoder.yudao.framework.security.core.context.TransmittableThreadLocalSecurityContextHolderStrategy; |
| 4 | import cn.iocoder.yudao.framework.security.core.filter.TokenAuthenticationFilter; | 6 | import cn.iocoder.yudao.framework.security.core.filter.TokenAuthenticationFilter; |
| 5 | import cn.iocoder.yudao.framework.security.core.handler.AccessDeniedHandlerImpl; | 7 | import cn.iocoder.yudao.framework.security.core.handler.AccessDeniedHandlerImpl; |
| @@ -7,8 +9,6 @@ import cn.iocoder.yudao.framework.security.core.handler.AuthenticationEntryPoint | @@ -7,8 +9,6 @@ import cn.iocoder.yudao.framework.security.core.handler.AuthenticationEntryPoint | ||
| 7 | import cn.iocoder.yudao.framework.security.core.service.SecurityFrameworkService; | 9 | import cn.iocoder.yudao.framework.security.core.service.SecurityFrameworkService; |
| 8 | import cn.iocoder.yudao.framework.security.core.service.SecurityFrameworkServiceImpl; | 10 | import cn.iocoder.yudao.framework.security.core.service.SecurityFrameworkServiceImpl; |
| 9 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; | 11 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; |
| 10 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | ||
| 11 | -import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 12 | import jakarta.annotation.Resource; | 12 | import jakarta.annotation.Resource; |
| 13 | import org.springframework.beans.factory.config.MethodInvokingFactoryBean; | 13 | import org.springframework.beans.factory.config.MethodInvokingFactoryBean; |
| 14 | import org.springframework.boot.autoconfigure.AutoConfiguration; | 14 | import org.springframework.boot.autoconfigure.AutoConfiguration; |
| @@ -69,12 +69,12 @@ public class YudaoSecurityAutoConfiguration { | @@ -69,12 +69,12 @@ public class YudaoSecurityAutoConfiguration { | ||
| 69 | */ | 69 | */ |
| 70 | @Bean | 70 | @Bean |
| 71 | public TokenAuthenticationFilter authenticationTokenFilter(GlobalExceptionHandler globalExceptionHandler, | 71 | public TokenAuthenticationFilter authenticationTokenFilter(GlobalExceptionHandler globalExceptionHandler, |
| 72 | - OAuth2TokenApi oauth2TokenApi) { | 72 | + OAuth2TokenCommonApi oauth2TokenApi) { |
| 73 | return new TokenAuthenticationFilter(securityProperties, globalExceptionHandler, oauth2TokenApi); | 73 | return new TokenAuthenticationFilter(securityProperties, globalExceptionHandler, oauth2TokenApi); |
| 74 | } | 74 | } |
| 75 | 75 | ||
| 76 | @Bean("ss") // 使用 Spring Security 的缩写,方便使用 | 76 | @Bean("ss") // 使用 Spring Security 的缩写,方便使用 |
| 77 | - public SecurityFrameworkService securityFrameworkService(PermissionApi permissionApi) { | 77 | + public SecurityFrameworkService securityFrameworkService(PermissionCommonApi permissionApi) { |
| 78 | return new SecurityFrameworkServiceImpl(permissionApi); | 78 | return new SecurityFrameworkServiceImpl(permissionApi); |
| 79 | } | 79 | } |
| 80 | 80 |
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/filter/TokenAuthenticationFilter.java
| @@ -2,6 +2,8 @@ package cn.iocoder.yudao.framework.security.core.filter; | @@ -2,6 +2,8 @@ package cn.iocoder.yudao.framework.security.core.filter; | ||
| 2 | 2 | ||
| 3 | import cn.hutool.core.util.ObjectUtil; | 3 | import cn.hutool.core.util.ObjectUtil; |
| 4 | import cn.hutool.core.util.StrUtil; | 4 | import cn.hutool.core.util.StrUtil; |
| 5 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; | ||
| 6 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | ||
| 5 | import cn.iocoder.yudao.framework.common.exception.ServiceException; | 7 | import cn.iocoder.yudao.framework.common.exception.ServiceException; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 8 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 7 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | 9 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; |
| @@ -10,16 +12,14 @@ import cn.iocoder.yudao.framework.security.core.LoginUser; | @@ -10,16 +12,14 @@ import cn.iocoder.yudao.framework.security.core.LoginUser; | ||
| 10 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 12 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 11 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; | 13 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; |
| 12 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | 14 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; |
| 13 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | ||
| 14 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | ||
| 15 | -import lombok.RequiredArgsConstructor; | ||
| 16 | -import org.springframework.security.access.AccessDeniedException; | ||
| 17 | -import org.springframework.web.filter.OncePerRequestFilter; | ||
| 18 | - | ||
| 19 | import jakarta.servlet.FilterChain; | 15 | import jakarta.servlet.FilterChain; |
| 20 | import jakarta.servlet.ServletException; | 16 | import jakarta.servlet.ServletException; |
| 21 | import jakarta.servlet.http.HttpServletRequest; | 17 | import jakarta.servlet.http.HttpServletRequest; |
| 22 | import jakarta.servlet.http.HttpServletResponse; | 18 | import jakarta.servlet.http.HttpServletResponse; |
| 19 | +import lombok.RequiredArgsConstructor; | ||
| 20 | +import org.springframework.security.access.AccessDeniedException; | ||
| 21 | +import org.springframework.web.filter.OncePerRequestFilter; | ||
| 22 | + | ||
| 23 | import java.io.IOException; | 23 | import java.io.IOException; |
| 24 | 24 | ||
| 25 | /** | 25 | /** |
| @@ -35,7 +35,7 @@ public class TokenAuthenticationFilter extends OncePerRequestFilter { | @@ -35,7 +35,7 @@ public class TokenAuthenticationFilter extends OncePerRequestFilter { | ||
| 35 | 35 | ||
| 36 | private final GlobalExceptionHandler globalExceptionHandler; | 36 | private final GlobalExceptionHandler globalExceptionHandler; |
| 37 | 37 | ||
| 38 | - private final OAuth2TokenApi oauth2TokenApi; | 38 | + private final OAuth2TokenCommonApi oauth2TokenApi; |
| 39 | 39 | ||
| 40 | @Override | 40 | @Override |
| 41 | @SuppressWarnings("NullableProblems") | 41 | @SuppressWarnings("NullableProblems") |
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/service/SecurityFrameworkServiceImpl.java
| 1 | package cn.iocoder.yudao.framework.security.core.service; | 1 | package cn.iocoder.yudao.framework.security.core.service; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; | ||
| 4 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 5 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 5 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 6 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 6 | -import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 7 | import lombok.AllArgsConstructor; | 7 | import lombok.AllArgsConstructor; |
| 8 | 8 | ||
| 9 | import java.util.Arrays; | 9 | import java.util.Arrays; |
| @@ -19,7 +19,7 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti | @@ -19,7 +19,7 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti | ||
| 19 | @AllArgsConstructor | 19 | @AllArgsConstructor |
| 20 | public class SecurityFrameworkServiceImpl implements SecurityFrameworkService { | 20 | public class SecurityFrameworkServiceImpl implements SecurityFrameworkService { |
| 21 | 21 | ||
| 22 | - private final PermissionApi permissionApi; | 22 | + private final PermissionCommonApi permissionApi; |
| 23 | 23 | ||
| 24 | @Override | 24 | @Override |
| 25 | public boolean hasPermission(String permission) { | 25 | public boolean hasPermission(String permission) { |
yudao-framework/yudao-spring-boot-starter-web/pom.xml
| @@ -53,18 +53,6 @@ | @@ -53,18 +53,6 @@ | ||
| 53 | <scope>provided</scope> <!-- 设置为 provided,主要是 GlobalExceptionHandler 使用 --> | 53 | <scope>provided</scope> <!-- 设置为 provided,主要是 GlobalExceptionHandler 使用 --> |
| 54 | </dependency> | 54 | </dependency> |
| 55 | 55 | ||
| 56 | - <!-- 业务组件 --> | ||
| 57 | - <dependency> | ||
| 58 | - <groupId>cn.iocoder.boot</groupId> | ||
| 59 | - <artifactId>yudao-module-infra-api</artifactId> <!-- 需要使用它,进行操作日志的记录 --> | ||
| 60 | - <version>${revision}</version> | ||
| 61 | - </dependency> | ||
| 62 | - <dependency> | ||
| 63 | - <groupId>cn.iocoder.boot</groupId> | ||
| 64 | - <artifactId>yudao-module-system-api</artifactId> <!-- 需要使用它,进行错误码的记录 --> | ||
| 65 | - <version>${revision}</version> | ||
| 66 | - </dependency> | ||
| 67 | - | ||
| 68 | <!-- xss --> | 56 | <!-- xss --> |
| 69 | <dependency> | 57 | <dependency> |
| 70 | <groupId>org.jsoup</groupId> | 58 | <groupId>org.jsoup</groupId> |
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/config/YudaoApiLogAutoConfiguration.java
| @@ -2,10 +2,10 @@ package cn.iocoder.yudao.framework.apilog.config; | @@ -2,10 +2,10 @@ package cn.iocoder.yudao.framework.apilog.config; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.apilog.core.filter.ApiAccessLogFilter; | 3 | import cn.iocoder.yudao.framework.apilog.core.filter.ApiAccessLogFilter; |
| 4 | import cn.iocoder.yudao.framework.apilog.core.interceptor.ApiAccessLogInterceptor; | 4 | import cn.iocoder.yudao.framework.apilog.core.interceptor.ApiAccessLogInterceptor; |
| 5 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiAccessLogCommonApi; | ||
| 5 | import cn.iocoder.yudao.framework.common.enums.WebFilterOrderEnum; | 6 | import cn.iocoder.yudao.framework.common.enums.WebFilterOrderEnum; |
| 6 | import cn.iocoder.yudao.framework.web.config.WebProperties; | 7 | import cn.iocoder.yudao.framework.web.config.WebProperties; |
| 7 | import cn.iocoder.yudao.framework.web.config.YudaoWebAutoConfiguration; | 8 | import cn.iocoder.yudao.framework.web.config.YudaoWebAutoConfiguration; |
| 8 | -import cn.iocoder.yudao.module.infra.api.logger.ApiAccessLogApi; | ||
| 9 | import jakarta.servlet.Filter; | 9 | import jakarta.servlet.Filter; |
| 10 | import org.springframework.beans.factory.annotation.Value; | 10 | import org.springframework.beans.factory.annotation.Value; |
| 11 | import org.springframework.boot.autoconfigure.AutoConfiguration; | 11 | import org.springframework.boot.autoconfigure.AutoConfiguration; |
| @@ -25,7 +25,7 @@ public class YudaoApiLogAutoConfiguration implements WebMvcConfigurer { | @@ -25,7 +25,7 @@ public class YudaoApiLogAutoConfiguration implements WebMvcConfigurer { | ||
| 25 | @ConditionalOnProperty(prefix = "yudao.access-log", value = "enable", matchIfMissing = true) // 允许使用 yudao.access-log.enable=false 禁用访问日志 | 25 | @ConditionalOnProperty(prefix = "yudao.access-log", value = "enable", matchIfMissing = true) // 允许使用 yudao.access-log.enable=false 禁用访问日志 |
| 26 | public FilterRegistrationBean<ApiAccessLogFilter> apiAccessLogFilter(WebProperties webProperties, | 26 | public FilterRegistrationBean<ApiAccessLogFilter> apiAccessLogFilter(WebProperties webProperties, |
| 27 | @Value("${spring.application.name}") String applicationName, | 27 | @Value("${spring.application.name}") String applicationName, |
| 28 | - ApiAccessLogApi apiAccessLogApi) { | 28 | + ApiAccessLogCommonApi apiAccessLogApi) { |
| 29 | ApiAccessLogFilter filter = new ApiAccessLogFilter(webProperties, applicationName, apiAccessLogApi); | 29 | ApiAccessLogFilter filter = new ApiAccessLogFilter(webProperties, applicationName, apiAccessLogApi); |
| 30 | return createFilterBean(filter, WebFilterOrderEnum.API_ACCESS_LOG_FILTER); | 30 | return createFilterBean(filter, WebFilterOrderEnum.API_ACCESS_LOG_FILTER); |
| 31 | } | 31 | } |
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/filter/ApiAccessLogFilter.java
| @@ -9,6 +9,8 @@ import cn.hutool.core.util.BooleanUtil; | @@ -9,6 +9,8 @@ import cn.hutool.core.util.BooleanUtil; | ||
| 9 | import cn.hutool.core.util.StrUtil; | 9 | import cn.hutool.core.util.StrUtil; |
| 10 | import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; | 10 | import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; |
| 11 | import cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum; | 11 | import cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum; |
| 12 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiAccessLogCommonApi; | ||
| 13 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 12 | import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants; | 14 | import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants; |
| 13 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 15 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 14 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | 16 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| @@ -17,8 +19,6 @@ import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | @@ -17,8 +19,6 @@ import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | ||
| 17 | import cn.iocoder.yudao.framework.web.config.WebProperties; | 19 | import cn.iocoder.yudao.framework.web.config.WebProperties; |
| 18 | import cn.iocoder.yudao.framework.web.core.filter.ApiRequestFilter; | 20 | import cn.iocoder.yudao.framework.web.core.filter.ApiRequestFilter; |
| 19 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | 21 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; |
| 20 | -import cn.iocoder.yudao.module.infra.api.logger.ApiAccessLogApi; | ||
| 21 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 22 | import com.fasterxml.jackson.databind.JsonNode; | 22 | import com.fasterxml.jackson.databind.JsonNode; |
| 23 | import io.swagger.v3.oas.annotations.Operation; | 23 | import io.swagger.v3.oas.annotations.Operation; |
| 24 | import io.swagger.v3.oas.annotations.tags.Tag; | 24 | import io.swagger.v3.oas.annotations.tags.Tag; |
| @@ -53,9 +53,9 @@ public class ApiAccessLogFilter extends ApiRequestFilter { | @@ -53,9 +53,9 @@ public class ApiAccessLogFilter extends ApiRequestFilter { | ||
| 53 | 53 | ||
| 54 | private final String applicationName; | 54 | private final String applicationName; |
| 55 | 55 | ||
| 56 | - private final ApiAccessLogApi apiAccessLogApi; | 56 | + private final ApiAccessLogCommonApi apiAccessLogApi; |
| 57 | 57 | ||
| 58 | - public ApiAccessLogFilter(WebProperties webProperties, String applicationName, ApiAccessLogApi apiAccessLogApi) { | 58 | + public ApiAccessLogFilter(WebProperties webProperties, String applicationName, ApiAccessLogCommonApi apiAccessLogApi) { |
| 59 | super(webProperties); | 59 | super(webProperties); |
| 60 | this.applicationName = applicationName; | 60 | this.applicationName = applicationName; |
| 61 | this.apiAccessLogApi = apiAccessLogApi; | 61 | this.apiAccessLogApi = apiAccessLogApi; |
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/config/YudaoWebAutoConfiguration.java
| @@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.web.core.filter.DemoFilter; | @@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.web.core.filter.DemoFilter; | ||
| 6 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; | 6 | import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler; |
| 7 | import cn.iocoder.yudao.framework.web.core.handler.GlobalResponseBodyHandler; | 7 | import cn.iocoder.yudao.framework.web.core.handler.GlobalResponseBodyHandler; |
| 8 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | 8 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; |
| 9 | -import cn.iocoder.yudao.module.infra.api.logger.ApiErrorLogApi; | 9 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiErrorLogCommonApi; |
| 10 | import jakarta.annotation.Resource; | 10 | import jakarta.annotation.Resource; |
| 11 | import jakarta.servlet.Filter; | 11 | import jakarta.servlet.Filter; |
| 12 | import org.springframework.beans.factory.annotation.Value; | 12 | import org.springframework.beans.factory.annotation.Value; |
| @@ -59,7 +59,7 @@ public class YudaoWebAutoConfiguration implements WebMvcConfigurer { | @@ -59,7 +59,7 @@ public class YudaoWebAutoConfiguration implements WebMvcConfigurer { | ||
| 59 | 59 | ||
| 60 | @Bean | 60 | @Bean |
| 61 | @SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection") | 61 | @SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection") |
| 62 | - public GlobalExceptionHandler globalExceptionHandler(ApiErrorLogApi apiErrorLogApi) { | 62 | + public GlobalExceptionHandler globalExceptionHandler(ApiErrorLogCommonApi apiErrorLogApi) { |
| 63 | return new GlobalExceptionHandler(applicationName, apiErrorLogApi); | 63 | return new GlobalExceptionHandler(applicationName, apiErrorLogApi); |
| 64 | } | 64 | } |
| 65 | 65 |
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/handler/GlobalExceptionHandler.java
| @@ -14,8 +14,8 @@ import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | @@ -14,8 +14,8 @@ import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | ||
| 14 | import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; | 14 | import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; |
| 15 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | 15 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; |
| 16 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | 16 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; |
| 17 | -import cn.iocoder.yudao.module.infra.api.logger.ApiErrorLogApi; | ||
| 18 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 17 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiErrorLogCommonApi; |
| 18 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; | ||
| 19 | import com.fasterxml.jackson.databind.exc.InvalidFormatException; | 19 | import com.fasterxml.jackson.databind.exc.InvalidFormatException; |
| 20 | import jakarta.servlet.http.HttpServletRequest; | 20 | import jakarta.servlet.http.HttpServletRequest; |
| 21 | import jakarta.validation.ConstraintViolation; | 21 | import jakarta.validation.ConstraintViolation; |
| @@ -63,7 +63,7 @@ public class GlobalExceptionHandler { | @@ -63,7 +63,7 @@ public class GlobalExceptionHandler { | ||
| 63 | @SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection") | 63 | @SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection") |
| 64 | private final String applicationName; | 64 | private final String applicationName; |
| 65 | 65 | ||
| 66 | - private final ApiErrorLogApi apiErrorLogApi; | 66 | + private final ApiErrorLogCommonApi apiErrorLogApi; |
| 67 | 67 | ||
| 68 | /** | 68 | /** |
| 69 | * 处理所有异常,主要是提供给 Filter 使用 | 69 | * 处理所有异常,主要是提供给 Filter 使用 |
yudao-module-crm/yudao-module-crm-biz/pom.xml
| @@ -24,6 +24,11 @@ | @@ -24,6 +24,11 @@ | ||
| 24 | </dependency> | 24 | </dependency> |
| 25 | <dependency> | 25 | <dependency> |
| 26 | <groupId>cn.iocoder.boot</groupId> | 26 | <groupId>cn.iocoder.boot</groupId> |
| 27 | + <artifactId>yudao-module-infra-api</artifactId> | ||
| 28 | + <version>${revision}</version> | ||
| 29 | + </dependency> | ||
| 30 | + <dependency> | ||
| 31 | + <groupId>cn.iocoder.boot</groupId> | ||
| 27 | <artifactId>yudao-module-crm-api</artifactId> | 32 | <artifactId>yudao-module-crm-api</artifactId> |
| 28 | <version>${revision}</version> | 33 | <version>${revision}</version> |
| 29 | </dependency> | 34 | </dependency> |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmCustomerIndustryParseFunction.java
| @@ -34,7 +34,7 @@ public class CrmCustomerIndustryParseFunction implements IParseFunction { | @@ -34,7 +34,7 @@ public class CrmCustomerIndustryParseFunction implements IParseFunction { | ||
| 34 | if (StrUtil.isEmptyIfStr(value)) { | 34 | if (StrUtil.isEmptyIfStr(value)) { |
| 35 | return ""; | 35 | return ""; |
| 36 | } | 36 | } |
| 37 | - return DictFrameworkUtils.getDictDataLabel(CRM_CUSTOMER_INDUSTRY, value.toString()); | 37 | + return DictFrameworkUtils.parseDictDataLabel(CRM_CUSTOMER_INDUSTRY, value.toString()); |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | } | 40 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmCustomerLevelParseFunction.java
| @@ -34,7 +34,7 @@ public class CrmCustomerLevelParseFunction implements IParseFunction { | @@ -34,7 +34,7 @@ public class CrmCustomerLevelParseFunction implements IParseFunction { | ||
| 34 | if (StrUtil.isEmptyIfStr(value)) { | 34 | if (StrUtil.isEmptyIfStr(value)) { |
| 35 | return ""; | 35 | return ""; |
| 36 | } | 36 | } |
| 37 | - return DictFrameworkUtils.getDictDataLabel(CRM_CUSTOMER_LEVEL, value.toString()); | 37 | + return DictFrameworkUtils.parseDictDataLabel(CRM_CUSTOMER_LEVEL, value.toString()); |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | } | 40 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmCustomerSourceParseFunction.java
| @@ -34,7 +34,7 @@ public class CrmCustomerSourceParseFunction implements IParseFunction { | @@ -34,7 +34,7 @@ public class CrmCustomerSourceParseFunction implements IParseFunction { | ||
| 34 | if (StrUtil.isEmptyIfStr(value)) { | 34 | if (StrUtil.isEmptyIfStr(value)) { |
| 35 | return ""; | 35 | return ""; |
| 36 | } | 36 | } |
| 37 | - return DictFrameworkUtils.getDictDataLabel(CRM_CUSTOMER_SOURCE, value.toString()); | 37 | + return DictFrameworkUtils.parseDictDataLabel(CRM_CUSTOMER_SOURCE, value.toString()); |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | } | 40 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmProductStatusParseFunction.java
| @@ -33,7 +33,7 @@ public class CrmProductStatusParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class CrmProductStatusParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.CRM_PRODUCT_STATUS, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.CRM_PRODUCT_STATUS, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmProductUnitParseFunction.java
| @@ -33,7 +33,7 @@ public class CrmProductUnitParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class CrmProductUnitParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.CRM_PRODUCT_UNIT, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.CRM_PRODUCT_UNIT, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/CrmReceivableReturnTypeParseFunction.java
| @@ -34,7 +34,7 @@ public class CrmReceivableReturnTypeParseFunction implements IParseFunction { | @@ -34,7 +34,7 @@ public class CrmReceivableReturnTypeParseFunction implements IParseFunction { | ||
| 34 | if (StrUtil.isEmptyIfStr(value)) { | 34 | if (StrUtil.isEmptyIfStr(value)) { |
| 35 | return ""; | 35 | return ""; |
| 36 | } | 36 | } |
| 37 | - return DictFrameworkUtils.getDictDataLabel(CRM_RECEIVABLE_RETURN_TYPE, value.toString()); | 37 | + return DictFrameworkUtils.parseDictDataLabel(CRM_RECEIVABLE_RETURN_TYPE, value.toString()); |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | } | 40 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/SysBooleanParseFunction.java
| @@ -33,7 +33,7 @@ public class SysBooleanParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class SysBooleanParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.BOOLEAN_STRING, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.BOOLEAN_STRING, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/operatelog/core/SysSexParseFunction.java
| @@ -33,7 +33,7 @@ public class SysSexParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class SysSexParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.USER_SEX, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.USER_SEX, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/api/logger/ApiAccessLogApiImpl.java
| 1 | package cn.iocoder.yudao.module.infra.api.logger; | 1 | package cn.iocoder.yudao.module.infra.api.logger; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiAccessLogCommonApi; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 4 | import cn.iocoder.yudao.module.infra.service.logger.ApiAccessLogService; | 5 | import cn.iocoder.yudao.module.infra.service.logger.ApiAccessLogService; |
| 6 | +import jakarta.annotation.Resource; | ||
| 5 | import org.springframework.stereotype.Service; | 7 | import org.springframework.stereotype.Service; |
| 6 | import org.springframework.validation.annotation.Validated; | 8 | import org.springframework.validation.annotation.Validated; |
| 7 | 9 | ||
| 8 | -import jakarta.annotation.Resource; | ||
| 9 | - | ||
| 10 | /** | 10 | /** |
| 11 | * API 访问日志的 API 实现类 | 11 | * API 访问日志的 API 实现类 |
| 12 | * | 12 | * |
| @@ -14,7 +14,7 @@ import jakarta.annotation.Resource; | @@ -14,7 +14,7 @@ import jakarta.annotation.Resource; | ||
| 14 | */ | 14 | */ |
| 15 | @Service | 15 | @Service |
| 16 | @Validated | 16 | @Validated |
| 17 | -public class ApiAccessLogApiImpl implements ApiAccessLogApi { | 17 | +public class ApiAccessLogApiImpl implements ApiAccessLogCommonApi { |
| 18 | 18 | ||
| 19 | @Resource | 19 | @Resource |
| 20 | private ApiAccessLogService apiAccessLogService; | 20 | private ApiAccessLogService apiAccessLogService; |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/api/logger/ApiErrorLogApiImpl.java
| 1 | package cn.iocoder.yudao.module.infra.api.logger; | 1 | package cn.iocoder.yudao.module.infra.api.logger; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.ApiErrorLogCommonApi; |
| 4 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; | ||
| 4 | import cn.iocoder.yudao.module.infra.service.logger.ApiErrorLogService; | 5 | import cn.iocoder.yudao.module.infra.service.logger.ApiErrorLogService; |
| 5 | import org.springframework.stereotype.Service; | 6 | import org.springframework.stereotype.Service; |
| 6 | import org.springframework.validation.annotation.Validated; | 7 | import org.springframework.validation.annotation.Validated; |
| @@ -14,7 +15,7 @@ import jakarta.annotation.Resource; | @@ -14,7 +15,7 @@ import jakarta.annotation.Resource; | ||
| 14 | */ | 15 | */ |
| 15 | @Service | 16 | @Service |
| 16 | @Validated | 17 | @Validated |
| 17 | -public class ApiErrorLogApiImpl implements ApiErrorLogApi { | 18 | +public class ApiErrorLogApiImpl implements ApiErrorLogCommonApi { |
| 18 | 19 | ||
| 19 | @Resource | 20 | @Resource |
| 20 | private ApiErrorLogService apiErrorLogService; | 21 | private ApiErrorLogService apiErrorLogService; |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogService.java
| 1 | package cn.iocoder.yudao.module.infra.service.logger; | 1 | package cn.iocoder.yudao.module.infra.service.logger; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 5 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; | 5 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; |
| 6 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; | 6 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; |
| 7 | 7 |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogServiceImpl.java
| 1 | package cn.iocoder.yudao.module.infra.service.logger; | 1 | package cn.iocoder.yudao.module.infra.service.logger; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 5 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 5 | import cn.iocoder.yudao.framework.common.util.string.StrUtils; | 6 | import cn.iocoder.yudao.framework.common.util.string.StrUtils; |
| 6 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; | 7 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; |
| 7 | import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils; | 8 | import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils; |
| 8 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 9 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; | 9 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; |
| 10 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; | 10 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; |
| 11 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiAccessLogMapper; | 11 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiAccessLogMapper; |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogService.java
| 1 | package cn.iocoder.yudao.module.infra.service.logger; | 1 | package cn.iocoder.yudao.module.infra.service.logger; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 4 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; |
| 5 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; | 5 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; |
| 6 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; | 6 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; |
| 7 | 7 |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImpl.java
| @@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | @@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 5 | import cn.iocoder.yudao.framework.common.util.string.StrUtils; | 5 | import cn.iocoder.yudao.framework.common.util.string.StrUtils; |
| 6 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; | 6 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; |
| 7 | import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils; | 7 | import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils; |
| 8 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 8 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; |
| 9 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; | 9 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; |
| 10 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; | 10 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; |
| 11 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper; | 11 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper; |
yudao-module-infra/yudao-module-infra-biz/src/test/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogServiceImplTest.java
| 1 | package cn.iocoder.yudao.module.infra.service.logger; | 1 | package cn.iocoder.yudao.module.infra.service.logger; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 4 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 4 | import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants; | 5 | import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 7 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 7 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO; | ||
| 8 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; | 8 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO; |
| 9 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; | 9 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; |
| 10 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiAccessLogMapper; | 10 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiAccessLogMapper; |
| 11 | +import jakarta.annotation.Resource; | ||
| 11 | import org.junit.jupiter.api.Test; | 12 | import org.junit.jupiter.api.Test; |
| 12 | import org.springframework.context.annotation.Import; | 13 | import org.springframework.context.annotation.Import; |
| 13 | 14 | ||
| 14 | -import jakarta.annotation.Resource; | ||
| 15 | import java.time.Duration; | 15 | import java.time.Duration; |
| 16 | import java.util.List; | 16 | import java.util.List; |
| 17 | 17 |
yudao-module-infra/yudao-module-infra-biz/src/test/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImplTest.java
| @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.infra.service.logger; | @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.infra.service.logger; | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | 3 | import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; |
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 5 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 6 | -import cn.iocoder.yudao.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO; | 6 | +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; |
| 7 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; | 7 | import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; |
| 8 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; | 8 | import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; |
| 9 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper; | 9 | import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper; |
yudao-module-iot/yudao-module-iot-biz/pom.xml
| @@ -21,6 +21,11 @@ | @@ -21,6 +21,11 @@ | ||
| 21 | <dependencies> | 21 | <dependencies> |
| 22 | <dependency> | 22 | <dependency> |
| 23 | <groupId>cn.iocoder.boot</groupId> | 23 | <groupId>cn.iocoder.boot</groupId> |
| 24 | + <artifactId>yudao-module-system-api</artifactId> | ||
| 25 | + <version>${revision}</version> | ||
| 26 | + </dependency> | ||
| 27 | + <dependency> | ||
| 28 | + <groupId>cn.iocoder.boot</groupId> | ||
| 24 | <artifactId>yudao-module-iot-api</artifactId> | 29 | <artifactId>yudao-module-iot-api</artifactId> |
| 25 | <version>${revision}</version> | 30 | <version>${revision}</version> |
| 26 | </dependency> | 31 | </dependency> |
yudao-module-mall/yudao-module-promotion-biz/pom.xml
| @@ -36,6 +36,16 @@ | @@ -36,6 +36,16 @@ | ||
| 36 | </dependency> | 36 | </dependency> |
| 37 | <dependency> | 37 | <dependency> |
| 38 | <groupId>cn.iocoder.boot</groupId> | 38 | <groupId>cn.iocoder.boot</groupId> |
| 39 | + <artifactId>yudao-module-system-api</artifactId> | ||
| 40 | + <version>${revision}</version> | ||
| 41 | + </dependency> | ||
| 42 | + <dependency> | ||
| 43 | + <groupId>cn.iocoder.boot</groupId> | ||
| 44 | + <artifactId>yudao-module-infra-api</artifactId> | ||
| 45 | + <version>${revision}</version> | ||
| 46 | + </dependency> | ||
| 47 | + <dependency> | ||
| 48 | + <groupId>cn.iocoder.boot</groupId> | ||
| 39 | <artifactId>yudao-module-member-api</artifactId> | 49 | <artifactId>yudao-module-member-api</artifactId> |
| 40 | <version>${revision}</version> | 50 | <version>${revision}</version> |
| 41 | </dependency> | 51 | </dependency> |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/brokerage/AppBrokerageRecordController.java
| @@ -41,7 +41,7 @@ public class AppBrokerageRecordController { | @@ -41,7 +41,7 @@ public class AppBrokerageRecordController { | ||
| 41 | PageResult<BrokerageRecordDO> pageResult = brokerageRecordService.getBrokerageRecordPage( | 41 | PageResult<BrokerageRecordDO> pageResult = brokerageRecordService.getBrokerageRecordPage( |
| 42 | BeanUtils.toBean(pageReqVO, BrokerageRecordPageReqVO.class).setUserId(getLoginUserId())); | 42 | BeanUtils.toBean(pageReqVO, BrokerageRecordPageReqVO.class).setUserId(getLoginUserId())); |
| 43 | return success(BeanUtils.toBean(pageResult, AppBrokerageRecordRespVO.class, recordVO -> | 43 | return success(BeanUtils.toBean(pageResult, AppBrokerageRecordRespVO.class, recordVO -> |
| 44 | - recordVO.setStatusName(DictFrameworkUtils.getDictDataLabel(DictTypeConstants.BROKERAGE_RECORD_STATUS, recordVO.getStatus())))); | 44 | + recordVO.setStatusName(DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.BROKERAGE_RECORD_STATUS, recordVO.getStatus())))); |
| 45 | } | 45 | } |
| 46 | 46 | ||
| 47 | @GetMapping("/get-product-brokerage-price") | 47 | @GetMapping("/get-product-brokerage-price") |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/brokerage/AppBrokerageWithdrawController.java
| @@ -49,8 +49,8 @@ public class AppBrokerageWithdrawController { | @@ -49,8 +49,8 @@ public class AppBrokerageWithdrawController { | ||
| 49 | PageResult<BrokerageWithdrawDO> pageResult = brokerageWithdrawService.getBrokerageWithdrawPage( | 49 | PageResult<BrokerageWithdrawDO> pageResult = brokerageWithdrawService.getBrokerageWithdrawPage( |
| 50 | BeanUtils.toBean(pageReqVO, BrokerageWithdrawPageReqVO.class).setUserId(getLoginUserId())); | 50 | BeanUtils.toBean(pageReqVO, BrokerageWithdrawPageReqVO.class).setUserId(getLoginUserId())); |
| 51 | return success(BeanUtils.toBean(pageResult, AppBrokerageWithdrawRespVO.class, withdrawVO -> | 51 | return success(BeanUtils.toBean(pageResult, AppBrokerageWithdrawRespVO.class, withdrawVO -> |
| 52 | - withdrawVO.setTypeName(DictFrameworkUtils.getDictDataLabel(DictTypeConstants.BROKERAGE_WITHDRAW_TYPE, withdrawVO.getType())) | ||
| 53 | - .setStatusName(DictFrameworkUtils.getDictDataLabel(DictTypeConstants.BROKERAGE_WITHDRAW_STATUS, withdrawVO.getStatus())))); | 52 | + withdrawVO.setTypeName(DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.BROKERAGE_WITHDRAW_TYPE, withdrawVO.getType())) |
| 53 | + .setStatusName(DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.BROKERAGE_WITHDRAW_STATUS, withdrawVO.getStatus())))); | ||
| 54 | } | 54 | } |
| 55 | 55 | ||
| 56 | @GetMapping("/get") | 56 | @GetMapping("/get") |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/convert/order/TradeOrderConvert.java
| @@ -178,7 +178,7 @@ public interface TradeOrderConvert { | @@ -178,7 +178,7 @@ public interface TradeOrderConvert { | ||
| 178 | AppTradeOrderDetailRespVO orderVO = convert3(order, orderItems); | 178 | AppTradeOrderDetailRespVO orderVO = convert3(order, orderItems); |
| 179 | orderVO.setPayExpireTime(order.getCreateTime().plus(tradeOrderProperties.getPayExpireTime())); | 179 | orderVO.setPayExpireTime(order.getCreateTime().plus(tradeOrderProperties.getPayExpireTime())); |
| 180 | if (StrUtil.isNotEmpty(order.getPayChannelCode())) { | 180 | if (StrUtil.isNotEmpty(order.getPayChannelCode())) { |
| 181 | - orderVO.setPayChannelName(DictFrameworkUtils.getDictDataLabel(DictTypeConstants.CHANNEL_CODE, order.getPayChannelCode())); | 181 | + orderVO.setPayChannelName(DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.CHANNEL_CODE, order.getPayChannelCode())); |
| 182 | } | 182 | } |
| 183 | // 处理收货地址 | 183 | // 处理收货地址 |
| 184 | orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId())); | 184 | orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId())); |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/auth/AuthConvert.java
| @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.member.convert.auth; | @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.member.convert.auth; | ||
| 3 | import cn.iocoder.yudao.module.member.controller.app.auth.vo.*; | 3 | import cn.iocoder.yudao.module.member.controller.app.auth.vo.*; |
| 4 | import cn.iocoder.yudao.module.member.controller.app.social.vo.AppSocialUserUnbindReqVO; | 4 | import cn.iocoder.yudao.module.member.controller.app.social.vo.AppSocialUserUnbindReqVO; |
| 5 | import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserResetPasswordReqVO; | 5 | import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserResetPasswordReqVO; |
| 6 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenRespDTO; | 6 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenRespDTO; |
| 7 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeSendReqDTO; | 7 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeSendReqDTO; |
| 8 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; | 8 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; |
| 9 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeValidateReqDTO; | 9 | import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeValidateReqDTO; |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java
| @@ -12,9 +12,9 @@ import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | @@ -12,9 +12,9 @@ import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | ||
| 12 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; | 12 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; |
| 13 | import cn.iocoder.yudao.module.system.api.logger.LoginLogApi; | 13 | import cn.iocoder.yudao.module.system.api.logger.LoginLogApi; |
| 14 | import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO; | 14 | import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO; |
| 15 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | ||
| 16 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 17 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenRespDTO; | 15 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; |
| 16 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 17 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenRespDTO; | ||
| 18 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; | 18 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; |
| 19 | import cn.iocoder.yudao.module.system.api.social.SocialClientApi; | 19 | import cn.iocoder.yudao.module.system.api.social.SocialClientApi; |
| 20 | import cn.iocoder.yudao.module.system.api.social.SocialUserApi; | 20 | import cn.iocoder.yudao.module.system.api.social.SocialUserApi; |
| @@ -58,7 +58,7 @@ public class MemberAuthServiceImpl implements MemberAuthService { | @@ -58,7 +58,7 @@ public class MemberAuthServiceImpl implements MemberAuthService { | ||
| 58 | @Resource | 58 | @Resource |
| 59 | private SocialClientApi socialClientApi; | 59 | private SocialClientApi socialClientApi; |
| 60 | @Resource | 60 | @Resource |
| 61 | - private OAuth2TokenApi oauth2TokenApi; | 61 | + private OAuth2TokenCommonApi oauth2TokenApi; |
| 62 | 62 | ||
| 63 | @Override | 63 | @Override |
| 64 | public AppAuthLoginRespVO login(AppAuthLoginReqVO reqVO) { | 64 | public AppAuthLoginRespVO login(AppAuthLoginReqVO reqVO) { |
yudao-module-member/yudao-module-member-biz/src/test/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceTest.java
| @@ -8,7 +8,7 @@ import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | @@ -8,7 +8,7 @@ import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | ||
| 8 | import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; | 8 | import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; |
| 9 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; | 9 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; |
| 10 | import cn.iocoder.yudao.module.system.api.logger.LoginLogApi; | 10 | import cn.iocoder.yudao.module.system.api.logger.LoginLogApi; |
| 11 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | 11 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; |
| 12 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; | 12 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; |
| 13 | import cn.iocoder.yudao.module.system.api.social.SocialUserApi; | 13 | import cn.iocoder.yudao.module.system.api.social.SocialUserApi; |
| 14 | import org.springframework.boot.test.mock.mockito.MockBean; | 14 | import org.springframework.boot.test.mock.mockito.MockBean; |
| @@ -43,7 +43,7 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest { | @@ -43,7 +43,7 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest { | ||
| 43 | @MockBean | 43 | @MockBean |
| 44 | private LoginLogApi loginLogApi; | 44 | private LoginLogApi loginLogApi; |
| 45 | @MockBean | 45 | @MockBean |
| 46 | - private OAuth2TokenApi oauth2TokenApi; | 46 | + private OAuth2TokenCommonApi oauth2TokenApi; |
| 47 | @MockBean | 47 | @MockBean |
| 48 | private SocialUserApi socialUserApi; | 48 | private SocialUserApi socialUserApi; |
| 49 | @MockBean | 49 | @MockBean |
yudao-module-pay/yudao-module-pay-biz/pom.xml
| @@ -20,6 +20,11 @@ | @@ -20,6 +20,11 @@ | ||
| 20 | <dependencies> | 20 | <dependencies> |
| 21 | <dependency> | 21 | <dependency> |
| 22 | <groupId>cn.iocoder.boot</groupId> | 22 | <groupId>cn.iocoder.boot</groupId> |
| 23 | + <artifactId>yudao-module-system-api</artifactId> | ||
| 24 | + <version>${revision}</version> | ||
| 25 | + </dependency> | ||
| 26 | + <dependency> | ||
| 27 | + <groupId>cn.iocoder.boot</groupId> | ||
| 23 | <artifactId>yudao-module-pay-api</artifactId> | 28 | <artifactId>yudao-module-pay-api</artifactId> |
| 24 | <version>${revision}</version> | 29 | <version>${revision}</version> |
| 25 | </dependency> | 30 | </dependency> |
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/convert/wallet/PayWalletRechargeConvert.java
| @@ -32,7 +32,7 @@ public interface PayWalletRechargeConvert { | @@ -32,7 +32,7 @@ public interface PayWalletRechargeConvert { | ||
| 32 | PageResult<AppPayWalletRechargeRespVO> voPageResult = BeanUtils.toBean(pageResult, AppPayWalletRechargeRespVO.class); | 32 | PageResult<AppPayWalletRechargeRespVO> voPageResult = BeanUtils.toBean(pageResult, AppPayWalletRechargeRespVO.class); |
| 33 | Map<Long, PayOrderDO> payOrderMap = CollectionUtils.convertMap(payOrderList, PayOrderDO::getId); | 33 | Map<Long, PayOrderDO> payOrderMap = CollectionUtils.convertMap(payOrderList, PayOrderDO::getId); |
| 34 | voPageResult.getList().forEach(recharge -> { | 34 | voPageResult.getList().forEach(recharge -> { |
| 35 | - recharge.setPayChannelName(DictFrameworkUtils.getDictDataLabel( | 35 | + recharge.setPayChannelName(DictFrameworkUtils.parseDictDataLabel( |
| 36 | DictTypeConstants.CHANNEL_CODE, recharge.getPayChannelCode())); | 36 | DictTypeConstants.CHANNEL_CODE, recharge.getPayChannelCode())); |
| 37 | MapUtils.findAndThen(payOrderMap, recharge.getPayOrderId(), | 37 | MapUtils.findAndThen(payOrderMap, recharge.getPayOrderId(), |
| 38 | order -> recharge.setPayOrderChannelOrderNo(order.getChannelOrderNo())); | 38 | order -> recharge.setPayOrderChannelOrderNo(order.getChannelOrderNo())); |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/config/JmReportConfiguration.java
| 1 | package cn.iocoder.yudao.module.report.framework.jmreport.config; | 1 | package cn.iocoder.yudao.module.report.framework.jmreport.config; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.security.config.SecurityProperties; | 4 | import cn.iocoder.yudao.framework.security.config.SecurityProperties; |
| 4 | import cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmOnlDragExternalServiceImpl; | 5 | import cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmOnlDragExternalServiceImpl; |
| 5 | import cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmReportTokenServiceImpl; | 6 | import cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmReportTokenServiceImpl; |
| 6 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | ||
| 7 | import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | 7 | import cn.iocoder.yudao.module.system.api.permission.PermissionApi; |
| 8 | import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; | 8 | import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; |
| 9 | import org.springframework.context.annotation.Bean; | 9 | import org.springframework.context.annotation.Bean; |
| @@ -21,7 +21,7 @@ import org.springframework.context.annotation.Primary; | @@ -21,7 +21,7 @@ import org.springframework.context.annotation.Primary; | ||
| 21 | public class JmReportConfiguration { | 21 | public class JmReportConfiguration { |
| 22 | 22 | ||
| 23 | @Bean | 23 | @Bean |
| 24 | - public JmReportTokenServiceI jmReportTokenService(OAuth2TokenApi oAuth2TokenApi, | 24 | + public JmReportTokenServiceI jmReportTokenService(OAuth2TokenCommonApi oAuth2TokenApi, |
| 25 | PermissionApi permissionApi, | 25 | PermissionApi permissionApi, |
| 26 | SecurityProperties securityProperties) { | 26 | SecurityProperties securityProperties) { |
| 27 | return new JmReportTokenServiceImpl(oAuth2TokenApi, permissionApi, securityProperties); | 27 | return new JmReportTokenServiceImpl(oAuth2TokenApi, permissionApi, securityProperties); |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/core/service/JmReportTokenServiceImpl.java
| @@ -9,8 +9,8 @@ import cn.iocoder.yudao.framework.security.core.LoginUser; | @@ -9,8 +9,8 @@ import cn.iocoder.yudao.framework.security.core.LoginUser; | ||
| 9 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | 9 | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 10 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; | 10 | import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; |
| 11 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | 11 | import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; |
| 12 | -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | ||
| 13 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | 12 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; |
| 13 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | ||
| 14 | import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | 14 | import cn.iocoder.yudao.module.system.api.permission.PermissionApi; |
| 15 | import cn.iocoder.yudao.module.system.enums.permission.RoleCodeEnum; | 15 | import cn.iocoder.yudao.module.system.enums.permission.RoleCodeEnum; |
| 16 | import jakarta.servlet.http.HttpServletRequest; | 16 | import jakarta.servlet.http.HttpServletRequest; |
| @@ -37,7 +37,7 @@ public class JmReportTokenServiceImpl implements JmReportTokenServiceI { | @@ -37,7 +37,7 @@ public class JmReportTokenServiceImpl implements JmReportTokenServiceI { | ||
| 37 | */ | 37 | */ |
| 38 | private static final String AUTHORIZATION_FORMAT = SecurityFrameworkUtils.AUTHORIZATION_BEARER + " %s"; | 38 | private static final String AUTHORIZATION_FORMAT = SecurityFrameworkUtils.AUTHORIZATION_BEARER + " %s"; |
| 39 | 39 | ||
| 40 | - private final OAuth2TokenApi oauth2TokenApi; | 40 | + private final OAuth2TokenCommonApi oauth2TokenApi; |
| 41 | private final PermissionApi permissionApi; | 41 | private final PermissionApi permissionApi; |
| 42 | 42 | ||
| 43 | private final SecurityProperties securityProperties; | 43 | private final SecurityProperties securityProperties; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApi.java
| 1 | package cn.iocoder.yudao.module.system.api.dict; | 1 | package cn.iocoder.yudao.module.system.api.dict; |
| 2 | 2 | ||
| 3 | -import cn.hutool.core.util.ObjUtil; | ||
| 4 | -import cn.hutool.core.util.StrUtil; | ||
| 5 | -import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.dict.DictDataCommonApi; |
| 6 | 4 | ||
| 7 | import java.util.Collection; | 5 | import java.util.Collection; |
| 8 | -import java.util.List; | ||
| 9 | - | ||
| 10 | -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; | ||
| 11 | 6 | ||
| 12 | /** | 7 | /** |
| 13 | * 字典数据 API 接口 | 8 | * 字典数据 API 接口 |
| 14 | * | 9 | * |
| 15 | * @author 芋道源码 | 10 | * @author 芋道源码 |
| 16 | */ | 11 | */ |
| 17 | -public interface DictDataApi { | 12 | +public interface DictDataApi extends DictDataCommonApi { |
| 18 | 13 | ||
| 19 | /** | 14 | /** |
| 20 | * 校验字典数据们是否有效。如下情况,视为无效: | 15 | * 校验字典数据们是否有效。如下情况,视为无效: |
| @@ -26,56 +21,4 @@ public interface DictDataApi { | @@ -26,56 +21,4 @@ public interface DictDataApi { | ||
| 26 | */ | 21 | */ |
| 27 | void validateDictDataList(String dictType, Collection<String> values); | 22 | void validateDictDataList(String dictType, Collection<String> values); |
| 28 | 23 | ||
| 29 | - /** | ||
| 30 | - * 获得指定的字典数据,从缓存中 | ||
| 31 | - * | ||
| 32 | - * @param type 字典类型 | ||
| 33 | - * @param value 字典数据值 | ||
| 34 | - * @return 字典数据 | ||
| 35 | - */ | ||
| 36 | - DictDataRespDTO getDictData(String type, String value); | ||
| 37 | - | ||
| 38 | - /** | ||
| 39 | - * 获得指定的字典标签,从缓存中 | ||
| 40 | - * | ||
| 41 | - * @param type 字典类型 | ||
| 42 | - * @param value 字典数据值 | ||
| 43 | - * @return 字典标签 | ||
| 44 | - */ | ||
| 45 | - default String getDictDataLabel(String type, Integer value) { | ||
| 46 | - DictDataRespDTO dictData = getDictData(type, String.valueOf(value)); | ||
| 47 | - if (ObjUtil.isNull(dictData)) { | ||
| 48 | - return StrUtil.EMPTY; | ||
| 49 | - } | ||
| 50 | - return dictData.getLabel(); | ||
| 51 | - } | ||
| 52 | - | ||
| 53 | - /** | ||
| 54 | - * 解析获得指定的字典数据,从缓存中 | ||
| 55 | - * | ||
| 56 | - * @param type 字典类型 | ||
| 57 | - * @param label 字典数据标签 | ||
| 58 | - * @return 字典数据 | ||
| 59 | - */ | ||
| 60 | - DictDataRespDTO parseDictData(String type, String label); | ||
| 61 | - | ||
| 62 | - /** | ||
| 63 | - * 获得指定字典类型的字典数据列表 | ||
| 64 | - * | ||
| 65 | - * @param dictType 字典类型 | ||
| 66 | - * @return 字典数据列表 | ||
| 67 | - */ | ||
| 68 | - List<DictDataRespDTO> getDictDataList(String dictType); | ||
| 69 | - | ||
| 70 | - /** | ||
| 71 | - * 获得字典数据标签列表 | ||
| 72 | - * | ||
| 73 | - * @param dictType 字典类型 | ||
| 74 | - * @return 字典数据标签列表 | ||
| 75 | - */ | ||
| 76 | - default List<String> getDictDataLabelList(String dictType) { | ||
| 77 | - List<DictDataRespDTO> list = getDictDataList(dictType); | ||
| 78 | - return convertList(list, DictDataRespDTO::getLabel); | ||
| 79 | - } | ||
| 80 | - | ||
| 81 | } | 24 | } |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/logger/OperateLogApi.java
| 1 | package cn.iocoder.yudao.module.system.api.logger; | 1 | package cn.iocoder.yudao.module.system.api.logger; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.logger.OperateLogCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | ||
| 5 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; | 5 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; |
| 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogRespDTO; | 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogRespDTO; |
| 7 | -import jakarta.validation.Valid; | ||
| 8 | -import org.springframework.scheduling.annotation.Async; | ||
| 9 | 7 | ||
| 10 | /** | 8 | /** |
| 11 | * 操作日志 API 接口 | 9 | * 操作日志 API 接口 |
| 12 | * | 10 | * |
| 13 | * @author 芋道源码 | 11 | * @author 芋道源码 |
| 14 | */ | 12 | */ |
| 15 | -public interface OperateLogApi { | ||
| 16 | - | ||
| 17 | - /** | ||
| 18 | - * 创建操作日志 | ||
| 19 | - * | ||
| 20 | - * @param createReqDTO 请求 | ||
| 21 | - */ | ||
| 22 | - void createOperateLog(@Valid OperateLogCreateReqDTO createReqDTO); | ||
| 23 | - | ||
| 24 | - /** | ||
| 25 | - * 【异步】创建操作日志 | ||
| 26 | - * | ||
| 27 | - * @param createReqDTO 请求 | ||
| 28 | - */ | ||
| 29 | - @Async | ||
| 30 | - default void createOperateLogAsync(OperateLogCreateReqDTO createReqDTO) { | ||
| 31 | - createOperateLog(createReqDTO); | ||
| 32 | - } | 13 | +public interface OperateLogApi extends OperateLogCommonApi { |
| 33 | 14 | ||
| 34 | /** | 15 | /** |
| 35 | * 获取指定模块的指定数据的操作日志分页 | 16 | * 获取指定模块的指定数据的操作日志分页 |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/permission/PermissionApi.java
| 1 | package cn.iocoder.yudao.module.system.api.permission; | 1 | package cn.iocoder.yudao.module.system.api.permission; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.permission.PermissionCommonApi; |
| 4 | 4 | ||
| 5 | import java.util.Collection; | 5 | import java.util.Collection; |
| 6 | import java.util.Set; | 6 | import java.util.Set; |
| @@ -10,7 +10,7 @@ import java.util.Set; | @@ -10,7 +10,7 @@ import java.util.Set; | ||
| 10 | * | 10 | * |
| 11 | * @author 芋道源码 | 11 | * @author 芋道源码 |
| 12 | */ | 12 | */ |
| 13 | -public interface PermissionApi { | 13 | +public interface PermissionApi extends PermissionCommonApi { |
| 14 | 14 | ||
| 15 | /** | 15 | /** |
| 16 | * 获得拥有多个角色的用户编号集合 | 16 | * 获得拥有多个角色的用户编号集合 |
| @@ -20,30 +20,4 @@ public interface PermissionApi { | @@ -20,30 +20,4 @@ public interface PermissionApi { | ||
| 20 | */ | 20 | */ |
| 21 | Set<Long> getUserRoleIdListByRoleIds(Collection<Long> roleIds); | 21 | Set<Long> getUserRoleIdListByRoleIds(Collection<Long> roleIds); |
| 22 | 22 | ||
| 23 | - /** | ||
| 24 | - * 判断是否有权限,任一一个即可 | ||
| 25 | - * | ||
| 26 | - * @param userId 用户编号 | ||
| 27 | - * @param permissions 权限 | ||
| 28 | - * @return 是否 | ||
| 29 | - */ | ||
| 30 | - boolean hasAnyPermissions(Long userId, String... permissions); | ||
| 31 | - | ||
| 32 | - /** | ||
| 33 | - * 判断是否有角色,任一一个即可 | ||
| 34 | - * | ||
| 35 | - * @param userId 用户编号 | ||
| 36 | - * @param roles 角色数组 | ||
| 37 | - * @return 是否 | ||
| 38 | - */ | ||
| 39 | - boolean hasAnyRoles(Long userId, String... roles); | ||
| 40 | - | ||
| 41 | - /** | ||
| 42 | - * 获得登陆用户的部门数据权限 | ||
| 43 | - * | ||
| 44 | - * @param userId 用户编号 | ||
| 45 | - * @return 部门数据权限 | ||
| 46 | - */ | ||
| 47 | - DeptDataPermissionRespDTO getDeptDataPermission(Long userId); | ||
| 48 | - | ||
| 49 | } | 23 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.dict; | 1 | package cn.iocoder.yudao.module.system.api.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 3 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 4 | -import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | 4 | +import cn.iocoder.yudao.framework.common.biz.system.dict.dto.DictDataRespDTO; |
| 5 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 5 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 6 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; | 6 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; |
| 7 | import jakarta.annotation.Resource; | 7 | import jakarta.annotation.Resource; |
| @@ -27,18 +27,6 @@ public class DictDataApiImpl implements DictDataApi { | @@ -27,18 +27,6 @@ public class DictDataApiImpl implements DictDataApi { | ||
| 27 | } | 27 | } |
| 28 | 28 | ||
| 29 | @Override | 29 | @Override |
| 30 | - public DictDataRespDTO getDictData(String dictType, String value) { | ||
| 31 | - DictDataDO dictData = dictDataService.getDictData(dictType, value); | ||
| 32 | - return BeanUtils.toBean(dictData, DictDataRespDTO.class); | ||
| 33 | - } | ||
| 34 | - | ||
| 35 | - @Override | ||
| 36 | - public DictDataRespDTO parseDictData(String dictType, String label) { | ||
| 37 | - DictDataDO dictData = dictDataService.parseDictData(dictType, label); | ||
| 38 | - return BeanUtils.toBean(dictData, DictDataRespDTO.class); | ||
| 39 | - } | ||
| 40 | - | ||
| 41 | - @Override | ||
| 42 | public List<DictDataRespDTO> getDictDataList(String dictType) { | 30 | public List<DictDataRespDTO> getDictDataList(String dictType) { |
| 43 | List<DictDataDO> list = dictDataService.getDictDataListByDictType(dictType); | 31 | List<DictDataDO> list = dictDataService.getDictDataListByDictType(dictType); |
| 44 | return BeanUtils.toBean(list, DictDataRespDTO.class); | 32 | return BeanUtils.toBean(list, DictDataRespDTO.class); |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/logger/OperateLogApiImpl.java
| @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.system.api.logger; | @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.system.api.logger; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 5 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | 5 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; |
| 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; | 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; |
| 7 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogRespDTO; | 7 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogRespDTO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; | 8 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/oauth2/OAuth2TokenApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.oauth2; | 1 | package cn.iocoder.yudao.module.system.api.oauth2; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.OAuth2TokenCommonApi; | ||
| 3 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 4 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO; | ||
| 5 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 6 | -import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenRespDTO; | 5 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCheckRespDTO; |
| 6 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenCreateReqDTO; | ||
| 7 | +import cn.iocoder.yudao.framework.common.biz.system.oauth2.dto.OAuth2AccessTokenRespDTO; | ||
| 7 | import cn.iocoder.yudao.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO; | 8 | import cn.iocoder.yudao.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO; |
| 8 | import cn.iocoder.yudao.module.system.service.oauth2.OAuth2TokenService; | 9 | import cn.iocoder.yudao.module.system.service.oauth2.OAuth2TokenService; |
| 9 | import org.springframework.stereotype.Service; | 10 | import org.springframework.stereotype.Service; |
| @@ -16,7 +17,7 @@ import jakarta.annotation.Resource; | @@ -16,7 +17,7 @@ import jakarta.annotation.Resource; | ||
| 16 | * @author 芋道源码 | 17 | * @author 芋道源码 |
| 17 | */ | 18 | */ |
| 18 | @Service | 19 | @Service |
| 19 | -public class OAuth2TokenApiImpl implements OAuth2TokenApi { | 20 | +public class OAuth2TokenApiImpl implements OAuth2TokenCommonApi { |
| 20 | 21 | ||
| 21 | @Resource | 22 | @Resource |
| 22 | private OAuth2TokenService oauth2TokenService; | 23 | private OAuth2TokenService oauth2TokenService; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/permission/PermissionApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.permission; | 1 | package cn.iocoder.yudao.module.system.api.permission; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; |
| 4 | import cn.iocoder.yudao.module.system.service.permission.PermissionService; | 4 | import cn.iocoder.yudao.module.system.service.permission.PermissionService; |
| 5 | import org.springframework.stereotype.Service; | 5 | import org.springframework.stereotype.Service; |
| 6 | 6 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/tenant/TenantApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.tenant; | 1 | package cn.iocoder.yudao.module.system.api.tenant; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.biz.system.tenant.TenantCommonApi; | ||
| 3 | import cn.iocoder.yudao.module.system.service.tenant.TenantService; | 4 | import cn.iocoder.yudao.module.system.service.tenant.TenantService; |
| 4 | import org.springframework.stereotype.Service; | 5 | import org.springframework.stereotype.Service; |
| 5 | 6 | ||
| @@ -12,7 +13,7 @@ import java.util.List; | @@ -12,7 +13,7 @@ import java.util.List; | ||
| 12 | * @author 芋道源码 | 13 | * @author 芋道源码 |
| 13 | */ | 14 | */ |
| 14 | @Service | 15 | @Service |
| 15 | -public class TenantApiImpl implements TenantApi { | 16 | +public class TenantApiImpl implements TenantCommonApi { |
| 16 | 17 | ||
| 17 | @Resource | 18 | @Resource |
| 18 | private TenantService tenantService; | 19 | private TenantService tenantService; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/operatelog/core/BooleanParseFunction.java
| @@ -33,7 +33,7 @@ public class BooleanParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class BooleanParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.BOOLEAN_STRING, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.BOOLEAN_STRING, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/operatelog/core/SexParseFunction.java
| @@ -33,7 +33,7 @@ public class SexParseFunction implements IParseFunction { | @@ -33,7 +33,7 @@ public class SexParseFunction implements IParseFunction { | ||
| 33 | if (StrUtil.isEmptyIfStr(value)) { | 33 | if (StrUtil.isEmptyIfStr(value)) { |
| 34 | return ""; | 34 | return ""; |
| 35 | } | 35 | } |
| 36 | - return DictFrameworkUtils.getDictDataLabel(DictTypeConstants.USER_SEX, value.toString()); | 36 | + return DictFrameworkUtils.parseDictDataLabel(DictTypeConstants.USER_SEX, value.toString()); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/logger/OperateLogService.java
| 1 | package cn.iocoder.yudao.module.system.service.logger; | 1 | package cn.iocoder.yudao.module.system.service.logger; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | 4 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; |
| 5 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; | 5 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; |
| 6 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; | 6 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; |
| 7 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; | 7 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/logger/OperateLogServiceImpl.java
| @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.system.service.logger; | @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.system.service.logger; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 4 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 5 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | 5 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; |
| 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; | 6 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; |
| 7 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; | 7 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; | 8 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/permission/PermissionService.java
| 1 | package cn.iocoder.yudao.module.system.service.permission; | 1 | package cn.iocoder.yudao.module.system.service.permission; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | 3 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; |
| 4 | 4 | ||
| 5 | import java.util.Collection; | 5 | import java.util.Collection; |
| 6 | import java.util.Set; | 6 | import java.util.Set; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/permission/PermissionServiceImpl.java
| @@ -7,7 +7,7 @@ import cn.hutool.extra.spring.SpringUtil; | @@ -7,7 +7,7 @@ import cn.hutool.extra.spring.SpringUtil; | ||
| 7 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 7 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 8 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 8 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 9 | import cn.iocoder.yudao.framework.datapermission.core.annotation.DataPermission; | 9 | import cn.iocoder.yudao.framework.datapermission.core.annotation.DataPermission; |
| 10 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | 10 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; |
| 11 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO; | 11 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO; |
| 12 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; | 12 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; |
| 13 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleMenuDO; | 13 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleMenuDO; |
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/logger/OperateLogServiceImplTest.java
| @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.system.service.logger; | @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.system.service.logger; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 4 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 5 | import cn.iocoder.yudao.framework.test.core.util.RandomUtils; | 5 | import cn.iocoder.yudao.framework.test.core.util.RandomUtils; |
| 6 | -import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogCreateReqDTO; | 6 | +import cn.iocoder.yudao.framework.common.biz.system.logger.dto.OperateLogCreateReqDTO; |
| 7 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; | 7 | import cn.iocoder.yudao.module.system.api.logger.dto.OperateLogPageReqDTO; |
| 8 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; | 8 | import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO; |
| 9 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; | 9 | import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO; |
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/permission/PermissionServiceTest.java
| @@ -4,7 +4,7 @@ import cn.hutool.core.collection.CollUtil; | @@ -4,7 +4,7 @@ import cn.hutool.core.collection.CollUtil; | ||
| 4 | import cn.hutool.extra.spring.SpringUtil; | 4 | import cn.hutool.extra.spring.SpringUtil; |
| 5 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 5 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 7 | -import cn.iocoder.yudao.module.system.api.permission.dto.DeptDataPermissionRespDTO; | 7 | +import cn.iocoder.yudao.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO; | 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO; |
| 9 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO; | 9 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO; |
| 10 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; | 10 | import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; |