126 lines
2.7 KiB
Markdown
126 lines
2.7 KiB
Markdown
# 签到历史记录404错误修复 - 2026-01-31
|
||
|
||
## 问题描述
|
||
|
||
服务商端点击"查看历史记录"后,控制台出现404错误:
|
||
- `/api/provider/checkin/stats` - 404 Not Found
|
||
- 页面无法正常显示
|
||
|
||
## 问题原因
|
||
|
||
**后端接口状态:**
|
||
1. `/api/provider/checkin/stats` - **不存在**(导致404)
|
||
2. `/api/provider/checkin/records` - **存在但返回空数据**
|
||
|
||
**前端调用:**
|
||
- 签到历史页面在加载时调用了不存在的统计接口
|
||
- 导致控制台报错
|
||
|
||
## 修复方案
|
||
|
||
采用**方案1:暂时隐藏统计数据**
|
||
|
||
### 修改内容
|
||
|
||
**文件:** `peidu/uniapp/src/provider-package/pages/provider/checkin-history.vue`
|
||
|
||
#### 1. 隐藏统计信息UI
|
||
```vue
|
||
<!-- 统计信息 - 暂时隐藏,等待后端接口实现 -->
|
||
<!-- <view class="stats-section">
|
||
...统计数据显示...
|
||
</view> -->
|
||
```
|
||
|
||
#### 2. 注释统计接口调用
|
||
```javascript
|
||
onLoad() {
|
||
// 暂时注释掉统计接口调用,避免404错误
|
||
// this.loadStats()
|
||
this.loadHistory()
|
||
}
|
||
|
||
onPullDownRefresh() {
|
||
// 暂时注释掉统计接口调用
|
||
this.loadHistory().finally(() => {
|
||
uni.stopPullDownRefresh()
|
||
})
|
||
}
|
||
```
|
||
|
||
#### 3. 保留loadStats方法(注释实现)
|
||
```javascript
|
||
async loadStats() {
|
||
// 暂时注释掉,等待后端实现 /api/provider/checkin/stats 接口
|
||
console.log('统计功能暂未实现,等待后端接口')
|
||
}
|
||
```
|
||
|
||
## 修复效果
|
||
|
||
✅ **不再出现404错误**
|
||
✅ **页面可以正常加载**
|
||
✅ **历史记录列表正常显示**(虽然目前是空数据)
|
||
✅ **保留代码结构,方便后续补充**
|
||
|
||
## 后续工作
|
||
|
||
### 需要后端实现的接口
|
||
|
||
#### 1. 统计接口
|
||
```
|
||
GET /api/provider/checkin/stats
|
||
返回:
|
||
{
|
||
"code": 200,
|
||
"data": {
|
||
"total": 100, // 总签到次数
|
||
"thisMonth": 20, // 本月签到
|
||
"thisWeek": 5 // 本周签到
|
||
}
|
||
}
|
||
```
|
||
|
||
#### 2. 历史记录接口(已存在但返回空数据)
|
||
```
|
||
GET /api/provider/checkin/records
|
||
参数:
|
||
- date: 日期筛选(可选)
|
||
- page: 页码
|
||
- size: 每页数量
|
||
|
||
返回:
|
||
{
|
||
"code": 200,
|
||
"data": {
|
||
"records": [
|
||
{
|
||
"id": 1,
|
||
"date": "2026-01-31",
|
||
"time": "09:00",
|
||
"courseName": "数学辅导",
|
||
"studentName": "张小明",
|
||
"location": "学生家中"
|
||
}
|
||
],
|
||
"total": 100
|
||
}
|
||
}
|
||
```
|
||
|
||
### 恢复步骤
|
||
|
||
当后端接口实现后:
|
||
1. 取消注释统计信息UI部分
|
||
2. 取消注释 `loadStats()` 调用
|
||
3. 恢复 `loadStats()` 方法的实现
|
||
4. 测试功能正常
|
||
|
||
## 相关文件
|
||
|
||
- 修复文件:`peidu/uniapp/src/provider-package/pages/provider/checkin-history.vue`
|
||
- 后端控制器:`peidu/backend/src/main/java/com/peidu/controller/ProviderController.java`
|
||
|
||
---
|
||
*修复时间:2026-01-31*
|