Files
zyt/INSTALLATION_CHECKLIST.md
2026-03-23 18:02:16 +08:00

7.7 KiB
Raw Permalink Blame History

处方库功能 - 安装检查清单

📋 安装前检查

环境要求

  • PHP >= 7.4
  • MySQL >= 5.7
  • Node.js >= 14.x(前端开发)
  • 已安装并运行 ThinkPHP 框架
  • 已安装并运行 Vue 3 前端项目

权限检查

  • 数据库创建表权限
  • 文件读写权限
  • 后台管理员账号

🔧 安装步骤

步骤1:备份数据库

# 备份当前数据库(推荐)
mysqldump -u用户名 -p密码 数据库名 > backup_$(date +%Y%m%d).sql
  • 已完成数据库备份

步骤2:安装数据库表

方式A:自动安装(推荐)

Windows:

双击运行 install_prescription_library.bat

Linux/Mac:

chmod +x install_prescription_library.sh
./install_prescription_library.sh

方式B:手动安装

mysql -h主机 -u用户名 -p密码 数据库名 < server/database/migrations/create_prescription_library.sql
  • 数据库表安装成功
  • 验证表是否创建:SHOW TABLES LIKE '%prescription_library%';

步骤3:验证后端文件

检查以下文件是否存在:

模型层:

  • server/app/common/model/tcm/PrescriptionLibrary.php

控制器层:

  • server/app/adminapi/controller/tcm/PrescriptionLibraryController.php

业务逻辑层:

  • server/app/adminapi/logic/tcm/PrescriptionLibraryLogic.php

列表逻辑层:

  • server/app/adminapi/lists/tcm/PrescriptionLibraryLists.php

验证器层:

  • server/app/adminapi/validate/tcm/PrescriptionLibraryValidate.php

步骤4:验证前端文件

检查以下文件是否存在:

页面组件:

  • admin/src/views/consumer/prescription/list.vue

API接口:

  • admin/src/api/tcm.ts(已更新)

步骤5:配置路由(如需要)

ThinkPHP 通常自动识别路由,无需手动配置。

如需手动配置,在路由文件中添加:

// 处方库路由
Route::group('tcm.prescriptionLibrary', function () {
    Route::get('lists', 'tcm.PrescriptionLibrary/lists');
    Route::post('add', 'tcm.PrescriptionLibrary/add');
    Route::post('edit', 'tcm.PrescriptionLibrary/edit');
    Route::post('delete', 'tcm.PrescriptionLibrary/delete');
    Route::get('detail', 'tcm.PrescriptionLibrary/detail');
});
  • 路由配置完成(如需要)

步骤6:配置菜单权限

在后台管理系统中添加菜单项:

菜单配置示例:

菜单名称:处方库
菜单路径:/consumer/prescription/list
图标:el-icon-document
排序:100
权限标识:tcm.prescriptionLibrary/lists

权限节点:

  • tcm.prescriptionLibrary/lists(查看列表)

  • tcm.prescriptionLibrary/add(添加处方)

  • tcm.prescriptionLibrary/edit(编辑处方)

  • tcm.prescriptionLibrary/delete(删除处方)

  • tcm.prescriptionLibrary/detail(查看详情)

  • 菜单配置完成

  • 权限节点配置完成

步骤7:重启服务(如需要)

后端:

# 清除缓存
php think clear

# 重启PHP-FPM(如使用)
sudo systemctl restart php-fpm

前端:

# 开发环境
npm run dev

# 生产环境
npm run build
  • 后端服务已重启
  • 前端已重新编译

🧪 功能测试

测试1:访问页面

  • 能够访问处方库页面
  • 页面正常显示,无报错
  • 列表为空或显示数据

测试2:创建处方

  • 点击"新增处方"按钮
  • 填写处方名称
  • 添加药材
  • 设置是否公开
  • 保存成功

测试3:查看处方

  • 点击"查看"按钮
  • 显示处方详情
  • 字段不可编辑

测试4:编辑处方

  • 点击"编辑"按钮
  • 修改处方信息
  • 保存成功

测试5:删除处方

  • 点击"删除"按钮
  • 确认删除
  • 删除成功

