chengmw
2026-03-26 85f3f863950fa1d807697da437591062868e782c
web-app/src/services/ProcessAPIService.js
@@ -39,10 +39,14 @@
   * @param {Object} params - 查询参数
   * @param {string} params.caseTypeFirst - 案件一级分类
   * @param {string} params.platform_code - 外部平台编号
   * @param {string} params.authorization - 授权token
   * @returns {Promise} 调解时间线数据
   */
  static getMediationTimeline(caseId, params = {}) {
    return request.get(`/api/v1/mediation-timeline/v2/case/${caseId}`, params);
    const { authorization, ...queryParams } = params;
    queryParams.authorization = authorization;
    const config = authorization ? { headers: { Authorization: authorization } } : {};
    return request.get(`/api/v1/mediation-timeline/v2/case/${caseId}`, queryParams, config);
  }
  /**
@@ -52,10 +56,13 @@
   * @param {string} params.caseTypeFirst - 案件一级分类
   * @param {string} params.platformCode - 外部平台编号
   * @param {string} params.caseId - 案件ID
   * @param {string} params.authorization - 授权token
   * @returns {Promise} 流程节点列表
   */
  static getProcessNodes(params = {}) {
    return request.get('/api/v1/process/node', params);
    const { authorization, ...queryParams } = params;
    const config = authorization ? { headers: { Authorization: authorization } } : {};
    return request.get('/api/v1/process/node', queryParams, config);
  } 
@@ -65,6 +72,7 @@
   * @param {Object} params - 查询参数
   * @param {string} params.caseTypeFirst - 案件一级分类
   * @param {string} params.platform_code - 外部平台编号
   * @param {string} params.authorization - 授权token(来自URL的auth_token)
   * @returns {Promise} 完整流程信息
   */
  static async getCaseProcessInfo(caseId, params = {}) {
@@ -74,13 +82,18 @@
      const nodeParams = {
        caseTypeFirst: params.caseTypeFirst,
        platformCode: params.platform_code,
        caseId
        caseId,
        authorization: params.authorization
      };
      
      // 提取authorization用于子请求
      const { authorization, ...timelineParams } = params;
      console.log('Timeline params:', timelineParams);
      timelineParams.authorization = authorization;
      // 并行获取时间线和流程节点
      const promises = [
        this.getMediationTimeline(caseId, params),
        this.getProcessNodes(nodeParams)
        this.getMediationTimeline(caseId, { ...timelineParams, authorization }),
        this.getProcessNodes({ ...nodeParams, authorization })
      ];
      const results = await Promise.all(promises);
@@ -130,6 +143,26 @@
    return request.put(`/api/v1/mediation-timeline/v2/case/${caseId}/takeover`, data);
  }
  /**
   * AI调解状态控制API(终止/恢复)
   * PUT /api/v1/mediation-timeline/v2/case/{caseId}/state
   * @param {string} caseId - 案件ID
   * @param {Object} data - 请求数据
   * @param {number} data.action - 操作类型:0-终止,1-恢复
   * @param {string} data.userName - 操作人姓名(可选)
   * @returns {Promise} 状态更新结果
   *
   * @example
   * // 终止调解
   * ProcessAPIService.updateMediationState('1001', { action: 0, userName: '张三' });
   *
   * // 恢复调解
   * ProcessAPIService.updateMediationState('1001', { action: 1, userName: '李四' });
   */
  static updateMediationState(caseId, data) {
    return request.put(`/api/v1/mediation-timeline/v2/case/${caseId}/state`, data);
  }
}
export default ProcessAPIService;