spec.md 1.8 KB

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 医院列表按距离升序排列,同省医院优先