当然可以,以下是对你提供的文档内容进行结构优化、逻辑梳理和语言润色后的版本。整体目标是让文档更清晰、易读、便于团队理解与后续执行。


测试诊所及功能梳理

一、产品层面用途梳理

测试诊所主要用于支持内部人员在不干扰正常业务的前提下进行以下两类操作:

1. 功能演示

  • 面向客户展示功能:用于向客户展示系统功能,促进销售转化。
  • 内部教学使用:作为培训材料或教学场景中的示例环境。

2. 测试使用

  • 内部测试
    • 涉及角色:测试、产品经理、医学质量等。
  • 外部设备供应商联调测试
    • 合作方:众科、创宏(主要在测试服上)。
  • 外部连锁客户测试
    • 示例:一块医药。

二、技术层面梳理

1. 测试诊所标记机制

当前通过数据库字段 db_diag.ts_clinic.test_clinic = 1 标记是否为测试诊所。 该标识用于控制部分功能权限、数据可见性以及限制某些操作。


三、具体功能页面梳理

1. BD Web 端

  • 总体看板
  • 团队统计
  • 客户动销

2. BD H5 端

  • H5动销数据展示

注:Bd App 中非 H5 部分已停用。

3. POCT 小程序

登录页

  • 内部账号仅能登录测试诊所,非测试诊所账号会被过滤。

患者列表页

  • 只能看到自己创建的患者信息。

检验结果页

  • 仅显示自己创建的订单。
  • 对于内部账号,无论诊所是否开启“查看检测结果”权限,只要是由该账号发起的慢病设备快速检测订单,均可查看。

设备管理 - 可用成员

  • 非测试诊所中,需过滤掉内部测试账号。

装机功能

  • 测试诊所仅允许绑定到个人(即绑定类型为“绑定到个人”),否则装机会报错。

4. YSBApp 光谱小屋模块

  • 入口判断逻辑
    • 若为内部账号,且未加入测试诊所,则提示:“内部账号请加入测试诊所”。

5. 总后台功能

诊所POCT看板

  • 更新设备绑定类型时,非测试诊所不能切换为“绑定到个人”

诊所配置

  • 支持修改“是否为测试诊所”,但需要输入密码验证。

统计类功能

  • 市场数据、订单统计/KPI 等模块应排除测试诊所数据。

耗材相关

  • 耗材发放及统计也应排除测试诊所。

四、当前使用中存在的问题

由于测试诊所存在特定限制和特殊逻辑,在实际使用过程中出现了一些不可控情况:

1. 测试/演示场景受限

  • 有些测试或演示场景无法在测试诊所中完成,导致不得不使用普通诊所(test_clinic=0),从而产生未被标记的测试数据。

2. 切换测试诊所标签行为

  • 存在切换诊所是否为测试诊所的行为,导致同一诊所中混杂了测试数据与正式数据。

3. 权限控制不足

  • 诊所绑定类型的切换未做权限控制,导致可能出现诊所同时具有“分店”和“绑定门店”两种身份的情况。

五、优化方向建议

方案一:彻底去除“测试诊所”标识,优化测试数据标记方式

  • 思路:不再依赖诊所维度的“测试诊所”标识,改为从数据级别进行标记(如添加字段 is_test_data = 1)。
  • 优势
    • 更灵活地控制哪些数据属于测试数据。
    • 避免因切换诊所状态带来的混乱。
    • 减少对诊所本身的限制逻辑,提升系统稳定性。

方案二:保留现有“测试诊所”机制,增加灵活配置能力

  • 思路:保持现有“测试诊所”的标识不变,但新增配置项,允许将某些非测试诊所的数据手动标记为测试数据。
  • 优势
    • 不改变已有逻辑,兼容性强。
    • 提供更多灵活性,满足复杂测试需求。
  • 实现建议
    • 在总后台增加“手动标记测试数据”功能。
    • 设置权限控制,防止误操作。

六、后续建议

  1. 统一数据标记机制:无论是采用方案一还是方案二,都应确保测试数据可被准确识别并独立统计。
  2. 加强权限控制:特别是对“是否为测试诊所”的修改、设备绑定类型切换等高风险操作,应设置更严格的权限校验。
  3. 日志记录与审计:对于测试诊所相关的任何配置变更,均应记录操作日志,便于追踪和回溯。
  4. 测试数据隔离策略:在报表、KPI、市场分析等功能中,应明确区分测试数据与真实业务数据。

如需进一步细化某个模块的功能点或接口设计,也可以继续补充说明。希望这份优化后的文档能帮助你更好地组织和传达信息。