feat: govern knowledge assets and source citations
This commit is contained in:
@@ -48,8 +48,8 @@ CREATE TABLE IF NOT EXISTS `aihr_knowledge_attach` (
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_aihr_knowledge_attach_name` (`knowledge_id`, `name`),
|
||||
KEY `idx_aihr_knowledge_attach_doc` (`doc_id`),
|
||||
KEY `idx_aihr_knowledge_attach_name` (`tenant_id`, `knowledge_id`, `name`),
|
||||
UNIQUE KEY `uk_aihr_knowledge_attach_doc` (`tenant_id`, `knowledge_id`, `doc_id`),
|
||||
KEY `idx_aihr_knowledge_attach_category` (`tenant_id`, `knowledge_id`, `category_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='AI HR 知识库附件';
|
||||
|
||||
@@ -92,6 +92,40 @@ CREATE TABLE IF NOT EXISTS `aihr_knowledge_fragment` (
|
||||
FULLTEXT KEY `ft_aihr_knowledge_fragment_content` (`content`) WITH PARSER ngram
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='AI HR 知识片段';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `aihr_knowledge_fragment_locator` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`tenant_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`fragment_id` bigint NOT NULL,
|
||||
`knowledge_id` bigint NOT NULL,
|
||||
`doc_id` varchar(80) DEFAULT NULL,
|
||||
`attachment_id` bigint DEFAULT NULL,
|
||||
`source_kind` varchar(12) NOT NULL,
|
||||
`page_number` int DEFAULT NULL,
|
||||
`slide_number` int DEFAULT NULL,
|
||||
`paragraph_start` int DEFAULT NULL,
|
||||
`paragraph_end` int DEFAULT NULL,
|
||||
`sheet_name` varchar(255) DEFAULT NULL,
|
||||
`row_start` int DEFAULT NULL,
|
||||
`row_end` int DEFAULT NULL,
|
||||
`start_ms` bigint DEFAULT NULL,
|
||||
`end_ms` bigint DEFAULT NULL,
|
||||
`frame_ms` bigint DEFAULT NULL,
|
||||
`locator_version` varchar(32) NOT NULL DEFAULT 'v1',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_aihr_fragment_locator_fragment` (`tenant_id`, `fragment_id`),
|
||||
KEY `idx_aihr_fragment_locator_attachment` (`tenant_id`, `attachment_id`, `source_kind`),
|
||||
CONSTRAINT `ck_aihr_fragment_locator_kind` CHECK (`source_kind` in ('TEXT','PDF','DOCX','PPTX','XLSX','IMAGE','VIDEO')),
|
||||
CONSTRAINT `ck_aihr_fragment_locator_nonnegative` CHECK (
|
||||
(`page_number` is null or `page_number` >= 0) and (`slide_number` is null or `slide_number` >= 0) and
|
||||
(`paragraph_start` is null or `paragraph_start` >= 0) and (`paragraph_end` is null or `paragraph_end` >= 0) and
|
||||
(`row_start` is null or `row_start` >= 0) and (`row_end` is null or `row_end` >= 0) and
|
||||
(`start_ms` is null or `start_ms` >= 0) and (`end_ms` is null or `end_ms` >= 0) and
|
||||
(`frame_ms` is null or `frame_ms` >= 0)
|
||||
)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='Knowledge fragment source location sidecar';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `aihr_knowledge_acl` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
|
||||
|
||||
Reference in New Issue
Block a user