钢铁企业安全生产管理系统是一套基于 B/S 架构的企业安全生产(EHS)管理平台,系统覆盖 19 个安全管理模块,提供隐患管理、危险作业、事故管理等核心业务闭环,支持中英文切换,可离线运行。

# 项目功能分析
## 一、总体功能
钢铁企业安全生产管理系统(Safety Management System)是一套基于 B/S 架构的企业安全生产(EHS)管理平台,系统覆盖 19 个安全管理模块,提供隐患管理、危险作业、事故管理等核心业务闭环,支持中英文切换,可离线运行。
## 二、主要业务模块
系统包含以下关键模块(基于需求文档 2.2.x 分节):
– 视频看板(2.2.1):实时安全监控展示
– 两重点一重大(2.2.2):危险源档案、评价、监控采集、危化品管理
– 组织机构(2.2.3.1):文件、机构、安委会、领导小组管理
– 安全生产目标(2.2.3.2):目标管理、年度工作计划
– 法律法规与安全管理制度(2.2.3.3):法规文件管理
– 职业健康(2.2.3.4):三同时、申报、培训、检测、监测、接害岗位管理
– 劳保用品(2.2.3.5):清单、标准、计划、领取、个人档案管理
– 涉危管理(2.2.3.6):危险化学品管理
– 环保管理(2.2.3.7):固废台账管理
– 责任制管理(2.2.4):履职清单、指标、测评、统计
– 安全预算(2.2.5):费用计划、使用台账
– 人员管理(2.2.6):员工信息管理
– 教育培训(2.2.7):资源库、计划、任务、记录、取证、持证管理
– 安全设施(2.2.8):特种设备、消防、其他设施管理
– 危险作业(2.2.9):八大作业票、基础信息、相关方管理(核心闭环)
– 风险管控(2.2.10):清单、告知、巡查、四色图(核心功能)
– 隐患管理(2.2.11):计划、闭环、随手拍、违章考核(核心闭环)
– 应急管理(2.2.12):预案、演练、资源管理
– 安全现状控制评价(2.2.13):含三同时评价
– 事故管理(2.2.14):快报、调查、台账(核心闭环)
– AI 智慧物联(2.2.15):物联设备、预警信息管理
– 基础配置(2.2.16):企业信息、组织、角色、用户、定时任务、日志
– 统计报表(2.2.17):各类报表生成
– 与其他系统接口(2.2.18):接口配置管理
– 安全生产文化宣传建设(2.2.19):文化活动管理
## 三、用户角色和权限
系统预设四种角色:
1. 系统管理员(admin/Admin@123):全部模块最高权限
2. 安全管理员(safety01/123456):安全业务全流程操作权限
3. 部门负责人(mgr01/123456):本部门安全业务权限
4. 普通员工(staff01/123456):隐患上报、培训学习权限
权限基于角色的细粒度模块控制,结合 Session 鉴权和 werkzeug 密码哈希。
## 四、核心业务流程(三条旗舰闭环)
1. 隐患管理闭环:待下发 → 整改中 → 待验收 →(验收不合格)已驳回 → 整改中 → 已验收。支持计划排查与随手拍两种来源,全过程留痕。
2. 危险作业闭环:待审批 →(驳回)已驳回 /(通过)已批准 → 作业中 → 待验收 → 已归档。包含气体检测、安全交底、作业人员、验收结果。
3. 事故管理闭环:上报 → 待审核 →(不通过)已驳回 /(通过,简易处理或启动应急预案)处理中 → 已结案。
## 五、技术架构
– 后端:Flask 3 + Flask-SQLAlchemy 2(SQLAlchemy 2.0)+ SQLite,采用应用工厂模式
– 前端:服务端渲染 Jinja2 + 自研 CSS 设计系统 + 极简原生 JS(无外部 CDN 依赖,可离线运行)
– 鉴权:Session + werkzeug 密码哈希 + 基于角色的细粒度模块权限
– 国际化:中文即键、英文为值,共 604 条词条,右上角一键切换并持久化到用户档案
– 数据库:58 张业务表,覆盖需求文档全部 19 个模块
关键架构决策:声明式注册表 + 单一通用 CRUD 引擎。通过 registry.py 声明业务模块(标签、导航分组、列表列、检索列、枚举取值、工作流流转规则),由 generic.py 唯一一套 CRUD 代码服务全部模块,新增模块约需 10 行声明即可。
## 六、数据范围
系统当前演示数据包含:
– 58 张业务表
– 414 条记录
– 0 空表
数据通过 seed.py 幂等注入,支持按模块单独执行。
## 七、外部接口和能力边界
系统在以下方面提供数据模型、配置台账和适配器接口(通过 interface_config 模块),但需要现场条件才能真正联通:
– OPC / Modbus / IEC 104 设备接入:提供边缘网关与采集点台账、协议配置字段、监控数据落地表,需要现场设备地址、点表、网关联调
– 视频预览与 AI 识别(海康/大华):提供设备台账、AI 识别结果写入预警信息通道,需要视频平台地址与鉴权、AI 算法服务
– 唐山应急管理局监管平台对接:提供接口配置台账、上传方向与数据格式定义,需要监管平台接口文档与账号
– 京诚数科工业互联网平台单点登录:提供用户与角色体系、登录入口,需要对方平台 SSO 协议与凭据
– 短信/电话/微信推送:提供预警规则、推送渠道配置、短信余额设置项,需要短信服务商账号与密钥
– 移动端 APP / 小程序:提供响应式 Web(移动端适配)、中英文一键切换,需要原生客户端工程
– 容器化 / 微服务 / 多环境部署:应用配置全部支持环境变量覆盖,需要 K8s/容器编排脚本
系统明确不生成视频看板的”监控画面”,以避免制造假接入证据。
## 八、验证和运维
系统提供以下工具链:
– verify_counts.py:各表记录数核对
– sweep_routes.py:路由全量扫描(277 项,全部 200)
– e2e_flows.py:业务闭环功能测试(28 项断言,全部通过)
– capture_screenshots.py:界面截图(48 张 → docs/screenshots)
– process_assets.py:图像资产加工(缩放/压缩/派生 favicon)
– reset_demo.py:重建干净的演示数据
– stop_server.py:精确停止本项目的开发服务
## 九、部署和运行
1. 使用受管 venv
2. 初始化数据库并灌入演示数据:$PY run.py –init
3. 启动服务:$PY run.py(默认 http://0.0.0.0:5000)
可通过 PORT、HOST、DEBUG、DATABASE_URL、SECRET_KEY、ADMIN_USERNAME、ADMIN_PASSWORD、DEFAULT_LANG 等环境变量覆盖配置。
系统在 SQLite + 当前数据量下性能远优于需求(一年数据查询 ≤20s,复杂报表 ≤30s),但未做百万级数据压力验证。
我爱数钱钱 » 钢铁企业安全生产管理系统是一套基于 B/S 架构的企业安全生产(EHS)管理平台,系统覆盖 19 个安全管理模块,提供隐患管理、危险作业、事故管理等核心业务闭环,支持中英文切换,可离线运行。