series_info_table.sql 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. -- ============================================================
  2. -- 序列信息表
  3. -- ============================================================
  4. USE `qconline`;
  5. -- 创建序列信息表
  6. DROP TABLE IF EXISTS `series_info`;
  7. CREATE TABLE `series_info` (
  8. `id` varchar(32) NOT NULL COMMENT '主键ID',
  9. `study_id` varchar(64) NOT NULL COMMENT '检查ID(关联study_info表)',
  10. `series_instance_uid` varchar(128) NOT NULL COMMENT '序列实例UID',
  11. `series_number` int DEFAULT NULL COMMENT '序列号',
  12. `series_description` varchar(255) DEFAULT NULL COMMENT '序列描述',
  13. `modality` varchar(16) DEFAULT NULL COMMENT '检查类型',
  14. `body_part_examined` varchar(50) DEFAULT NULL COMMENT '检查部位',
  15. `view_position` varchar(50) DEFAULT NULL COMMENT '体位',
  16. `protocol_name` varchar(128) DEFAULT NULL COMMENT '扫描协议名称',
  17. `image_count` int DEFAULT 0 COMMENT '图像数量',
  18. `series_date` date DEFAULT NULL COMMENT '序列日期',
  19. `series_time` time DEFAULT NULL COMMENT '序列时间',
  20. `slice_thickness` decimal(10,4) DEFAULT NULL COMMENT '层厚(mm)',
  21. `pixel_spacing` varchar(50) DEFAULT NULL COMMENT '像素间距',
  22. `rows` int DEFAULT NULL COMMENT '图像行数',
  23. `columns` int DEFAULT NULL COMMENT '图像列数',
  24. `exam_item_name` varchar(128) DEFAULT NULL COMMENT '检查项目名称(用于多部位拆分)',
  25. `institution_id` varchar(32) DEFAULT NULL COMMENT '机构ID',
  26. `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  27. `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  28. PRIMARY KEY (`id`),
  29. UNIQUE KEY `uk_series_uid` (`series_instance_uid`),
  30. KEY `idx_study` (`study_id`),
  31. KEY `idx_series_number` (`series_number`),
  32. KEY `idx_body_part` (`body_part_examined`),
  33. KEY `idx_exam_item` (`exam_item_name`)
  34. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='序列信息表';
  35. -- 创建DICOM实例信息表(每个DICOM文件对应一个实例)
  36. DROP TABLE IF EXISTS `dicom_instance_info`;
  37. CREATE TABLE `dicom_instance_info` (
  38. `id` varchar(32) NOT NULL COMMENT '主键ID',
  39. `study_id` varchar(64) NOT NULL COMMENT '检查ID',
  40. `series_id` varchar(32) NOT NULL COMMENT '序列ID(关联series_info表)',
  41. `series_instance_uid` varchar(128) NOT NULL COMMENT '序列实例UID',
  42. `sop_instance_uid` varchar(128) NOT NULL COMMENT 'SOP实例UID',
  43. `instance_number` int DEFAULT NULL COMMENT '实例号',
  44. `file_path` varchar(500) NOT NULL COMMENT 'DICOM文件路径',
  45. `file_size` bigint DEFAULT 0 COMMENT '文件大小(字节)',
  46. `file_md5` varchar(32) DEFAULT NULL COMMENT '文件MD5值',
  47. `image_position` varchar(100) DEFAULT NULL COMMENT '图像位置',
  48. `image_orientation` varchar(200) DEFAULT NULL COMMENT '图像方向',
  49. `window_center` varchar(50) DEFAULT NULL COMMENT '窗位',
  50. `window_width` varchar(50) DEFAULT NULL COMMENT '窗宽',
  51. `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  52. PRIMARY KEY (`id`),
  53. UNIQUE KEY `uk_sop_uid` (`sop_instance_uid`),
  54. KEY `idx_study` (`study_id`),
  55. KEY `idx_series` (`series_id`),
  56. KEY `idx_series_uid` (`series_instance_uid`),
  57. KEY `idx_instance_number` (`instance_number`)
  58. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='DICOM实例信息表';
  59. -- 修改 study_split_record 表,添加序列信息字段
  60. ALTER TABLE `study_split_record`
  61. ADD COLUMN `series_uids` text COMMENT '包含的序列UID列表(JSON格式)' AFTER `body_part`,
  62. ADD COLUMN `series_count` int DEFAULT 0 COMMENT '序列数量' AFTER `series_uids`,
  63. ADD COLUMN `exam_item_name` varchar(128) DEFAULT NULL COMMENT '检查项目名称' AFTER `split_study_description`;