| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- -- Emergency Drill & Response DDL
- CREATE TABLE IF NOT EXISTS disp_pipe_burst_simulation (
- id BIGSERIAL PRIMARY KEY,
- simulation_no VARCHAR(50) UNIQUE,
- location VARCHAR(200),
- lng DOUBLE PRECISION,
- lat DOUBLE PRECISION,
- pipe_diameter DOUBLE PRECISION,
- pipe_material VARCHAR(50),
- affected_radius INT,
- affected_users INT,
- estimated_water_loss DOUBLE PRECISION,
- estimated_repair_hours INT,
- pressure_drop DOUBLE PRECISION,
- affected_valves TEXT,
- status VARCHAR(20) DEFAULT 'COMPLETED',
- created_time TIMESTAMP DEFAULT NOW()
- );
-
- CREATE TABLE IF NOT EXISTS disp_water_quality_incident (
- id BIGSERIAL PRIMARY KEY,
- incident_no VARCHAR(50) UNIQUE,
- location VARCHAR(200),
- pollutant_type VARCHAR(50),
- detected_value DOUBLE PRECISION,
- standard_value DOUBLE PRECISION,
- severity VARCHAR(20),
- status VARCHAR(20) DEFAULT 'DETECTED',
- matched_plan VARCHAR(200),
- detected_time TIMESTAMP,
- response_start_time TIMESTAMP,
- resolved_time TIMESTAMP,
- response_log TEXT,
- resolution TEXT,
- created_time TIMESTAMP DEFAULT NOW()
- );
-
- CREATE TABLE IF NOT EXISTS disp_emergency_drill (
- id BIGSERIAL PRIMARY KEY,
- drill_no VARCHAR(50) UNIQUE,
- name VARCHAR(200),
- drill_type VARCHAR(30),
- description TEXT,
- status VARCHAR(20) DEFAULT 'PLANNED',
- planned_time TIMESTAMP,
- started_time TIMESTAMP,
- completed_time TIMESTAMP,
- created_time TIMESTAMP DEFAULT NOW()
- );
-
- CREATE TABLE IF NOT EXISTS disp_drill_evaluation (
- id BIGSERIAL PRIMARY KEY,
- drill_id BIGINT REFERENCES disp_emergency_drill(id),
- score INT,
- response_time_score INT,
- coordination_score INT,
- overall_rating VARCHAR(20),
- findings TEXT,
- recommendations TEXT,
- evaluator VARCHAR(50),
- created_time TIMESTAMP DEFAULT NOW()
- );
-
- CREATE INDEX IF NOT EXISTS idx_pbs_status ON disp_pipe_burst_simulation(status);
- CREATE INDEX IF NOT EXISTS idx_wqi_status ON disp_water_quality_incident(status);
- CREATE INDEX IF NOT EXISTS idx_wqi_type ON disp_water_quality_incident(pollutant_type);
- CREATE INDEX IF NOT EXISTS idx_ed_status ON disp_emergency_drill(status);
|