我的预约(机构)— 功能需求
1. 文档说明
| 项 |
说明 |
| 模块名称 |
我的预约(机构)(牧业疫病诊疗服务) |
| 目标 |
为已绑定诊疗机构身份的登录用户提供「面向本机构的预约」查询与只读查看能力:按条件筛选预约单、查看详情,掌握牧民通过移动端提交的机构预约动态 |
| 使用端 |
业务后台(若依管理端);登录用户须为「畜牧医疗资源管理」中为该机构已分配账号的机构端角色用户 |
| 修订依据 |
同目录 我的预约(机构)功能需求-草稿.md、界面原型(Snipaste_2026-05-20_16-08-54.jpg、Snipaste_2026-05-20_16-27-24.jpg);并关联分析 我的预约(兽医)、我的预约(专家) 草稿与原型 |
本文档仅描述功能需求与业务规则,不涉及数据库表结构、接口路径、请求体字段命名、HTTP 报文、权限标识命名及技术栈选型。
2. 术语与业务对象
2.1 机构预约单(一条记录)
- 表示牧民/用户在移动端「预约服务」中选择某家已发布诊疗机构并提交的一条预约申请。
- 预约单在业务上归属该机构(与当前登录账号所绑定的机构资源一一对应);本模块仅展示属于当前登录机构的单据,不提供接单、改期、代取消等写操作。
- 一条预约单在机构侧可见的核心信息包括:预约人、预约日期、预约时段、联系电话、服务地址、服务需求、状态等。
2.2 当前登录人(机构服务提供方视角)
- 指通过「畜牧医疗资源管理」分配账号(机构端角色,草稿约定角色编号 102)登录后台的机构经办人(代表该诊疗机构)。
- 列表与详情的数据范围:自动限定为当前账号绑定的机构资源下的预约记录;不得查看其他机构的预约。
2.3 预约人(需求方)
- 在移动端填写预约信息的用户(姓名、电话、地址、需求等);本模块只读展示,不在此维护预约人档案。
2.4 登记制与接单制的区别(本模块定位)
| 模式 |
含义 |
本模块 |
| 登记制 |
用户提交后预约即生效为「已预约」,机构后台仅查阅状态变化 |
是 |
| 接单制 |
用户提交后进入「待确认」,服务方须确认或拒绝 |
否(见兽医、专家模块) |
机构侧不承担「是否接诊」的审批职责;预约能否成立,在用户提交成功时已由移动端与资源规则判定(如机构已发布、时段可约等)。
3. 关联需求分析(机构 / 兽医 / 专家)
三模块同属「我的预约」产品族:均为服务提供方在后台查看「指向自己的预约」。差异来自预约对象类型、提交后初始状态及后台是否需接单处置。
3.1 三端定位对照
| 维度 |
我的预约(机构) |
我的预约(兽医) |
我的预约(专家) |
| 所属业务 |
牧业疫病诊疗服务 |
牧业疫病诊疗服务 |
牧业养殖科技服务 |
| 预约对象 |
诊疗机构(移动端「预约服务-诊疗机构」) |
兽医人员(「预约服务-兽医」) |
科技专家(「预约服务-专家」) |
| 账号来源 |
医疗资源管理-机构分配账号 |
医疗资源管理-兽医分配账号 |
科技资源管理-专家分配账号 |
| 移动端提交后 |
进入 已预约(无待确认) |
进入 待确认,待兽医处置 |
进入 待确认,待专家处置 |
| 后台处置 |
完成接诊(已预约→已完成) |
确认/拒绝/完成接诊 |
确认/拒绝/完成接诊 |
| 拒绝理由 |
无(机构侧无拒绝流程) |
拒绝时必填(≤100 字) |
拒绝时必填(≤100 字) |
| 服务评价 |
无 |
本期不做「查看评价」 |
已完成可「查看评价」 |
3.2 状态模型对照
flowchart LR
subgraph 机构["机构(登记制·本文档)"]
A2[已预约] -->|用户取消| D2[已取消]
A2 -->|服务完成| E2[已完成]
end
subgraph 兽医与专家["兽医 / 专家(接单制)"]
A1[待确认] -->|确认接诊| B1[已确认]
A1 -->|拒绝接诊| C1[已拒绝]
A1 -->|用户取消| D1[已取消]
B1 -->|服务完成| E1[已完成]
B1 -->|用户取消| D1
end
| 状态 |
机构本模块 |
兽医模块 |
专家模块 |
说明 |
| 已预约 |
✓ |
— |
— |
机构预约提交后即为此态;机构侧初始态 |
| 待确认 |
— |
✓ |
✓ |
仅接单制;机构列表不出现 |
| 已确认 |
— |
✓ |
✓ |
服务方已确认;机构侧不出现 |
| 已拒绝 |
— |
✓ |
✓ |
服务方拒绝;机构侧不出现 |
| 已取消 |
✓ |
✓ |
✓ |
用户取消(规则允许时) |
| 已完成 |
✓ |
✓ |
✓ |
服务已结束 |
本期约定(机构): 状态共 三种:已预约、已取消、已完成。不出现待确认、已确认、已拒绝,避免与兽医/专家语义混淆。
3.3 与兽医模块的差异(本期范围)
| 能力 |
机构(本文档) |
兽医(关联文档) |
| 业务定位 |
登记查看型 |
接单处置型 |
| 列表字段 |
精简:预约人、预约日期、联系电话、状态 |
完整:含时段、地址、需求、拒绝理由 |
| 详情字段 |
完整:含时段、地址、需求(详情多于列表) |
同左;已拒绝须展示拒绝理由 |
| 写操作 |
完成接诊(已预约→已完成) |
待确认可确认/拒绝 |
| 状态筛选 |
三种 |
五种 |
| 列表/详情拒绝理由 |
无 |
已拒绝必展示 |
3.4 与专家模块的差异(本期范围)
| 能力 |
机构(本文档) |
专家(关联文档) |
| 业务域 |
疫病诊疗服务 |
养殖科技服务 |
| 接单 |
无 |
有(待确认处置) |
| 已完成-评价 |
无 |
查看评价、详情星级 |
| 列表字段 |
无时段/地址/需求/拒绝理由列 |
含时段、地址、需求、拒绝理由 |
3.5 与上下游模块关系
| 上游/平行模块 |
关系 |
| 畜牧医疗资源管理 |
机构须已发布且已分配账号,本模块才有菜单与数据;单日最大接诊人数等约束在用户提交预约时校验,本模块只展示结果 |
| 移动端预约服务 |
用户选择诊疗机构、填写预约信息并提交 → 机构侧出现 已预约;用户可取消 → 已取消;履约结束 → 已完成 |
| 我的预约(兽医) |
同一「预约服务」不同 Tab;数据隔离,列表互不交叉 |
| 我的预约(专家) |
业务域与资源表不同;数据隔离 |
| 机构现场服务/排班(若实施) |
本模块不排班、不改约;仅反映预约台账状态,具体履约由线下或后续模块约定 |
3.6 统一预约数据与三端隔离(业务层约定)
- 牧民在「预约服务」中分别向机构、兽医、专家发起预约,在业务上为不同预约对象的独立记录。
- 机构后台仅处理「指向本机构」的记录;不会因同一牧民同时预约了某兽医而出现在机构列表中。
- 机构侧不需要也不提供将预约转派给某位兽医的操作(若需派单,属其他业务,本期不做)。
4. 预约状态与状态机(机构)
4.1 状态定义
| 状态 |
含义 |
本模块可执行操作 |
| 已预约 |
用户已在移动端提交成功,预约指向本机构且尚未取消、未完成 |
查看、完成接诊 |
| 已取消 |
预约已取消(通常为用户在移动端操作) |
仅查看 |
| 已完成 |
服务已结束(由整体业务规则置为完成) |
仅查看 |
4.2 状态迁移(机构视角:只读观察)
机构后台不驱动状态变更;以下为机构人员理解牧民侧与业务闭环的可见迁移:
stateDiagram-v2
[*] --> 已预约: 用户在移动端提交机构预约
已预约 --> 已取消: 用户取消预约
已预约 --> 已完成: 服务完成(业务闭环)
已取消 --> [*]
已完成 --> [*]
说明:
- 机构侧从未出现「待确认→已确认」路径;用户提交成功即已预约。
- 已取消、已完成均由移动端或整体预约服务规则更新,机构后台刷新列表即可见。
- 不存在「已拒绝」:机构预约无服务方拒绝环节(与兽医/专家不同)。
4.3 机构侧不应出现的状态
若列表或详情中出现 待确认、已确认、已拒绝,视为数据错误或类型串单,应按异常数据处理(不展示或提示联系管理员),不应提供确认/拒绝按钮。
5. 功能范围
5.1 本期实现
| 能力 |
说明 |
| 分页列表 |
筛选 + 默认仅当前机构预约;§6.1 |
| 查看详情 |
全字段只读;§6.2 |
| 工具栏 |
搜索、重置(列表页) |
5.2 本期不实现
| 项 |
说明 |
| 确认接诊 / 拒绝接诊 |
属兽医、专家模块;机构无接单动作 |
| 填写或展示拒绝理由 |
机构流程无拒绝态 |
| 查看评价 / 星级 |
专家模块能力;机构无 |
| 机构代取消、改期、改地址、改时段 |
须由用户在移动端或另立运营流程 |
| 导出、批量操作、消息推送配置 |
原型与草稿未要求 |
| 兽医/专家预约的跨类型查询 |
严格数据隔离 |
| 预约派单、分配兽医 |
非本模块范围 |
6. 详细功能需求
6.1 预约记录列表
| 项 |
规则 |
| 数据范围 |
仅当前登录账号绑定机构的预约记录 |
| 分页 |
默认每页 20 条 |
| 排序 |
默认 预约日期倒序,同日按 创建时间倒序(或预约时段开始时间倒序,以实现为准,须稳定) |
| 工具栏 |
搜索、重置 |
筛选条件
| 筛选项 |
规则 |
| 预约人 |
选填;对预约人姓名 模糊匹配 |
| 预约日期 |
选填;起止日期(yyyy-MM-dd);含起止日当天;开始日期不得晚于结束日期 |
| 状态 |
选填;精确匹配 已预约 / 已取消 / 已完成 之一;空则不过滤 |
列表列(展示,与原型一致)
| 列名 |
说明 |
| 预约人 |
— |
| 预约日期 |
yyyy-MM-dd |
| 联系电话 |
— |
| 状态 |
标签展示,三种枚举;颜色宜区分(如已预约/已取消/已完成) |
| 操作 |
查看(见 §7) |
列表不展示、详情展示的字段
以下字段不在列表列出现,须在详情中完整展示(与原型「预约详情」弹窗一致):
- 预约时段(
HH:mm~HH:mm)
- 服务地址
- 服务需求
6.2 查看预约详情
| 项 |
规则 |
| 入口 |
列表行「查看」;任意状态均可进入 |
| 形式 |
弹窗或详情页,只读(字段禁用或纯文本,不可编辑) |
| 字段 |
预约人、预约日期(yyyy-MM-dd)、预约时段(HH:mm~HH:mm)、联系电话、服务地址、服务需求、状态 |
| 拒绝理由 |
不展示(机构无拒绝流程) |
| 评价相关 |
不展示(与专家模块区分) |
| 关闭 |
「确定」或「关闭」仅关闭弹窗,不改变预约状态 |
7. 操作与权限矩阵
| 操作 |
已预约 |
已取消 |
已完成 |
| 查看 |
✓ |
✓ |
✓ |
| 完成接诊 |
✓ |
— |
— |
| 确认接诊 |
— |
— |
— |
| 拒绝接诊 |
— |
— |
— |
| 查看评价 |
— |
— |
— |
- 模块级:列表查询、详情查看、完成接诊 须按按钮粒度授权。
- 无确认、拒绝、编辑、删除类按钮。
- 无「机构」绑定关系的账号:不应看到本菜单,或进入后列表为空并可有友好提示(见 §9)。
8. 业务流程
8.1 模块总览(机构后台)
flowchart TD
A[机构账号登录后台] --> B[进入我的预约机构]
B --> C[设置筛选条件]
C --> D[搜索列表]
D --> E{选择记录}
E --> F[查看详情只读]
F --> G[关闭详情]
G --> D
C --> H[重置筛选]
H --> D
机构人员在后台不参与确认、拒绝;可对 已预约 记录执行 完成接诊;其余为查阅台账。
8.2 与移动端协同(牧民侧摘要)
以下流程帮助机构人员理解列表数据的来源与变化(机构后台无对应按钮):
sequenceDiagram
participant 牧民
participant 移动端
participant 机构后台
牧民->>移动端: 预约服务-诊疗机构 Tab
牧民->>移动端: 选择机构、日期时段、填写信息
移动端->>移动端: 校验机构可约等
移动端-->>机构后台: 生成预约 状态=已预约
机构后台->>机构后台: 列表可见 已预约
alt 用户取消
牧民->>移动端: 取消预约(二次确认)
移动端-->>机构后台: 状态=已取消
end
alt 服务完成
Note over 移动端,机构后台: 由整体业务置 已完成
移动端-->>机构后台: 状态=已完成
end
- 用户在「预约服务」诊疗机构 Tab 选择机构、日期时段并提交 → 机构侧列表出现 已预约(移动端同显「已预约」,可「取消预约」)。
- 用户 取消(须二次确认,规则由移动端约定)→ 机构侧 已取消。
- 服务完成后由业务规则置 已完成 → 机构侧仅可查看历史记录。
- 机构侧全程无「待确认」等待办事项。
8.3 与兽医/专家流程的并行关系(产品层)
| 牧民一次会话可能行为 |
机构后台 |
兽医后台 |
专家后台 |
| 只预约某机构 |
有记录 |
无 |
无 |
| 只预约某兽医 |
无 |
有记录 |
无 |
| 只预约某专家 |
无 |
无 |
有记录 |
| 分别预约机构+兽医 |
各看各的 |
各看各的 |
— |
三端列表互不影响;机构人员无需在机构模块处理兽医预约。
9. 提示约定(示例)
| 场景 |
示例文案 |
| 日期筛选 |
「结束日期不能早于开始日期」 |
| 数据范围 |
「未绑定机构资源,无法查询预约」 |
| 空列表 |
「暂无预约记录」 |
| 详情关闭 |
无提交类成功提示(只读) |
机构模块不涉及确认/拒绝/拒绝理由类提示。
10. 非功能建议(业务侧)
- 列表查询须限定当前机构,防止越权查看他机构预约。
- 查看详情记操作审计(可选,与平台统一要求一致)。
- 日期、时段、状态展示格式与移动端、兽医/专家模块保持一致,便于运营对照。
- 界面支持 i18n(汉语 + 藏文);状态标签颜色与原型一致。
- 列表字段较少、详情较全的设计,宜在交互上明确「详情查看更多字段」,避免误以为地址、时段未采集。
11. 修订记录
| 版本 |
说明 |
| 1.0 |
依据机构草稿与原型整理;补充与兽医、专家关联分析;明确登记制三态状态机;列表精简/详情完整;剔除技术栈与接口表述 |