chore: 清理 176 个过时 SQL 文件

删除内容:
- sql/ 目录: 158 个历史迁移记录、bug 修复脚本、测试数据
- openhis-server-new/sql/: 16 个散落 SQL 文件
- resources/sql/: 2 个会诊相关脚本

保留内容:
- db/migration/V1__baseline_marker.sql (Flyway 基线)

原因: 已引入 Flyway 数据库迁移管理,散落的 SQL 文件不再需要
所有新的 DDL 变更通过 db/migration/V{n}__xxx.sql 管理
This commit is contained in:
2026-06-04 14:56:33 +08:00
parent 4bd20ca0f0
commit 1e76eb005d
187 changed files with 0 additions and 80675 deletions

View File

@@ -1,27 +0,0 @@
-- ============================================
-- 修复会诊确认表的 NOT NULL 约束问题
-- ============================================
-- 将 confirming_physician_id 等字段改为可空
-- 因为在新的方案中,这些字段在所有医生确认后才会填充
ALTER TABLE hisdev.consultation_confirmation
ALTER COLUMN confirming_physician_id DROP NOT NULL;
ALTER TABLE hisdev.consultation_confirmation
ALTER COLUMN confirming_physician_name DROP NOT NULL;
ALTER TABLE hisdev.consultation_confirmation
ALTER COLUMN confirming_dept_id DROP NOT NULL;
ALTER TABLE hisdev.consultation_confirmation
ALTER COLUMN confirming_dept_name DROP NOT NULL;
ALTER TABLE hisdev.consultation_confirmation
ALTER COLUMN confirming_date DROP NOT NULL;
-- 说明:
-- 在新的方案中consultation_confirmation 记录在所有医生确认后才创建
-- 这些字段用于记录"最后一个确认的医生"或"代表性医生"
-- 因此允许为 NULL实际的医生信息存储在 confirming_physicians (JSON) 字段中

View File

@@ -1,94 +0,0 @@
-- ============================================
-- 会诊确认功能优化 - 数据库表结构修改 (PostgreSQL版本)
-- ============================================
-- 1. 修改 consultation_request 表(添加计数字段)
ALTER TABLE hisdev.consultation_request
ADD COLUMN IF NOT EXISTS confirmed_count INT DEFAULT 0;
ALTER TABLE hisdev.consultation_request
ADD COLUMN IF NOT EXISTS signed_count INT DEFAULT 0;
ALTER TABLE hisdev.consultation_request
ADD COLUMN IF NOT EXISTS invited_count INT DEFAULT 0;
-- 2. 修改 consultation_invited 表(添加签名时间字段)
ALTER TABLE hisdev.consultation_invited
ADD COLUMN IF NOT EXISTS signature_time TIMESTAMP NULL;
-- 3. 修改 consultation_confirmation 表(优化字段)
ALTER TABLE hisdev.consultation_confirmation
ADD COLUMN IF NOT EXISTS all_confirmed_date TIMESTAMP NULL;
ALTER TABLE hisdev.consultation_confirmation
ADD COLUMN IF NOT EXISTS all_signed_date TIMESTAMP NULL;
-- 检查 confirming_physicians 字段是否存在,如果不存在则添加
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema = 'hisdev'
AND table_name = 'consultation_confirmation'
AND column_name = 'confirming_physicians'
) THEN
-- 如果 confirming_physician 存在,则重命名
IF EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema = 'hisdev'
AND table_name = 'consultation_confirmation'
AND column_name = 'confirming_physician'
) THEN
ALTER TABLE hisdev.consultation_confirmation
RENAME COLUMN confirming_physician TO confirming_physicians;
ELSE
-- 如果都不存在,则新增
ALTER TABLE hisdev.consultation_confirmation
ADD COLUMN confirming_physicians TEXT;
END IF;
END IF;
END $$;
-- 4. 为现有数据初始化计数字段
UPDATE hisdev.consultation_request cr
SET invited_count = (
SELECT COUNT(*)
FROM hisdev.consultation_invited ci
WHERE ci.consultation_request_id = cr.id
AND ci.is_deleted = 0
)
WHERE cr.invited_count = 0 OR cr.invited_count IS NULL;
UPDATE hisdev.consultation_request cr
SET confirmed_count = (
SELECT COUNT(*)
FROM hisdev.consultation_invited ci
WHERE ci.consultation_request_id = cr.id
AND ci.invited_status >= 1
AND ci.is_deleted = 0
)
WHERE cr.confirmed_count = 0 OR cr.confirmed_count IS NULL;
UPDATE hisdev.consultation_request cr
SET signed_count = (
SELECT COUNT(*)
FROM hisdev.consultation_invited ci
WHERE ci.consultation_request_id = cr.id
AND ci.invited_status >= 3
AND ci.is_deleted = 0
)
WHERE cr.signed_count = 0 OR cr.signed_count IS NULL;
-- 5. 添加索引优化查询性能(如果不存在)
CREATE INDEX IF NOT EXISTS idx_invited_status ON hisdev.consultation_invited(invited_status);
CREATE INDEX IF NOT EXISTS idx_confirm_time ON hisdev.consultation_invited(confirm_time);
-- 6. 添加字段注释
COMMENT ON COLUMN hisdev.consultation_request.confirmed_count IS '已确认的医生数量';
COMMENT ON COLUMN hisdev.consultation_request.signed_count IS '已签名的医生数量';
COMMENT ON COLUMN hisdev.consultation_request.invited_count IS '被邀请的医生总数';
COMMENT ON COLUMN hisdev.consultation_invited.signature_time IS '签名时间';
COMMENT ON COLUMN hisdev.consultation_confirmation.all_confirmed_date IS '所有医生都确认的时间';
COMMENT ON COLUMN hisdev.consultation_confirmation.all_signed_date IS '所有医生都签名的时间';
COMMENT ON COLUMN hisdev.consultation_confirmation.confirming_physicians IS '参与确认的医生列表JSON格式';