64 lines
3.2 KiB
Markdown
64 lines
3.2 KiB
Markdown
|
|
# 临界事故情景分析模拟系统方案
|
|||
|
|
|
|||
|
|
本文档定义业务模块 `business-css` 的目标、架构、数据模型、接口设计与实施计划。
|
|||
|
|
|
|||
|
|
## 目标
|
|||
|
|
- 支撑对“临界事故”相关情景的建模、参数化配置与快速模拟评估。
|
|||
|
|
- 与 `framework` 项目共享通用能力(鉴权、缓存、日志、通用工具、数据访问等)。
|
|||
|
|
- 提供 REST 接口用于前端或第三方系统的集成。
|
|||
|
|
|
|||
|
|
## 总体架构
|
|||
|
|
- 应用:Spring Boot(JDK 17),模块名 `business-css`。
|
|||
|
|
- 依赖:`com.yfd:platform:1.0:jar:plain` 引入框架公共模块。
|
|||
|
|
- 数据存储:MySQL(默认 `yfd_platform`,可按环境切换)。
|
|||
|
|
- 接口:按 `REST + JSON` 约定,OpenAPI 自动文档可选。
|
|||
|
|
|
|||
|
|
## 核心域模型(初版)
|
|||
|
|
- `Scenario`:事故情景(名称、类型、参数定义、风险等级)。
|
|||
|
|
- `IncidentFactor`:影响因子(指标、阈值、权重、取值范围)。
|
|||
|
|
- `SimulationRequest`:一次模拟请求(情景名、输入参数)。
|
|||
|
|
- `SimulationResult`:模拟输出(状态、关键指标、结论摘要、时间戳)。
|
|||
|
|
|
|||
|
|
## 关键能力
|
|||
|
|
- 参数化建模:基于影响因子提出可配置的情景模板。
|
|||
|
|
- 指标计算:利用 `framework` 的通用工具库(如缓存、时间序列、统计)实现。
|
|||
|
|
- 场景评估:形成风险等级、预警阈值与应对建议。
|
|||
|
|
- 结果持久化:保存模拟结果用于追踪与复盘(后续版本)。
|
|||
|
|
|
|||
|
|
## 接口草图
|
|||
|
|
- `GET /api/simulation/ping`:服务健康检测。
|
|||
|
|
- `POST /api/simulation/run`:执行一次模拟,输入 `SimulationRequest`,输出 `SimulationResult`。
|
|||
|
|
- 后续:`/api/scenario/*` 用于情景模板的增删改查;`/api/factor/*` 用于影响因子的管理。
|
|||
|
|
|
|||
|
|
## 数据表(建议)
|
|||
|
|
- `css_scenario`:情景基础信息表。
|
|||
|
|
- `css_factor`:影响因子表。
|
|||
|
|
- `css_simulation_log`:模拟记录表(包含输入与输出摘要)。
|
|||
|
|
|
|||
|
|
## 与框架的集成
|
|||
|
|
- 鉴权与用户上下文:复用 `framework` 的安全模块。
|
|||
|
|
- 通用组件:缓存(Caffeine/Redis)、日志、异常统一处理。
|
|||
|
|
- 数据访问:沿用 MyBatis/MyBatis-Plus 与统一的分页、审计字段策略。
|
|||
|
|
|
|||
|
|
## 版本与发布
|
|||
|
|
- 业务模块版本:`1.0-SNAPSHOT` 起步;与框架 `1.0` 对齐。
|
|||
|
|
- 构建:在仓库根 `pom` 中作为模块聚合;可单独使用 `-pl business-css` 构建或运行。
|
|||
|
|
|
|||
|
|
## 渐进式实施计划
|
|||
|
|
1. 基础骨架搭建(已完成:应用入口、控制器、服务接口与模型)。
|
|||
|
|
2. 定义情景与影响因子数据模型,建立数据库表结构与 Mapper。
|
|||
|
|
3. 接入框架公共工具,完善指标计算与风险评估逻辑。
|
|||
|
|
4. 增加 OpenAPI 文档与前端集成接口规范。
|
|||
|
|
5. 引入结果持久化与查询报表。
|
|||
|
|
|
|||
|
|
## 运维与配置
|
|||
|
|
- 端口默认 `8082`,环境覆盖通过 `application.yml` 与外部化配置。
|
|||
|
|
- 数据库连接按环境注入(dev/test/prod)。
|
|||
|
|
- 日志级别默认 `info`,业务包 `com.yfd` 可设为 `debug`。
|
|||
|
|
|
|||
|
|
## 安全与合规
|
|||
|
|
- 按角色访问控制(复用框架安全),仅授权用户可触发模拟。
|
|||
|
|
- 输入校验与审计日志记录,避免非法参数导致资源消耗异常。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
本文为初版方案,后续将结合具体需求与数据约束逐步细化与调整。
|