1. 新增在线协同文档功能 v 1

This commit is contained in:
chenbowen
2025-09-01 10:01:35 +08:00
parent 827ab022ed
commit 1ed31a4f49
43 changed files with 2734 additions and 3 deletions

144
sql/dm/doc_management.sql Normal file
View File

@@ -0,0 +1,144 @@
/*
Yudao Database Transfer Tool
Source Server Type : MySQL
Target Server Type : DM8
Date: 2025-08-29 10:32:27
*/
-- ----------------------------
-- Table structure for infra_doc_file
-- ----------------------------
CREATE TABLE infra_doc_file (
id bigint NOT NULL PRIMARY KEY,
title varchar(255) NOT NULL,
file_id bigint DEFAULT NULL NULL,
file_type varchar(10) NOT NULL,
space_type smallint DEFAULT '1' NOT NULL,
description varchar(500) DEFAULT NULL NULL,
latest_version_id bigint DEFAULT NULL NULL,
owner_user_id bigint NOT NULL,
status smallint DEFAULT '1' NOT NULL,
creator varchar(64) DEFAULT '' NULL,
create_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
updater varchar(64) DEFAULT '' NULL,
update_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
deleted bit DEFAULT '0' NOT NULL,
tenant_id bigint DEFAULT '0' NOT NULL
);
CREATE INDEX idx_infra_doc_file_01 ON infra_doc_file (owner_user_id);
CREATE INDEX idx_infra_doc_file_02 ON infra_doc_file (space_type);
CREATE INDEX idx_infra_doc_file_03 ON infra_doc_file (file_type);
COMMENT ON COLUMN infra_doc_file.id IS '文档编号';
COMMENT ON COLUMN infra_doc_file.title IS '文档标题';
COMMENT ON COLUMN infra_doc_file.file_id IS '文件编号';
COMMENT ON COLUMN infra_doc_file.file_type IS '文件类型(docx/xlsx/pptx/pdf)';
COMMENT ON COLUMN infra_doc_file.space_type IS '空间类型(1-个人空间 2-团队空间)';
COMMENT ON COLUMN infra_doc_file.description IS '文档描述';
COMMENT ON COLUMN infra_doc_file.latest_version_id IS '最新版本编号';
COMMENT ON COLUMN infra_doc_file.owner_user_id IS '所有者用户编号';
COMMENT ON COLUMN infra_doc_file.status IS '状态(0-禁用 1-启用)';
COMMENT ON COLUMN infra_doc_file.creator IS '创建者';
COMMENT ON COLUMN infra_doc_file.create_time IS '创建时间';
COMMENT ON COLUMN infra_doc_file.updater IS '更新者';
COMMENT ON COLUMN infra_doc_file.update_time IS '更新时间';
COMMENT ON COLUMN infra_doc_file.deleted IS '是否删除';
COMMENT ON COLUMN infra_doc_file.tenant_id IS '租户编号';
COMMENT ON TABLE infra_doc_file IS '在线文档表';
-- ----------------------------
-- Table structure for infra_doc_file_version
-- ----------------------------
CREATE TABLE infra_doc_file_version (
id bigint NOT NULL PRIMARY KEY,
doc_file_id bigint NOT NULL,
version_no varchar(50) NOT NULL,
file_id bigint NOT NULL,
change_description varchar(500) DEFAULT NULL NULL,
creator varchar(64) DEFAULT '' NULL,
create_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
updater varchar(64) DEFAULT '' NULL,
update_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
deleted bit DEFAULT '0' NOT NULL,
tenant_id bigint DEFAULT '0' NOT NULL
);
CREATE INDEX idx_infra_doc_file_version_01 ON infra_doc_file_version (doc_file_id);
CREATE INDEX idx_infra_doc_file_version_02 ON infra_doc_file_version (version_no);
COMMENT ON COLUMN infra_doc_file_version.id IS '版本编号';
COMMENT ON COLUMN infra_doc_file_version.doc_file_id IS '文档编号';
COMMENT ON COLUMN infra_doc_file_version.version_no IS '版本号';
COMMENT ON COLUMN infra_doc_file_version.file_id IS '文件编号';
COMMENT ON COLUMN infra_doc_file_version.change_description IS '变更说明';
COMMENT ON COLUMN infra_doc_file_version.creator IS '创建者';
COMMENT ON COLUMN infra_doc_file_version.create_time IS '创建时间';
COMMENT ON COLUMN infra_doc_file_version.updater IS '更新者';
COMMENT ON COLUMN infra_doc_file_version.update_time IS '更新时间';
COMMENT ON COLUMN infra_doc_file_version.deleted IS '是否删除';
COMMENT ON COLUMN infra_doc_file_version.tenant_id IS '租户编号';
COMMENT ON TABLE infra_doc_file_version IS '文档版本表';
-- ----------------------------
-- Table structure for infra_doc_file_permission
-- ----------------------------
CREATE TABLE infra_doc_file_permission (
id bigint NOT NULL PRIMARY KEY,
doc_file_id bigint NOT NULL,
role_id bigint NOT NULL,
permission_type smallint DEFAULT '1' NOT NULL,
expire_time datetime DEFAULT NULL NULL,
creator varchar(64) DEFAULT '' NULL,
create_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
updater varchar(64) DEFAULT '' NULL,
update_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
deleted bit DEFAULT '0' NOT NULL,
tenant_id bigint DEFAULT '0' NOT NULL
);
CREATE INDEX idx_infra_doc_file_permission_01 ON infra_doc_file_permission (role_id);
COMMENT ON COLUMN infra_doc_file_permission.id IS '权限编号';
COMMENT ON COLUMN infra_doc_file_permission.doc_file_id IS '文档编号';
COMMENT ON COLUMN infra_doc_file_permission.role_id IS '角色编号';
COMMENT ON COLUMN infra_doc_file_permission.permission_type IS '权限类型(1-只读 2-编辑 3-管理)';
COMMENT ON COLUMN infra_doc_file_permission.expire_time IS '过期时间';
COMMENT ON COLUMN infra_doc_file_permission.creator IS '创建者';
COMMENT ON COLUMN infra_doc_file_permission.create_time IS '创建时间';
COMMENT ON COLUMN infra_doc_file_permission.updater IS '更新者';
COMMENT ON COLUMN infra_doc_file_permission.update_time IS '更新时间';
COMMENT ON COLUMN infra_doc_file_permission.deleted IS '是否删除';
COMMENT ON COLUMN infra_doc_file_permission.tenant_id IS '租户编号';
COMMENT ON TABLE infra_doc_file_permission IS '文档权限表';
-- ----------------------------
-- Table structure for infra_doc_edit_history
-- ----------------------------
CREATE TABLE infra_doc_edit_history (
id bigint NOT NULL PRIMARY KEY,
doc_file_id bigint NOT NULL,
user_id bigint NOT NULL,
user_name varchar(100) NOT NULL,
edit_type smallint DEFAULT '1' NOT NULL,
description varchar(500) DEFAULT NULL NULL,
create_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
tenant_id bigint DEFAULT '0' NOT NULL
);
CREATE INDEX idx_infra_doc_edit_history_01 ON infra_doc_edit_history (doc_file_id);
CREATE INDEX idx_infra_doc_edit_history_02 ON infra_doc_edit_history (user_id);
COMMENT ON COLUMN infra_doc_edit_history.id IS '历史编号';
COMMENT ON COLUMN infra_doc_edit_history.doc_file_id IS '文档编号';
COMMENT ON COLUMN infra_doc_edit_history.user_id IS '编辑用户编号';
COMMENT ON COLUMN infra_doc_edit_history.user_name IS '编辑用户名称';
COMMENT ON COLUMN infra_doc_edit_history.edit_type IS '编辑类型(1-创建 2-编辑 3-删除 4-重命名)';
COMMENT ON COLUMN infra_doc_edit_history.description IS '操作描述';
COMMENT ON COLUMN infra_doc_edit_history.create_time IS '创建时间';
COMMENT ON COLUMN infra_doc_edit_history.tenant_id IS '租户编号';
COMMENT ON TABLE infra_doc_edit_history IS '文档编辑历史表';

