-- ---------------------------- -- 洪水知识库表 -- ---------------------------- drop table if exists flood_knowledge_base; create table flood_knowledge_base ( knowledge_id bigint(20) not null auto_increment comment '知识库ID', knowledge_name varchar(200) not null comment '知识库名称(目录名)', knowledge_desc varchar(500) default '' comment '知识库描述', file_count int(11) default 0 comment '文件数量', status char(1) default '0' comment '状态(0正常 1停用)', create_by varchar(64) default '' comment '创建者', create_time datetime comment '创建时间', update_by varchar(64) default '' comment '更新者', update_time datetime comment '更新时间', remark varchar(500) default null comment '备注', primary key (knowledge_id), unique key uk_knowledge_name (knowledge_name) ) engine=innodb auto_increment=1 comment = '洪水知识库表'; -- ---------------------------- -- 知识库文件表 -- ---------------------------- drop table if exists flood_knowledge_file; create table flood_knowledge_file ( file_id bigint(20) not null auto_increment comment '文件ID', knowledge_id bigint(20) default null comment '知识库ID(允许为空,用于临时上传的文件)', file_name varchar(200) not null comment '文件名称', original_name varchar(200) not null comment '原始文件名', file_path varchar(500) not null comment '文件路径', file_type varchar(50) default '' comment '文件类型(jpg,png,pdf,doc,docx,ppt,pptx等)', file_size bigint(20) default 0 comment '文件大小(字节)', file_url varchar(500) default '' comment '文件访问URL', sort_order int(11) default 0 comment '排序顺序', status char(1) default '0' comment '状态(0正常 1停用)', create_by varchar(64) default '' comment '创建者', create_time datetime comment '创建时间', update_by varchar(64) default '' comment '更新者', update_time datetime comment '更新时间', remark varchar(500) default null comment '备注', primary key (file_id), key idx_knowledge_id (knowledge_id) ) engine=innodb auto_increment=1 comment = '知识库文件表'; -- ---------------------------- -- 应急预案库表 -- ---------------------------- drop table if exists flood_emergency_plan; create table flood_emergency_plan ( plan_id bigint(20) not null auto_increment comment '预案ID', plan_level varchar(50) default '' comment '预案等级', plan_name varchar(200) not null comment '预案名称', plan_url text not null comment '预案地址', plan_desc varchar(500) default '' comment '预案描述', status char(1) default '0' comment '状态(0正常 1停用)', create_by varchar(64) default '' comment '创建者', create_time datetime comment '创建时间', update_by varchar(64) default '' comment '更新者', update_time datetime comment '更新时间', remark varchar(500) default null comment '备注', primary key (plan_id) ) engine=innodb auto_increment=1 comment = '应急预案库表'; -- ---------------------------- -- 洪水案例库表(根据Excel实际结构设计) -- ---------------------------- drop table if exists flood_case; create table flood_case ( case_id bigint(20) not null auto_increment comment '案例ID', case_type varchar(100) not null comment '案例类型(对应Excel的sheet名称)', -- 核心字段(从Excel中自动识别) case_name varchar(500) default '' comment '案例名称', case_time varchar(200) default '' comment '案例时间/发生时间', case_location varchar(500) default '' comment '案例地点/发生地点', case_description text comment '案例描述/简介', -- 扩展字段(根据Excel列名动态映射,支持常见字段) disaster_type varchar(200) default '' comment '灾害类型', affected_area text comment '影响范围/受灾区域', economic_loss text comment '经济损失', casualties text comment '人员伤亡', rainfall varchar(200) default '' comment '降雨量', water_level varchar(200) default '' comment '水位', duration varchar(200) default '' comment '持续时间', response_measures text comment '应对措施', river_basin varchar(200) default '' comment '流域', flood_scale varchar(200) default '' comment '洪水规模', peak_flow text comment '洪峰流量', affected_population text comment '受灾人口', damaged_houses text comment '房屋损毁', damaged_crops text comment '农作物受灾', infrastructure_damage text comment '基础设施损毁', rescue_situation text comment '救援情况', prevention_measures text comment '预防措施', lessons_learned text comment '经验教训', weather_condition varchar(500) default '' comment '天气情况', flood_cause varchar(500) default '' comment '洪水成因', warning_level varchar(100) default '' comment '预警等级', evacuation_number text comment '转移人数', rescue_teams varchar(500) default '' comment '救援队伍', material_support text comment '物资支援', -- 动态字段(JSON格式存储Excel中的其他所有列) case_data text comment '案例数据(JSON格式存储Excel中的其他字段)', -- 系统字段 status char(1) default '0' comment '状态(0正常 1停用)', create_by varchar(64) default '' comment '创建者', create_time datetime comment '创建时间', update_by varchar(64) default '' comment '更新者', update_time datetime comment '更新时间', remark varchar(500) default null comment '备注', primary key (case_id), key idx_case_type (case_type), key idx_case_name (case_name), key idx_case_time (case_time), key idx_case_location (case_location) ) engine=innodb auto_increment=1 comment = '洪水案例库表';