Catalogue、优惠与保险计划业务 PRD

更新:2026-09-10 · 责任:运营/Finance/保险管理/平台 · 详细底表设计保留在原 Catalogue 技术规格中

2026-09-07 角色与价格维护确认: Finance 需要查看并维护获授权的价格资料;Clinic 与 CP 的财务价格工作统一在后台 Finance 完成,不切换成 Clinic 角色。复用本 PRD 与 CP 各自的权威价格记录、生效及版本规则,不反写历史账单或采购快照;维护权限不能只配置为读取,也不自动扩大为所有主档或发布审批权限。Insurance 与 Billing 合并为 Billing & Insurance 团队入口。统一场景及权限契约见 组织与权限产品方案。当前 Finance 的目录初始化仅授予 catalogue.readcoupon.read,价格写权限仍待实施;场景入口已按平台实施边界章节 实现,不能以入口可见视作价格维护权限已交付。

功能地图

先区分“共享定义”“患者持有”“本次使用”“实际资金”四层,再阅读各主数据功能。

功能 使用者/业务对象 产品方案与阅读位置
服务与非药品 目录维护者 · Item/Product §3:共享售价、成本和可用诊所
检查目录及供应商成本 目录维护者/Finance · Test §4:统一项目、Vendor 映射及分层成本
医生问诊定价 获授权价格维护者 · Pricing §5:标准价、Policy/Clinic 例外及解析优先级
保险与企业计划 计划维护者 · Programme §6:目录、Policy/Contract 来源、卡面与权益说明
套餐与优惠 运营 · Package/Campaign §7:共享定义、患者权益及核销边界
导入、发布与变更 获授权维护者 · Draft/Version §2、8–9:校验、发布、停用、历史与配置归属

1. 管理边界与导航

本 PRD 维护相关主数据的既有唯一业务规范;对外入口分属 CatalogueInsurance & Benefit ProgrammesPackages & Coupons 三个 App,均属于 Business Operations。2026-09-09 用户确认:保险/企业/员工计划独立,不放 Catalogue;Coupon 与 Service Packages 放同一 App。

Catalogue 固定导航为 Service Items、Lab & Imaging、Products、Consultation Pricing、Change History & Controls;只维护共享服务、检查、非药品项目、价格及成本。打开即进入实际列表,不另设说明性 Overview,不嵌套保险、套餐、优惠或 Other Settings。患者个人卡号在 Patient & eMR,药品临床属性及库存由 Pharmacy/CP 对应工作台承接。

Insurance & Benefit Programmes 承接 §6;Packages & Coupons 承接 §7。复杂 Benefit Contracts 后台仍不开放;既有有效企业/员工合同可作为卡种来源。入口及全局/个人/页面设置范围见App 与配置层级

flowchart LR
  A[Programme 共享计划目录] --> B[Patient 患者持卡及个人编号]
  B --> C[Appointment 或 Visit 本次选择与核验]
  C --> D[Cashier 付款责任与应收]
  D --> E[Payment 实际到账与分配]
  P[Policy 或 Benefit Contract] --> A

目录更新影响后续选用;患者默认计划不自动成为本次选择,本次人工核验也不代表实际收款。各层保留自己的来源与历史快照。

2. 共用规则

MD-06: 新记录 Draft → 发布后 Active → 停用 Inactive。发布、停用及价格变更要求相应权限、原因和审计;本期不强制第二人审批。已用于交易的记录不物理删除;签署处方/医嘱、套餐购买、报价及 Invoice 保存当时项目与适用价格/规则快照。

List Price 是对患者的参考售价,Cost 是内部成本,不能用同一个字段混写。主数据更新只影响后续按规则取价,不自动改历史交易。

3. Service Items 与 Products

内容 Service Items Products
列表字段 Code、Name、Category、List Price、Cost、Available Clinics、Status SKU/Code、Name、Category、List Price、Cost、Available Clinics、Inventory Tracking、Status
搜索筛选 Code/Name、Category、Clinic、Status 同左,另有 Inventory Tracking
编辑补充字段 Description、生命周期信息 Barcode、Unit of measure、Description
价格规则 MD-01 所有诊所共用同一 List Price 与 Cost 同左;药品不在普通 Product 内维护
可用诊所 新建默认 All Clinics;可搜索多选、全选或清空 明确空选表示所有诊所不可用,不自动恢复 All Clinics

Clinic 只控制能否选用,不能覆盖 Service/Product 的 List Price 或 Cost。Quantity、Lot、入库、出库和采购不在产品主档页处理。

4. Lab & Imaging

MD-02: 一个 Test Catalogue,不再拆四个平行页面。一条规范 Test Item 显示 Unique Code、Name、Category、Lab/Imaging、List Price、Vendor 覆盖、Cost 覆盖与状态;可按名称/代码、类型、Vendor、Category、Status 筛选。Test Item 对所有诊所可用,无 Available Clinics 字段。

