164 lines
3.5 KiB
Markdown
164 lines
3.5 KiB
Markdown
|
|
# 管理师补充反馈"工单不存在"问题诊断
|
|||
|
|
|
|||
|
|
## 📋 问题现象
|
|||
|
|
|
|||
|
|
管理师点击"补充反馈"时,控制台显示:
|
|||
|
|
```
|
|||
|
|
Response: {data: {code: 400, message: "工单不存在", data: null}}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 🔍 问题分析
|
|||
|
|
|
|||
|
|
### 1. 前端代码检查
|
|||
|
|
|
|||
|
|
**当前代码(src目录)**:
|
|||
|
|
- 文件:`peidu/uniapp/src/manager-package/pages/manager/feedback.vue`
|
|||
|
|
- API路径:`/api/growth-record/update-supplement/${id}` 或 `/api/growth-record/add-supplement/${id}`
|
|||
|
|
- 参数名:`managerSupplement`
|
|||
|
|
|
|||
|
|
**控制台日志显示**:
|
|||
|
|
- 实际调用:`PUT /api/manager/feedback/teacher/{id}`
|
|||
|
|
- 这是**旧接口路径**
|
|||
|
|
|
|||
|
|
### 2. 根本原因
|
|||
|
|
|
|||
|
|
**前端代码已修改,但编译后的代码没有生效!**
|
|||
|
|
|
|||
|
|
可能的原因:
|
|||
|
|
1. 修改后没有重新编译
|
|||
|
|
2. 编译缓存没有清除
|
|||
|
|
3. 浏览器缓存了旧的JS文件
|
|||
|
|
4. 微信开发者工具缓存了旧代码
|
|||
|
|
|
|||
|
|
## ✅ 解决方案
|
|||
|
|
|
|||
|
|
### 方案1:清除缓存后重新编译(推荐)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 停止开发服务器(如果正在运行)
|
|||
|
|
|
|||
|
|
# 2. 清除编译缓存
|
|||
|
|
cd peidu/uniapp
|
|||
|
|
rmdir /s /q unpackage
|
|||
|
|
rmdir /s /q node_modules/.cache
|
|||
|
|
|
|||
|
|
# 3. 重新安装依赖(可选,如果问题仍存在)
|
|||
|
|
npm install
|
|||
|
|
|
|||
|
|
# 4. 重新编译
|
|||
|
|
npm run dev:mp-weixin
|
|||
|
|
|
|||
|
|
# 5. 在微信开发者工具中:
|
|||
|
|
# - 点击"清缓存" -> "清除全部缓存"
|
|||
|
|
# - 重新打开项目
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 方案2:强制刷新微信开发者工具
|
|||
|
|
|
|||
|
|
1. 在微信开发者工具中点击"清缓存" -> "清除全部缓存"
|
|||
|
|
2. 关闭微信开发者工具
|
|||
|
|
3. 重新打开项目
|
|||
|
|
4. 点击"编译"按钮
|
|||
|
|
|
|||
|
|
### 方案3:检查编译输出
|
|||
|
|
|
|||
|
|
确认编译后的文件是否包含新代码:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 查看编译后的文件
|
|||
|
|
type peidu\uniapp\unpackage\dist\dev\mp-weixin\manager-package\pages\manager\feedback.js
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
搜索关键字:
|
|||
|
|
- ✅ 应该包含:`/api/growth-record/update-supplement/`
|
|||
|
|
- ❌ 不应该包含:`/api/manager/feedback/teacher/`
|
|||
|
|
|
|||
|
|
## 🎯 验证步骤
|
|||
|
|
|
|||
|
|
### 1. 确认代码已编译
|
|||
|
|
|
|||
|
|
在 `peidu/uniapp/unpackage/dist/dev/mp-weixin/manager-package/pages/manager/feedback.js` 中搜索:
|
|||
|
|
```javascript
|
|||
|
|
/api/growth-record/update-supplement/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
如果找不到,说明编译没有生效。
|
|||
|
|
|
|||
|
|
### 2. 确认接口调用
|
|||
|
|
|
|||
|
|
打开微信开发者工具控制台,查看网络请求:
|
|||
|
|
- ✅ 正确:`PUT /api/growth-record/update-supplement/123`
|
|||
|
|
- ❌ 错误:`PUT /api/manager/feedback/teacher/123`
|
|||
|
|
|
|||
|
|
### 3. 确认参数名
|
|||
|
|
|
|||
|
|
查看请求体:
|
|||
|
|
- ✅ 正确:`{managerSupplement: "...", supplementType: 1, supplementPriority: 1}`
|
|||
|
|
- ❌ 错误:`{supplement: "..."}`
|
|||
|
|
|
|||
|
|
## 📝 后端接口说明
|
|||
|
|
|
|||
|
|
### 正确的接口
|
|||
|
|
|
|||
|
|
**添加补充反馈**:
|
|||
|
|
```
|
|||
|
|
POST /api/growth-record/add-supplement/{id}
|
|||
|
|
Body: {
|
|||
|
|
managerSupplement: "补充内容",
|
|||
|
|
supplementType: 1,
|
|||
|
|
supplementPriority: 1
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**更新补充反馈**:
|
|||
|
|
```
|
|||
|
|
PUT /api/growth-record/update-supplement/{id}
|
|||
|
|
Body: {
|
|||
|
|
managerSupplement: "补充内容",
|
|||
|
|
supplementType: 1,
|
|||
|
|
supplementPriority: 1
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 旧接口(不应该使用)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
PUT /api/manager/feedback/teacher/{id}
|
|||
|
|
Body: {supplement: "..."}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
这个接口会查询 `growth_record` 表,但参数名不匹配。
|
|||
|
|
|
|||
|
|
## 🔧 如果问题仍然存在
|
|||
|
|
|
|||
|
|
### 检查是否有多个编译进程
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 查看Node进程
|
|||
|
|
tasklist | findstr node
|
|||
|
|
|
|||
|
|
# 如果有多个node进程,全部结束
|
|||
|
|
taskkill /F /IM node.exe
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 手动删除编译输出
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd peidu/uniapp
|
|||
|
|
rmdir /s /q unpackage
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 重新编译并观察日志
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
npm run dev:mp-weixin
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
观察编译日志,确认 `manager-package/pages/manager/feedback.vue` 被编译。
|
|||
|
|
|
|||
|
|
## 📅 诊断时间
|
|||
|
|
2026-01-28
|
|||
|
|
|
|||
|
|
## 👤 诊断人员
|
|||
|
|
Kiro AI Assistant
|