From 1ba2f3d3223644d2eb6081d825db76270c44ff12 Mon Sep 17 00:00:00 2001
From: tony.cheng <chengmingwei_1984122@126.com>
Date: Tue, 17 Mar 2026 13:37:39 +0800
Subject: [PATCH] fix: 修复caseState类型比较问题,使用Number()转换确保字符串和数字类型都能正确匹配

---
 web-app/src/contexts/CaseDataContext.jsx |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/web-app/src/contexts/CaseDataContext.jsx b/web-app/src/contexts/CaseDataContext.jsx
index b5cb6e0..bfce87a 100644
--- a/web-app/src/contexts/CaseDataContext.jsx
+++ b/web-app/src/contexts/CaseDataContext.jsx
@@ -398,6 +398,14 @@
       // 提取timeline数据
       const timelineData = response.timeline || response.data?.timeline || response;
       
+      // 调试日志:输出提取的timeline数据
+      console.log('===== API数据提取 =====');
+      console.log('原始response:', response);
+      console.log('提取的timelineData:', timelineData);
+      console.log('timelineData.mediation:', timelineData.mediation);
+      console.log('timelineData.mediation?.state:', timelineData.mediation?.state);
+      console.log('========================');
+      
       // 提取nodes数据(确保为数组),兼容 nodeList 和 nodes 两种字段名
       const nodesData = response.data?.nodeList || response.data?.nodes || response.nodes || [];
       
@@ -422,7 +430,7 @@
       
       // 检查终态状态(调解成功/失败/人工接管),终态不执行外呼和存储
       const mediationState = timelineData.mediation?.state;
-      const isTerminalState = [2, 3, 4].includes(mediationState);
+      const isTerminalState = [2, 3, 4, 5].includes(mediationState);
       
       if (isTerminalState) {
         console.log('案件已处于终态状态:', mediationState, ',跳过外呼和存储');
@@ -449,6 +457,7 @@
       
       // 使用Mock数据作为降级方案
       const mockTimeline = mockTimelineData.data?.timeline || mockTimelineData;
+      console.log('使用Mock数据降级:', mockTimeline);
       setCaseData(mockTimeline);
       setProcessNodes(mockTimelineData.data?.nodes || []);
       setHasLoaded(true);

--
Gitblit v1.8.0