tony.cheng
2026-03-03 527f17527ea98b8759e3c460c317e8d1f9a3b7e8
fix: 优化调解进度组件和案件数据上下文处理
3 files modified
12 ■■■■■ changed files
web-app/src/components/dashboard/MediationProgress.jsx 2 ●●● patch | view | raw | blame | history
web-app/src/contexts/CaseDataContext.jsx 4 ●●●● patch | view | raw | blame | history
web-app/src/services/ProcessAPIService.js 6 ●●●● patch | view | raw | blame | history
web-app/src/components/dashboard/MediationProgress.jsx
@@ -13,7 +13,7 @@
  const { processNodes } = useCaseData();
  
  // 使用processNodes,如果为空则使用默认节点
  const nodes = (processNodes && processNodes.length > 0) ? processNodes : defaultNodes;
  const nodes = (processNodes && processNodes.length > 0) ? processNodes : [];
  
  console.log('MediationProgress - using nodes:', nodes);
  
web-app/src/contexts/CaseDataContext.jsx
@@ -267,8 +267,8 @@
      // 提取timeline数据
      const timelineData = response.timeline || response.data?.timeline || response;
      
      // 提取nodes数据(确保为数组)
      const nodesData = response.nodes || response.data?.nodes || [];
      // 提取nodes数据(确保为数组),兼容 nodeList 和 nodes 两种字段名
      const nodesData = response.data?.nodeList || response.data?.nodes || response.nodes || [];
      
      console.log('API Response:', response);
      console.log('Extracted nodesData:', nodesData);
web-app/src/services/ProcessAPIService.js
@@ -88,9 +88,13 @@
      console.log('Timeline result:', results[0]);
      console.log('Nodes result:', results[1]);
      // nodes接口返回 { nodeList: [...] },需提取 nodeList 数组
      const nodesRaw = results[1].data;
      const nodes = nodesRaw?.nodeList || (Array.isArray(nodesRaw) ? nodesRaw : []);
      return {
        timeline: results[0].data || {},
        nodes: results[1].data || []
        nodes
      };
    } catch (error) {
      return Promise.reject(error);