nguyenhg2/Network-Incident-Response-nguyen

GitHub: nguyenhg2/Network-Incident-Response-nguyen

一个基于 FastAPI 和 React 的突发事件报告与资源调度系统,利用 OR-Tools 实现多约束下的最优人员分配。

Stars: 0 | Forks: 0

# 应急响应调度系统 (MongoDB + FastAPI + React) 一个用于报告突发事件并优化资源即时调度的最小化端到端系统。 ## 技术栈 - 后端:Python 3.11, FastAPI, Motor (MongoDB 异步), Pydantic v2, JWT - 优化:OR-Tools CP-SAT (字典序目标) - 前端:React + TypeScript (Vite), MUI, Leaflet - DevOps:Docker Compose ## 快速开始 (Docker) 1. 启动服务 ``` docker-compose up --build ``` 2. 导入演示数据 ``` docker-compose --profile seed up --build seed ``` 3. 打开应用 - 前端:http://localhost:5173 - 后端文档:http://localhost:8000/docs ## 演示账号 - 公司管理员:`admin@acme.local` / `admin123` - 单元用户:`unit1@acme.local` / `unit123` ## 本地运行 (无 Docker) 后端: ``` cd backend python -m venv .venv source .venv/bin/activate pip install -r requirements.txt uvicorn app.main:app --reload --port 8000 ``` 导入数据: ``` cd backend python -m app.seed.seed_data ``` 前端: ``` cd frontend npm install npm run dev -- --host 0.0.0.0 --port 5173 ``` ## 主要端点 - `POST /api/auth/login` - `GET /api/auth/me` - `GET /api/incident-types` - `POST /api/incidents` - `GET /api/incidents?scope=unit` - `GET /api/incidents?scope=company&status=OPEN` - `POST /api/optimize/dispatch-now` ## 优化说明 - 决策变量:将一名技术人员分配至最多一个突发事件(立即调度)。 - 约束条件:技能、工具、许可证、车辆、模式可行性。 - 目标 (字典序): 1. 最大化加权突发事件数 `Σ priority * assigned`。 2. 最小化加权恢复时间(以分钟计)。 3. 最小化现场调度的出行成本。 ## 仓库结构 - `backend/` FastAPI 应用与优化模块 - `frontend/` React 应用 - `docker-compose.yml`
标签:AV绕过, CP-SAT, DNS解析, Docker, Docker Compose, FastAPI, JWT, Leaflet, MongoDB, Motor, MUI, OR-Tools, Pydantic, Python, React, RESTful API, Syscalls, TypeScript, Vite, 事件管理, 企业安全, 前端, 后端, 地图可视化, 安全插件, 安全防御评估, 库, 应急响应, 开源项目, 技能匹配, 提示词优化, 无后门, 时间恢复, 最小化成本, 派遣优化, 算法, 约束优化, 组合优化, 网络资产管理, 自动化攻击, 请求拦截, 资源分配, 资源调度, 运筹学, 运维管理, 逆向工具