diff --git a/doc/doc-api/pom.xml b/doc/doc-api/pom.xml
index c6b30644..e2228f65 100644
--- a/doc/doc-api/pom.xml
+++ b/doc/doc-api/pom.xml
@@ -16,6 +16,10 @@
doc-api
+
+ cn.axzo.maokai
+ maokai-api
+
org.springframework.cloud
spring-cloud-openfeign-core
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAccessConfig.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAccessConfig.java
new file mode 100644
index 00000000..0e27833d
--- /dev/null
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAccessConfig.java
@@ -0,0 +1,32 @@
+package cn.axzo.nanopart.doc.api.domain;
+
+import java.util.Collections;
+import java.util.Set;
+
+import cn.axzo.nanopart.doc.api.enums.CooperationAccessOption;
+import cn.axzo.nanopart.doc.api.enums.DatabaseManageOption;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author yanglin
+ */
+@Setter @Getter
+public class DatabaseAccessConfig {
+
+ /**
+ * 谁可以管理该空间. PEOPLE_HAS_MANAGE_PERMISSION: 拥有"可管理"权限的所有人, WORKSPACE_AND_DATABASE_SUPER_ADMIN: 租房超级管理员、空间超管
+ */
+ private DatabaseManageOption manageOption;
+
+ /**
+ * 协作企业可见范围. ALL_ORGS_IN_PROJECT: 项目内所有企业可见, ORGS_BY_COOPERATE_TYPES: 指定参建单位可见
+ */
+ private CooperationAccessOption cooperationAccessOption;
+
+ /**
+ * 指定参建单位可见. 1: 总包, 13: 设计单位, 12: 勘察单位, 3: 监理单位, 5: 专业分包, 4: 劳务分包, 9: 项目内班组
+ */
+ private Set accessCooperateTypes = Collections.emptySet();
+
+}
\ No newline at end of file
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAttributes.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAttributes.java
new file mode 100644
index 00000000..c2c927d9
--- /dev/null
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseAttributes.java
@@ -0,0 +1,19 @@
+package cn.axzo.nanopart.doc.api.domain;
+
+import cn.axzo.nanopart.doc.api.enums.CooperationType;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author yanglin
+ */
+@Setter
+@Getter
+public class DatabaseAttributes {
+
+ /**
+ * PRIVATE: 协作模式, SHARED: 共享模式
+ */
+ private CooperationType databaseCooperationType;
+
+}
\ No newline at end of file
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseFeeConfig.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseFeeConfig.java
similarity index 84%
rename from doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseFeeConfig.java
rename to doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseFeeConfig.java
index 1dac2b5d..e9b0def6 100644
--- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseFeeConfig.java
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/DatabaseFeeConfig.java
@@ -3,11 +3,15 @@ package cn.axzo.nanopart.doc.api.domain;
import java.math.BigDecimal;
import cn.axzo.nanopart.doc.api.enums.FileTemplateFeeType;
+import lombok.Getter;
+import lombok.Setter;
/**
* @author yanglin
*/
-public class TemplateDatabaseFeeConfig {
+@Setter
+@Getter
+public class DatabaseFeeConfig {
/**
* 空间收费方式. FREE: 免费, ANNUAL: 年费制, ONE_TIME_FEE: 买断
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeAttributes.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeAttributes.java
index fbee2c7f..129c387b 100644
--- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeAttributes.java
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeAttributes.java
@@ -1,7 +1,15 @@
package cn.axzo.nanopart.doc.api.domain;
+import lombok.Getter;
+import lombok.Setter;
+
/**
* @author yanglin
*/
+@Setter
+@Getter
public class IndexNodeAttributes {
-}
+
+ private DatabaseAttributes databaseAttributes;;
+
+}
\ No newline at end of file
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseAccessConfig.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseAccessConfig.java
deleted file mode 100644
index 42729d8c..00000000
--- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/TemplateDatabaseAccessConfig.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package cn.axzo.nanopart.doc.api.domain;
-
-/**
- * @author yanglin
- */
-public class TemplateDatabaseAccessConfig {
-}
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationAccessOption.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationAccessOption.java
new file mode 100644
index 00000000..c59bdff8
--- /dev/null
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationAccessOption.java
@@ -0,0 +1,13 @@
+package cn.axzo.nanopart.doc.api.enums;
+
+/**
+ * @author yanglin
+ */
+public enum CooperationAccessOption {
+
+ // 项目内所有企业可见
+ ALL_ORGS_IN_PROJECT,
+ // 指定参建单位可见
+ ORGS_BY_COOPERATE_TYPES
+
+}
\ No newline at end of file
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationType.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationType.java
new file mode 100644
index 00000000..a66de5e8
--- /dev/null
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/CooperationType.java
@@ -0,0 +1,8 @@
+package cn.axzo.nanopart.doc.api.enums;
+
+/**
+ * @author yanglin
+ */
+public enum CooperationType {
+ PRIVATE, SHARED
+}
\ No newline at end of file
diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/DatabaseManageOption.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/DatabaseManageOption.java
new file mode 100644
index 00000000..fad41b4a
--- /dev/null
+++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/enums/DatabaseManageOption.java
@@ -0,0 +1,13 @@
+package cn.axzo.nanopart.doc.api.enums;
+
+/**
+ * @author yanglin
+ */
+public enum DatabaseManageOption {
+
+ // 拥有"可管理"权限的所有人
+ PEOPLE_HAS_MANAGE_PERMISSION,
+ // 租房超级管理员、空间超管
+ WORKSPACE_AND_DATABASE_SUPER_ADMIN,
+
+}
diff --git a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/entity/TemplateDatabase.java b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/entity/TemplateDatabase.java
index 2dc7f57b..b00ed535 100644
--- a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/entity/TemplateDatabase.java
+++ b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/entity/TemplateDatabase.java
@@ -1,8 +1,8 @@
package cn.axzo.nanopart.doc.entity;
import cn.axzo.nanopart.doc.api.enums.FileScope;
-import cn.axzo.nanopart.doc.api.domain.TemplateDatabaseAccessConfig;
-import cn.axzo.nanopart.doc.api.domain.TemplateDatabaseFeeConfig;
+import cn.axzo.nanopart.doc.api.domain.DatabaseAccessConfig;
+import cn.axzo.nanopart.doc.api.domain.DatabaseFeeConfig;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -33,12 +33,12 @@ public class TemplateDatabase extends BaseEntity {
* 费用配置
*/
@TableField(typeHandler = FastjsonTypeHandler.class)
- private TemplateDatabaseFeeConfig feeConfig;
+ private DatabaseFeeConfig feeConfig;
/**
* 安全配置
*/
@TableField(typeHandler = FastjsonTypeHandler.class)
- private TemplateDatabaseAccessConfig accessConfig;
+ private DatabaseAccessConfig accessConfig;
}
\ No newline at end of file