shimai
2026-04-03 6bb08c2297be1b6415c8bc02e6917eba6ee355e5
openspec/changes/implement-mediation-state-control/proposal.md
New file
@@ -0,0 +1,58 @@
# Proposal: 实现AI调解状态控制功能(终止/恢复)
## Change ID
`implement-mediation-state-control`
## Summary
在调解看板页面增加"终止"或"恢复"功能按钮,允许用户对正在进行的AI自动调解进行暂停和恢复操作。按钮位于人工接管按钮右侧,根据案件当前状态动态显示不同的文本和样式。
## Motivation
当前系统缺乏对AI自动调解过程的灵活控制机制。当调解遇到特殊情况(如需要人工干预、当事人临时沟通等)时,调解员需要能够暂停AI调解流程,并在适当时机恢复调解。此功能将提升系统的实用性和用户体验。
## Requirements Overview
- 在调解看板页面添加状态控制按钮
- 根据案件状态动态显示按钮文本和样式
- 实现确认对话框机制
- 调用后端API进行状态变更
- 状态变更后自动刷新页面数据
## Stakeholders
- 调解员:主要使用者,需要灵活控制调解流程
- 系统管理员:关注功能稳定性和安全性
- 产品负责人:确保功能符合业务需求
## Success Criteria
- 按钮正确显示在人工接管按钮右侧
- 状态为1时显示"终止"按钮(红色渐变样式)
- 状态为5时显示"恢复"按钮(绿色渐变样式)
- 其他状态下不显示该按钮
- 点击按钮后正确显示确认对话框
- API调用成功后页面数据正确刷新
- API调用失败时显示相应错误提示
- 终止操作成功后自动关闭外呼气泡组件
- state=5时状态文本显示为"AI调解暂停中"
- state=5时状态圆点显示为红色
## Risks & Mitigations
- **风险**:频繁的状态变更可能影响调解流程的一致性
  - **缓解**:添加操作日志记录,便于追踪状态变更历史
- **风险**:并发操作可能导致状态不一致
  - **缓解**:在后端实现状态变更的原子性控制
## Dependencies
- 已存在的`ProcessAPIService.updateMediationState` API
- 案件状态管理机制
- 现有的人工接管功能实现
## Timeline
预计开发时间:2-3个工作日
- 设计和评审:0.5天
- 前端实现:1.5天
- 测试和验证:1天
## Alternatives Considered
1. **在独立页面管理调解状态**:增加了用户操作复杂度,不符合当前一体化界面设计理念
2. **通过右键菜单实现**:隐藏了重要功能,不利于用户发现和使用
3. **自动状态检测和恢复**:缺乏人工控制灵活性,可能在不适当的时候触发状态变更
选择在现有界面中直接添加按钮的方式,既保持了界面的一致性,又提供了直观的操作方式。