新增功能

This commit is contained in:
Your Name
2026-03-04 15:32:30 +08:00
parent a07e844c47
commit ab77f5488d
2266 changed files with 177942 additions and 3444 deletions
+275
View File
@@ -0,0 +1,275 @@
# 医助列表接口测试指南
## 快速测试
### 1. 后端测试
#### 直接访问接口
```bash
# 使用 curl 测试
curl -X GET "http://your-domain/adminapi/tcm.diagnosis/getAssistants" \
-H "token: your-admin-token"
```
#### 预期响应
```json
{
"code": 1,
"msg": "success",
"data": [
{
"id": 1,
"name": "医助张三",
"account": "assistant1"
},
{
"id": 2,
"name": "医助李四",
"account": "assistant2"
}
]
}
```
### 2. 前端测试
#### 步骤 1:登录管理后台
```
访问:http://your-domain/admin
登录账号:admin
```
#### 步骤 2:访问诊单管理
```
菜单:中医管理 → 诊单管理
或直接访问:http://your-domain/admin/tcm/diagnosis
```
#### 步骤 3:检查医助下拉列表
1. 查看页面顶部的筛选条件
2. 找到"医助"下拉框
3. 点击下拉框,查看是否显示医助列表
#### 步骤 4:测试指派功能
1. 选择一条诊单记录
2. 点击"指派"按钮
3. 在弹窗中选择医助
4. 点击"确定指派"
### 3. 浏览器控制台测试
打开浏览器开发者工具(F12),在 Console 中执行:
```javascript
// 测试 API 调用
fetch('/adminapi/tcm.diagnosis/getAssistants', {
headers: {
'token': localStorage.getItem('token')
}
})
.then(res => res.json())
.then(data => console.log('医助列表:', data))
```
## 检查清单
### 后端检查
- [ ] 接口可以正常访问
- [ ] 返回的数据格式正确
- [ ] 只返回 `role_id = 2` 的管理员
- [ ] 只返回 `disable = 0` 的管理员
- [ ] 返回字段包含:id、name、account
- [ ] 按 id 升序排列
### 前端检查
- [ ] 页面加载时自动获取医助列表
- [ ] 筛选条件中的医助下拉框正常显示
- [ ] 指派弹窗中的医助下拉框正常显示
- [ ] 可以正常选择医助
- [ ] 不会出现权限错误
- [ ] 控制台没有错误信息
### 功能检查
- [ ] 可以按医助筛选诊单
- [ ] 可以单个指派医助
- [ ] 可以批量指派医助
- [ ] 指派后列表正常刷新
- [ ] 医助名称正常显示
## 常见问题
### 问题 1:接口返回空数组
**原因:**
- 数据库中没有 `role_id = 2` 的管理员
- 所有医助都被禁用(`disable = 1`
**解决:**
```sql
-- 检查医助数据
SELECT id, name, account, role_id, disable FROM la_admin WHERE role_id = 2;
-- 如果没有数据,需要添加医助
INSERT INTO la_admin (name, account, role_id, disable) VALUES ('医助测试', 'assistant_test', 2, 0);
```
### 问题 2:前端显示"权限不足"
**原因:**
- 还在使用旧的 `adminLists` 接口
- 代码没有更新
**解决:**
1. 确认前端代码已更新
2. 清除浏览器缓存
3. 重新编译前端代码
### 问题 3:下拉框不显示数据
**原因:**
- API 返回的数据格式不对
- 前端解析数据错误
**解决:**
1. 打开浏览器控制台
2. 查看 Network 标签
3. 检查接口返回的数据
4. 查看 Console 是否有错误
## 数据库检查
### 检查医助数据
```sql
-- 查看所有医助
SELECT
id,
name,
account,
role_id,
disable,
create_time
FROM la_admin
WHERE role_id = 2
ORDER BY id ASC;
```
### 检查角色配置
```sql
-- 查看角色ID为2的角色信息
SELECT * FROM la_system_role WHERE id = 2;
```
### 添加测试医助
```sql
-- 添加测试医助(如果需要)
INSERT INTO la_admin (
name,
account,
password,
role_id,
disable,
create_time,
update_time
) VALUES (
'测试医助',
'test_assistant',
'e10adc3949ba59abbe56e057f20f883e', -- 密码:123456
2,
0,
UNIX_TIMESTAMP(),
UNIX_TIMESTAMP()
);
```
## 性能测试
### 测试大量数据
```sql
-- 添加100个测试医助
DELIMITER $$
CREATE PROCEDURE add_test_assistants()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i <= 100 DO
INSERT INTO la_admin (
name,
account,
password,
role_id,
disable,
create_time,
update_time
) VALUES (
CONCAT('医助', i),
CONCAT('assistant', i),
'e10adc3949ba59abbe56e057f20f883e',
2,
0,
UNIX_TIMESTAMP(),
UNIX_TIMESTAMP()
);
SET i = i + 1;
END WHILE;
END$$
DELIMITER ;
CALL add_test_assistants();
DROP PROCEDURE add_test_assistants;
```
### 测试响应时间
```bash
# 使用 curl 测试响应时间
time curl -X GET "http://your-domain/adminapi/tcm.diagnosis/getAssistants" \
-H "token: your-admin-token"
```
## 日志检查
### 查看错误日志
```bash
# 查看 PHP 错误日志
tail -f runtime/log/error.log
# 查看应用日志
tail -f runtime/log/202403/04.log
```
### 搜索相关日志
```bash
# 搜索医助列表相关日志
grep "getAssistants" runtime/log/202403/*.log
```
## 成功标准
当满足以下所有条件时,说明接口工作正常:
- ✅ 接口返回 200 状态码
- ✅ 返回数据格式正确
- ✅ 前端下拉框正常显示医助列表
- ✅ 可以正常筛选和指派医助
- ✅ 没有权限错误
- ✅ 没有控制台错误
- ✅ 响应时间 < 500ms
---
**测试日期:** 2024-03-04
**版本:** 1.0