Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
2026-01-13 15:27:01 +08:00
4 changed files with 121 additions and 1 deletions

View File

@@ -66,7 +66,7 @@
T9.payment_id AS paymentId,
T9.picture_url AS pictureUrl,
T9.birth_date AS birthDate,
T9.identifier_no AS identifierNo
COALESCE(T9.identifier_no, T9.patient_bus_no, '') AS identifierNo
from (
SELECT T1.tenant_id AS tenant_id,
T1.id AS encounter_id,
@@ -90,6 +90,7 @@
T13.id AS payment_id,
ai.picture_url AS picture_url,
T8.birth_date AS birth_date,
T8.bus_no AS patient_bus_no,
T18.identifier_no AS identifier_no
FROM adm_encounter AS T1
LEFT JOIN adm_organization AS T2 ON T1.organization_id = T2.ID AND T2.delete_flag = '0'
@@ -129,6 +130,8 @@
ROW_NUMBER() OVER (PARTITION BY patient_id ORDER BY create_time ASC) AS rn
FROM adm_patient_identifier
WHERE delete_flag = '0'
AND identifier_no IS NOT NULL
AND identifier_no != ''
) t
WHERE rn = 1
) AS T18 ON T8.id = T18.patient_id

View File

@@ -0,0 +1,32 @@
-- 检查并添加 adm_patient_identifier 表的 identifier_no 列(如果不存在)
-- 执行方式使用Navicat Premium或其他PostgreSQL客户端工具连接到数据库后执行
-- 检查列是否存在,如果不存在则添加
DO $$
BEGIN
-- 检查列是否存在
IF NOT EXISTS (
SELECT 1
FROM information_schema.columns
WHERE table_schema = 'hisdev'
AND table_name = 'adm_patient_identifier'
AND column_name = 'identifier_no'
) THEN
-- 如果列不存在,则添加列
ALTER TABLE adm_patient_identifier
ADD COLUMN identifier_no VARCHAR(255);
-- 添加注释
COMMENT ON COLUMN adm_patient_identifier.identifier_no IS '标识号(就诊卡号)';
RAISE NOTICE '已添加 identifier_no 列';
ELSE
RAISE NOTICE 'identifier_no 列已存在,无需添加';
END IF;
END $$;
-- 插入迁移记录
INSERT INTO "__migrationshistory" ("version", "description")
VALUES ('202601090000 add_identifier_no_column', '1.0.0')
ON CONFLICT (version) DO NOTHING;

View File

@@ -0,0 +1,28 @@
-- 检查 adm_patient_identifier 表是否存在 identifier_no 列
-- 执行方式使用Navicat Premium或其他PostgreSQL客户端工具连接到数据库后执行
-- 检查列是否存在
SELECT
column_name,
data_type,
character_maximum_length,
is_nullable
FROM information_schema.columns
WHERE table_schema = 'hisdev'
AND table_name = 'adm_patient_identifier'
AND column_name = 'identifier_no';
-- 如果上面的查询返回空结果说明列不存在需要执行以下SQL添加列
-- ALTER TABLE adm_patient_identifier ADD COLUMN identifier_no VARCHAR(255);
-- COMMENT ON COLUMN adm_patient_identifier.identifier_no IS '标识号(就诊卡号)';
-- 检查表的所有列
SELECT
column_name,
data_type,
character_maximum_length
FROM information_schema.columns
WHERE table_schema = 'hisdev'
AND table_name = 'adm_patient_identifier'
ORDER BY ordinal_position;

View File

@@ -0,0 +1,57 @@
-- adm_doctor_schedule definition
-- Drop table
-- DROP TABLE adm_doctor_schedule;
CREATE TABLE adm_doctor_schedule (
id INTEGER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
weekday VARCHAR(50) NULL,
time_period VARCHAR(50) NULL,
doctor VARCHAR(100) NULL,
clinic VARCHAR(100) NULL,
start_time TIME NULL,
end_time TIME NULL,
limit_number INTEGER NULL,
call_sign_record VARCHAR(500) NOT NULL DEFAULT '',
register_item VARCHAR(200) NULL,
register_fee INTEGER NULL,
diagnosis_item VARCHAR(200) NULL,
diagnosis_fee INTEGER NULL,
is_online BOOLEAN NULL,
is_stopped BOOLEAN NULL,
stop_reason VARCHAR(500) NULL,
dept_id INTEGER NULL,
create_time TIMESTAMPTZ(6) NULL,
update_time TIMESTAMPTZ(6) NULL
);
COMMENT ON TABLE adm_doctor_schedule IS '医生排班表';
-- Column comments
COMMENT ON COLUMN adm_doctor_schedule.id IS '主键IDGENERATED ALWAYS';
COMMENT ON COLUMN adm_doctor_schedule.weekday IS '星期';
COMMENT ON COLUMN adm_doctor_schedule.time_period IS '时段(上午/下午)';
COMMENT ON COLUMN adm_doctor_schedule.doctor IS '医生姓名';
COMMENT ON COLUMN adm_doctor_schedule.clinic IS '诊室';
COMMENT ON COLUMN adm_doctor_schedule.start_time IS '开始时间';
COMMENT ON COLUMN adm_doctor_schedule.end_time IS '结束时间';
COMMENT ON COLUMN adm_doctor_schedule.limit_number IS '限号数量';
COMMENT ON COLUMN adm_doctor_schedule.call_sign_record IS '号源记录';
COMMENT ON COLUMN adm_doctor_schedule.register_item IS '挂号项目';
COMMENT ON COLUMN adm_doctor_schedule.register_fee IS '挂号费';
COMMENT ON COLUMN adm_doctor_schedule.diagnosis_item IS '诊查项目';
COMMENT ON COLUMN adm_doctor_schedule.diagnosis_fee IS '诊疗费';
COMMENT ON COLUMN adm_doctor_schedule.is_online IS '是否线上挂号';
COMMENT ON COLUMN adm_doctor_schedule.is_stopped IS '是否停诊';
COMMENT ON COLUMN adm_doctor_schedule.stop_reason IS '停诊原因';
COMMENT ON COLUMN adm_doctor_schedule.dept_id IS '关联科室ID';
COMMENT ON COLUMN adm_doctor_schedule.create_time IS '创建时间';
COMMENT ON COLUMN adm_doctor_schedule.update_time IS '更新时间';
-- 插入迁移记录
INSERT INTO __MigrationsHistory (MigrationId, ProductVersion)
VALUES ('202512251200 add_table adm_doctor_schedule', '1.0.0');