点击项目打开详情:基本资料 → Vendor & Code Mapping → Clinic/Doctor Cost Schedule。

资料层 字段 定义
Test Item 唯一代码、名称、分类、类型、List Price 患者售价统一,不随 Vendor/Clinic/Doctor 改变
Vendor mapping Vendor、Vendor Item Name、Vendor Code、Vendor Default Cost、生效信息 同一项目可有多个 Vendor;代码与默认成本属于该 Vendor
Cost schedule Test Item、Vendor、Clinic、可选 Doctor、Cost、生效信息 Doctor + Clinic + Vendor → Clinic + Vendor → Vendor Default → Cost unavailable

Request Form Mapping 已从当前管理界面移除;旧四页结构和 Group Default Cost 不再作为验收标准。Vendor 映射、成本明细持久化及解析仍待后端,界面可编辑不等于落库成功。

5. Consultation Pricing

MD-03: 每位医生一套 Standard Consultation Price,适用于各就诊类型与诊所,可有诊所例外。Insurance Rate 按 Doctor + Card/Policy 定义,默认全诊所适用,也可另设诊所例外。

取价优先级固定为:Doctor + Policy + Clinic → Doctor + Policy → Doctor + Clinic → Doctor Standard → Price unavailable

列表显示 Doctor、Standard Price、Clinic Exceptions、Insurance Rates、Status;详情维护基础价与例外、生效信息。不得再按 Doctor + Clinic + Consultation Type 建另一套基础价。当前新模型及 Billing Resolver 未落地,不能以旧 Offering 返回了价格认定该规则通过。

6. Insurance & Benefit Programmes

独立 App 管理 Insurance、Corporate membership 和 Staff benefit 目录。这些是保险/合作保障安排,不是折扣券;患者持有资料及本次付款安排仍分别归 Patient/Visit。

6.1 卡种字段与来源

字段 要求
Programme Type Insurance、Corporate membership 或 Staff benefit
Provider/Sponsor、Card Name、Plan Name、Card Class、Status 使用业务名称展示;不是患者个人实例
Linked Policy 只用于 Insurance,引用现有 Policy
Linked Benefit Contract Corporate membership/Staff benefit 必填,且必须与合同类型匹配;Promotion/Insurance 类型 Benefit Contract 不可选
Front/Back card face 官方 JPEG/PNG/WebP,单张不超过 5 MB;可上传、预览、替换或移除,使用私有文件访问

MD-04: 类型切换清除不兼容来源,互斥保存。历史未标类型的卡兼容为 Insurance。卡种只存来源身份,不复制合同 Plan、Rule、额度、Pricing、Eligibility 或 Utilization。

保险卡页为卡面网格,支持类型/提供方/状态和关键词筛选;零数据仍有 New Card 入口,缺图明确显示,不能用示意卡冒充。患者持卡、预约和登记统一读取此目录。

6.2 简单 Policy 管理

Manage Policies 在保险页内打开侧边编辑,维护 Policy No./Name、有效期、Holder Type、Contract/Insurance Type 与 Billing 可见性。没有独立顶层 Policy 页。企业合作计划不得写入 Policy 假冒保险合同。

6.3 计划详情与双语权益说明

7. Packages & Coupons

MD-05: Coupon 字段包括名称/Code、折扣类型与值、最低消费、可选最高减免、有效日期、次数限制、适用对象、描述及 Stackable。默认不与 Contract/Benefit 叠加,只有明确 Stackable 才允许。

同一 App 内保留 Service Packages 与 Coupons 两个业务区。Packages 沿用现有 Setup、Sale、Wallet、Consumption、Liability 和 Lab 协作;Coupons 独立读取 Campaign、编辑并按权限发布,不再为了打开优惠页读取 Catalogue 全套底表。

Campaign 管理不代表 Cashier 已能核销;优惠与套餐的读取、维护、发布权限独立。套餐现有购买/支付链路不因导航合并改成统一 Cashier;实际核销必须保存 Campaign/版本与撤销历史,跨套餐与优惠叠加仍需对应后端实现。套餐核销、退款与财务规则见 Cashier/Pharmacy 文档。

8. 批量导入

支持的主数据用同一流程:Bulk import → 下载模块专用模板 → 上传 Excel/CSV → 全文件预校验 → Pass/Warning/Error 逐行预览 → 选择获支持的重复处理策略 → 确认导入 → 行级结果/错误下载及审计。

9. 变更控制与配置归属

Catalogue 移除 Other Settings。共享系统资源归 System Settings,组织/账号/权限归 Organization & Access,个人模板/布局归 Personal Settings;药品及库存仍归所属业务 App。Change History & Controls 显示本模块谁改了什么、原因、版本、发布/停用结果,不是经营报表。

验收重点:字段含义、可用范围、价格优先级、失效与历史快照、互斥来源、导入前校验、实际持久化。每个尚缺底表的功能在实现记录标 Pending,不能因前端预览完成而关闭需求。