Compare commits

...

84 Commits
master ... temp

Author SHA1 Message Date
HopeLi
6b34993a07 0517 ljc 2025-05-17 17:19:06 +08:00
HopeLi
42dc4fb51e Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-17 17:14:02 +08:00
HopeLi
34d94b0e98 0517 ljc 2025-05-17 17:13:44 +08:00
even
57a6f96138 TODO添加 2025-05-17 01:14:44 +08:00
even
69d168f4a8 执行引擎部分代码(未完成) 2025-05-17 01:10:21 +08:00
even
49dbe611f2 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/pipeline/PipPipeline.java
2025-05-17 01:00:36 +08:00
even
69b0c0b765 执行引擎部分代码(未完成) 2025-05-17 00:59:27 +08:00
even
ddf3ff7069 执行引擎部分代码(未完成) 2025-05-17 00:56:49 +08:00
HopeLi
08ea03fd77 0516 ljc 2025-05-16 17:04:20 +08:00
HopeLi
734f44dfd3 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-common-pipeline/src/main/java/cd/casic/ci/common/pipeline/req/pipeline/PipelineUpdateReq.java
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/pipeline/PipPipeline.java
2025-05-16 16:14:49 +08:00
HopeLi
a6958b930d 0516 ljc 2025-05-16 16:12:21 +08:00
even
7758a6d5eb 执行引擎部分代码(开了个头),stage,task主键字段改为id 2025-05-16 16:03:37 +08:00
even
969def7fc3 执行引擎部分代码(开了个头),stage,task主键字段改为id 2025-05-16 15:29:11 +08:00
even
b5c7584135 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-16 09:28:03 +08:00
HopeLi
4086b0ded7 0516 ljc 2025-05-16 09:26:17 +08:00
even
a9d272f15f Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-16 09:26:04 +08:00
even
3be7e496b4 mapstruct暂时注释,tableIgnore 字段添加 2025-05-16 09:25:52 +08:00
HopeLi
337ee85667 0515 ljc 2025-05-15 18:47:14 +08:00
even
ee5b471334 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/stage/PipStage.java
2025-05-15 18:33:02 +08:00
even
c75d733edb 字段修改 2025-05-15 18:32:40 +08:00
HopeLi
d2dfc0f0e1 0515 ljc 2025-05-15 18:26:01 +08:00
even
c3d042144f Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-15 17:34:30 +08:00
even
2383a0d211 目标类型枚举类 2025-05-15 17:33:24 +08:00
HopeLi
56d3318158 Merge remote-tracking branch 'origin/temp' into temp 2025-05-15 17:31:36 +08:00
HopeLi
b80f0bd249 0515 ljc 2025-05-15 17:31:16 +08:00
even
9f91c0eba6 目标类型枚举类 2025-05-15 17:02:25 +08:00
even
fa2fdf4873 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-15 16:26:29 +08:00
HopeLi
437ada5a4f 0515 ljc 2025-05-15 16:25:43 +08:00
even
4c236cf7c4 添加注释 2025-05-15 16:19:16 +08:00
HopeLi
04d395b9a0 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/stage/impl/StageServiceImpl.java
2025-05-15 16:18:43 +08:00
HopeLi
e68bb01cfd 0515 ljc 2025-05-15 16:17:05 +08:00
even
a61c7626ad 复制task 2025-05-15 16:15:24 +08:00
even
b71023318b 复制阶段 2025-05-15 15:49:42 +08:00
even
13b8c8185e Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-15 15:21:18 +08:00
even
f7533f9ff3 copyStage接口 2025-05-15 15:18:29 +08:00
HopeLi
82a0f0d341 0515 ljc 2025-05-15 15:17:44 +08:00
HopeLi
cd5c9637ee Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/stage/impl/StageServiceImpl.java
2025-05-15 15:16:27 +08:00
HopeLi
c9c834a617 0515 ljc 2025-05-15 15:06:16 +08:00
even
8eb38f3c30 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-15 14:58:23 +08:00
even
2f199cf34c 部分接口修改 2025-05-15 14:57:28 +08:00
even
6c3ae0fc97 stage接口修改 2025-05-15 11:00:40 +08:00
HopeLi
bf6541ea55 0515 ljc 2025-05-15 10:59:57 +08:00
HopeLi
c6c3f626c1 0515 ljc 2025-05-15 10:39:22 +08:00
even
ea48fae43a 错误修复 2025-05-15 10:36:45 +08:00
even
2459515c98 方法字段添加 2025-05-15 10:35:21 +08:00
even
9e50fea94f 基础字段添加 2025-05-15 10:24:33 +08:00
even
1abd20136a 创建节点方法 2025-05-15 10:08:45 +08:00
even
81b7533da5 创建节点逻辑修改 2025-05-15 09:30:26 +08:00
even
ad63181c33 冲突处理 2025-05-14 19:57:37 +08:00
even
b01ea03838 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/stage/impl/StageServiceImpl.java
#	modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/task/impl/TaskServiceImpl.java
2025-05-14 19:53:43 +08:00
even
908d65b688 雪花算法添加实体类添加 2025-05-14 19:51:34 +08:00
HopeLi
ef72a38345 0514 ljc 2025-05-14 19:48:18 +08:00
HopeLi
185f1753f3 0514 ljc 2025-05-14 18:57:54 +08:00
even
6479e0112d 删除节点方法添加 2025-05-14 18:26:22 +08:00
even
0082a3a5d6 部分接口提交 2025-05-14 15:17:17 +08:00
even
6b3aa6e39c 部分接口提交 2025-05-14 15:08:44 +08:00
even
78d0ad8b52 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-14 09:37:50 +08:00
even
dbd2d06e55 stage部分方法 2025-05-14 09:27:29 +08:00
even
2a5dddfb68 stage部分方法 2025-05-14 09:26:41 +08:00
even
19f9ad32a9 代码提交,(不可运行) 2025-05-13 19:50:46 +08:00
HopeLi
726cef48cb 0513 ljc 2025-05-13 19:50:10 +08:00
even
a30646253d Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp
# Conflicts:
#	ops-server/pom.xml
2025-05-13 17:23:15 +08:00
even
258f1f96ac 多余代码删除,配置修改 2025-05-13 17:04:38 +08:00
HopeLi
df1754d820 0513 ljc 2025-05-13 16:59:46 +08:00
even
3824daf37b 多余代码删除,tiklab代码迁移 2025-05-13 10:44:49 +08:00
even
f0f7a12237 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-13 10:39:05 +08:00
even
fd87d624dd 多余代码删除,tiklab代码迁移 2025-05-13 10:38:46 +08:00
HopeLi
429e920829 Merge remote-tracking branch 'origin/temp' into temp
# Conflicts:
#	ops-server/src/main/java/cd/casic/server/controller/PipelineController.java
2025-05-13 09:21:21 +08:00
HopeLi
e3a4bb629d 0513 ljc 2025-05-13 09:20:12 +08:00
even
7620ba437d 拦截配置回退 2025-05-12 20:40:23 +08:00
even
d9f2ba93d6 拦截配置修改 2025-05-12 19:56:29 +08:00
even
0b67139b9e 拦截配置修改 2025-05-12 19:31:46 +08:00
even
1ddbfb72c8 配置修改 2025-05-12 19:21:28 +08:00
even
75a588adbc 配置修改,permitAll添加 2025-05-12 19:14:37 +08:00
even
5a0f2beb09 返回值方法修改 2025-05-12 09:38:15 +08:00
even
a48ed89227 Merge branch 'temp' of http://1.14.125.6:3000/mianbin/ops-pro into temp 2025-05-12 09:36:41 +08:00
HopeLi
3c4e338b23 0512 ljc 2025-05-12 09:36:04 +08:00
even
89dc336a81 多余import 2025-05-12 09:34:49 +08:00
even
05fb76ebbc 部分接口解除注释 2025-05-12 09:32:48 +08:00
Hope Li
67afdbf867 0510 ljc 2025-05-10 23:55:04 +08:00
even
dda88d0fdd 对象提交 2025-05-10 17:17:26 +08:00
even
2e51102734 部分接口mock数据,以及请求与返回值对象,pom文件添加pipelineCommon依赖 2025-05-10 17:16:12 +08:00
even
472d1aee85 多余bean处理 2025-05-10 02:05:18 +08:00
even
6547ea089c 循环依赖处理 2025-05-10 01:55:45 +08:00
859 changed files with 7221 additions and 21398 deletions

