Compare commits
84 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
6b34993a07 | ||
![]() |
42dc4fb51e | ||
![]() |
34d94b0e98 | ||
![]() |
57a6f96138 | ||
![]() |
69d168f4a8 | ||
![]() |
49dbe611f2 | ||
![]() |
69b0c0b765 | ||
![]() |
ddf3ff7069 | ||
![]() |
08ea03fd77 | ||
![]() |
734f44dfd3 | ||
![]() |
a6958b930d | ||
![]() |
7758a6d5eb | ||
![]() |
969def7fc3 | ||
![]() |
b5c7584135 | ||
![]() |
4086b0ded7 | ||
![]() |
a9d272f15f | ||
![]() |
3be7e496b4 | ||
![]() |
337ee85667 | ||
![]() |
ee5b471334 | ||
![]() |
c75d733edb | ||
![]() |
d2dfc0f0e1 | ||
![]() |
c3d042144f | ||
![]() |
2383a0d211 | ||
![]() |
56d3318158 | ||
![]() |
b80f0bd249 | ||
![]() |
9f91c0eba6 | ||
![]() |
fa2fdf4873 | ||
![]() |
437ada5a4f | ||
![]() |
4c236cf7c4 | ||
![]() |
04d395b9a0 | ||
![]() |
e68bb01cfd | ||
![]() |
a61c7626ad | ||
![]() |
b71023318b | ||
![]() |
13b8c8185e | ||
![]() |
f7533f9ff3 | ||
![]() |
82a0f0d341 | ||
![]() |
cd5c9637ee | ||
![]() |
c9c834a617 | ||
![]() |
8eb38f3c30 | ||
![]() |
2f199cf34c | ||
![]() |
6c3ae0fc97 | ||
![]() |
bf6541ea55 | ||
![]() |
c6c3f626c1 | ||
![]() |
ea48fae43a | ||
![]() |
2459515c98 | ||
![]() |
9e50fea94f | ||
![]() |
1abd20136a | ||
![]() |
81b7533da5 | ||
![]() |
ad63181c33 | ||
![]() |
b01ea03838 | ||
![]() |
908d65b688 | ||
![]() |
ef72a38345 | ||
![]() |
185f1753f3 | ||
![]() |
6479e0112d | ||
![]() |
0082a3a5d6 | ||
![]() |
6b3aa6e39c | ||
![]() |
78d0ad8b52 | ||
![]() |
dbd2d06e55 | ||
![]() |
2a5dddfb68 | ||
![]() |
19f9ad32a9 | ||
![]() |
726cef48cb | ||
![]() |
a30646253d | ||
![]() |
258f1f96ac | ||
![]() |
df1754d820 | ||
![]() |
3824daf37b | ||
![]() |
f0f7a12237 | ||
![]() |
fd87d624dd | ||
![]() |
429e920829 | ||
![]() |
e3a4bb629d | ||
![]() |
7620ba437d | ||
![]() |
d9f2ba93d6 | ||
![]() |
0b67139b9e | ||
![]() |
1ddbfb72c8 | ||
![]() |
75a588adbc | ||
![]() |
5a0f2beb09 | ||
![]() |
a48ed89227 | ||
![]() |
3c4e338b23 | ||
![]() |
89dc336a81 | ||
![]() |
05fb76ebbc | ||
![]() |
67afdbf867 | ||
![]() |
dda88d0fdd | ||
![]() |
2e51102734 | ||
![]() |
472d1aee85 | ||
![]() |
6547ea089c |
8
.idea/compiler.xml
generated
8
.idea/compiler.xml
generated
@ -13,10 +13,10 @@
|
||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||
<outputRelativeToContentRoot value="true" />
|
||||
<processorPath useClasspath="false">
|
||||
<entry name="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-configuration-processor/3.3.4/spring-boot-configuration-processor-3.3.4.jar" />
|
||||
<entry name="$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.34/lombok-1.18.34.jar" />
|
||||
<entry name="$MAVEN_REPOSITORY$/org/mapstruct/mapstruct-processor/1.6.2/mapstruct-processor-1.6.2.jar" />
|
||||
<entry name="$MAVEN_REPOSITORY$/org/mapstruct/mapstruct/1.6.2/mapstruct-1.6.2.jar" />
|
||||
<entry name="$PROJECT_DIR$/../../apache-maven-3.8.6-bin/repository/org/springframework/boot/spring-boot-configuration-processor/3.3.4/spring-boot-configuration-processor-3.3.4.jar" />
|
||||
<entry name="$PROJECT_DIR$/../../apache-maven-3.8.6-bin/repository/org/projectlombok/lombok/1.18.34/lombok-1.18.34.jar" />
|
||||
<entry name="$PROJECT_DIR$/../../apache-maven-3.8.6-bin/repository/org/mapstruct/mapstruct-processor/1.6.2/mapstruct-processor-1.6.2.jar" />
|
||||
<entry name="$PROJECT_DIR$/../../apache-maven-3.8.6-bin/repository/org/mapstruct/mapstruct/1.6.2/mapstruct-1.6.2.jar" />
|
||||
</processorPath>
|
||||
<module name="spring-boot-starter-protection" />
|
||||
<module name="module-ci-environment" />
|
||||
|
10
.idea/jarRepositories.xml
generated
10
.idea/jarRepositories.xml
generated
@ -1,16 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RemoteRepositoriesConfiguration">
|
||||
<remote-repository>
|
||||
<option name="id" value="huaweicloud" />
|
||||
<option name="name" value="huawei" />
|
||||
<option name="url" value="https://maven.aliyun.com/repository/public" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="central" />
|
||||
<option name="name" value="Central Repository" />
|
||||
<option name="url" value="https://repo.maven.apache.org/maven2" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="huaweicloud" />
|
||||
<option name="name" value="huawei" />
|
||||
<option name="url" value="https://maven.aliyun.com/repository/public" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="aliyunmaven" />
|
||||
<option name="name" value="aliyun" />
|
||||
|
8
.idea/modules.xml
generated
8
.idea/modules.xml
generated
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/modules/module-ci-process-biz/module-ci-process-biz.iml" filepath="$PROJECT_DIR$/modules/module-ci-process-biz/module-ci-process-biz.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
4
dependencies/pom.xml
vendored
4
dependencies/pom.xml
vendored
@ -85,8 +85,8 @@
|
||||
<commons-exec.version>1.4.0</commons-exec.version>
|
||||
<dd-plist.version>1.28</dd-plist.version>
|
||||
<apk-parser.version>2.6.10</apk-parser.version>
|
||||
<logback-core.version>1.2.11</logback-core.version>
|
||||
<logback-classic.version>1.2.11</logback-classic.version>
|
||||
<logback-core.version>1.5.8</logback-core.version>
|
||||
<logback-classic.version>1.5.8</logback-classic.version>
|
||||
<caffeine.version>2.9.3</caffeine.version>
|
||||
<resilience4j-circuitbreaker.version>2.3.0</resilience4j-circuitbreaker.version>
|
||||
|
||||
|
@ -171,6 +171,27 @@
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-annotation</artifactId>
|
||||
<version>3.5.8</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mybatis</groupId>
|
||||
<artifactId>mybatis</artifactId>
|
||||
<version>3.5.16</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.github.mouzt</groupId>
|
||||
<artifactId>bizlog-sdk</artifactId>
|
||||
<version>3.0.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.lionsoul</groupId>
|
||||
<artifactId>ip2region</artifactId>
|
||||
<version>2.7.0</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.tenant.core.aop;
|
||||
package cd.casic.framework.commons.annotation;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.web.config;
|
||||
package cd.casic.framework.commons.config;
|
||||
|
||||
import jakarta.validation.Valid;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.tenant.core.context;
|
||||
package cd.casic.framework.commons.context;
|
||||
|
||||
import com.alibaba.ttl.TransmittableThreadLocal;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.mybatis.core.dataobject;
|
||||
package cd.casic.framework.commons.dataobject;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
@ -0,0 +1,30 @@
|
||||
package cd.casic.framework.commons.dataobject;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @ClassName group
|
||||
* @Author hopeli
|
||||
* @Date 2025/5/10 10:20
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class Group {
|
||||
// id
|
||||
private String id;
|
||||
|
||||
// 环境名称
|
||||
private String groupName;
|
||||
|
||||
// 创建时间
|
||||
private String createTime;
|
||||
|
||||
/**
|
||||
* @pi.model:User
|
||||
* @pi.desc:用户
|
||||
*/
|
||||
private User user;
|
||||
|
||||
// 说明
|
||||
private String detail;
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package cd.casic.framework.commons.dataobject;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @ClassName PatchUser
|
||||
* @Author hopeli
|
||||
* @Date 2025/5/10 10:21
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class PatchUser {
|
||||
private String userId;
|
||||
private Integer roleType = 0;
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package cd.casic.framework.commons.dataobject;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @ClassName User
|
||||
* @Author hopeli
|
||||
* @Date 2025/5/10 10:19
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class User {
|
||||
private String id;
|
||||
private String name;
|
||||
private String phone;
|
||||
private String email;
|
||||
private String avatar;
|
||||
private String nickname;
|
||||
private String dirId;
|
||||
private String password;
|
||||
private Integer status;
|
||||
private Integer type;
|
||||
private String openId;
|
||||
private String newPassword;
|
||||
|
||||
}
|
@ -1,8 +1,7 @@
|
||||
package cd.casic.module.system.dal.dataobject.dept;
|
||||
package cd.casic.framework.commons.dataobject.dept;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.tenant.core.db.TenantBaseDO;
|
||||
import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
@ -1,7 +1,7 @@
|
||||
package cd.casic.module.system.dal.dataobject.dept;
|
||||
package cd.casic.framework.commons.dataobject.dept;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
@ -1,7 +1,6 @@
|
||||
package cd.casic.module.system.dal.dataobject.dept;
|
||||
package cd.casic.framework.commons.dataobject.dept;
|
||||
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
@ -1,6 +1,7 @@
|
||||
package cd.casic.framework.tenant.core.db;
|
||||
package cd.casic.framework.commons.dataobject.tenant;
|
||||
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
@ -41,4 +41,6 @@ public interface GlobalErrorCodeConstants {
|
||||
|
||||
ErrorCode ID_DUPLICATION = new ErrorCode(1000, "ID重复");
|
||||
|
||||
ErrorCode PIPELINE_ERROR = new ErrorCode(1001,"流水线执行错误");
|
||||
|
||||
}
|
||||
|
@ -82,6 +82,13 @@ public class CommonResult<T> implements Serializable {
|
||||
return Objects.equals(code, GlobalErrorCodeConstants.SUCCESS.getCode());
|
||||
}
|
||||
|
||||
public static <T>CommonResult<T> success() {
|
||||
CommonResult<T> result = new CommonResult<>();
|
||||
result.code = GlobalErrorCodeConstants.SUCCESS.getCode();
|
||||
result.msg = "";
|
||||
return result;
|
||||
}
|
||||
|
||||
@JsonIgnore // 避免 jackson 序列化
|
||||
public boolean isSuccess() {
|
||||
return isSuccess(code);
|
||||
|
@ -1,6 +1,6 @@
|
||||
package cd.casic.framework.redis.core;
|
||||
package cd.casic.framework.commons.util.redis.core;
|
||||
|
||||
import cd.casic.framework.redis.core.enums.AreaTypeEnum;
|
||||
import cd.casic.framework.commons.util.redis.core.enums.AreaTypeEnum;
|
||||
import com.fasterxml.jackson.annotation.JsonBackReference;
|
||||
import com.fasterxml.jackson.annotation.JsonManagedReference;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.redis.core.enums;
|
||||
package cd.casic.framework.commons.util.redis.core.enums;
|
||||
|
||||
import cd.casic.framework.commons.core.IntArrayValuable;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,7 +1,7 @@
|
||||
package cd.casic.framework.redis.core.utils;
|
||||
package cd.casic.framework.commons.util.redis.core.utils;
|
||||
|
||||
import cd.casic.framework.redis.core.Area;
|
||||
import cd.casic.framework.redis.core.enums.AreaTypeEnum;
|
||||
import cd.casic.framework.commons.util.redis.core.Area;
|
||||
import cd.casic.framework.commons.util.redis.core.enums.AreaTypeEnum;
|
||||
import cd.casic.framework.commons.util.object.ObjectUtils;
|
||||
import cn.hutool.core.io.resource.ResourceUtil;
|
||||
import cn.hutool.core.lang.Assert;
|
@ -1,6 +1,6 @@
|
||||
package cd.casic.framework.redis.core.utils;
|
||||
package cd.casic.framework.commons.util.redis.core.utils;
|
||||
|
||||
import cd.casic.framework.redis.core.Area;
|
||||
import cd.casic.framework.commons.util.redis.core.Area;
|
||||
import cn.hutool.core.io.resource.ResourceUtil;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
@ -1,12 +1,12 @@
|
||||
package cd.casic.framework.tenant.core.util;
|
||||
package cd.casic.framework.commons.util.tenant;
|
||||
|
||||
|
||||
import cd.casic.framework.tenant.core.context.TenantContextHolder;
|
||||
import cd.casic.framework.commons.context.TenantContextHolder;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Callable;
|
||||
|
||||
import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
|
||||
|
||||
/**
|
||||
* 多租户 Util
|
||||
@ -87,7 +87,7 @@ public class TenantUtils {
|
||||
*/
|
||||
public static void addTenantHeader(Map<String, String> headers, Long tenantId) {
|
||||
if (tenantId != null) {
|
||||
headers.put(HEADER_TENANT_ID, tenantId.toString());
|
||||
headers.put(WebFrameworkUtils.HEADER_TENANT_ID, tenantId.toString());
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,10 @@
|
||||
package cd.casic.framework.web.core.util;
|
||||
package cd.casic.framework.commons.util.util;
|
||||
|
||||
import cd.casic.framework.commons.config.WebProperties;
|
||||
import cd.casic.framework.commons.enums.TerminalEnum;
|
||||
import cd.casic.framework.commons.enums.UserTypeEnum;
|
||||
import cd.casic.framework.commons.pojo.CommonResult;
|
||||
import cd.casic.framework.web.config.WebProperties;
|
||||
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import jakarta.servlet.ServletRequest;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.framework.apilog.config;
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
import cd.casic.framework.apilog.core.filter.ApiAccessLogFilter;
|
||||
import cd.casic.framework.apilog.core.interceptor.ApiAccessLogInterceptor;
|
||||
import cd.casic.framework.commons.config.WebProperties;
|
||||
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
|
||||
import cd.casic.framework.web.config.OpsWebAutoConfiguration;
|
||||
import cd.casic.framework.web.config.WebProperties;
|
||||
|
||||
import cd.casic.module.infra.api.logger.ApiAccessLogApi;
|
||||
import jakarta.servlet.Filter;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
@ -2,8 +2,9 @@ package cd.casic.framework.datapermission.config;
|
||||
|
||||
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRule;
|
||||
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer;
|
||||
import cd.casic.framework.datapermission.service.PermissionApi;
|
||||
import cd.casic.framework.security.core.LoginUser;
|
||||
import cd.casic.module.system.api.permission.PermissionApi;
|
||||
|
||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
|
@ -1,15 +1,17 @@
|
||||
package cd.casic.framework.security.config;
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
|
||||
import cd.casic.framework.datapermission.service.PermissionApi;
|
||||
import cd.casic.framework.datapermission.service.SecurityFrameworkService;
|
||||
import cd.casic.framework.datapermission.service.SecurityFrameworkServiceImpl;
|
||||
import cd.casic.framework.datapermission.service.user.OAuth2TokenApi;
|
||||
import cd.casic.framework.datapermission.service.user.OAuth2TokenApiImpl;
|
||||
import cd.casic.framework.security.config.SecurityProperties;
|
||||
import cd.casic.framework.security.core.context.TransmittableThreadLocalSecurityContextHolderStrategy;
|
||||
import cd.casic.framework.security.core.filter.TokenAuthenticationFilter;
|
||||
import cd.casic.framework.datapermission.core.filter.TokenAuthenticationFilter;
|
||||
import cd.casic.framework.security.core.handler.AccessDeniedHandlerImpl;
|
||||
import cd.casic.framework.security.core.handler.AuthenticationEntryPointImpl;
|
||||
import cd.casic.framework.security.core.service.SecurityFrameworkService;
|
||||
import cd.casic.framework.security.core.service.SecurityFrameworkServiceImpl;
|
||||
import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
|
||||
import cd.casic.module.system.api.oauth2.OAuth2TokenApi;
|
||||
import cd.casic.module.system.api.permission.PermissionApi;
|
||||
import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.beans.factory.config.MethodInvokingFactoryBean;
|
||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
|
||||
@ -68,12 +70,12 @@ public class OpsSecurityAutoConfiguration {
|
||||
/**
|
||||
* Token 认证过滤器 Bean
|
||||
*/
|
||||
|
||||
@Bean
|
||||
public TokenAuthenticationFilter authenticationTokenFilter(GlobalExceptionHandler globalExceptionHandler,
|
||||
OAuth2TokenApi oauth2TokenApi) {
|
||||
return new TokenAuthenticationFilter(securityProperties, globalExceptionHandler, oauth2TokenApi);
|
||||
}
|
||||
|
||||
@Bean("ss") // 使用 Spring Security 的缩写,方便使用
|
||||
public SecurityFrameworkService securityFrameworkService(PermissionApi permissionApi) {
|
||||
return new SecurityFrameworkServiceImpl(permissionApi);
|
@ -1,11 +1,12 @@
|
||||
package cd.casic.framework.web.config;
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
import cd.casic.framework.commons.config.WebProperties;
|
||||
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
|
||||
import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
|
||||
import cd.casic.framework.datapermission.handler.GlobalResponseBodyHandler;
|
||||
import cd.casic.framework.web.core.filter.CacheRequestBodyFilter;
|
||||
import cd.casic.framework.web.core.filter.DemoFilter;
|
||||
import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
|
||||
import cd.casic.framework.web.core.handler.GlobalResponseBodyHandler;
|
||||
import cd.casic.framework.web.core.util.WebFrameworkUtils;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
import cd.casic.module.infra.api.logger.ApiErrorLogApi;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.Filter;
|
@ -1,7 +1,9 @@
|
||||
package cd.casic.framework.security.config;
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
import cd.casic.framework.security.core.filter.TokenAuthenticationFilter;
|
||||
import cd.casic.framework.web.config.WebProperties;
|
||||
import cd.casic.framework.commons.config.WebProperties;
|
||||
import cd.casic.framework.datapermission.core.filter.TokenAuthenticationFilter;
|
||||
import cd.casic.framework.security.config.AuthorizeRequestsCustomizer;
|
||||
import cd.casic.framework.security.config.SecurityProperties;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.google.common.collect.HashMultimap;
|
||||
import com.google.common.collect.Multimap;
|
||||
@ -146,6 +148,7 @@ public class OpsWebSecurityConfigurerAdapter {
|
||||
|
||||
// 添加 Token Filter
|
||||
httpSecurity.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class);
|
||||
|
||||
return httpSecurity.build();
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package cd.casic.framework.xss.config;
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
|
||||
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
|
||||
import cd.casic.framework.xss.config.XssProperties;
|
||||
import cd.casic.framework.xss.core.clean.JsoupXssCleaner;
|
||||
import cd.casic.framework.xss.core.clean.XssCleaner;
|
||||
import cd.casic.framework.xss.core.filter.XssFilter;
|
||||
@ -18,7 +19,6 @@ import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.util.PathMatcher;
|
||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||
|
||||
import static cd.casic.framework.web.config.OpsWebAutoConfiguration.createFilterBean;
|
||||
|
||||
@AutoConfiguration
|
||||
@EnableConfigurationProperties(XssProperties.class)
|
||||
@ -58,7 +58,7 @@ public class OpsXssAutoConfiguration implements WebMvcConfigurer {
|
||||
@Bean
|
||||
@ConditionalOnBean(XssCleaner.class)
|
||||
public FilterRegistrationBean<XssFilter> xssFilter(XssProperties properties, PathMatcher pathMatcher, XssCleaner xssCleaner) {
|
||||
return createFilterBean(new XssFilter(properties, pathMatcher, xssCleaner), WebFilterOrderEnum.XSS_FILTER);
|
||||
return OpsWebAutoConfiguration.createFilterBean(new XssFilter(properties, pathMatcher, xssCleaner), WebFilterOrderEnum.XSS_FILTER);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
package cd.casic.framework.datapermission.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* 多租户配置
|
||||
*
|
||||
* @author mianbin modified from yudao
|
||||
*/
|
||||
@ConfigurationProperties(prefix = "ops.tenant")
|
||||
@Data
|
||||
public class TenantProperties {
|
||||
|
||||
/**
|
||||
* 租户是否开启
|
||||
*/
|
||||
private static final Boolean ENABLE_DEFAULT = true;
|
||||
|
||||
/**
|
||||
* 是否开启
|
||||
*/
|
||||
private Boolean enable = ENABLE_DEFAULT;
|
||||
|
||||
/**
|
||||
* 需要忽略多租户的请求
|
||||
*
|
||||
* 默认情况下,每个请求需要带上 tenant-id 的请求头。但是,部分请求是无需带上的,例如说短信回调、支付回调等 Open API!
|
||||
*/
|
||||
private Set<String> ignoreUrls = Collections.emptySet();
|
||||
|
||||
/**
|
||||
* 需要忽略多租户的表
|
||||
*
|
||||
* 即默认所有表都开启多租户的功能,所以记得添加对应的 tenant_id 字段哟
|
||||
*/
|
||||
private Set<String> ignoreTables = Collections.emptySet();
|
||||
|
||||
/**
|
||||
* 需要忽略多租户的 Spring Cache 缓存
|
||||
*
|
||||
* 即默认所有缓存都开启多租户的功能,所以记得添加对应的 tenant_id 字段哟
|
||||
*/
|
||||
private Set<String> ignoreCaches = Collections.emptySet();
|
||||
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
package cd.casic.module.system.convert.tenant;
|
||||
package cd.casic.framework.datapermission.convert;
|
||||
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
|
||||
import cd.casic.module.system.controller.admin.user.vo.user.UserSaveReqVO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
|
||||
import cd.casic.framework.datapermission.core.vo.UserSaveReqVO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
@ -1,18 +1,18 @@
|
||||
package cd.casic.module.system.convert.user;
|
||||
package cd.casic.framework.datapermission.convert;
|
||||
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.commons.util.collection.MapUtils;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostSimpleRespVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RoleSimpleRespVO;
|
||||
import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileRespVO;
|
||||
import cd.casic.module.system.controller.admin.user.vo.user.UserRespVO;
|
||||
import cd.casic.module.system.controller.admin.user.vo.user.UserSimpleRespVO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.DeptDO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.PostDO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cd.casic.framework.security.vo.dept.DeptSimpleRespVO;
|
||||
import cd.casic.framework.security.vo.dept.post.PostSimpleRespVO;
|
||||
import cd.casic.framework.datapermission.core.vo.role.RoleSimpleRespVO;
|
||||
import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileRespVO;
|
||||
import cd.casic.framework.datapermission.core.vo.UserRespVO;
|
||||
import cd.casic.framework.datapermission.core.vo.UserSimpleRespVO;
|
||||
import cd.casic.framework.commons.dataobject.dept.DeptDO;
|
||||
import cd.casic.framework.commons.dataobject.dept.PostDO;
|
||||
import cd.casic.framework.security.dal.permission.RoleDO;
|
||||
import cd.casic.framework.security.dal.user.AdminUserDO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.dal.mysql.user;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.datapermission.core.vo.UserPageReqVO;
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.user.vo.user.UserPageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cd.casic.framework.security.dal.user.AdminUserDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.Collection;
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.dal.mysql.logger;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
|
||||
import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.framework.security.vo.logger.LoginLogDO;
|
||||
import cd.casic.module.system.enums.logger.LoginResultEnum;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
@ -1,9 +1,10 @@
|
||||
package cd.casic.module.system.dal.mysql.permission;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
|
||||
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.MenuDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
@ -1,11 +1,11 @@
|
||||
package cd.casic.module.system.dal.mysql.permission;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.framework.security.dal.permission.RoleDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.springframework.lang.Nullable;
|
||||
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.dal.mysql.tenant;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
@ -1,10 +1,11 @@
|
||||
package cd.casic.module.system.dal.mysql.tenant;
|
||||
package cd.casic.framework.datapermission.core.dal;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
|
||||
|
||||
import cd.casic.framework.security.dal.tenant.TenantPackageDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
@ -1,7 +1,7 @@
|
||||
package cd.casic.module.system.dal.dataobject.permission;
|
||||
package cd.casic.framework.datapermission.core.dal.dataobject;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import cd.casic.module.system.enums.permission.MenuTypeEnum;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
@ -1,14 +1,14 @@
|
||||
package cd.casic.framework.security.core.filter;
|
||||
package cd.casic.framework.datapermission.core.filter;
|
||||
|
||||
import cd.casic.framework.commons.exception.ServiceException;
|
||||
import cd.casic.framework.commons.pojo.CommonResult;
|
||||
import cd.casic.framework.commons.util.servlet.ServletUtils;
|
||||
import cd.casic.framework.datapermission.service.user.OAuth2TokenApi;
|
||||
import cd.casic.framework.security.config.SecurityProperties;
|
||||
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import cd.casic.framework.security.core.LoginUser;
|
||||
import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
|
||||
import cd.casic.framework.web.core.util.WebFrameworkUtils;
|
||||
import cd.casic.module.system.api.oauth2.OAuth2TokenApi;
|
||||
import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
@ -4,11 +4,11 @@ import cd.casic.framework.commons.enums.UserTypeEnum;
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.commons.util.json.JsonUtils;
|
||||
import cd.casic.framework.datapermission.core.rule.DataPermissionRule;
|
||||
import cd.casic.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||
import cd.casic.framework.datapermission.service.PermissionApi;
|
||||
import cd.casic.framework.mybatis.core.util.MyBatisUtils;
|
||||
import cd.casic.framework.security.core.LoginUser;
|
||||
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import cd.casic.module.system.api.permission.PermissionApi;
|
||||
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.role;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
@ -1,8 +1,10 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
|
||||
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
|
||||
import cd.casic.framework.excel.excel.core.convert.DictConvert;
|
||||
import cd.casic.module.system.enums.DictTypeConstants;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Builder;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
|
||||
import cd.casic.framework.excel.excel.core.convert.DictConvert;
|
@ -1,10 +1,11 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import cd.casic.framework.datapermission.operatelog.core.DeptParseFunction;
|
||||
import cd.casic.framework.datapermission.operatelog.core.PostParseFunction;
|
||||
import cd.casic.framework.datapermission.operatelog.core.SexParseFunction;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cd.casic.framework.commons.validation.Mobile;
|
||||
import cd.casic.module.system.framework.operatelog.core.DeptParseFunction;
|
||||
import cd.casic.module.system.framework.operatelog.core.PostParseFunction;
|
||||
import cd.casic.module.system.framework.operatelog.core.SexParseFunction;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.mzt.logapi.starter.annotation.DiffLogField;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.user;
|
||||
package cd.casic.framework.datapermission.core.vo;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.validation.InEnum;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.tenant.vo.packages;
|
||||
package cd.casic.framework.datapermission.core.vo.packages;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.tenant.vo.packages;
|
||||
package cd.casic.framework.datapermission.core.vo.packages;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.tenant.vo.packages;
|
||||
package cd.casic.framework.datapermission.core.vo.packages;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.validation.InEnum;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.tenant.vo.packages;
|
||||
package cd.casic.framework.datapermission.core.vo.packages;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.role;
|
||||
package cd.casic.framework.datapermission.core.vo.role;
|
||||
|
||||
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
|
||||
import cd.casic.framework.excel.excel.core.convert.DictConvert;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.role;
|
||||
package cd.casic.framework.datapermission.core.vo.role;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.validation.InEnum;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.role;
|
||||
package cd.casic.framework.datapermission.core.vo.role;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.framework.web.core.handler;
|
||||
package cd.casic.framework.datapermission.handler;
|
||||
|
||||
import cd.casic.module.infra.api.logger.ApiErrorLogApi;
|
||||
import cd.casic.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO;
|
||||
@ -14,7 +14,7 @@ import cd.casic.framework.commons.util.collection.SetUtils;
|
||||
import cd.casic.framework.commons.util.json.JsonUtils;
|
||||
import cd.casic.framework.commons.util.monitor.TracerUtils;
|
||||
import cd.casic.framework.commons.util.servlet.ServletUtils;
|
||||
import cd.casic.framework.web.core.util.WebFrameworkUtils;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
|
||||
import com.fasterxml.jackson.databind.exc.InvalidFormatException;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
@ -25,6 +25,7 @@ import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.http.converter.HttpMessageNotReadableException;
|
||||
import org.springframework.security.access.AccessDeniedException;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.validation.BindException;
|
||||
import org.springframework.validation.FieldError;
|
||||
@ -51,6 +52,7 @@ import static cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstant
|
||||
@RestControllerAdvice
|
||||
@AllArgsConstructor
|
||||
@Slf4j
|
||||
@Component
|
||||
public class GlobalExceptionHandler {
|
||||
|
||||
/**
|
@ -1,7 +1,7 @@
|
||||
package cd.casic.framework.web.core.handler;
|
||||
package cd.casic.framework.datapermission.handler;
|
||||
|
||||
import cd.casic.framework.commons.pojo.CommonResult;
|
||||
import cd.casic.framework.web.core.util.WebFrameworkUtils;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
import org.springframework.core.MethodParameter;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.server.ServerHttpRequest;
|
@ -1,9 +1,9 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.datapermission.service.user.AdminUserService;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cd.casic.module.system.service.user.AdminUserService;
|
||||
import cd.casic.framework.security.dal.user.AdminUserDO;
|
||||
import com.mzt.logapi.service.IParseFunction;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
@ -1,6 +1,7 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.redis.core.utils.AreaUtils;
|
||||
|
||||
import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.mzt.logapi.service.IParseFunction;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.excel.dict.core.DictFrameworkUtils;
|
||||
import cn.hutool.core.util.StrUtil;
|
@ -1,9 +1,9 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.commons.dataobject.dept.DeptDO;
|
||||
import cd.casic.framework.datapermission.service.dept.DeptService;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cd.casic.module.system.dal.dataobject.dept.DeptDO;
|
||||
import cd.casic.module.system.service.dept.DeptService;
|
||||
import com.mzt.logapi.service.IParseFunction;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
@ -1,9 +1,10 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.commons.dataobject.dept.PostDO;
|
||||
import cd.casic.framework.datapermission.service.dept.PostService;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cd.casic.module.system.dal.dataobject.dept.PostDO;
|
||||
import cd.casic.module.system.service.dept.PostService;
|
||||
import com.mzt.logapi.service.IParseFunction;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.framework.operatelog.core;
|
||||
package cd.casic.framework.datapermission.operatelog.core;
|
||||
|
||||
import cd.casic.framework.excel.dict.core.DictFrameworkUtils;
|
||||
import cn.hutool.core.util.StrUtil;
|
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* 占位文件,避免文件夹缩进
|
||||
*/
|
||||
package cd.casic.framework.datapermission.operatelog;
|
@ -1,10 +1,11 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuTreeVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.MenuDO;
|
||||
|
||||
import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuSaveVO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuTreeVO;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
@ -1,17 +1,18 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.datapermission.core.dal.MenuMapper;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuSaveVO;
|
||||
import cd.casic.framework.datapermission.service.permission.menu.MenuTreeVO;
|
||||
|
||||
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuTreeVO;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.MenuDO;
|
||||
import cd.casic.module.system.dal.mysql.permission.MenuMapper;
|
||||
import cd.casic.module.system.dal.redis.RedisKeyConstants;
|
||||
import cd.casic.framework.security.redis.RedisKeyConstants;
|
||||
import cd.casic.module.system.enums.permission.MenuTypeEnum;
|
||||
import cd.casic.module.system.service.tenant.TenantService;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import com.google.common.collect.Lists;
|
||||
import jakarta.annotation.Resource;
|
||||
@ -28,9 +29,8 @@ import java.util.stream.Collectors;
|
||||
import static cd.casic.framework.commons.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cd.casic.framework.commons.util.collection.CollectionUtils.convertList;
|
||||
import static cd.casic.framework.commons.util.collection.CollectionUtils.convertMap;
|
||||
import static cd.casic.module.system.dal.dataobject.permission.MenuDO.ID_ROOT;
|
||||
import static cd.casic.module.system.enums.ErrorCodeConstants.*;
|
||||
|
||||
import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
|
||||
/**
|
||||
* 菜单 Service 实现
|
||||
*
|
||||
@ -150,7 +150,7 @@ public class MenuServiceImpl implements MenuService {
|
||||
|
||||
// 2. 遍历到 parentId 为根节点,则无需判断
|
||||
Long parentId = node.getParentId();
|
||||
if (ObjUtil.equal(parentId, ID_ROOT)) {
|
||||
if (ObjUtil.equal(parentId, MenuDO.ID_ROOT)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -172,7 +172,7 @@ public class MenuServiceImpl implements MenuService {
|
||||
@Cacheable(value = RedisKeyConstants.PERMISSION_MENU_ID_LIST, key = "#permission")
|
||||
public List<Long> getMenuIdListByPermissionFromCache(String permission) {
|
||||
List<MenuDO> menus = menuMapper.selectListByPermission(permission);
|
||||
return convertList(menus, MenuDO::getId);
|
||||
return CollectionUtils.convertList(menus, MenuDO::getId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -200,8 +200,8 @@ public class MenuServiceImpl implements MenuService {
|
||||
* @param childId 当前菜单编号
|
||||
*/
|
||||
@VisibleForTesting
|
||||
void validateParentMenu(Long parentId, Long childId) {
|
||||
if (parentId == null || ID_ROOT.equals(parentId)) {
|
||||
public void validateParentMenu(Long parentId, Long childId) {
|
||||
if (parentId == null || MenuDO.ID_ROOT.equals(parentId)) {
|
||||
return;
|
||||
}
|
||||
// 不能设置自己为父菜单
|
||||
@ -230,7 +230,7 @@ public class MenuServiceImpl implements MenuService {
|
||||
* @param id 菜单编号
|
||||
*/
|
||||
@VisibleForTesting
|
||||
void validateMenu(Long parentId, String name, Long id) {
|
||||
public void validateMenu(Long parentId, String name, Long id) {
|
||||
MenuDO menu = menuMapper.selectByParentIdAndName(parentId, name);
|
||||
if (menu == null) {
|
||||
return;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.api.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
|
||||
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
@ -1,8 +1,7 @@
|
||||
package cd.casic.module.system.api.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
||||
import cd.casic.module.system.service.permission.PermissionService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.Collection;
|
||||
@ -13,7 +12,7 @@ import java.util.Set;
|
||||
*
|
||||
* @author mianbin modified from yudao
|
||||
*/
|
||||
@Service
|
||||
@Component
|
||||
public class PermissionApiImpl implements PermissionApi {
|
||||
|
||||
@Resource
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
|
||||
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
@ -1,5 +1,10 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
|
||||
import cd.casic.framework.datapermission.service.dept.DeptService;
|
||||
|
||||
|
||||
import cd.casic.framework.security.dal.permission.*;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
@ -8,16 +13,9 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.datapermission.core.annotation.DataPermission;
|
||||
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.MenuDO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleMenuDO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.UserRoleDO;
|
||||
import cd.casic.module.system.dal.mysql.permission.RoleMenuMapper;
|
||||
import cd.casic.module.system.dal.mysql.permission.UserRoleMapper;
|
||||
import cd.casic.module.system.dal.redis.RedisKeyConstants;
|
||||
import cd.casic.framework.security.redis.RedisKeyConstants;
|
||||
import cd.casic.module.system.enums.permission.DataScopeEnum;
|
||||
import cd.casic.module.system.service.dept.DeptService;
|
||||
import cd.casic.module.system.service.user.AdminUserService;
|
||||
import cd.casic.framework.datapermission.service.user.AdminUserService;
|
||||
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import com.google.common.base.Suppliers;
|
||||
@ -201,7 +199,6 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
}
|
||||
|
||||
// ========== 用户-角色的相关方法 ==========
|
||||
|
||||
@Override
|
||||
@DSTransactional // 多数据源,使用 @DSTransactional 保证本地事务,以及数据源的切换
|
||||
@CacheEvict(value = RedisKeyConstants.USER_ROLE_ID_LIST, key = "#userId")
|
||||
@ -256,7 +253,7 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
* @return 用户拥有的角色
|
||||
*/
|
||||
@VisibleForTesting
|
||||
List<RoleDO> getEnableUserRoleListByUserIdFromCache(Long userId) {
|
||||
public List<RoleDO> getEnableUserRoleListByUserIdFromCache(Long userId) {
|
||||
// 获得用户拥有的角色编号
|
||||
Set<Long> roleIds = getSelf().getUserRoleIdListByUserIdFromCache(userId);
|
||||
// 获得角色数组,并移除被禁用的
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
|
||||
import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.framework.security.dal.permission.RoleDO;
|
||||
import jakarta.validation.Valid;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
@ -1,5 +1,10 @@
|
||||
package cd.casic.module.system.service.permission;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.commons.exception.util.ServiceExceptionUtil;
|
||||
import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
|
||||
import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.framework.security.dal.permission.RoleDO;
|
||||
import cd.casic.framework.datapermission.core.dal.RoleMapper;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
@ -9,11 +14,7 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.module.system.dal.mysql.permission.RoleMapper;
|
||||
import cd.casic.module.system.dal.redis.RedisKeyConstants;
|
||||
import cd.casic.framework.security.redis.RedisKeyConstants;
|
||||
import cd.casic.module.system.enums.permission.DataScopeEnum;
|
||||
import cd.casic.module.system.enums.permission.RoleCodeEnum;
|
||||
import cd.casic.module.system.enums.permission.RoleTypeEnum;
|
||||
@ -133,7 +134,7 @@ public class RoleServiceImpl implements RoleService {
|
||||
* @param id 角色编号
|
||||
*/
|
||||
@VisibleForTesting
|
||||
void validateRoleDuplicate(String name, String code, Long id) {
|
||||
public void validateRoleDuplicate(String name, String code, Long id) {
|
||||
// 0. 超级管理员,不允许创建
|
||||
if (RoleCodeEnum.isSuperAdmin(code)) {
|
||||
throw exception(ROLE_ADMIN_CODE_ERROR, code);
|
||||
@ -160,7 +161,7 @@ public class RoleServiceImpl implements RoleService {
|
||||
* @param id 角色编号
|
||||
*/
|
||||
@VisibleForTesting
|
||||
RoleDO validateRoleForUpdate(Long id) {
|
||||
public RoleDO validateRoleForUpdate(Long id) {
|
||||
RoleDO role = roleMapper.selectById(id);
|
||||
if (role == null) {
|
||||
throw exception(ROLE_NOT_EXISTS);
|
||||
@ -245,7 +246,7 @@ public class RoleServiceImpl implements RoleService {
|
||||
throw exception(ROLE_NOT_EXISTS);
|
||||
}
|
||||
if (!CommonStatusEnum.ENABLE.getStatus().equals(role.getStatus())) {
|
||||
throw exception(ROLE_IS_DISABLE, role.getName());
|
||||
throw ServiceExceptionUtil.exception(ROLE_IS_DISABLE, role.getName());
|
||||
}
|
||||
});
|
||||
}
|
@ -0,0 +1,59 @@
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
/**
|
||||
* Security 框架 Service 接口,定义权限相关的校验操作
|
||||
*
|
||||
* @author mianbin modified from yudao
|
||||
*/
|
||||
public interface SecurityFrameworkService {
|
||||
|
||||
/**
|
||||
* 判断是否有权限
|
||||
*
|
||||
* @param permission 权限
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasPermission(String permission);
|
||||
|
||||
/**
|
||||
* 判断是否有权限,任一一个即可
|
||||
*
|
||||
* @param permissions 权限
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasAnyPermissions(String... permissions);
|
||||
|
||||
/**
|
||||
* 判断是否有角色
|
||||
*
|
||||
* 注意,角色使用的是 SysRoleDO 的 code 标识
|
||||
*
|
||||
* @param role 角色
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasRole(String role);
|
||||
|
||||
/**
|
||||
* 判断是否有角色,任一一个即可
|
||||
*
|
||||
* @param roles 角色数组
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasAnyRoles(String... roles);
|
||||
|
||||
/**
|
||||
* 判断是否有授权
|
||||
*
|
||||
* @param scope 授权
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasScope(String scope);
|
||||
|
||||
/**
|
||||
* 判断是否有授权范围,任一一个即可
|
||||
*
|
||||
* @param scope 授权范围数组
|
||||
* @return 是否
|
||||
*/
|
||||
boolean hasAnyScopes(String... scope);
|
||||
}
|
@ -1,8 +1,7 @@
|
||||
package cd.casic.framework.security.core.service;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.security.core.LoginUser;
|
||||
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import cd.casic.module.system.api.permission.PermissionApi;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
@ -1,9 +1,9 @@
|
||||
package cd.casic.module.system.service.tenant;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackageSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
|
||||
import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantPackageDO;
|
||||
|
||||
import jakarta.validation.Valid;
|
||||
import java.util.List;
|
@ -1,15 +1,16 @@
|
||||
package cd.casic.module.system.service.tenant;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.datapermission.core.dal.TenantPackageMapper;
|
||||
import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackageSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
|
||||
import cd.casic.module.system.dal.mysql.tenant.TenantPackageMapper;
|
||||
|
||||
import cd.casic.framework.security.dal.tenant.TenantDO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantPackageDO;
|
||||
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import org.springframework.context.annotation.Lazy;
|
@ -1,12 +1,13 @@
|
||||
package cd.casic.module.system.service.tenant;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.tenant.core.context.TenantContextHolder;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
|
||||
import cd.casic.module.system.service.tenant.handler.TenantInfoHandler;
|
||||
import cd.casic.module.system.service.tenant.handler.TenantMenuHandler;
|
||||
import cd.casic.framework.commons.context.TenantContextHolder;
|
||||
|
||||
import cd.casic.framework.datapermission.service.handler.TenantInfoHandler;
|
||||
import cd.casic.framework.datapermission.service.handler.TenantMenuHandler;
|
||||
import cd.casic.framework.security.dal.tenant.TenantDO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
|
||||
|
||||
import jakarta.validation.Valid;
|
||||
import java.util.List;
|
@ -1,4 +1,20 @@
|
||||
package cd.casic.module.system.service.tenant;
|
||||
package cd.casic.framework.datapermission.service;
|
||||
|
||||
import cd.casic.framework.commons.exception.util.ServiceExceptionUtil;
|
||||
|
||||
import cd.casic.framework.datapermission.config.TenantProperties;
|
||||
import cd.casic.framework.datapermission.convert.TenantConvert;
|
||||
import cd.casic.framework.datapermission.core.dal.TenantMapper;
|
||||
import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
|
||||
import cd.casic.framework.datapermission.service.handler.TenantInfoHandler;
|
||||
import cd.casic.framework.datapermission.service.handler.TenantMenuHandler;
|
||||
import cd.casic.framework.datapermission.service.user.AdminUserService;
|
||||
import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.framework.security.dal.permission.RoleDO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantDO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantPackageDO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.lang.Assert;
|
||||
@ -9,33 +25,16 @@ import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.framework.commons.util.date.DateUtils;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.framework.tenant.config.TenantProperties;
|
||||
import cd.casic.framework.tenant.core.context.TenantContextHolder;
|
||||
import cd.casic.framework.tenant.core.util.TenantUtils;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
|
||||
import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
|
||||
import cd.casic.module.system.convert.tenant.TenantConvert;
|
||||
import cd.casic.module.system.dal.dataobject.permission.MenuDO;
|
||||
import cd.casic.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
|
||||
import cd.casic.module.system.dal.mysql.tenant.TenantMapper;
|
||||
import cd.casic.framework.commons.context.TenantContextHolder;
|
||||
import cd.casic.framework.commons.util.tenant.TenantUtils;
|
||||
import cd.casic.module.system.enums.permission.RoleCodeEnum;
|
||||
import cd.casic.module.system.enums.permission.RoleTypeEnum;
|
||||
import cd.casic.module.system.service.permission.MenuService;
|
||||
import cd.casic.module.system.service.permission.PermissionService;
|
||||
import cd.casic.module.system.service.permission.RoleService;
|
||||
import cd.casic.module.system.service.tenant.handler.TenantInfoHandler;
|
||||
import cd.casic.module.system.service.tenant.handler.TenantMenuHandler;
|
||||
import cd.casic.module.system.service.user.AdminUserService;
|
||||
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
@ -87,10 +86,10 @@ public class TenantServiceImpl implements TenantService {
|
||||
throw exception(TENANT_NOT_EXISTS);
|
||||
}
|
||||
if (tenant.getStatus().equals(CommonStatusEnum.DISABLE.getStatus())) {
|
||||
throw exception(TENANT_DISABLE, tenant.getName());
|
||||
throw ServiceExceptionUtil.exception(TENANT_DISABLE, tenant.getName());
|
||||
}
|
||||
if (DateUtils.isExpired(tenant.getExpireTime())) {
|
||||
throw exception(TENANT_EXPIRE, tenant.getName());
|
||||
throw ServiceExceptionUtil.exception(TENANT_EXPIRE, tenant.getName());
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.auth.vo;
|
||||
package cd.casic.framework.datapermission.service.auth.vo;
|
||||
|
||||
import cd.casic.framework.commons.validation.InEnum;
|
||||
import cn.hutool.core.util.StrUtil;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.auth.vo;
|
||||
package cd.casic.framework.datapermission.service.auth.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.auth.vo;
|
||||
package cd.casic.framework.datapermission.service.auth.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.auth.vo;
|
||||
package cd.casic.framework.datapermission.service.auth.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,8 +1,9 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.profile;
|
||||
package cd.casic.framework.datapermission.service.auth.vo.profile;
|
||||
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostSimpleRespVO;
|
||||
import cd.casic.module.system.controller.admin.permission.vo.role.RoleSimpleRespVO;
|
||||
import cd.casic.framework.datapermission.core.vo.role.RoleSimpleRespVO;
|
||||
import cd.casic.framework.security.vo.dept.DeptSimpleRespVO;
|
||||
|
||||
import cd.casic.framework.security.vo.dept.post.PostSimpleRespVO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.profile;
|
||||
package cd.casic.framework.datapermission.service.auth.vo.profile;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.user.vo.profile;
|
||||
package cd.casic.framework.datapermission.service.auth.vo.profile;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.Email;
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.service.dept;
|
||||
package cd.casic.framework.datapermission.service.dept;
|
||||
|
||||
|
||||
import cd.casic.framework.commons.util.collection.CollectionUtils;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.DeptDO;
|
||||
import cd.casic.framework.commons.dataobject.dept.DeptDO;
|
||||
import cd.casic.framework.security.vo.dept.DeptListReqVO;
|
||||
import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
|
||||
|
||||
import java.util.*;
|
||||
|
@ -1,15 +1,16 @@
|
||||
package cd.casic.module.system.service.dept;
|
||||
package cd.casic.framework.datapermission.service.dept;
|
||||
|
||||
import cd.casic.framework.datapermission.core.annotation.DataPermission;
|
||||
import cd.casic.framework.security.dal.dept.DeptMapper;
|
||||
import cd.casic.framework.security.vo.dept.DeptListReqVO;
|
||||
import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.framework.datapermission.core.annotation.DataPermission;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.DeptDO;
|
||||
import cd.casic.module.system.dal.mysql.dept.DeptMapper;
|
||||
import cd.casic.module.system.dal.redis.RedisKeyConstants;
|
||||
|
||||
import cd.casic.framework.commons.dataobject.dept.DeptDO;
|
||||
import cd.casic.framework.security.redis.RedisKeyConstants;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
@ -89,7 +90,7 @@ public class DeptServiceImpl implements DeptService {
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void validateDeptExists(Long id) {
|
||||
public void validateDeptExists(Long id) {
|
||||
if (id == null) {
|
||||
return;
|
||||
}
|
||||
@ -100,7 +101,7 @@ public class DeptServiceImpl implements DeptService {
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void validateParentDept(Long id, Long parentId) {
|
||||
public void validateParentDept(Long id, Long parentId) {
|
||||
if (parentId == null || DeptDO.PARENT_ID_ROOT.equals(parentId)) {
|
||||
return;
|
||||
}
|
||||
@ -135,7 +136,7 @@ public class DeptServiceImpl implements DeptService {
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void validateDeptNameUnique(Long id, Long parentId, String name) {
|
||||
public void validateDeptNameUnique(Long id, Long parentId, String name) {
|
||||
DeptDO dept = deptMapper.selectByParentIdAndName(parentId, name);
|
||||
if (dept == null) {
|
||||
return;
|
@ -1,9 +1,9 @@
|
||||
package cd.casic.module.system.service.dept;
|
||||
package cd.casic.framework.datapermission.service.dept;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.PostDO;
|
||||
import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
|
||||
import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
|
||||
import cd.casic.framework.commons.dataobject.dept.PostDO;
|
||||
import org.springframework.lang.Nullable;
|
||||
|
||||
import java.util.Collection;
|
@ -1,13 +1,14 @@
|
||||
package cd.casic.module.system.service.dept;
|
||||
package cd.casic.framework.datapermission.service.dept;
|
||||
|
||||
import cd.casic.framework.security.dal.dept.PostMapper;
|
||||
import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
|
||||
import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
|
||||
import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.dept.PostDO;
|
||||
import cd.casic.module.system.dal.mysql.dept.PostMapper;
|
||||
|
||||
import cd.casic.framework.commons.dataobject.dept.PostDO;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package cd.casic.module.system.service.tenant.handler;
|
||||
package cd.casic.framework.datapermission.service.handler;
|
||||
|
||||
import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
|
||||
import cd.casic.framework.security.dal.tenant.TenantDO;
|
||||
|
||||
/**
|
||||
* 租户信息处理
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.service.tenant.handler;
|
||||
package cd.casic.framework.datapermission.service.handler;
|
||||
|
||||
import java.util.Set;
|
||||
|
@ -1,10 +1,10 @@
|
||||
package cd.casic.module.system.service.logger;
|
||||
package cd.casic.framework.datapermission.service.log;
|
||||
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.security.vo.logger.LoginLogDO;
|
||||
import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
|
||||
import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
|
||||
import jakarta.validation.Valid;
|
||||
|
||||
/**
|
@ -1,11 +1,12 @@
|
||||
package cd.casic.module.system.service.logger;
|
||||
package cd.casic.framework.datapermission.service.log;
|
||||
|
||||
import cd.casic.framework.commons.pojo.PageResult;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.framework.datapermission.core.dal.LoginLogMapper;
|
||||
import cd.casic.framework.security.vo.logger.LoginLogDO;
|
||||
import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
|
||||
import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
|
||||
import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
|
||||
import cd.casic.module.system.dal.mysql.logger.LoginLogMapper;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.menu;
|
||||
package cd.casic.framework.datapermission.service.permission.menu;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.menu;
|
||||
package cd.casic.framework.datapermission.service.permission.menu;
|
||||
|
||||
import cd.casic.framework.commons.enums.CommonStatusEnum;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.menu;
|
||||
package cd.casic.framework.datapermission.service.permission.menu;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
@ -1,4 +1,4 @@
|
||||
package cd.casic.module.system.controller.admin.permission.vo.menu;
|
||||
package cd.casic.framework.datapermission.service.permission.menu;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user