3.2 KiB
3.2 KiB
临界事故情景分析模拟系统方案
本文档定义业务模块 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构建或运行。
渐进式实施计划
- 基础骨架搭建(已完成:应用入口、控制器、服务接口与模型)。
- 定义情景与影响因子数据模型,建立数据库表结构与 Mapper。
- 接入框架公共工具,完善指标计算与风险评估逻辑。
- 增加 OpenAPI 文档与前端集成接口规范。
- 引入结果持久化与查询报表。
运维与配置
- 端口默认
8082,环境覆盖通过application.yml与外部化配置。 - 数据库连接按环境注入(dev/test/prod)。
- 日志级别默认
info,业务包com.yfd可设为debug。
安全与合规
- 按角色访问控制(复用框架安全),仅授权用户可触发模拟。
- 输入校验与审计日志记录,避免非法参数导致资源消耗异常。
本文为初版方案,后续将结合具体需求与数据约束逐步细化与调整。