Initial commit of akmon project
This commit is contained in:
49
ec_doctor.sql
Normal file
49
ec_doctor.sql
Normal file
@@ -0,0 +1,49 @@
|
||||
-- 诊疗记录系统数据库表
|
||||
-- 包含医生诊疗记录及紧急程度评估
|
||||
|
||||
-- 先删除旧表以确保重新部署
|
||||
DROP TABLE IF EXISTS public.ec_doctor_consultations CASCADE;
|
||||
|
||||
-- 创建诊疗记录表
|
||||
CREATE TABLE public.ec_doctor_consultations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
patient_name VARCHAR(100) NOT NULL,
|
||||
consultation_date DATE NOT NULL DEFAULT CURRENT_DATE,
|
||||
diagnosis TEXT NOT NULL,
|
||||
urgency VARCHAR(20) NOT NULL DEFAULT 'normal', -- urgency: emergency, urgent, normal
|
||||
doctor_id UUID, -- 可选:关联医生ID
|
||||
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 添加字段注释
|
||||
COMMENT ON COLUMN public.ec_doctor_consultations.urgency IS '紧急程度: emergency (红色), urgent (橙色), normal (普通)';
|
||||
|
||||
-- 插入初始化测试数据
|
||||
INSERT INTO public.ec_doctor_consultations (patient_name, consultation_date, diagnosis, urgency)
|
||||
VALUES
|
||||
('张三', '2024-01-15', '感冒,发热,建议休息多喝水', 'normal'),
|
||||
('李四', '2024-01-14', '高血压,建议定期检查', 'urgent'),
|
||||
('王五', '2024-01-16', '急性胸痛,疑心肌梗死,需紧急处置', 'emergency');
|
||||
|
||||
-- 创建常用查询索引
|
||||
CREATE INDEX IF NOT EXISTS idx_consultation_patient_name ON public.ec_doctor_consultations(patient_name);
|
||||
CREATE INDEX IF NOT EXISTS idx_consultation_date ON public.ec_doctor_consultations(consultation_date);
|
||||
CREATE INDEX IF NOT EXISTS idx_consultation_urgency ON public.ec_doctor_consultations(urgency);
|
||||
|
||||
-- 启用行级安全 (RLS)
|
||||
ALTER TABLE public.ec_doctor_consultations ENABLE ROW LEVEL SECURITY;
|
||||
|
||||
-- 创建基本的安全策略 (允许所有认证用户读取,实际生产应根据角色细分)
|
||||
DROP POLICY IF EXISTS "允许认证用户查看诊疗记录" ON public.ec_doctor_consultations;
|
||||
CREATE POLICY "允许认证用户查看诊疗记录" ON public.ec_doctor_consultations
|
||||
FOR SELECT
|
||||
TO authenticated
|
||||
USING (true);
|
||||
|
||||
-- 即使在本地预览模式下,也允许匿名访问(仅限测试)
|
||||
DROP POLICY IF EXISTS "允许匿名查询测试数据" ON public.ec_doctor_consultations;
|
||||
CREATE POLICY "允许匿名查询测试数据" ON public.ec_doctor_consultations
|
||||
FOR SELECT
|
||||
TO anon
|
||||
USING (true);
|
||||
Reference in New Issue
Block a user