From 0c8432f4ff5c95faca4ca62d6a4ec4618feba627 Mon Sep 17 00:00:00 2001
From: tony.cheng <chengmingwei_1984122@126.com>
Date: Tue, 17 Mar 2026 15:31:29 +0800
Subject: [PATCH] feat: 完善AI调解状态控制功能及相关文档更新

---
 openspec/changes/implement-mediation-state-control/specs/mediation-state-control/spec.md |   60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 47 insertions(+), 13 deletions(-)

diff --git a/openspec/changes/implement-mediation-state-control/specs/mediation-state-control/spec.md b/openspec/changes/implement-mediation-state-control/specs/mediation-state-control/spec.md
index 601ac74..003d038 100644
--- a/openspec/changes/implement-mediation-state-control/specs/mediation-state-control/spec.md
+++ b/openspec/changes/implement-mediation-state-control/specs/mediation-state-control/spec.md
@@ -5,18 +5,18 @@
 ### Requirement: 状态控制按钮显示逻辑
 系统 SHALL 根据案件当前状态动态显示状态控制按钮。
 
-#### Scenario: 案件处于初始或进行中状态
-Given 案件状态为0(初始)或1(进行中)
+#### Scenario: 案件处于进行中状态
+Given 案件状态为1(进行中)
 When 页面加载时
-Then 应显示"终止"按钮,样式为主题蓝色
+Then 应显示"终止"按钮,样式为红色渐变
 
 #### Scenario: 案件处于暂停状态
 Given 案件状态为5(暂停)
 When 页面加载时
-Then 应显示"恢复"按钮,样式为主题绿色
+Then 应显示"恢复"按钮,样式为绿色渐变
 
 #### Scenario: 案件处于其他状态
-Given 案件状态为2(成功)、3(失败)、4(终止)或其他状态
+Given 案件状态为0(初始)、2(成功)、3(失败)、4(人工接管)或其他状态
 When 页面加载时
 Then 不应显示状态控制按钮
 
@@ -44,7 +44,8 @@
 Given 用户确认终止操作
 When 系统调用ProcessAPIService.updateMediationState({action: 0})
 And API返回成功响应
-Then 应显示成功消息"案件状态更新成功"
+Then 应显示成功消息"调解已终止"
+And 应触发mediation-terminated事件关闭外呼气泡
 And 应重新加载当前页面数据
 And 按钮状态应相应更新
 
@@ -52,7 +53,7 @@
 Given 用户确认恢复操作
 When 系统调用ProcessAPIService.updateMediationState({action: 1})
 And API返回成功响应
-Then 应显示成功消息"案件状态更新成功"
+Then 应显示成功消息"调解已恢复"
 And 应重新加载当前页面数据
 And 按钮状态应相应更新
 
@@ -79,17 +80,50 @@
 Then 应显示数据加载指示器
 And 应暂时禁用用户交互
 
+### Requirement: 状态显示规则
+系统 SHALL 根据案件状态显示相应的状态文本和指示器颜色。
+
+#### Scenario: 进行中状态显示
+Given 案件状态为1(进行中)
+When 页面显示状态信息时
+Then 状态文本应显示为"调解进行中-阶段X:节点名称"
+And 状态圆点应显示为绿色
+
+#### Scenario: 暂停状态显示
+Given 案件状态为5(暂停)
+When 页面显示状态信息时
+Then 状态文本应显示为"AI调解暂停中"
+And 状态圆点应显示为红色(#e63946)
+
+### Requirement: 外呼气泡联动关闭
+终止操作成功后 SHALL 自动关闭外呼气泡组件。
+
+#### Scenario: 终止成功后关闭外呼气泡
+Given 用户成功执行终止操作
+When API返回成功响应
+Then 系统应触发自定义事件"mediation-terminated"
+And OutboundCallWidget应监听该事件
+And 外呼气泡应自动关闭(isVisible=false)
+And 外呼任务数据应从localStorage中清除
+
 ## MODIFIED Requirements
 
-### Requirement: 现有按钮布局调整
-人工接管按钮的布局 SHALL 为新按钮预留空间。
+### Requirement: 按钮组件位置调整
+状态控制按钮 SHALL 位于FloatingControlPanel组件中。
 
 #### Scenario: 按钮容器布局
-Given 页面包含人工接管按钮
+Given 页面包含FloatingControlPanel组件
 When 添加状态控制按钮后
-Then 两个按钮应水平排列
-And 状态控制按钮应位于人工接管按钮右侧
-And 按钮间应有适当的间距
+Then 状态控制按钮和人工接管按钮应水平排列
+And 状态控制按钮应位于人工接管按钮左侧
+And 按钮间应有15px的间距
+
+#### Scenario: 样式隔离
+Given 页面同时包含状态控制按钮和人工接管按钮
+When 渲染页面时
+Then 状态控制按钮应使用独立的CSS类名(state-control-btn)
+And 人工接管按钮应使用独立的CSS类名(floating-control-btn)
+And 两种按钮样式应完全隔离互不影响
 
 ## REMOVED Requirements
 无

--
Gitblit v1.8.0