62 lines
4.6 KiB
SQL
62 lines
4.6 KiB
SQL
-- 1. 创建 doc_statistics 表的主键序列(自增ID用,与 doc_order_process 序列逻辑一致)
|
||
CREATE SEQUENCE doc_statistics_id_seq
|
||
START WITH 1 -- 序列起始值
|
||
INCREMENT BY 1 -- 每次递增1
|
||
NO MINVALUE -- 无最小值限制
|
||
NO MAXVALUE -- 无最大值限制
|
||
CACHE 1; -- 缓存1个值提升性能
|
||
|
||
|
||
-- 2. 创建 doc_statistics 表(字段类型、约束与实体类属性一一对应)
|
||
CREATE TABLE "public"."doc_statistics" (
|
||
"id" int8 NOT NULL DEFAULT nextval('doc_statistics_id_seq'::regclass), -- 主键,关联序列自增
|
||
"record_id" int8 DEFAULT NULL, -- 记录ID(对应实体类 recordId)
|
||
"statistic_definition_id" int8 DEFAULT NULL, -- 统计项定义ID(对应 statisticDefinitionId)
|
||
"encounter_id" int8 DEFAULT NULL, -- 就诊ID(对应 encounterId)
|
||
"patient_id" int8 DEFAULT NULL, -- 患者ID(对应 patientId)
|
||
"statistic_definition_code" varchar(100) COLLATE "pg_catalog"."default" DEFAULT ''::character varying, -- 统计项编码(对应 statisticDefinitionCode,长度适配业务需求)
|
||
"organization_id" int8 DEFAULT NULL, -- 记录科室ID(对应 organizationId)
|
||
"value" varchar(255) COLLATE "pg_catalog"."default" DEFAULT ''::character varying, -- 统计值(对应 value,用varchar兼容多种数据类型)
|
||
"record_time" timestamp(6) DEFAULT NULL, -- 记录时间(对应 recordTime,实体类为Date,PostgreSQL用timestamp存储)
|
||
"source" varchar(100) COLLATE "pg_catalog"."default" DEFAULT ''::character varying, -- 记录来源(对应 source)
|
||
"tenant_id" int8 NOT NULL DEFAULT 1, -- 租户ID(通用字段,与 doc_order_process 保持一致,默认值可根据业务调整)
|
||
"delete_flag" char(1) COLLATE "pg_catalog"."default" NOT NULL DEFAULT '0', -- 删除状态(0=未删除,1=已删除,与 doc_order_process 逻辑一致)
|
||
"create_by" varchar(32) COLLATE "pg_catalog"."default" NOT NULL DEFAULT ''::character varying, -- 创建人(继承 HisBaseEntity 通用字段)
|
||
"create_time" timestamptz(6) NOT NULL, -- 创建时间(继承 HisBaseEntity,带时区,与 doc_order_process 一致)
|
||
"update_by" varchar(32) COLLATE "pg_catalog"."default" DEFAULT ''::character varying, -- 更新人(继承 HisBaseEntity)
|
||
"update_time" timestamptz(6) DEFAULT NULL, -- 更新时间(继承 HisBaseEntity,带时区)
|
||
CONSTRAINT "doc_statistics_pkey" PRIMARY KEY ("id") -- 主键约束
|
||
)
|
||
;
|
||
|
||
|
||
-- 3. 设置表所有者(与 doc_order_process 保持一致,默认为 postgres)
|
||
ALTER TABLE "public"."doc_statistics"
|
||
OWNER TO "postgres";
|
||
|
||
|
||
-- 4. 字段注释(与实体类注释完全对应,便于维护)
|
||
COMMENT ON COLUMN "public"."doc_statistics"."id" IS '主键ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."record_id" IS '记录ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."statistic_definition_id" IS '统计项定义ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."encounter_id" IS '就诊ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."patient_id" IS '患者ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."statistic_definition_code" IS '统计项编码';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."organization_id" IS '记录科室ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."value" IS '统计值';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."record_time" IS '记录时间(格式:yyyy-MM-dd HH:mm:ss)';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."source" IS '记录来源';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."tenant_id" IS '租户ID';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."delete_flag" IS '删除状态(0=未删除,1=已删除)';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."create_by" IS '创建人';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."create_time" IS '创建时间';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."update_by" IS '更新人';
|
||
COMMENT ON COLUMN "public"."doc_statistics"."update_time" IS '更新时间';
|
||
|
||
-- 5. 表注释
|
||
COMMENT ON TABLE "public"."doc_statistics" IS '文档统计表(存储各类统计项数据,如医嘱统计、患者数据统计等)';
|
||
|
||
|
||
-- 插入新的迁移历史记录
|
||
INSERT INTO __MigrationsHistory (MigrationId, ProductVersion)
|
||
VALUES ('202509031200add_table_doc_statistics', '1.0.0'); |