- 在SysLoginController中添加optionMap数据返回 - 添加JSQLParser依赖支持MyBatis Plus功能 - 实现selectMenuByPathExcludeId方法用于排除当前菜单的路径唯一性校验 - 在SysMenuServiceImpl中添加日志记录并优化路径唯一性判断逻辑 - 在SysMenuMapper.xml中添加LIMIT 1限制并实现排除ID查询 - 在前端路由中注释患者管理相关路由配置 - 在用户store中添加optionMap配置项并优先从optionMap获取医院名称 - 重构检查项目设置页面的操作按钮样式为统一的圆形按钮设计 - 更新检查项目设置页面的导航栏样式和交互体验 - 优化门诊记录页面的搜索条件和表格展示功能 - 添加性别和状态筛选条件并改进数据加载逻辑
79 lines
3.7 KiB
SQL
79 lines
3.7 KiB
SQL
-- 医生患者关系表创建SQL
|
||
-- 执行方式:使用Navicat Premium或其他PostgreSQL客户端工具连接到数据库后执行
|
||
|
||
-- 步骤1:连接数据库
|
||
-- 主机:47.116.196.11
|
||
-- 端口:15432
|
||
-- 数据库:postgresql
|
||
-- Schema:hisdev
|
||
-- 用户名:postgresql
|
||
-- 密码:Jchl1528
|
||
|
||
-- 步骤2:执行以下SQL语句
|
||
|
||
-- 先创建序列(重要:必须先创建序列,再创建表,否则会报错)
|
||
CREATE SEQUENCE IF NOT EXISTS "adm_practitioner_patient_id_seq"
|
||
INCREMENT 1
|
||
MINVALUE 1
|
||
MAXVALUE 9223372036854775807
|
||
START 1
|
||
CACHE 1;
|
||
|
||
-- 再创建表
|
||
CREATE TABLE IF NOT EXISTS "adm_practitioner_patient" (
|
||
"id" int8 NOT NULL DEFAULT nextval('adm_practitioner_patient_id_seq'::regclass),
|
||
"practitioner_id" int8 NOT NULL,
|
||
"patient_id" int8 NOT NULL,
|
||
"relationship_type" int4 NOT NULL,
|
||
"organization_id" int8 NOT NULL,
|
||
"start_date" timestamptz(6),
|
||
"end_date" timestamptz(6),
|
||
"status" int4 NOT NULL DEFAULT 1,
|
||
"remark" varchar(500),
|
||
"tenant_id" int4,
|
||
"delete_flag" bpchar(1) DEFAULT '0'::bpchar NOT NULL,
|
||
"create_by" varchar(32) DEFAULT ''::varchar NOT NULL,
|
||
"create_time" timestamptz(6) NOT NULL,
|
||
"update_by" varchar(32),
|
||
"update_time" timestamptz(6),
|
||
CONSTRAINT "adm_practitioner_patient_pkey" PRIMARY KEY ("id")
|
||
);
|
||
|
||
-- 添加注释
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."id" IS '主键ID';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."practitioner_id" IS '医生ID,关联adm_practitioner表';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."patient_id" IS '患者ID,关联adm_patient表';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."relationship_type" IS '关系类型:1-主治医生,2-签约医生,3-管床医生,4-家庭医生,5-会诊医生,6-随访医生';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."organization_id" IS '机构ID,关联adm_organization表';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."start_date" IS '关系开始时间';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."end_date" IS '关系结束时间';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."status" IS '状态:1-有效,0-无效';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."remark" IS '备注信息';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."tenant_id" IS '租户ID';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."delete_flag" IS '删除标志:0-未删除,1-已删除';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."create_by" IS '创建人';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."create_time" IS '创建时间';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."update_by" IS '更新人';
|
||
COMMENT ON COLUMN "adm_practitioner_patient"."update_time" IS '更新时间';
|
||
COMMENT ON TABLE "adm_practitioner_patient" IS '医生患者关系表';
|
||
|
||
-- 创建索引
|
||
CREATE INDEX IF NOT EXISTS "idx_practitioner_patient_practitioner_id" ON "adm_practitioner_patient" USING btree ("practitioner_id", "delete_flag");
|
||
CREATE INDEX IF NOT EXISTS "idx_practitioner_patient_patient_id" ON "adm_practitioner_patient" USING btree ("patient_id", "delete_flag");
|
||
CREATE INDEX IF NOT EXISTS "idx_practitioner_patient_org_id" ON "adm_practitioner_patient" USING btree ("organization_id", "delete_flag");
|
||
CREATE INDEX IF NOT EXISTS "idx_practitioner_patient_type" ON "adm_practitioner_patient" USING btree ("relationship_type", "delete_flag");
|
||
|
||
-- 插入迁移记录
|
||
INSERT INTO "__migrationshistory" ("version", "description")
|
||
VALUES ('202601020000 add_table_adm_practitioner_patient', '1.0.0')
|
||
ON CONFLICT DO NOTHING;
|
||
|
||
-- 步骤3:验证表是否创建成功
|
||
-- 执行以下SQL查询
|
||
SELECT table_name, table_comment
|
||
FROM information_schema.tables
|
||
WHERE table_schema = 'public'
|
||
AND table_name = 'adm_practitioner_patient';
|
||
|
||
-- 应该返回一条记录,显示表名和表注释
|