提交文件
This commit is contained in:
75
FRONTEND_FIX_SUMMARY.md
Normal file
75
FRONTEND_FIX_SUMMARY.md
Normal file
@@ -0,0 +1,75 @@
|
||||
# 前端接口报错问题修复总结
|
||||
|
||||
## 问题原因
|
||||
|
||||
前端调用报错是因为后端数据库模型更新后,数据库数据与新的枚举值不匹配。
|
||||
|
||||
### 具体问题
|
||||
1. 数据库模型新增了 9 种科室类型(如 `clinical_surgical`, `clinical_nonsurgical_ward` 等)
|
||||
2. 但 `init_db.py` 仍在使用旧的枚举值(如 `clinical`)
|
||||
3. Pydantic Schema 也未同步更新枚举定义
|
||||
4. 导致查询时出现 `LookupError: 'clinical' is not among the defined enum values`
|
||||
|
||||
## 已修复内容
|
||||
|
||||
### 1. 更新 init_db.py
|
||||
将科室类型从旧的 `clinical` 改为新的 `clinical_nonsurgical_ward` 等
|
||||
|
||||
### 2. 更新 Pydantic Schema
|
||||
更新 `app/schemas/schemas.py` 中的 `DeptType` 枚举,包含所有 9 种类型
|
||||
|
||||
### 3. 重建数据库
|
||||
删除旧数据库并使用新的枚举值重新初始化
|
||||
|
||||
## 当前系统状态
|
||||
|
||||
### ✅ 已恢复正常的功能
|
||||
- 健康检查:http://localhost:8000/health
|
||||
- 用户登录:POST /api/v1/auth/login
|
||||
- 科室管理:GET/POST/PUT/DELETE /api/v1/departments
|
||||
- 员工管理:GET/POST/DELETE /api/v1/staff
|
||||
- 指标管理:GET/POST/PUT/DELETE /api/v1/indicators
|
||||
- 考核流程:所有接口正常
|
||||
- 统计报表:所有接口正常
|
||||
|
||||
### 访问方式
|
||||
- 前端地址:http://localhost:5173
|
||||
- 后端地址:http://localhost:8000
|
||||
- API 文档:http://localhost:8000/api/v1/docs
|
||||
|
||||
### 默认账号
|
||||
- 用户名:admin
|
||||
- 密码:admin123
|
||||
|
||||
## 前端使用建议
|
||||
|
||||
### 如果仍遇到问题
|
||||
1. **清除浏览器缓存**:Ctrl+Shift+Delete
|
||||
2. **清除 localStorage**:
|
||||
```javascript
|
||||
localStorage.clear()
|
||||
```
|
||||
3. **硬刷新页面**:Ctrl+F5
|
||||
4. **重启服务**:
|
||||
```bash
|
||||
# 停止所有 Python 进程
|
||||
powershell -Command "Get-Process | Where-Object {$_.ProcessName -eq 'python'} | Stop-Process -Force"
|
||||
|
||||
# 重启后端
|
||||
cd D:\医院绩效系统\backend
|
||||
python -m uvicorn app.main:app --reload
|
||||
|
||||
# 重启前端(新终端)
|
||||
cd D:\医院绩效系统\frontend
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 测试工具
|
||||
访问内置测试页面:http://localhost:5173/test-api.html
|
||||
|
||||
## 联系支持
|
||||
|
||||
如仍有问题,请提供:
|
||||
1. F12 控制台错误截图
|
||||
2. Network 标签中失败请求的响应内容
|
||||
3. 后端日志:`backend/logs/error_*.log`
|
||||
Reference in New Issue
Block a user