系统组件交互时序图
sequenceDiagram
participant W as 值班负责人(Web)
participant ES as 电气设备管理服务
participant WS as 操作命令WebSocket服务
participant DB as SQLite数据库
participant A as 操作员(Android)
Note over W,A: 🔐 登录认证流程
W->>ES: 1. Web登录(用户名/密码)
ES->>DB: 2. 验证用户信息
DB-->>ES: 3. 返回用户数据
ES-->>W: 4. 登录成功,创建Session
A->>WS: 5. 连接WebSocket
WS-->>A: 6. 连接成功
A->>ES: 7. JWT认证
ES-->>A: 8. 验证设备用户
WS-->>A: 9. 返回认证结果
WS-->>A: 10. 认证成功
Note over W,A: 📊 设备状态监控
W->>ES: 11. 查看设备状态
ES->>DB: 12. 查询设备信息
DB-->>ES: 13. 返回设备列表
ES-->>W: 14. 显示设备状态界面
Note over W,A: ⚙️ 设备控制流程
W->>ES: 15. 选择设备并发送命令
ES->>WS: 16. 通过内部API发送命令
WS->>DB: 17. 保存命令到历史记录
WS->>A: 18. 推广播命令到Android端
A->>A: 19. 显示待处理命令
A->>A: 20. 操作员确认执行
A->>WS: 21. 发送操作确认
Note over W,A: 📝 操作结果处理
WS->>ES: 22. 更新命令状态
ES->>DB: 23. 推广播操作结果
ES->>WS: 24. 通过内部API更新状态
ES->>DB: 25. 更新设备状态
Note over W,A: 🔄 状态同步
ES->>W: 26. 刷新设备状态
ES->>DB: 27. 查询最新状态
DB-->>ES: 28. 返回更新后的状态
ES-->>W: 29. 显示最新状态