8
.idea/compiler.xml generated
View File

@ -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" />

View File

@ -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
View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -1,4 +1,4 @@
package cd.casic.framework.tenant.core.aop;
package cd.casic.framework.commons.annotation;
import java.lang.annotation.*;

View File

@ -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;

View File

@ -1,4 +1,4 @@
package cd.casic.framework.tenant.core.context;
package cd.casic.framework.commons.context;
import com.alibaba.ttl.TransmittableThreadLocal;

View File

@ -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;

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -41,4 +41,6 @@ public interface GlobalErrorCodeConstants {
ErrorCode ID_DUPLICATION = new ErrorCode(1000, "ID重复");
ErrorCode PIPELINE_ERROR = new ErrorCode(1001,"流水线执行错误");
}

View File

@ -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);

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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());
}
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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);

View File

@ -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;

View File

@ -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();
}

View File

@ -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);
}
}

View File

@ -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();
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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 {
/**

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -0,0 +1,4 @@
/**
* 占位文件避免文件夹缩进
*/
package cd.casic.framework.datapermission.operatelog;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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);
// 获得角色数组并移除被禁用的

View File

@ -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;

View File

@ -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());
}
});
}

View File

@ -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);
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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());
}
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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.*;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;
/**
* 租户信息处理

View File

@ -1,4 +1,4 @@
package cd.casic.module.system.service.tenant.handler;
package cd.casic.framework.datapermission.service.handler;
import java.util.Set;

View File

@ -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;
/**

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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