| 预约挂号 | openhis-clinic(预约登记)、ZainZhao/HIS、TANGKUO/HIS(挂号工作站)、hisystem(挂号收费) | 已实现 | appointments 表 + /api/v1/appointment(建约/待到店列表/到店接待转接诊/取消),管理端 /appointment/* 列表工作台 + /appointment/schedule 医师×时段排班网格(格位带就诊标记:疗程卡=第 N 疗程、无卡按 treats 就诊记录=复诊/首诊);小程序自助约期已实装(POST /api/v1/kiosk/appointments 免登录 + 小程序 pages/booking,频控 1 条/日/手机号,不做同时段冲突校验);小程序自助取消预约已实装(POST /api/v1/kiosk/appointment-cancel,2026-10-16 代决——原「取消不核验身份」前提已因双因子落地失效;重取一次性验证码后取消本人待到店且未过期的预约,非本人/已受理/已过期 400,落 card_lookup_logs 审计,取消后时段自动释放);小程序「我的卡项」手机查卡已实装(隐私红线:不做裸手机号查卡——sinomed.phone-lookup.mode 默认 off,openid_only 按 openid 绑定查、sms_verified 手机号+验证码双因子查,两条路径都落 card_lookup_logs 审计,见 kiosk.md)。界面:预约排班 |
| 电子病历 | Yukang(主诉/现病史/四诊/辨证/医嘱)、openhis(EMR 模块)、his_mvp | 部分 | treats 诊疗单承载主诉、问诊、望诊、触诊、脉象、五行、取穴、诊断、方案、饮食、调理、回访;病史结构已实装(customer_histories 逐条记录过敏史/既往史,顾客档案页可增删,见 CustomerHistoryHttpTest);无独立过敏史/既往史以外的既往史时间线 |
| 处方(西药/成药) | Yukang(中西成药处方)、openhis-clinic(收费发药) | 未实现 | 西药/成药处方与药品目录未做——缺原型设计(mockups 仅中药处方笺,无西药处方/药品目录界面),裁定不凭空造面(同 spread/名医排班口径),dispensing.md 亦将其列为非目标;2026-10-14 巡检代决维持非目标(单店中医馆定位,不做西药处方流转),若要启用需用户推翻裁定并提供原型。中药处方已实装(prescriptions/prescription_items,配药材字典计价)。界面:中药处方笺 |
| 中药处方 | Yukang(中药/贴敷/外治)、herb-ms-ssm(药材-处方-计价)、his_mvp(中药方剂)、chinese_medicine_store_cos(病症处方) | 部分 | prescriptions/prescription_items 表 + /api/v1/prescription(开方/详情/分页/删除,药味含剂量克数与特殊煎法)+ /prescription/* 开方与查询页;药材字典实时计价、配伍审方(十八反/十九畏)、剂量审方(/prescription/dose-check,按药材字典 dose_max 单剂上限比对,提示不拦截)、代煎与膏方领取流转、病症模板、方剂库检索带方已实装;饮片出入库流水与效期预警已实装(/api/v1/herb-stock,开方仍不扣库存)。界面:中药处方笺 |
| 药房与发药 | ZainZhao/HIS、TANGKUO/HIS(药房工作站)、openhis-clinic、hisystem(药房取药) | 部分 | 发药确认与药房工作台已实装(prescriptions +dispense_status/dispense_time/dispense_by + dispense_logs 单向流水,POST /api/v1/prescription/{id}/dispense 待发药→已发药 + GET /dispense/page 工作台分页,代煎/膏方「已取」领取自动带出发药,管理端 /prescription/dispensary 三态切换 + 顾客检索 + 备注发药,见 DispenseHttpTest;口径见 药房与发药流转:不扣库存、不涉钱);西药/成药处方发药未做 |
| 中药饮片库存 | chinese_medicine_store_cos(药材档案/采购/库房预警)、his_mvp(出入库/盘点)、Yukang(批次/效期) | 部分 | 出入库流水与效期预警已实装(herb_stock_logs 入库/出库流水(克),库存=入合计-出合计按流水重算,出库按效期 FEFO 消耗批次不得超库存,GET /api/v1/herb-stock/balance 给最早未消耗批次效期与到期预警(默认 30 天),管理端 /prescription/herb-stock 余额看板 + 流水登记/删除,见 HerbStockHttpTest;种子 5 味常用药材入库 + 1 笔出库演示);库房上下限预警已实装(herbs stock_min/stock_max 克,余额接口标 warnStock,药材字典表单维护上下限,余额看板「库存线」列展示);采购单据/盘点按 dispensing.md 裁定不做(出入库台账口径,不做采购单据/盘点/报损/多库房,供货方随入库流水留痕) |
| 收费结算 | Yukang(现金/微信/支付宝/银行卡/医保)、OpenHIS(划价收费)、openhis-clinic | 部分 | settlements 结算单 + /api/v1/settlement(订单 0/1→2 收款)+ /api/v1/recharge 储值流水(余额=合计),管理端 /billing/settle 结算台;退费与日对账已实装(/api/v1/settlement/{id}/refund 整单原路退回一单只退一次 + /reconciliation 按自然日三段对账,管理端 /billing/reconciliation,见 reconciliation);微信/支付宝为到店扫码收款(静态收款码展示面已实装:/api/v1/pay-qrcode/{method} 读 data/payqrcodes/ 商户码图片出图,缺图 404 如实提示,不接网关),无发票/在线支付真实通道,处方饮片行进结算裁定不做。界面:收费结算台 |
| 患者会员 | TANGKUO/HIS(患者管理)、Yukang(连锁分店)、chinese_medicine_store_cos(会员购买/订单) | 部分 | customers.level 会员等级字段存在;储值充值/扣减流水已接线(recharges),无折扣/套餐/跨店消费 |
| 排班 | 调研项目中未见明确实现的排班模块 | 部分 | signs 考勤仍是上下班打卡;预约排班已实装——/appointment/schedule 医师×时段日网格(占用/空档/格内接待);周期性员工班表已实装(/api/v1/shift 员工×星期×HH:mm 时段、同员工同星期唯一,管理端 /staff/shifts 周矩阵加排班/调整/删除,见 StaffShiftHttpTest);班表与考勤联动已实装(/api/v1/staff/timesheet/week 周班次对照:班表计划按星期对照当日打卡,同日最早上班/最晚下班、整小时取整,管理端 /staff/timesheet/week;排班网格已联动班表——当日(staff_shifts 按星期)在班医师列靠前、无班次名册医师列头弱化标注,展示层联动不做建约拦截)。界面:预约排班 |
| 报表统计 | Yukang(经营统计/处方量趋势)、OpenHIS(图表统计)、openhis-clinic(报表查询) | 部分 | 已有每日报表(总结/复盘/回访)与按月考勤统计;月度收费报表已实装(GET /api/v1/settlement/report/month 逐日与支付方式构成、次卡核销单列;见 SettlementReportHttpTest);经营趋势已实装(GET /api/v1/settlement/report/trend 近 N 月逐月实收/单数/次卡核销/接诊量,月度报表页双柱趋势图;见 SettlementTrendHttpTest) |
| 多门店/连锁 | Yukang(总店聚合/分店独立库)、chinese_medicine_store_cos(多门店) | 未实现 | 裁定不做(2026-10-12):单店模型,数据模型与权限均无门店维度,凭空分层属伪造设计;若后续连锁化再定门店字段与聚合口径 |