peixue-dev/Archive/[一次性]管理师补充反馈接口问题诊断-2026-01-28.md

2.3 KiB
Raw Blame History

管理师补充反馈接口问题诊断

问题描述

管理师端点击"修改补充反馈"时,提示"工单不存在"400错误

控制台日志分析

1. 加载反馈列表

GET /api/growth-record/daily/list?page=1&size=10&type=teacher&recordType=daily
Response: {code: 200, message: "success", data: {...}}

列表加载成功

2. 提交补充反馈

PUT /api/manager/feedback/teacher/{id}
Request Body: {supplement: "111", recordType: "daily"}
Response: {code: 400, message: "工单不存在", data: null}

提交失败

问题分析

可能原因1接口路径不匹配

  • 列表接口:/api/growth-record/daily/list (成长记录)
  • 更新接口:/api/manager/feedback/teacher/{id} (反馈)

问题:这两个接口操作的是不同的数据表

  • growth-recordgrowth_record
  • feedback → 可能是 feedbackwork_order

可能原因2ID类型混淆

传递的ID是 growth_record 表的ID但后端接口可能在用这个ID查找 work_order 表,导致找不到工单。

可能原因3后端接口实现问题

后端的 PUT /api/manager/feedback/teacher/{id} 接口可能:

  1. 先用ID查找工单work_order表
  2. 但传入的ID是成长记录IDgrowth_record表
  3. 所以查不到工单,返回"工单不存在"

解决方案

方案1修改前端接口调用推荐

使用正确的成长记录更新接口:

// 当前(错误)
managerApi.updateTeacherFeedback(id, {supplement, recordType})

// 应该改为
managerApi.updateGrowthRecord(id, {supplement, recordType})

对应的API定义

updateGrowthRecord(id, params) {
  return request.put(`/api/growth-record/${id}`, params)
}

方案2修改后端接口

/api/manager/feedback/teacher/{id} 接口支持成长记录ID

方案3传递工单ID

在调用接口时,传递 workOrderId 而不是 growth_record.id

建议

采用方案1,因为:

  1. 前端已经在使用 growth-record 接口加载数据
  2. 应该使用对应的更新接口保持一致性
  3. 不需要修改后端逻辑

下一步

  1. 检查 managerApi 中是否有 updateGrowthRecord 方法
  2. 如果没有,需要添加该方法
  3. 修改 feedback.vue 中的 submitEdit 方法,调用正确的接口