# 处方库功能说明 ## 功能概述 处方库是一个独立的处方模板管理系统,允许医生创建、管理和分享常用的中药处方配方。 ## 主要特性 1. **处方管理** - 创建处方模板,包含处方名称和药材配方 - 每味药材包含名称和剂量(克) - 支持编辑和删除处方 2. **权限控制** - 仅自己可见:只有创建者可以查看和使用 - 所有人可见:所有医生都可以查看和使用(但只有创建者可以删除) 3. **独立功能** - 不依赖其他功能模块 - 不与诊单、预约等功能关联 - 纯粹的处方模板库 ## 安装步骤 ### Windows 系统 1. 双击运行 `install_prescription_library.bat` 2. 按提示输入数据库配置信息 3. 等待安装完成 ### Linux/Mac 系统 1. 给脚本添加执行权限: ```bash chmod +x install_prescription_library.sh ``` 2. 运行安装脚本: ```bash ./install_prescription_library.sh ``` 3. 按提示输入数据库配置信息 ### 手动安装 如果自动安装脚本无法运行,可以手动执行以下步骤: 1. 使用数据库管理工具(如 phpMyAdmin、Navicat 等) 2. 打开 `server/database/migrations/create_prescription_library.sql` 文件 3. 执行其中的 SQL 语句 ## 数据库表结构 ### zyt_prescription_library(处方库表) | 字段名 | 类型 | 说明 | |--------|------|------| | id | int | 主键ID | | prescription_name | varchar(100) | 处方名称 | | herbs | text | 药材列表JSON | | is_public | tinyint(1) | 是否公开:0-仅自己可见 1-所有人可见 | | creator_id | int | 创建人ID | | creator_name | varchar(50) | 创建人姓名 | | create_time | int | 创建时间 | | update_time | int | 更新时间 | | delete_time | int | 删除时间 | ## 使用说明 ### 创建处方 1. 点击"新增处方"按钮 2. 输入处方名称(如:六味地黄丸、补中益气汤) 3. 点击"添加药材"按钮添加药材 4. 输入药材名称和剂量(克) 5. 选择是否公开 6. 点击"确定"保存 ### 编辑处方 1. 在列表中找到要编辑的处方 2. 点击"编辑"按钮 3. 修改处方信息 4. 点击"确定"保存 ### 删除处方 1. 在列表中找到要删除的处方 2. 点击"删除"按钮 3. 确认删除操作 注意:只有创建者才能删除处方 ### 查看处方 1. 在列表中找到要查看的处方 2. 点击"查看"按钮 3. 查看处方详细信息 ## API 接口 ### 后端路由 所有接口都在 `tcm.prescriptionLibrary` 控制器下: - `GET /tcm.prescriptionLibrary/lists` - 获取处方库列表 - `POST /tcm.prescriptionLibrary/add` - 添加处方 - `POST /tcm.prescriptionLibrary/edit` - 编辑处方 - `POST /tcm.prescriptionLibrary/delete` - 删除处方 - `GET /tcm.prescriptionLibrary/detail` - 获取处方详情 ### 前端 API 在 `admin/src/api/tcm.ts` 中: ```typescript // 处方库列表 prescriptionLibraryLists(params) // 添加处方库 prescriptionLibraryAdd(params) // 编辑处方库 prescriptionLibraryEdit(params) // 删除处方库 prescriptionLibraryDelete({ id }) // 处方库详情 prescriptionLibraryDetail({ id }) ``` ## 文件清单 ### 后端文件 - `server/database/migrations/create_prescription_library.sql` - 数据库表结构 - `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` - 验证器 ### 前端文件 - `admin/src/views/consumer/prescription/list.vue` - 处方库页面 - `admin/src/api/tcm.ts` - API 接口(已更新) ### 安装文件 - `install_prescription_library.sh` - Linux/Mac 安装脚本 - `install_prescription_library.bat` - Windows 安装脚本 - `PRESCRIPTION_LIBRARY_README.md` - 本说明文档 ## 注意事项 1. 处方库功能完全独立,不影响现有的处方管理功能 2. 药材数据以 JSON 格式存储在数据库中 3. 权限控制确保只有创建者或公开的处方才能被访问 4. 删除操作只有创建者才能执行 5. 建议定期备份数据库 ## 常见问题 ### Q: 安装脚本执行失败? A: 请检查: - MySQL 是否已安装并正在运行 - 数据库配置信息是否正确 - 是否有足够的数据库权限 ### Q: 无法看到其他人创建的处方? A: 只有设置为"所有人可见"的处方才能被其他医生查看 ### Q: 可以删除别人创建的处方吗? A: 不可以,只有创建者才能删除自己创建的处方 ## 技术支持 如有问题,请联系技术支持团队。