5.2 KiB
5.2 KiB
医助列表接口测试指南
快速测试
1. 后端测试
直接访问接口
# 使用 curl 测试
curl -X GET "http://your-domain/adminapi/tcm.diagnosis/getAssistants" \
-H "token: your-admin-token"
预期响应
{
"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:检查医助下拉列表
- 查看页面顶部的筛选条件
- 找到"医助"下拉框
- 点击下拉框,查看是否显示医助列表
步骤 4:测试指派功能
- 选择一条诊单记录
- 点击"指派"按钮
- 在弹窗中选择医助
- 点击"确定指派"
3. 浏览器控制台测试
打开浏览器开发者工具(F12),在 Console 中执行:
// 测试 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)
解决:
-- 检查医助数据
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接口 - 代码没有更新
解决:
- 确认前端代码已更新
- 清除浏览器缓存
- 重新编译前端代码
问题 3:下拉框不显示数据
原因:
- API 返回的数据格式不对
- 前端解析数据错误
解决:
- 打开浏览器控制台
- 查看 Network 标签
- 检查接口返回的数据
- 查看 Console 是否有错误
数据库检查
检查医助数据
-- 查看所有医助
SELECT
id,
name,
account,
role_id,
disable,
create_time
FROM la_admin
WHERE role_id = 2
ORDER BY id ASC;
检查角色配置
-- 查看角色ID为2的角色信息
SELECT * FROM la_system_role WHERE id = 2;
添加测试医助
-- 添加测试医助(如果需要)
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()
);
性能测试
测试大量数据
-- 添加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;
测试响应时间
# 使用 curl 测试响应时间
time curl -X GET "http://your-domain/adminapi/tcm.diagnosis/getAssistants" \
-H "token: your-admin-token"
日志检查
查看错误日志
# 查看 PHP 错误日志
tail -f runtime/log/error.log
# 查看应用日志
tail -f runtime/log/202403/04.log
搜索相关日志
# 搜索医助列表相关日志
grep "getAssistants" runtime/log/202403/*.log
成功标准
当满足以下所有条件时,说明接口工作正常:
- ✅ 接口返回 200 状态码
- ✅ 返回数据格式正确
- ✅ 前端下拉框正常显示医助列表
- ✅ 可以正常筛选和指派医助
- ✅ 没有权限错误
- ✅ 没有控制台错误
- ✅ 响应时间 < 500ms
测试日期: 2024-03-04 版本: 1.0