测试6:搜索功能

  • 输入处方名称搜索
  • 选择是否公开筛选
  • 显示正确结果

测试7:权限测试

  • 用户A创建私有处方
  • 用户B无法查看用户A的私有处方
  • 用户A创建公开处方
  • 用户B可以查看用户A的公开处方
  • 用户B无法删除用户A的处方

🔍 问题排查

问题1:无法访问页面

可能原因:

  • 路由未配置
  • 权限未分配
  • 前端路由错误

解决方案:

  1. 检查路由配置
  2. 检查菜单权限
  3. 查看浏览器控制台错误

问题2:数据库表创建失败

可能原因:

  • 数据库连接失败
  • 权限不足
  • 表已存在

解决方案:

  1. 检查数据库配置
  2. 检查用户权限
  3. 删除已存在的表后重试

问题3API请求失败

可能原因:

  • 后端文件未上传
  • 路由配置错误
  • 权限验证失败

解决方案:

  1. 检查后端文件是否存在
  2. 检查API路径是否正确
  3. 查看后端日志

问题4:前端页面报错

可能原因:

  • 前端文件未编译
  • API接口路径错误
  • 组件引用错误

解决方案:

  1. 重新编译前端代码
  2. 检查API接口配置
  3. 查看浏览器控制台错误

📊 验证清单

数据库验证

-- 检查表是否存在
SHOW TABLES LIKE '%prescription_library%';

-- 检查表结构
DESC zyt_prescription_library;

-- 检查索引
SHOW INDEX FROM zyt_prescription_library;

-- 插入测试数据
INSERT INTO `zyt_prescription_library` 
(`prescription_name`, `herbs`, `is_public`, `creator_id`, `creator_name`, `create_time`, `update_time`) 
VALUES 
('测试处方', '[{"name":"测试药材","dosage":10}]', 1, 1, '测试医生', UNIX_TIMESTAMP(), UNIX_TIMESTAMP());

-- 查询测试数据
SELECT * FROM zyt_prescription_library WHERE prescription_name = '测试处方';

-- 删除测试数据
DELETE FROM zyt_prescription_library WHERE prescription_name = '测试处方';
  • 表结构正确
  • 索引创建成功
  • 数据插入成功
  • 数据查询成功
  • 数据删除成功

API验证

使用 Postman 或类似工具测试:

获取列表:

GET /api/tcm.prescriptionLibrary/lists

添加处方:

POST /api/tcm.prescriptionLibrary/add
Body: {
  "prescription_name": "测试处方",
  "herbs": [{"name": "测试药材", "dosage": 10}],
  "is_public": 1
}

编辑处方:

POST /api/tcm.prescriptionLibrary/edit
Body: {
  "id": 1,
  "prescription_name": "测试处方(已修改)",
  "herbs": [{"name": "测试药材", "dosage": 15}],
  "is_public": 0
}

删除处方:

POST /api/tcm.prescriptionLibrary/delete
Body: {
  "id": 1
}

获取详情:

GET /api/tcm.prescriptionLibrary/detail?id=1
  • 列表接口正常
  • 添加接口正常
  • 编辑接口正常
  • 删除接口正常
  • 详情接口正常

安装完成确认

最终检查

  • 所有文件已上传
  • 数据库表已创建
  • 菜单权限已配置
  • 功能测试通过
  • API测试通过
  • 权限测试通过

文档确认

  • 已阅读 PRESCRIPTION_LIBRARY_README.md
  • 已阅读 QUICK_START_PRESCRIPTION_LIBRARY.md
  • 已了解功能使用方法

备份确认

  • 已备份数据库
  • 已备份原有代码
  • 已记录安装日期和版本

📝 安装记录

安装日期: _______________

安装人员: _______________

版本号: v1.0.0

数据库名: _______________

备注:

_______________________________________________
_______________________________________________
_______________________________________________

🎉 安装成功!

恭喜!处方库功能已成功安装。

下一步:

  1. 创建第一个处方
  2. 测试各项功能
  3. 培训使用人员
  4. 收集反馈意见

技术支持: 如有问题,请查看文档或联系技术支持团队。


祝使用愉快! 🚀