Files
his/迁移记录-DB变更记录/20250902前变更记录/202508221059 doc_record.sql

76 lines
3.0 KiB
SQL
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.

-- 1. 创建序列
CREATE SEQUENCE doc_record_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
-- 2. 创建文书记录表
CREATE TABLE "doc_record" (
-- 主键ID
"id" int8 NOT NULL DEFAULT nextval('doc_record_id_seq'::regclass),
-- 实体类字段
"definition_id" int8 NOT NULL,
"definition_bus_no" varchar(100) COLLATE "pg_catalog"."default" NOT NULL,
"content_json" text COLLATE "pg_catalog"."default" NOT NULL,
"status_enum" int4 NOT NULL DEFAULT 0,
"organization_id" int8 NOT NULL,
"encounter_id" int8 NOT NULL,
"patient_id" int8 NOT NULL,
"record_time" timestamptz(6) NOT NULL,
-- 继承的审计字段
"tenant_id" int8 NOT NULL,
"delete_flag" char(1) COLLATE "pg_catalog"."default" NOT NULL DEFAULT '0',
"create_by" varchar(32) COLLATE "pg_catalog"."default" NOT NULL DEFAULT '',
"create_time" timestamptz(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"update_by" varchar(32) COLLATE "pg_catalog"."default",
"update_time" timestamptz(6),
-- 主键约束
CONSTRAINT "doc_record_pkey" PRIMARY KEY ("id")
);
-- 3. 设置表所有者
ALTER TABLE "doc_record" OWNER TO "postgres";
-- 4. 表和字段注释
COMMENT ON TABLE "doc_record" IS '文书记录表';
COMMENT ON COLUMN "doc_record"."id" IS '主键ID';
COMMENT ON COLUMN "doc_record"."definition_id" IS '定义ID';
COMMENT ON COLUMN "doc_record"."definition_bus_no" IS '业务编码';
COMMENT ON COLUMN "doc_record"."content_json" IS '文档内容(JSON格式)';
COMMENT ON COLUMN "doc_record"."status_enum" IS '状态枚举: 0-草稿/暂存,1-提交,2-归档,3-修改';
COMMENT ON COLUMN "doc_record"."organization_id" IS '科室ID';
COMMENT ON COLUMN "doc_record"."encounter_id" IS '就诊记录ID';
COMMENT ON COLUMN "doc_record"."patient_id" IS '病人ID';
COMMENT ON COLUMN "doc_record"."record_time" IS '记录时间';
COMMENT ON COLUMN "doc_record"."tenant_id" IS '租户ID';
COMMENT ON COLUMN "doc_record"."delete_flag" IS '删除标志: 0-未删除,1-已删除';
COMMENT ON COLUMN "doc_record"."create_by" IS '创建人';
COMMENT ON COLUMN "doc_record"."create_time" IS '创建时间';
COMMENT ON COLUMN "doc_record"."update_by" IS '更新人';
COMMENT ON COLUMN "doc_record"."update_time" IS '更新时间';
-- 5. 索引设计
-- 按定义ID查询高频场景
CREATE INDEX "idx_doc_record_definition" ON "doc_record" ("definition_id");
-- 按病人ID查询高频场景
CREATE INDEX "idx_doc_record_patient" ON "doc_record" ("patient_id");
-- 按就诊ID查询高频场景
CREATE INDEX "idx_doc_record_encounter" ON "doc_record" ("encounter_id");
-- 按科室ID查询
CREATE INDEX "idx_doc_record_orgnization" ON "doc_record" ("orgnization_id");
-- 按记录时间范围查询
CREATE INDEX "idx_doc_record_time" ON "doc_record" ("record_time");
-- 按状态查询
CREATE INDEX "idx_doc_record_status" ON "doc_record" ("status_enum");
-- 向迁移历史表插入记录
INSERT INTO __MigrationsHistory (MigrationId, ProductVersion)
VALUES ('202508221059 doc_record', '1.0.0');