feat(annotation): 扩展模板ID字段长度以支持自定义ID

- 将标注配置模板表的id字段从VARCHAR(36)扩展到VARCHAR(64)
- 修改标注管理模型中的template_id字段从VARCHAR(36)扩展到VARCHAR(64)
- 更新数据库初始化脚本中的字段长度定义
- 支持更长的UUID或自定义ID格式的模板标识符
This commit is contained in:
2026-01-18 20:50:00 +08:00
parent b992b08b2c
commit e81c0bf199
2 changed files with 4 additions and 4 deletions

View File

@@ -11,7 +11,7 @@ class AnnotationTemplate(Base):
__tablename__ = "t_dm_annotation_templates" __tablename__ = "t_dm_annotation_templates"
id = Column(String(36), primary_key=True, default=lambda: str(uuid.uuid4()), comment="UUID") id = Column(String(64), primary_key=True, default=lambda: str(uuid.uuid4()), comment="模板ID(UUID或自定义ID)")
name = Column(String(100), nullable=False, comment="模板名称") name = Column(String(100), nullable=False, comment="模板名称")
description = Column(String(500), nullable=True, comment="模板描述") description = Column(String(500), nullable=True, comment="模板描述")
data_type = Column(String(50), nullable=False, comment="数据类型: image/text/audio/video/timeseries/pdf/chat/html/table") data_type = Column(String(50), nullable=False, comment="数据类型: image/text/audio/video/timeseries/pdf/chat/html/table")
@@ -43,7 +43,7 @@ class LabelingProject(Base):
dataset_id = Column(String(36), nullable=False, comment="数据集ID") dataset_id = Column(String(36), nullable=False, comment="数据集ID")
name = Column(String(100), nullable=False, comment="项目名称") name = Column(String(100), nullable=False, comment="项目名称")
labeling_project_id = Column(String(8), nullable=False, comment="Label Studio项目ID") labeling_project_id = Column(String(8), nullable=False, comment="Label Studio项目ID")
template_id = Column(String(36), ForeignKey('t_dm_annotation_templates.id', ondelete='SET NULL'), nullable=True, comment="使用的模板ID") template_id = Column(String(64), ForeignKey('t_dm_annotation_templates.id', ondelete='SET NULL'), nullable=True, comment="使用的模板ID")
configuration = Column(JSON, nullable=True, comment="项目配置(可能包含对模板的自定义修改)") configuration = Column(JSON, nullable=True, comment="项目配置(可能包含对模板的自定义修改)")
progress = Column(JSON, nullable=True, comment="项目进度信息") progress = Column(JSON, nullable=True, comment="项目进度信息")
created_at = Column(TIMESTAMP, server_default=func.current_timestamp(), comment="创建时间") created_at = Column(TIMESTAMP, server_default=func.current_timestamp(), comment="创建时间")

View File

@@ -10,7 +10,7 @@ USE datamate;
-- 标注配置模板表 -- 标注配置模板表
CREATE TABLE t_dm_annotation_templates ( CREATE TABLE t_dm_annotation_templates (
id VARCHAR(36) PRIMARY KEY COMMENT 'UUID', id VARCHAR(64) PRIMARY KEY COMMENT '模板ID(UUID或自定义ID)',
name VARCHAR(100) NOT NULL COMMENT '模板名称', name VARCHAR(100) NOT NULL COMMENT '模板名称',
description VARCHAR(500) COMMENT '模板描述', description VARCHAR(500) COMMENT '模板描述',
data_type VARCHAR(50) NOT NULL COMMENT '数据类型: text/image/audio/video/pdf/timeseries/chat/html/table', data_type VARCHAR(50) NOT NULL COMMENT '数据类型: text/image/audio/video/pdf/timeseries/chat/html/table',
@@ -36,7 +36,7 @@ CREATE TABLE t_dm_labeling_projects (
dataset_id VARCHAR(36) NOT NULL COMMENT '数据集ID', dataset_id VARCHAR(36) NOT NULL COMMENT '数据集ID',
name VARCHAR(100) NOT NULL COMMENT '项目名称', name VARCHAR(100) NOT NULL COMMENT '项目名称',
labeling_project_id VARCHAR(8) NOT NULL COMMENT 'Label Studio项目ID', labeling_project_id VARCHAR(8) NOT NULL COMMENT 'Label Studio项目ID',
template_id VARCHAR(36) NULL COMMENT '使用的模板ID', template_id VARCHAR(64) NULL COMMENT '使用的模板ID',
configuration JSON COMMENT '项目配置(可能包含对模板的自定义修改)', configuration JSON COMMENT '项目配置(可能包含对模板的自定义修改)',
progress JSON COMMENT '项目进度信息', progress JSON COMMENT '项目进度信息',
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',