📊 智能配电与能源管理平台 · 系统操作流程图
◻ 开始/结束▷ 处理◇ 判断🟠 异常/拦截⚠ 问题点(橙框)
0️⃣ 系统操作流程总览(已设计完成)
从系统初始化到日常运维的完整操作链路,节点标注对应原型页面;数据权限与操作日志横切全部环节
graph TD
subgraph init[【初始化 · 系统管理员】]
A1["企业管理
+新增企业
company.html"] --> A2["项目管理
+新增项目
system-project.html"]
A2 --> A3["配电室/用电单元
project-detail.html"]
A3 --> A4["用户+角色
功能/操作/数据范围
system-user / system-role"]
end
subgraph access[【设备接入 · 实施/运维】]
A4 --> B1["设备型号
型号→物模型
device-model.html"]
B1 --> B2["点位模板
分组/批量/校验
point-template.html"]
B2 --> B3["网关管理
项目/配电室归属
device-gateway.html"]
B3 --> B4["设备建档
选型号→自动套点位模板
device-list.html"]
B4 --> B5["设备关系
通信+电气
device-gateway.html"]
B5 --> B6["设备上线
遥测采集
device-online.html"]
B6 --> B7["项目组态:电气拓扑 / 一次图 / 配电箱视图
电气拓扑建模 拖拽+绑定设备
cfg-topology.html / cfg-diagram.html / cfg-box.html"]
end
subgraph run[【运行监控 · 日常】]
B6 --> C1["驾驶舱
项目切换/全部汇总
dashboard.html"]
B7 --> C2["一次图监控
红合绿分
mon-diagram.html"]
B6 --> C3["设备监控 10Tab
mon-device.html"]
C1 --> C4["项目总览
mon-overview.html"]
C3 --> C5["告警规则
alarm-rule.html"]
C3 --> D1{"告警产生"}
D1 --> D2["确认/处理
alarm-record.html"]
D2 --> D3["转工单
自动带入设备/告警内容"]
D3 --> D4["工单闭环
mon-device 设备工单 Tab"]
D2 --> D5["关闭/恢复追溯
确认并关闭"]
C1 --> E1["能耗统计/历史报表
energy-stat / report-history"]
E1 --> E2["导出
数据权限过滤+留痕"]
end
subgraph cross[【横切】]
F1["数据权限拦截
company_id + project_id IN"]
F2["操作日志/审计
P0/P1 留痕"]
end
init --> access --> run
操作留痕真源:所有 P0/P1 高危操作(删除 / 停用 / 下发 / 遥控 / 费率调整 / 权限变更 / 登录退出)统一写入操作日志,在「系统管理 → 操作日志」(system-log.html)按时间、操作人、模块、结果查询与导出;告警状态变更、遥控操作另有各自的记录池(告警记录 / 遥控控制日志),可从对应记录页追溯到操作人与时间。
✓ 本总览反映当前已设计完成状态:初始化(企业→项目→配电室→用户/角色) → 设备接入(型号→点位模板→网关→设备→关系→上线→一次图) → 运行监控(驾驶舱→监控→告警→工单→能耗报表)。
① 账号与登录流程
企业 + 用户名 + 密码 → 首登强制改密 → 进入系统
graph TD
A["登录
企业名称 + 用户名 + 密码"] --> B{"企业状态?"}
B -- "停用" --> B1["拒绝登录
提示企业已停用"]
B -- "启用" --> C{"首次登录?"}
C -- "是" --> D["强制修改密码
8-20位含字母数字"]
C -- "否" --> E["进入系统首页
项目总览"]
D --> E
E --> F["选择项目维度
或进入任意模块"]
F --> G["操作(监控/遥控/告警/工单/能耗)"]
G --> H["操作日志记录
P0/P1 高危留痕"]
B1 --> Z["结束"]
H --> Z["结束"]
⚠ 问题点:用户可见多个项目时,登录后默认进入哪个项目/企业维度?——建议明确「默认项目」:登录后定位到 default_project_id,总览默认展示该企业全部项目(当前原型默认全部项目,语义需对齐)。
② 企业 / 项目 / 配电室 配置流程
企业为顶层单位,一个企业可建多个项目,项目下分配电室
graph TD
A["企业管理
+新增企业"] --> B["创建企业
(名称=登录名)"]
B --> C["项目管理
+新增项目(选所属企业)"]
C --> D["保存并进入项目详情"]
D --> E["配电室管理
+新增配电室"]
E --> F["配置用电单元
(区域标签)"]
F --> G["配电结构树
项目→配电室→柜体→设备"]
G --> H["接入设备/网关"]
H --> I["监控中心可查看"]
E -. "快捷入口" .-> J["+添加设备/网关
配置一次图"]
J --> H
✓ 该链路上一轮已闭环:新建项目 → 保存并进入详情 → 配电室 CRUD → 快捷添加设备/网关/电气结构。
③ 设备接入流程(三层模型)
设备型号 → 物模型(属性/服务/事件)→ 点位模板(协议映射)→ 设备 → 网关 → 关系 → 上线
graph TD
A["设备型号
+新增型号"] --> B["关联物模型
(属性/服务/事件)"]
B --> C["配置点位模板
(寄存器地址/倍率/单位)"]
C --> D{"点位校验?"}
D -- "失败" --> D1["修正点位
重新校验"]
D -- "通过" --> E["新增设备
选型号自动带出"]
E --> F["选择网关+从站地址
(项目→配电室归属)"]
F --> G["配置关系
通信关系/电气关系"]
G --> H["设备上线
实时数据采集"]
⚠ 问题点:① 型号未配置点位模板时,新建设备会"无点位可采"——建议在「设备型号」增加接入引导(未配置点位时提示先配置);② 物模型动态建模为二期,当前新增型号只能选内置模型,若客户有新断路器系列需开发介入——建议明确一期型号扩展边界。
④ 监控与遥控指令流程
实时监控 → 指令下发(P0/P1)→ 二次确认 → 校验 → 下发 → 回执 → 日志
graph TD
A["实时数据/曲线/历史
(设备监控 10 Tab)"] --> B["点击指令
遥控合/分闸 定值整定 召测"]
B --> C{"控制模式?"}
C -- "就地" --> C1["强制拦截
提示+日志"]
C -- "远方" --> D["二次身份确认
短信验证码/操作密码"]
D --> E{"验证码有效?"}
E -- "无效/过期" --> E1["拦截
重新获取"]
E -- "有效" --> F["下发指令
等待回执(10s/15s)"]
F --> G{"回执?"}
G -- "成功" --> H["写控制日志
P0/P1 留痕"]
G -- "超时" --> I["提示超时
可重试"]
G -- "失败" --> J["提示设备错误码"]
I --> B
C1 --> Z["结束"]
E1 --> D
H --> Z["结束"]
⚠ 问题点:指令超时重试是否需要重新二次确认?——建议明确"重试仍走二次确认(安全一致)",避免口头约定;另外遥调(P1)定值整定建议增加"整定前读取当前值"确认步骤,防误设。
⑤ 告警闭环流程
规则 → 产生 → 确认 → 处理 → 关闭(+自动恢复分支)
graph TD
A["告警规则配置
型号+参数+阈值+通知"] --> B["平台评估/设备事件"]
B --> C["告警产生
状态=未确认未恢复"]
C --> D{"自动恢复?"}
D -- "恢复" --> E["状态=未确认已恢复
(需追溯)"]
D -- "未恢复" --> F{"人工确认?"}
F -- "确认" --> G["状态=已确认未恢复
(人工干预中)"]
F -- "未确认" --> C
E -- "确认后" --> H["已处理关闭"]
G --> I["处理/关闭"]
I --> H["已处理关闭
(闭环完成)"]
G -. "建议" .-> J["转工单
(告警→工单联动)"]
J --> K["设备工单处理"]
K --> H
⚠ 问题点(重要):① 告警「处理」目前只有状态流转,缺少"转工单"动作——竞品(天屹云电)工单有"事件来源=告警转工单",但我们的告警详情/处理里没有转工单入口,链路断裂;建议在告警"处理"处增加「转工单」按钮(自动带入设备/告警内容)。② 已恢复告警的"确认后闭环"在原型里缺少操作入口(需追溯类如何关闭要明确)。
⑥ 工单运维流程
工单来源 → 派发 → 处理 → 审核 → 关闭
graph TD
A["工单来源
人工/告警转/巡检转"] --> B["新建工单
类型/负责人/计划"]
B --> C["等待处理"]
C --> D["处理中
现场执行"]
D --> E["已处理-审核中"]
E --> F{"审核通过?"}
F -- "通过" --> G["已处理"]
F -- "驳回" --> D
C -. "作废" .-> H["已作废"]
D -. "作废" .-> H
G --> Z["结束"]
⚠ 问题点:① 告警转工单入口缺失(见图⑤);② "巡检转工单"在原型中无入口(巡检任务结果页没有"转为工单"按钮)——建议巡检/缺陷回执处增加转工单动作。
⑦ 能耗与报表流程
遥测 → 时序存储 → 能耗统计/历史报表 → 导出(受数据权限约束)
graph TD
A["设备遥测上报
(电能/负荷)"] --> B["时序存储
按天分表"]
B --> C["能耗统计
区域+分项 日/月/年 排名"]
B --> D["历史数据查询
曲线/明细"]
C --> E["导出
(受数据权限过滤)"]
D --> E
E --> F["审计留痕"]
✓ 该链路闭环;导出统一走数据权限拦截器过滤(company_id + project_id)。
⑧ 权限模型(RBAC 三层)
企业 → 用户 → 角色(功能/操作/数据)
graph TD
A["企业管理
(顶层边界)"] --> B["用户管理
用户归属企业"]
B --> C["角色分配
功能权限+操作权限"]
C --> D["数据范围
企业内 全部/指定项目"]
D --> E["登录+鉴权
接口+数据拦截"]
E --> F["操作留痕
审计日志"]
✓ 权限链路清晰;建议按 1.6 章节在二期支持代维商跨企业(多企业账号)。
⚠ 流程问题汇总(本次梳理发现)
1️⃣ 告警 → 工单 链路断裂(最优先):告警"处理"无转工单入口;工单"事件来源=告警转工单"是空选项。修复:告警处理操作加「转工单」按钮,自动带入设备与告警内容。
2️⃣ 巡检/缺陷 → 工单 无入口:巡检回执页没有"转为工单"动作。修复:巡检任务/缺陷详情加「转工单」。
3️⃣ 设备接入前置引导缺失:型号未配点位模板时新建设备会采不到数据。修复:设备型号加接入状态引导(未配点位→提示)。
4️⃣ 遥控超时重试规则未明确:超时后重试是否重新二次确认。建议:重试仍走二次确认,安全一致。
5️⃣ 已恢复告警的"需追溯→闭环"缺操作入口:未确认已恢复状态如何关闭需明确。建议:列表中对"未确认已恢复"提供「确认并关闭」操作。
6️⃣ 登录默认项目语义:多项目用户登录后默认上下文。建议:default_project_id 定位 + 企业维度总览。