hospital-switch Specification
Purpose
定义普瑞智慧医院小程序医院选择与切换能力,包括当前医院展示、医院搜索、切换后的业务临时态清理、IM 配置同步和距离排序要求。
Requirements
Requirement: 医院选择页必须展示当前医院信息
系统 MUST 在医院选择页顶部展示当前已选医院名称和地址,从 userData 读取而非临时选中对象。
Scenario: 已选择医院
- Given userData.hospID 非空
- When 进入医院选择页
- Then 顶部"当前医院"区展示 userData.hospDesc 和 userData.hospAddress
Scenario: 未选择医院
- Given userData.hospID 为空
- When 进入医院选择页
- Then "当前医院"区隐藏,所有医院平等展示
Requirement: 医院选择页必须支持搜索
系统 MUST 提供搜索框,支持按医院名称、省份、城市模糊匹配。
Scenario: 输入关键词
- Given 医院列表已加载
- When 用户输入搜索关键词
- Then 列表实时过滤为匹配项;无匹配时展示"未找到相关医院"
Scenario: 清空搜索
- Given 搜索结果已展示
- When 用户清空搜索框
- Then 恢复完整列表展示
Requirement: 切换医院必须清理业务临时态
系统 MUST 在切换医院时清理 app.globalData.shoppingCartOjb,更新 SDKAPPID、SECRETKEY(IM 配置),保留登录相关字段不动。
Scenario: 切换成功
- Given 用户确认切换医院
- When selectCurrentHospital 执行
- Then userData 中 openID/pubAccCode/sessionID 保留不变;shoppingCartOjb 清空;IM 配置更新
Requirement: 医院列表必须按距离排序
系统 MUST 在获取定位后按距离升序排列医院列表。
Scenario: 定位成功
- Given 用户授权定位
- When 距离数据返回
- Then 医院列表按距离升序排列,同省医院优先