View File

@@ -0,0 +1,39 @@
-- 在线文档管理功能菜单数据DM 格式)
-- 说明:达梦脚本使用与 patch.sql 相同的精简列形式,省略布尔列与时间列,使用默认值。
-- 清理旧数据,保持可重复执行
DELETE FROM system_menu WHERE id IN (6000,6001,6002,600101,600102,600103,600104,600105,600106,600107,600108,600109,600110);
-- 顶级目录(父级假定已存在 id=2 的“基础设施/Infra”或同级目录
INSERT INTO system_menu (
id, name, permission, type, sort, parent_id,
path, icon, component, status, component_name
) VALUES (
6000, '在线文档', '', 1, 15, 2,
'doc', 'fa:file-text-o', '', 0, NULL
);
-- 文档管理主页面
INSERT INTO system_menu (
id, name, permission, type, sort, parent_id,
path, icon, component, status, component_name
) VALUES (
6001, '文档管理', 'infra:doc:query', 2, 1, 6000,
'doc-file', 'fa:file-text', 'infra/doc/index', 0, 'DocFile'
);
-- 按钮权限(操作项)
INSERT INTO system_menu (
id, name, permission, type, sort, parent_id,
path, icon, component, status
) VALUES
(600101,'文档查询','infra:doc:query',3,1,6001,'','','',0),
(600102,'文档创建','infra:doc:create',3,2,6001,'','','',0),
(600103,'文档更新','infra:doc:update',3,3,6001,'','','',0),
(600104,'文档删除','infra:doc:delete',3,4,6001,'','','',0),
(600105,'文档导出','infra:doc:export',3,5,6001,'','','',0),
(600106,'文档上传','infra:doc:upload',3,6,6001,'','','',0),
(600107,'文档编辑','infra:doc:edit',3,7,6001,'','','',0),
(600108,'文档预览','infra:doc:preview',3,8,6001,'','','',0),
(600109,'文档下载','infra:doc:download',3,9,6001,'','','',0),
(600110,'权限管理','infra:doc:permission',3,10,6001,'','','',0);

View File

@@ -155,7 +155,7 @@ INSERT INTO system_menu(
path, icon, component, status, component_name
)
VALUES (
'1953701540574969857', '系统序列号管理', '', 2, 0, ${table.parentMenuId},
'1953701540574969857', '系统序列号管理', '', 2, 0, 1,
'sequence', '', 'system/sequence/index', 0, 'Sequence'
);
@@ -259,4 +259,4 @@ VALUES
(5021, 1, '固定值', 'FIXED', 'system_sequence_detail_rule_type', 0, 'primary', '', '固定字符串值', 'admin', SYSDATE, 'admin', SYSDATE, 0),
(5022, 2, '日期格式', 'DATE', 'system_sequence_detail_rule_type', 0, 'success', '', '日期格式规则', 'admin', SYSDATE, 'admin', SYSDATE, 0),
(5023, 3, '数字格式', 'NUMBER', 'system_sequence_detail_rule_type', 0, 'info', '', '数字格式规则', 'admin', SYSDATE, 'admin', SYSDATE, 0),
(5024, 4, '自定义格式', 'CUSTOM', 'system_sequence_detail_rule_type', 0, 'warning', '', '自定义格式规则', 'admin', SYSDATE, 'admin', SYSDATE, 0); (5024, 4, '自定义格式', 'CUSTOM', 'system_sequence_detail_rule_type', 0, 'warning', '', '自定义格式规则', 'admin', NOW(), 'admin', NOW(), b'0');
(5024, 4, '自定义格式', 'CUSTOM', 'system_sequence_detail_rule_type', 0, 'warning', '', '自定义格式规则', 'admin', SYSDATE, 'admin', SYSDATE, 0);