Files
effekt-interface/resources/sql/create_document_source_table.sql
qiaoxinjiu 420b9e37fa feat: 新增文档源和技能管理相关功能
1. 新增文档源管理模块(documentSource)
   - 控制器:documentSourceController.py
   - DAO层:documentSourceDao.py
   - 模型:documentSourceModel.py
   - 服务层:documentSourceService.py

2. 新增技能管理模块(skill)
   - 控制器:skillController.py
   - DAO层:skillDao.py
   - 模型:skillModel.py
   - 服务层:skillService.py

3. 新增AI服务(aiService.py)

4. 新增配置文件
   - AI配置:config/ai_config.py
   - 技能配置:config/skills/test-case-generator/

5. 新增SQL脚本
   - 文档权限:add_document_permissions.sql
   - 模块状态字段:add_module_status_field.sql
   - 文档源表:create_document_source_table.sql
   - 技能规则:skills_rules_pgsql.sql
2026-05-18 10:23:07 +08:00

57 lines
2.7 KiB
PL/PgSQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 创建文档源表 document_source
-- 用于存储PRD文档PDF和飞书链接
BEGIN;
-- 创建文档源表
CREATE TABLE IF NOT EXISTS public.document_source (
id BIGSERIAL PRIMARY KEY,
product_id BIGINT NOT NULL,
project_id BIGINT NOT NULL,
type SMALLINT NOT NULL DEFAULT 1,
source VARCHAR(512) NOT NULL,
content TEXT,
version INTEGER NOT NULL DEFAULT 1,
status SMALLINT NOT NULL DEFAULT 0,
ai_model VARCHAR(64),
created_by BIGINT,
is_delete INTEGER NOT NULL DEFAULT 0,
created_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT uk_document_source_source UNIQUE (source, is_delete)
);
COMMENT ON TABLE public.document_source IS '文档源表 - 存储PRD文档和飞书链接';
COMMENT ON COLUMN public.document_source.id IS '主键ID';
COMMENT ON COLUMN public.document_source.product_id IS '产品ID';
COMMENT ON COLUMN public.document_source.project_id IS '项目ID';
COMMENT ON COLUMN public.document_source.type IS '类型1-PDF文件2-飞书链接';
COMMENT ON COLUMN public.document_source.source IS '文件路径或飞书链接';
COMMENT ON COLUMN public.document_source.content IS '解析后的文本内容(缓存)';
COMMENT ON COLUMN public.document_source.version IS '版本号';
COMMENT ON COLUMN public.document_source.status IS '状态0-待解析1-已解析2-已生成用例';
COMMENT ON COLUMN public.document_source.ai_model IS '使用的AI模型';
COMMENT ON COLUMN public.document_source.created_by IS '创建人ID';
COMMENT ON COLUMN public.document_source.is_delete IS '0未删除1已删除';
COMMENT ON COLUMN public.document_source.created_time IS '创建时间';
COMMENT ON COLUMN public.document_source.updated_time IS '更新时间';
-- 为 test_case 表添加字段
ALTER TABLE public.test_case ADD COLUMN IF NOT EXISTS document_id BIGINT;
COMMENT ON COLUMN public.test_case.document_id IS '关联的文档源ID';
ALTER TABLE public.test_case ADD COLUMN IF NOT EXISTS document_version INTEGER;
COMMENT ON COLUMN public.test_case.document_version IS '关联的文档版本';
-- 添加外键约束
ALTER TABLE public.test_case ADD CONSTRAINT fk_test_case_document_id FOREIGN KEY (document_id) REFERENCES public.document_source(id);
-- 添加索引
CREATE INDEX IF NOT EXISTS idx_document_source_product_id ON public.document_source(product_id);
CREATE INDEX IF NOT EXISTS idx_document_source_project_id ON public.document_source(project_id);
CREATE INDEX IF NOT EXISTS idx_document_source_type ON public.document_source(type);
CREATE INDEX IF NOT EXISTS idx_document_source_status ON public.document_source(status);
CREATE INDEX IF NOT EXISTS idx_test_case_document_id ON public.test_case(document_id);
COMMIT;