# 复诊管理功能限制与适配问题 本文档旨在分析在采用新的后端接口规范后,原有设计中哪些功能无法实现或需要重新设计,以及相应的解决方案。 ## 1. 无法直接实现的原有功能 ### 1.1 医生主动邀请复诊功能 **原设计功能**: - 医生在"我的病人"页面可以主动邀请患者进行复诊 - 医生填写预约时间并发送邀请 - 患者收到邀请后可以接受或拒绝 **无法实现的原因**: - 新的接口规范中,只有患者可以创建复诊请求(`POST /follow-up/create`) - 医生只能通过更新接口(`PUT /follow-up/{id}`)修改状态或信息 - 缺少医生主动发起复诊邀请的接口 **影响范围**: - `pages/doctor/index/my-patients.vue` 中的"邀请复诊"按钮 - 相关的弹窗表单和交互逻辑 ### 1.2 医生端的复诊管理详情操作 **原设计功能**: - 医生可以在复诊管理页面对复诊请求进行"同意"、"拒绝"、"变更时间"等操作 - 可以向患者发送消息 **受限实现的原因**: - 新接口规范中医生只能通过更新接口修改状态,不能直接"同意"或"拒绝" - 缺少专门的消息发送接口 - 状态变更需要符合严格的权限控制规则 **影响范围**: - 计划中的 `pages/doctor/manage/followup.vue` 页面 - 复诊详情页的操作按钮和功能 ### 1.3 患者端的预约表单功能 **原设计功能**: - 患者在"我的医生"页面点击"预约复诊"后,打开表单选择时间并提交 - 表单包含医生选择、时间选择器、备注输入等 **受限实现的原因**: - 新接口要求创建复诊时必须指定 `doctorUserId` - 患者可能绑定了多个医生,需要先选择医生再预约 - 缺少获取患者绑定医生列表的专用接口(虽然可以通过 [userBinding.ts](file:///d:/慢病APP/uniapp-ts/src/api/userBinding.ts) 实现) **影响范围**: - `pages/patient/index/my-doctor.vue` 中的"预约复诊"功能 - 相关的预约表单和交互逻辑 ## 2. 需要重新设计的功能 ### 2.1 复诊状态管理流程 **原设计流程**: ``` 医生邀请 -> 患者接受/拒绝 -> 医生确认 -> 完成复诊 ``` **新流程适配**: ``` 患者创建请求 -> 医生确认/取消 -> 完成复诊 ``` **变更说明**: - 去除了医生主动邀请环节 - 患者成为复诊流程的发起者 - 医生只能对患者发起的请求进行确认或取消操作 ### 2.2 权限控制模型 **原设计权限**: - 医生可以邀请患者复诊 - 患者可以接受或拒绝邀请 - 医生可以管理复诊安排 **新权限模型**: - 只有患者可以创建复诊请求 - 医生只能更新分配给自己的复诊记录 - 患者只能操作自己的复诊记录 - 删除操作仅限患者本人 ## 3. 接口功能缺失分析 ### 3.1 缺少专用医生查询接口 **问题描述**: - 没有专门用于查询医生信息的接口 - 患者在创建复诊请求时无法方便地选择医生 **可能的解决方案**: - 复用 [userBinding.ts](file:///d:/慢病APP/uniapp-ts/src/api/userBinding.ts) 中的接口获取绑定的医生列表 - 在创建复诊请求前先获取患者绑定的医生信息 ### 3.2 缺少消息通知机制 **问题描述**: - 没有专门的消息发送或通知接口 - 复诊状态变更时无法及时通知相关用户 **可能的解决方案**: - 依赖前端轮询获取最新状态 - 后续扩展 WebSocket 或其他实时通知机制 ### 3.3 缺少预约时间冲突检查 **问题描述**: - 创建复诊请求时无法检查医生在指定时间是否已有安排 - 可能出现时间冲突的情况 **可能的解决方案**: - 在前端提供医生已安排复诊的时间列表供参考 - 创建时通过错误提示告知时间冲突 ## 4. 页面功能调整建议 ### 4.1 医生端页面调整 **`pages/doctor/index/my-patients.vue`** - 移除"邀请复诊"按钮或改为提示信息,告知患者需要主动发起复诊请求 - 可以添加查看患者复诊历史的入口 **`pages/doctor/manage/followup.vue`(待创建)** - 主要展示分配给当前医生的复诊请求 - 提供状态更新功能(确认、取消、完成) - 不再提供"同意/拒绝"操作,改为状态变更 ### 4.2 患者端页面调整 **`pages/patient/index/my-doctor.vue`** - "预约复诊"功能需要重新设计 - 需要先选择医生,再选择时间 - 可以显示当前绑定的医生列表供选择 **患者复诊记录页面**(待创建) - 展示患者自己创建的复诊请求 - 允许修改待确认状态的复诊请求 - 允许删除自己创建的复诊请求 ### 4.3 家属端页面调整 **`pages/patient-family/index/my-family.vue`** - "邀请复诊"功能同样受限 - 可能需要通过切换到患者身份来创建复诊请求 - 或者提供帮助患者创建复诊请求的辅助功能 ## 5. 用户体验优化建议 ### 5.1 引导用户正确的操作流程 由于医生无法主动邀请复诊,需要通过以下方式引导用户: 1. 在医生端提示患者需要主动发起复诊请求 2. 在患者端突出显示复诊预约功能入口 3. 提供清晰的操作指引和说明 ### 5.2 状态变更的实时反馈 由于缺少专门的通知机制,建议: 1. 在关键页面添加自动刷新功能 2. 状态变更后提供明确的成功提示 3. 考虑定期轮询更新复诊状态 ## 6. 总结 新的后端接口设计更加规范和安全,但与原有的产品设计存在一些不匹配之处。主要问题集中在医生主动邀请复诊功能无法实现,以及部分操作流程需要重新设计。 为了适配新的接口规范,我们需要: 1. 调整用户操作流程,让患者成为复诊请求的发起者 2. 重新设计相关页面的交互逻辑 3. 在现有接口基础上增加辅助功能提升用户体验 4. 与后端团队沟通是否需要扩展接口以支持更完整的产品功能