diff --git a/core/core-frontend/config/dev.ts b/core/core-frontend/config/dev.ts
index ca7bea35d7..4e0c968023 100644
--- a/core/core-frontend/config/dev.ts
+++ b/core/core-frontend/config/dev.ts
@@ -13,6 +13,6 @@ export default {
rewrite: path => path.replace(/^\/api/, 'de2api')
}
},
- port: 8080
+ port: 7070
}
}
diff --git a/core/core-frontend/src/api/auth.ts b/core/core-frontend/src/api/auth.ts
index 2ae39019f7..f1a54df4bd 100644
--- a/core/core-frontend/src/api/auth.ts
+++ b/core/core-frontend/src/api/auth.ts
@@ -14,17 +14,12 @@ export const resourceTreeApi = (flag: string, isSystem?: boolean) => {
export const menuTreeApi = () => request.get({ url: '/auth/menuResource' })
-export const resourcePerApi = data => request.post({ url: '/auth/busiPermission', data })
+export const subjectPermissionApi = data => request.post({ url: '/auth/subjectPermission', data })
-export const menuPerApi = data => request.post({ url: '/auth/menuPermission', data })
+export const subjectPermissionSaveApi = data =>
+ request.post({ url: '/auth/saveSubjectPermission', data })
-export const busiPerSaveApi = data => request.post({ url: '/auth/saveBusiPer', data })
-export const menuPerSaveApi = data => request.post({ url: '/auth/saveMenuPer', data })
+export const resourcePermissionApi = data => request.post({ url: '/auth/resourcePermission', data })
-export const resourceTargetPerApi = data =>
- request.post({ url: '/auth/busiTargetPermission', data })
-
-export const menuTargetPerApi = data => request.post({ url: '/auth/menuTargetPermission', data })
-
-export const busiTargetPerSaveApi = data => request.post({ url: '/auth/saveBusiTargetPer', data })
-export const menuTargetPerSaveApi = data => request.post({ url: '/auth/saveMenuTargetPer', data })
+export const resourcePermissionSaveApi = data =>
+ request.post({ url: '/auth/saveResourcePermission', data })
diff --git a/pom.xml b/pom.xml
index f55642d548..f1ee593bbf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,6 +10,8 @@
sdk
+ de-xpack
+ core
org.springframework.boot
@@ -195,6 +197,26 @@
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.4.0
+
+
+ remove-core-module
+ initialize
+
+ remove-project-artifact
+
+
+
+ de-xpack
+ core
+
+
+
+
+
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/api/AuthApi.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/api/AuthApi.java
index 457e6c6226..dd03a4f45d 100644
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/api/AuthApi.java
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/api/AuthApi.java
@@ -1,21 +1,24 @@
package io.dataease.api.permissions.auth.api;
+import java.util.List;
+
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
-import io.dataease.api.permissions.auth.dto.*;
+
+import io.dataease.api.permissions.auth.dto.SubjectPermissionEditor;
+import io.dataease.api.permissions.auth.dto.BasePermissionRequest;
+import io.dataease.api.permissions.auth.dto.BusiResourceRequest;
+import io.dataease.api.permissions.auth.dto.ResourcePermissionEditor;
import io.dataease.api.permissions.auth.vo.PermissionVO;
import io.dataease.api.permissions.auth.vo.ResourceItemVO;
import io.dataease.api.permissions.auth.vo.ResourceVO;
import io.swagger.v3.oas.annotations.Hidden;
import io.swagger.v3.oas.annotations.Operation;
-
import io.swagger.v3.oas.annotations.tags.Tag;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import java.util.List;
@Tag(name = "权限管理")
@ApiSupport(order = 885, author = "fit2cloud-someone")
@@ -26,54 +29,66 @@ public interface AuthApi {
@PostMapping("/busiResource")
List busiResource(@RequestBody BusiResourceRequest request);
- @Operation(summary = "查询对象已授权资源")
- @ApiOperationSupport(order = 3)
- @PostMapping("/busiPermission")
- PermissionVO busiPermission(@RequestBody BusiPermissionRequest request);
-
- @Operation(summary = "查询资源已授权对象")
- @ApiOperationSupport(order = 5)
- @PostMapping("/busiTargetPermission")
- PermissionVO busiTargetPermission(@RequestBody BusiPermissionRequest request);
-
@Operation(summary = "查询菜单树")
@ApiOperationSupport(order = 2)
@GetMapping("/menuResource")
List menuResource();
- @Operation(summary = "查询对象已授权菜单")
- @ApiOperationSupport(order = 4)
- @PostMapping("/menuPermission")
- PermissionVO menuPermission(@RequestBody MenuPermissionRequest request);
+ @Operation(summary = "查询对象已授权资源")
+ @ApiOperationSupport(order = 3)
+ @PostMapping("/subjectPermission")
+ PermissionVO subjectPermission(@RequestBody BasePermissionRequest request);
- @Operation(summary = "查询菜单已授权对象")
- @ApiOperationSupport(order = 6)
- @PostMapping("/menuTargetPermission")
- PermissionVO menuTargetPermission(@RequestBody MenuPermissionRequest request);
+ @Operation(summary = "查询资源已授权对象")
+ @ApiOperationSupport(order = 5)
+ @PostMapping("/resourcePermission")
+ PermissionVO resourcePermission(@RequestBody BasePermissionRequest request);
+
+ /*
+ * @Operation(summary = "查询对象已授权菜单")
+ *
+ * @ApiOperationSupport(order = 4)
+ *
+ * @PostMapping("/menuPermission")
+ * PermissionVO menuPermission(@RequestBody MenuPermissionRequest request);
+ *
+ * @Operation(summary = "查询菜单已授权对象")
+ *
+ * @ApiOperationSupport(order = 6)
+ *
+ * @PostMapping("/menuTargetPermission")
+ * PermissionVO menuTargetPermission(@RequestBody MenuPermissionRequest
+ * request);
+ */
@Operation(summary = "保存资源权限")
@ApiOperationSupport(order = 7)
- @PostMapping("/saveBusiPer")
- void saveBusiPer(@RequestBody BusiPerEditor editor);
+ @PostMapping("/saveSubjectPermission")
+ void saveSubjectPermission(@RequestBody SubjectPermissionEditor editor);
@Operation(summary = "资源维度保存权限")
@ApiOperationSupport(order = 9)
- @PostMapping("/saveBusiTargetPer")
- void saveBusiTargetPer(@RequestBody BusiTargetPerCreator creator);
-
- @Operation(summary = "保存菜单权限")
- @ApiOperationSupport(order = 8)
- @PostMapping("/saveMenuPer")
- void saveMenuPer(@RequestBody MenuPerEditor editor);
-
- @Operation(summary = "菜单维度保存权限")
- @ApiOperationSupport(order = 10)
- @PostMapping("/saveMenuTargetPer")
- void saveMenuTargetPer(@RequestBody MenuTargetPerCreator creator);
+ @PostMapping("/saveResourcePermission")
+ void saveResourcePermission(@RequestBody ResourcePermissionEditor creator);
+ /*
+ * @Operation(summary = "保存菜单权限")
+ *
+ * @ApiOperationSupport(order = 8)
+ *
+ * @PostMapping("/saveMenuPer")
+ * void saveMenuPer(@RequestBody MenuPerEditor editor);
+ *
+ * @Operation(summary = "菜单维度保存权限")
+ *
+ * @ApiOperationSupport(order = 10)
+ *
+ * @PostMapping("/saveMenuTargetPer")
+ * void saveMenuTargetPer(@RequestBody MenuTargetPerCreator creator);
+ */
@Hidden
@PostMapping("/busiTargetPermissionAll")
- List busiTargetPermissionAll(@RequestBody BusiPermissionRequest request);
+ List busiTargetPermissionAll(@RequestBody BasePermissionRequest request);
}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPermissionRequest.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BasePermissionRequest.java
similarity index 91%
rename from sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPermissionRequest.java
rename to sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BasePermissionRequest.java
index ceddd8f85b..c54d2b0615 100644
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPermissionRequest.java
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BasePermissionRequest.java
@@ -8,7 +8,7 @@ import java.io.Serializable;
@Schema(description = "权限查询条件")
@Data
-public class BusiPermissionRequest implements Serializable {
+public class BasePermissionRequest implements Serializable {
@Serial
private static final long serialVersionUID = -2424587989223319563L;
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiTargetPerCreator.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiTargetPerCreator.java
deleted file mode 100644
index ffe61ec87f..0000000000
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiTargetPerCreator.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package io.dataease.api.permissions.auth.dto;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-@EqualsAndHashCode(callSuper = true)
-@Schema(description = "资源权限构造器")
-@Data
-public class BusiTargetPerCreator extends MenuTargetPerCreator{
- @Schema(description = "类型")
- private Integer type;
- @Schema(description = "标记")
- private String flag;
-}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourceItemDTO.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourceItemDTO.java
new file mode 100644
index 0000000000..bef8419011
--- /dev/null
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourceItemDTO.java
@@ -0,0 +1,19 @@
+package io.dataease.api.permissions.auth.dto;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class ResourceItemDTO implements Serializable {
+
+ @JsonSerialize(using= ToStringSerializer.class)
+ @Schema(description = "资源ID")
+ private Long id;
+ @JsonSerialize(using= ToStringSerializer.class)
+ @Schema(description = "组织ID")
+ private Long oid;
+}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourcePermissionEditor.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourcePermissionEditor.java
new file mode 100644
index 0000000000..fc9de1ebd3
--- /dev/null
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/ResourcePermissionEditor.java
@@ -0,0 +1,21 @@
+package io.dataease.api.permissions.auth.dto;
+
+import io.dataease.api.permissions.auth.vo.BasePermissionItem;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+@Schema(description = "资源权限构造器")
+@Data
+public class ResourcePermissionEditor {
+
+ @Schema(description = "资源集合")
+ private List resourceList;
+ @Schema(description = "主体类型")
+ private Integer type;
+ @Schema(description = "资源类型标记")
+ private String flag;
+ @Schema(description = "权限集合")
+ private List permissions;
+}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPerEditor.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/SubjectPermissionEditor.java
similarity index 82%
rename from sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPerEditor.java
rename to sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/SubjectPermissionEditor.java
index b2fba32d5c..09ffd8d463 100644
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiPerEditor.java
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/SubjectPermissionEditor.java
@@ -1,17 +1,19 @@
package io.dataease.api.permissions.auth.dto;
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.List;
+
import io.dataease.api.permissions.auth.vo.PermissionItem;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
-import java.io.Serial;
-import java.io.Serializable;
-import java.util.List;
+@SuppressWarnings("unused")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "业务权限编辑器")
@Data
-public class BusiPerEditor extends BusiPermissionRequest implements Serializable {
+public class SubjectPermissionEditor extends BasePermissionRequest implements Serializable {
@Serial
private static final long serialVersionUID = 3067994331757489447L;
@Schema(description = "编辑权限节点集合")
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/BasePermissionItem.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/BasePermissionItem.java
new file mode 100644
index 0000000000..1f47c71eba
--- /dev/null
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/BasePermissionItem.java
@@ -0,0 +1,24 @@
+package io.dataease.api.permissions.auth.vo;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+@Data
+public class BasePermissionItem implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = -6537851979745319692L;
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "ID")
+ private Long id;
+ @Schema(description = "权重")
+ private int weight;
+ @Schema(description = "独立权重")
+ private int ext;
+
+}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/PermissionItem.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/PermissionItem.java
index c057f051c3..8b69e445b1 100644
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/PermissionItem.java
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/PermissionItem.java
@@ -3,28 +3,19 @@ package io.dataease.api.permissions.auth.vo;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
+import lombok.*;
-import java.io.Serial;
import java.io.Serializable;
+@EqualsAndHashCode(callSuper = true)
@Schema(description = "权限项")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
-public class PermissionItem implements Serializable {
+public class PermissionItem extends BasePermissionItem implements Serializable {
- @Serial
- private static final long serialVersionUID = -6537851979745319692L;
- @JsonSerialize(using= ToStringSerializer.class)
- @Schema(description = "ID")
- private Long id;
- @Schema(description = "权重")
- private int weight;
- @Schema(description = "独立权重")
- private int ext;
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "组织ID")
+ private Long oid;
}
diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/ResourceVO.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/ResourceVO.java
index b2dc92f72a..ba67346aa3 100644
--- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/ResourceVO.java
+++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/vo/ResourceVO.java
@@ -1,15 +1,16 @@
package io.dataease.api.permissions.auth.vo;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import io.dataease.model.TreeResultModel;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+
+import io.dataease.model.TreeResultModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
@Data
@Schema(description = "资源结点")
public class ResourceVO implements TreeResultModel, Serializable {
@@ -27,4 +28,7 @@ public class ResourceVO implements TreeResultModel, Serializable {
private boolean leaf = false;
@Schema(description = "额外标识")
private Integer extraFlag = 0;
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "组织ID")
+ private Long oid;
}
diff --git a/sdk/common/src/main/java/io/dataease/constant/BusiResourceEnum.java b/sdk/common/src/main/java/io/dataease/constant/BusiResourceEnum.java
index 795e51aaa3..459ce5f010 100644
--- a/sdk/common/src/main/java/io/dataease/constant/BusiResourceEnum.java
+++ b/sdk/common/src/main/java/io/dataease/constant/BusiResourceEnum.java
@@ -1,18 +1,13 @@
package io.dataease.constant;
+import lombok.Getter;
+
+@Getter
public enum BusiResourceEnum {
- PANEL(1), SCREEN(2), DATASET(3), DATASOURCE(4), DATA_FILLING(8), SPREADSHEET(10);
+ MENU(0), PANEL(1), SCREEN(2), DATASET(3), DATASOURCE(4), DATA_FILLING(8), SPREADSHEET(10);
- private int flag;
-
- public int getFlag() {
- return flag;
- }
-
- public void setFlag(int flag) {
- this.flag = flag;
- }
+ private final int flag;
BusiResourceEnum(int flag) {
this.flag = flag;
diff --git a/sdk/common/src/main/java/io/dataease/dao/auto/entity/PerBusiResource.java b/sdk/common/src/main/java/io/dataease/dao/auto/entity/PerBusiResource.java
index 4a075b09c2..a6bcb842cc 100644
--- a/sdk/common/src/main/java/io/dataease/dao/auto/entity/PerBusiResource.java
+++ b/sdk/common/src/main/java/io/dataease/dao/auto/entity/PerBusiResource.java
@@ -63,6 +63,12 @@ public class PerBusiResource {
@Column(name = "extra_flag1", nullable = false)
private Integer extraFlag1;
+ @NotNull
+ @Comment("是否组织根目录(随组织生命周期)")
+ @ColumnDefault("false")
+ @Column(name = "org_root", nullable = false)
+ private Boolean orgRoot = false;
+
@NotNull
@Comment("创建时间")
@ColumnDefault("0")
diff --git a/sdk/common/src/main/java/io/dataease/model/BusiNodeVO.java b/sdk/common/src/main/java/io/dataease/model/BusiNodeVO.java
index 5349bda821..c3a9ffa723 100644
--- a/sdk/common/src/main/java/io/dataease/model/BusiNodeVO.java
+++ b/sdk/common/src/main/java/io/dataease/model/BusiNodeVO.java
@@ -1,19 +1,19 @@
package io.dataease.model;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
@Schema(description = "业务资源结点")
@Data
public class BusiNodeVO implements TreeResultModel, Serializable {
-
@Serial
private static final long serialVersionUID = 8191619596741217494L;
@@ -36,4 +36,6 @@ public class BusiNodeVO implements TreeResultModel, Serializable {
private List children;
@Schema(description = "独立权重")
private Integer ext;
+ @Schema(description = "组织根节点")
+ private boolean orgRoot;
}