系统 SHALL 根据案件当前状态动态显示状态控制按钮。
Given 案件状态为1(进行中)
When 页面加载时
Then 应显示"终止"按钮,样式为红色渐变
Given 案件状态为5(暂停)
When 页面加载时
Then 应显示"恢复"按钮,样式为绿色渐变
Given 案件状态为0(初始)、2(成功)、3(失败)、4(人工接管)或其他状态
When 页面加载时
Then 不应显示状态控制按钮
用户点击状态控制按钮时 SHALL 显示确认对话框。
Given 用户看到"终止"按钮
When 用户点击该按钮
Then 应显示确认对话框,标题为"确认终止调解"
And 对话框应包含操作说明文本
And 应提供确认和取消按钮
Given 用户看到"恢复"按钮
When 用户点击该按钮
Then 应显示确认对话框,标题为"确认恢复调解"
And 对话框应包含操作说明文本
And 应提供确认和取消按钮
确认操作后 SHALL 调用API并更新页面状态。
Given 用户确认终止操作
When 系统调用ProcessAPIService.updateMediationState({action: 0})
And API返回成功响应
Then 应显示成功消息"调解已终止"
And 应触发mediation-terminated事件关闭外呼气泡
And 应重新加载当前页面数据
And 按钮状态应相应更新
Given 用户确认恢复操作
When 系统调用ProcessAPIService.updateMediationState({action: 1})
And API返回成功响应
Then 应显示成功消息"调解已恢复"
And 应重新加载当前页面数据
And 按钮状态应相应更新
Given 用户确认操作
When 系统调用API失败
Then 应显示相应的错误消息
And 页面状态应保持不变
And 按钮应恢复到可点击状态
操作过程中 SHALL 提供适当的加载状态反馈。
Given 用户已确认操作
When 系统正在调用API
Then 状态控制按钮应显示loading状态
And 应禁用相关操作按钮
And 应显示操作进度提示
Given API调用成功
When 系统正在刷新页面数据
Then 应显示数据加载指示器
And 应暂时禁用用户交互
系统 SHALL 根据案件状态显示相应的状态文本和指示器颜色。
Given 案件状态为1(进行中)
When 页面显示状态信息时
Then 状态文本应显示为"调解进行中-阶段X:节点名称"
And 状态圆点应显示为绿色
Given 案件状态为5(暂停)
When 页面显示状态信息时
Then 状态文本应显示为"AI调解暂停中"
And 状态圆点应显示为红色(#e63946)
终止操作成功后 SHALL 自动关闭外呼气泡组件。
Given 用户成功执行终止操作
When API返回成功响应
Then 系统应触发自定义事件"mediation-terminated"
And OutboundCallWidget应监听该事件
And 外呼气泡应自动关闭(isVisible=false)
And 外呼任务数据应从localStorage中清除
状态控制按钮 SHALL 位于FloatingControlPanel组件中。
Given 页面包含FloatingControlPanel组件
When 添加状态控制按钮后
Then 状态控制按钮和人工接管按钮应水平排列
And 状态控制按钮应位于人工接管按钮左侧
And 按钮间应有15px的间距
Given 页面同时包含状态控制按钮和人工接管按钮
When 渲染页面时
Then 状态控制按钮应使用独立的CSS类名(state-control-btn)
And 人工接管按钮应使用独立的CSS类名(floating-control-btn)
And 两种按钮样式应完全隔离互不影响
无