宠物医院的记录,为什么总在纸上和微信里
宠物医院和动物诊所的日常,几乎是同一套场景:
- 同一只狗第二次来看病,医生得从头问一遍。 病历本是宠主带着走的,没带来就等于没有历史;上次打过什么疫苗、对什么药过敏,全靠宠主回忆。
- 疫苗本在宠主手里,医院没有底账。 到了该打下一针的时间,医院不知道、宠主也想不起来,一年过去才发现漏了一针;真出了免疫纠纷,谁也拿不出接种记录。
- 就诊和收费是两套账。 医生说用了什么药、做了哪些处置,助理记在纸上;收费台那边另开一张单,两边对不上就现场核对。
- 住院和寄养靠一块白板。 笼里住着谁、今天喂了没有、有没有排便,交接班口头说一遍,换班就断线;寄养旺季白板画错,宠物进错笼。
这些现象的共同点不是"没有管理制度",而是没有把"宠物"当成一个长期存在的对象来建档。多数门店的记录是"按就诊次数"记的流水,一次一页纸,宠物本身没有唯一身份。所以第一步不是去找一套软件来填,而是先想清楚:这套系统以谁为中心。
下面这套搭法的目标很朴素:同一只宠物第二次进门,不用它主人再讲一遍病史;该打的针,系统提前提醒;住院的每一班都留得下记录。 用的是 Inkwell AI 构建器里通用的建模能力——数据表、页面、数据字典、数据流规则、定时任务、审批流、移动端,不需要写代码。
一、第一个决定:先立宠物,再立宠主
宠物医院的数据里其实有两个主体,一定要分开:
- 宠主(客户):付钱、接电话、签字的那个人;
- 宠物:真正接受诊疗的对象。
最常见的错误是只建一张"客户表",把宠物塞成客户表里的几个字段(宠物名、品种、年龄)。后果很快就来:一个家庭养三只猫,只能建三条客户记录,手机号重复三遍;其中一只换了主人,历史记录不知道算谁的;一只宠物有两位联系人(送养人、寄养委托人)时无处安放。
正确做法是两张表,加一张关系:
- 客户档案:姓名、手机号(唯一约束,防止同一个人被写成"张女士/张姐/138****"三条重复档)、地址、来源渠道(门店自然到店、线上咨询、转介绍、救助)、备注。
- 宠物档案(全系统的中心表):宠物编号(系统生成、唯一)、名字、物种与品种(走数据字典)、性别、出生日期或估算年龄、当前体重、是否绝育、过敏史、慢性病史、芯片号或登记号(有则唯一)、主要宠主(引用客户档案)、状态(在养/已送养/已离世)。
- 宠物与宠主的关系:允许一个宠主多只宠物,也允许一只宠物有第二位联系人,关系表里带"关系类型"字典(本人/家属/寄养委托人/救助机构)。
有一点必须说清楚:当前体重放在宠物档案上只是方便查看,每次就诊的体重必须落在就诊记录里。 宠物用药剂量按体重算,体重是会变的变量;半年后回看那次用药,如果只有档案上的"当前体重",就不知道当时是几公斤。
二、字典先定死,后面才不会到处救火
宠物医院的选项特别碎,而且每家门店的叫法不一样。这些选项一律走数据字典,统一管理、统一口径:
| 字典 | 大致取值示例 |
|---|---|
| 物种 | 犬、猫、兔、鼠、鸟、爬行类、其他 |
| 品种 | 按物种分组维护,允许"混血/未知" |
| 科室 | 内科、外科、皮肤科、影像、牙科、急诊、中兽医 |
| 就诊类型 | 初诊、复诊、急诊、疫苗、体检、美容洗护 |
| 用药途径 | 口服、皮下注射、肌肉注射、静脉、外用、滴耳滴眼 |
| 疫苗与驱虫品种 | 按类别维护,一品种一条,带建议间隔天数 |
| 笼位区域 | 犬区、猫区、隔离区、传染区、寄养区 |
| 支付方式 | 现金、扫码、储值卡、保险理赔、免费/员工 |
字典的用法和配置方式见 数据字典:管好下拉选项的统一口径。这一步偷懒的代价很直接:物种写成"狗/犬/狗狗"三种,年度报表里就是三个物种,怎么统计都对不上。
三、就诊记录:一次就诊一行
就诊记录是医生每天打交道最多的一张表,字段设计要一次到位:
- 就诊号(系统生成,唯一)
- 到院时间、接诊开始时间、完成时间
- 宠物(引用宠物档案)、宠主
- 科室(字典)、接诊医生
- 主诉(宠主原话,允许口语,不要强行规范化)
- 体温、体重(本次实测)
- 检查所见、初步诊断、处置意见
- 是否复诊、关联上次就诊号
- 状态(候诊 / 接诊中 / 已完成 / 已取消)
- 附件(外院报告、X 光片照片等)
三个容易做错的地方:
- 不要在主表塞处置明细。 一次就诊可能开三项检查、两种药、一次处置,这些属于子表(下一节)。主表塞成"处置1、处置2、处置3"的固定字段,第四项就写不下了。
- 状态不要同义词混着写。 "完成/已结/结束"并存,后来想筛"今天还没接诊完的"就筛不干净。状态字典一次定死,改动走人工评审,不通融。
- 复诊用"关联上次就诊号"串,不要只在备注里写"复查"。 有关联字段才能拉出一条时间线,看到这只宠物半年内的全部就诊;备注里的文字是查不出来的。
四、处置与用药明细:一行一项,但别把金额写进来
处置与用药明细挂在就诊记录下面,一行一个项目:
- 所属就诊号、项目类型(检查 / 治疗 / 手术 / 用药 / 耗材)
- 项目名称(引用项目库或直接填)、剂量、单位、频次、天数
- 执行人、执行时间、执行状态(未执行 / 已执行 / 已取消)
- 备注
三个要点:
第一,用量用独立字段,不要写成一句话。 写成"一天两次共七天",人就看得懂,系统统计不出总用量,也没法在复诊时算"上次开的是不是已经用完了"。剂量、频次、天数分开存,总用量可以算。
第二,金额不在这张表记。 明细只记"做了什么、多少量"。金额只在收费单上落一次,否则"明细金额之和 + 收费单金额"会被重复统计,月底账对不平。这条规则看起来苛刻,但它决定了后面所有报表可不可信。
第三,已执行的行不改剂量。 改就走"作废重开"或者新增一条调整行。医疗记录只增不改是底线——不是技术限制,是给纠纷留证据。
五、疫苗与驱虫:一针一行,才谈得上提醒
疫苗管理是宠物医院最容易"看着有、其实没有"的一块。做了提醒还漏针,通常是建模时把一针一针压成了一句话。
正确做法是一针一行:
- 宠物(引用)、类别(疫苗 / 体内驱虫 / 体外驱虫)
- 具体品种(走字典,带建议间隔天数)
- 批号、接种日期、下次到期日
- 接种人、接种部位
- 不良反应(是/否)及描述
- 提醒状态(未提醒 / 已提醒 / 已复种 / 宠主拒绝)
几个关键决定:
- 下次到期日由系统算,不让人填。 用数据流规则在保存时按"接种日期 + 该品种的建议间隔天数"算出到期日;有特殊医嘱(比如医生要求提前两周复种)时允许人工覆盖,但覆盖必须填理由。这样新来的前台也不会算错。
- 同一只宠物、同一种疫苗、同一个到期日只允许一条有效记录。 用唯一约束卡住,防止前台和医生各登记一次,到期后系统提醒两次、宠主被骚扰两次。
- 不良反应要能独立筛。 出现不良反应时,除了在本行标记,还要另起一条异常跟进记录(只增不改,记处置、随访日期、结果)。这样一旦某个批号出问题,能按批号把这批疫苗的全部宠物拉出来。
- "宠主拒绝复种"要留痕。 提醒发出去、宠主不来,是门诊最常见的漏针原因。有这个状态字段,年度免疫率才说得清是医院没提醒,还是宠主没来。
到期提醒本身不复杂:定时任务每天扫一遍"下次到期日 - 提前提醒天数 ≤ 今天"的记录,生成待办清单并推送站内通知。提醒节奏(提前多少天、提醒几次)按门店习惯配置;定时任务的配置思路见 工作流与定时任务:让重复性工作自动跑,提醒清单该怎么设计可以参考 合同到期提醒怎么设置——原理一样,只是把"合同"换成了"疫苗"。
六、住院与寄养:一张单据 + 一条护理流水
住院和寄养是两件事,但数据结构几乎一样:一个期间性单据 + 一条只增不改的护理流水。
住院/寄养单据字段:单据号、类型(住院 / 寄养)、宠物、入住时间、离院时间、笼位(引用笼位档案)、主诊医生或责任人、病情或喂养要求、预计离院日、状态(在院 / 已离院 / 转院)。
护理流水(子表):时间、体温、进食情况、饮水、排泄、用药、处置、记录人、附件(照片)。
要点:
- 笼位单独建档案(区域、笼号、尺寸、是否可用),单据引用笼位。这样"住院看板"可以按笼位铺开,一眼看到哪个笼子空着。
- 护理流水每班至少一行,只增不改。 交接班看"最后一条流水的时间和内容",而不是靠口头交接。
- 在院数量由"状态 = 在院"的单据统计,不要在笼位档案上手工写"当前住着谁"。 后者一定会忘记清空,看板常年显示满笼。
- 传染区要能分开看。 笼位档案上加一个"是否隔离/传染"标记,看板筛选即可,不需要另建一套表。
七、收费单:钱只在这里落一次
收费这件事,最容易出问题的不是算错,而是同一笔钱在两个地方都记了。
收费单主表:收费单号、宠物、关联就诊或住院单据、应收金额、优惠金额、实收金额、支付方式(字典)、收费人、收费时间、状态(未收 / 已收 / 退费)。
收费明细子表:一行一个收费项目、数量、单价、小计。
规则:
- 明细小计之和 = 应收金额,这条校验交给数据流规则在保存时执行,对不上直接拦下,不靠人算。
- 退费另起一张退费单,记"冲抵原收费单号",不做负数覆盖原单。原单被覆盖,就再也查不到"当初收了多少"。
- 储值卡余额不写成客户档案上的一个数字,用流水汇总:充值一行、消费一行、赠送额度一行。余额靠汇总算,就不用每月人工盘一次卡。
- 折扣和退费超过一定额度走审批(审批流在平台里是现成的,配置即可),阈值由门店自己定,系统不内置默认值。
八、页面怎么分给不同角色用
表建好之后,落到人手里的是一组页面。宠物医院的岗位大致四类,页面按角色分,权限按角色给(角色与权限的配置方式见 角色与权限配置:从内置角色到自定义授权):
前台 / 导诊
- 客户与宠物登记页:老客户报手机号即可调出全部宠物,新客户现场建档;
- 接诊登记页:选宠物、选科室、选医生,生成就诊号并进入候诊;
- 收费页:从就诊或住院单据带出明细,收钱、打单、改状态;
- 未结账清单:今天还有哪些单据没收钱,一目了然。
医生
- 接诊工作台:今天候诊和接诊中的宠物列表,按到院时间排;
- 一宠一页:宠物档案在上,下面是就诊时间线(每次就诊的科室、诊断、处置摘要),点开看明细;
- 就诊记录页:写主诉、体征、诊断、处置意见,开检查与用药明细;
- 复诊参考区:最近一次就诊的用药与处置直接显示,不用翻历史。
护士 / 助理
- 接种登记页:选宠物、选品种、录批号,到期日自动算;
- 护理流水页:住院和寄养的每班记录,手机或前台电脑都能填;
- 待办清单:今天需要接种、需要提醒复种的宠物名单。
院长 / 店长
- 经营看板:接诊量、疫苗到种率、住院在院数、未结账金额;
- 疫苗到期未回访清单:按"已提醒未到"筛,供前台打电话;
- 项目与用量统计:哪些检查项目做得多、哪些耗材耗得快。
做页面时有两条经验值得提前说:
一是列表页要能按"到期日"和"状态"筛,而不是只能按名字搜。 到期提醒类页面,人的使用方式是"筛出该打电话的那批",不是一个个搜。所以筛选字段要在建模时就前置,别等用起来发现筛不了再改。
二是"一宠一页"比"多张表来回跳"更符合真实使用。 医生接诊时脑子里想的是"这只动物",不是"就诊表"。把档案、时间线、最近用药放在同一屏,能省掉大量来回查的时间。
九、让系统自己跑起来:四条自动化
系统能少让人做多少手工,取决于配了几条规则。这四类配置见效最直接:
1. 到期类定时任务
- 疫苗与驱虫到期:按品种间隔算到期日,提前 N 天进待办并推送站内通知;
- 住院超期:预计离院日已过仍在院的,每天进货清单;
- 未结账:收费单状态未收超过一定时长,进货清单。
2. 保存时的数据流规则
- 疫苗到期日 = 接种日期 + 品种间隔天数,保存即算;
- 收费明细小计之和 ≠ 应收金额时拦截;
- 就诊记录未填体重不允许开按体重计量的用药明细;
- 住院单据状态为"已离院"时,离院时间必填。
这类"先拦后记"的校验很关键。只发提醒不拦单,提醒会越堆越多,最后没人看;在保存那一刻拦下来,问题就进不了库。
3. 审批流
- 退费、超额折扣、免费处置(员工宠物、救助动物);
- 大额耗材领用;
- 客户档案合并(把重复建档合并成一条,属于不可逆操作,值得复核一次)。
4. 只增不改的留痕
就诊记录、处置明细、护理流水、疫苗记录、异常跟进——这几张表的编辑权限按角色收紧,修改只走作废重开。平台的操作审计日志会自动记下谁在什么时候改了什么,出问题时能倒查。
十、移动端:让记录发生在现场
宠物医院的记录最难的不是"记不记得住",而是"记的地方离现场太远"。人在笼边、在诊台上,不会跑回前台电脑前补录。所以这几件事要放到手机端(移动端页面与 PC 页面的关系见 移动端使用指南):
- 医生查档案:候诊时在手机上打开宠物档案,看过敏史、慢性病、上次用药;
- 护士记护理流水:笼边直接填体温、进食、排泄,附件里加一张照片;
- 接种登记:接种完成当场录批号,不用事后凭记忆补;
- 待办清单:今天的接种提醒、复诊回访名单,手机上看、当场打电话;
- 收费查询:前台不在电脑前时,用手机看单号与状态。
需要说清楚的一点:移动端解决的是院内员工在现场的记录,不是给宠主用的自助端。宠主端的预约、报告查询这类对外功能不在本文范围内,理由见最后"不做什么"一节。
十一、上线前要查的八件事
模型搭完不等于能用。上线前把下面这八条逐条过一遍,能省掉上线后一半的返工:
- 字典值是否定死。 物种、品种、科室、用药途径、疫苗品种、支付方式——每张字典都确认一遍"以后不再改同义词",改一次口径,历史数据的报表就要重算。
- 宠物档案是否有唯一标识。 宠物编号系统生成、芯片号有则唯一;没有唯一约束,同一只猫会被建三次档,时间线就断成三截。
- 客户手机号是否唯一。 这是防重复建档最有效的一道闸;已有历史重复档的,上线前合并一次,合并走审批留痕。
- 存量数据怎么进来。 历史病历多半是纸的,不可能全部补录。实际可行的是先导入在册宠物与最近一次疫苗记录,其余历史病历按"从上线日起完整、历史可查"的原则处理:纸质档案按宠物编号归盒存查,不再逐条录入。批量导入的方法见 用 Excel 一步建模块。
- 权限是否按岗位分。 医生能改自己的就诊记录、不能改收费单;前台能建客户、不能删就诊记录;谁能看经营看板,事先定好。
- 提醒节奏是否确定。 疫苗提前多少天提醒、提醒几次、谁来打这个电话,先定人和节奏,再配定时任务。系统只会把名单列出来,电话还是要人打。
- 院感相关的边界是否划清。 隔离区/传染区的笼位是否单独标记,转院与离世是否有明确状态,避免在院数长期虚高。
- 发布前的检查项过一遍。 模块的测试与发布有标准流程(预检、挂菜单、移动端同步),详见 模块的测试与发布。上线当天安排一个人盯前两小时的真实业务,比上线后一周再发现问题省事得多。
十二、之后可以往哪延伸
这套档案例建起来之后,往下延伸是渐进的,不用一次做全:
- 耗材与药品效期:疫苗、药品、耗材都有批号和效期,与本文的批号字段天然接得上,做法可以参考 诊所耗材与效期:先进先出,过期前先预警;
- 检验与化验:血常规、生化、影像的申请与报告归档,与就诊记录挂在一起,思路见 化验室样品管理;
- 院内设备校准:显微镜、生化仪、麻醉机的校准与维保台账,见 计量器具与校准;
- 客户回访与会员储值:从疫苗到期名单自然长成回访任务,储值流水在收费模块已经具备;
- 多门店:门店作为组织单元,档案与看板按门店过滤,跨店就诊时仍能看到完整时间线。
十三、这套方案不做什么
把边界说清楚,比把能力说满更有用。以下这些不在本文这套模块的范围内:
- 不做检验仪器、影像设备的直连。 生化仪、血球仪、DR 的数据自动采集需要设备厂商接口与硬件对接,不属于这套台账式模块的能力。本文里的报告与影像都是"人工上传附件 + 人工录入结论"。
- 不做疫苗本、病历的拍照自动识别。 纸质记录靠人工录入或按编号归档存查,不做图像识别提取。
- 不做面向宠主的自助端。 在线预约、报告查询、疫苗提醒短信触达宠主本人,涉及外部账号体系与隐私合规,需要单独评估;本文只覆盖院内员工的操作端。提醒动作落成"待办清单 + 员工外呼",并在记录里留下告知时间与告知人。
- 不做诊断辅助与用药建议。 系统只负责把记录存好、把到期项列出来,不产生任何诊疗结论。
- 不承诺免疫成功率、就诊量增长这类结果指标。 系统能保证的是:记录查得到、疫苗到期看得见、每一笔收费对得上——这些是可验证的,其他交给医生和经营。
写在最后
宠物医院的数字化,最容易走的两条弯路是:一是买一套通用诊所软件硬套,字段对不上,最后又回到纸笔;二是先做一堆漂亮的看板,底层的档案却是散的,看板上的数字没人敢用。
这套搭法的顺序是反过来的:先确定"宠物"是中心、把档案的唯一标识立住,再把就诊、处置、疫苗、住院、收费这五张表挂上去,最后才让页面、提醒和移动端去用这些数据。 表结构对了,页面和提醒几乎是配出来的;表结构错了,页面做得再顺手也补不回准确性。
在 Inkwell AI 构建器里,这套东西的搭建方式是描述业务、让构建器生成数据模型与页面,再按需调整字段与规则;每一轮改动都有版本可回退。先从"宠物档案 + 就诊记录 + 疫苗一针一行"这三张表开始,一周之内就能让门诊跑起来,剩下的住院、收费、报表按实际需要再加。