救护车随车药械检查登记台账生成器(vehicle-kit-check-log)
一句话结论:给你一张能直接交院前急救药械督查的随车检查台账——四场景(随车检查/药品效期/领用补充/月度汇总)自动勾稽,异常行整行标红(缺项异常未处置、药品过期、领用未补充),临期阈值 --days 由本院制度给定不硬编,【待填】红字清点,缺什么一眼看到。
本页导航:菜单式选路 → 对话示例 → 快速上手与退出码表 → 字段与判定口径 → 铁律(医疗合规四关)→ 能力边界量化表 → 岗位场景例子 → 边界提醒 → 文件索引。
菜单式选路
使用者开口后按场景引导,一次一问补要素:
第一步 · 选场景(回复序号或场景名均可):
- ① 随车检查登记(每日/每班按本院给定清单逐项查:药品/耗材/氧气/除颤仪/心电监护等,状态=缺项/异常而处置措施缺失自动标红)
- ② 药品效期登记(按批号登记效期,剩余效期按基准日期推算;过期整行标红并强制处置;临期阈值 --days 给定)
- ③ 领用补充登记(出车领用后逐笔登记补充,领用后未补充自动标红,补齐补充日期/补充人闭环)
- ④ 月度汇总(检查完成率=实查/应查班次、缺项与过期项次、补充闭环率、按车牌分布)
第二步 · 给数据(任选一种):
1. 粘贴/口述登记记录(按场景逐行给:车牌、检查项、状态、批号效期、数量、工号……缺的项不用编)
2. --preset 场景名 --save 骨架.json 生成填写骨架,填好 --input 回来
3. --demo 先看脱敏样例长什么样
4. 直接要空模板(8 行【待填】占位)
第三步 · 出台账:xlsx 双表 = 登记明细(异常行整行标红 + 【待填】红字 + 冻结表头)+ 统计汇总(场景速览/异常清单/【待填】清点/隐私与合规提示)。
不知道选什么?直接说需求,我给你列选项,回个序号就出表。
对话示例
> 用户:救护车上的急救药品要每周查效期,帮我弄个表
> 助手:好的,先选场景(回序号或场景名):①随车检查登记 ②药品效期登记 ③领用补充登记 ④月度汇总。按您说的查效期,选 ② 最合适
> 用户:2
> 助手:好的,药品效期登记。临期预警阈值您院制度定多少天?(--days 给定,如 90 天)不给我就不做临期提示、只判过期。请按药品逐行给:车牌号、药品名称+规格+批号、效期至、数量,缺的跳过不编
> 用户:苏A·D120,肾上腺素注射液 1mg:1ml/支 批号E2603A1 效期至2026-08 数量5
> 助手:收到(基准日期今天,剩余效期自动推算)。要素齐全(登记人工号未提供→【待填】)。生成台账:1 行,1 行异常(已过期→整行标红,处置措施须补记封存/更换)。
快速上手
# 场景菜单
python scripts/make_vehicle_kit_check_log.py --presets
# 脱敏示例(--date 固定台账日期/效期基准日期,可复现)
python scripts/make_vehicle_kit_check_log.py --demo --out 台账.xlsx --date 2026-11-01
# 指定场景(回序号 1/2/3/4 或场景名均可);效期场景给临期阈值 --days(不硬编)
python scripts/make_vehicle_kit_check_log.py --preset 药品效期登记 --days 90 --out 11月效期.xlsx
# 从填写好的骨架生成
python scripts/make_vehicle_kit_check_log.py --input 骨架.json --out 台账.xlsx
# 空模板(8 行【待填】占位)
python scripts/make_vehicle_kit_check_log.py --preset 领用补充登记 --out 空模板.xlsx
骨架回读:--input 回读时,骨架 JSON 顶层全局字段自动生效——date(台账日期/效期基准日期)、days(临期阈值,天)、dept(科室/车组名);值为【待填】/空/null 视为未填;命令行 --date/--days/--dept 优先级更高。
输出预览(摘取自 --demo 输出,--preset 药品效期登记 --date 2026-11-01 --days 90)
| 序号 | 车牌号 | 药品名称(含剂型) | 规格 | 批号 | 效期至 | 剩余效期(天) | 数量 | 处置措施 | 登记人(工号) | 备注 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 苏A·D120 | 肾上腺素注射液 | 1mg:1ml/支 | E2603A1 | 2026-08 | -62 | 5 | 【待填】 | 【待填】 | ⚠️ 已过期(效期至 2026-08,按基准日期已过期 62 天),须立即封存/更换并在处置措施留痕 |
| 2 | 苏A·D120 | 盐酸多巴胺注射液 | 20mg:2ml/支 | D2612C4 | 2026-12-31 | 60 | 8 | / | N1024 | ℹ️ 临期提示:剩余效期 60 天,已进入临期预警(阈值 90 天,--days 给定);建议优先使用或安排更换 |
| 3 | 苏B·E135 | 尼可刹米注射液 | 0.375g:1.5ml/支 | N2609D2 | 2027-09-30 | 333 | 【待填】 | / | N1024 |
统计汇总页关键行:登记行数 4|异常行数(红)1|【待填】单元格 3,随后为场景速览、异常清单与【待填】清点。场景①③④可用 --demo 一条命令复现完整成品。
退出码表(脚本 scripts/make_vehicle_kit_check_log.py,v1.0.1)
| 退出码 | 含义 | 处理 |
|---|---|---|
| 0 | 台账生成成功 | — |
| 10 | 输入文件不存在(沿用现有体系约定) | 核对 --input 路径 |
| 11 | 输入缺失:缺 items / items 非数组 / --save 未指定 --preset |
按 {"items": [ … ]} 结构补齐 |
| 12 | 格式错误:JSON 无法解析 / items 项非对象 / --date 无法识别 / --days 非正整数 |
核对 JSON 语法、日期与阈值格式 |
| 13 | 隐私拦截:输入检测到患者姓名明文(患者张三/李某某式)、身份证号、手机号 | 去除敏感信息后重试;车牌/工号/批号可正常登记(错误提示不回显敏感值) |
| 14 | 校验失败:预设名不存在 | 见 --presets 菜单(回序号/场景名均可) |
| 15 | 运行超时(60 秒看门狗) | 重跑同一条命令 |
| 20 | 解析失败 / 输出失败等未预期异常(兜底) | 把输入 JSON 与提示发给助手排查 |
| 21 | 缺依赖 | pip install openpyxl 后重跑 |
单行日期/数量格式错误不中断整份台账:该格转【待填】红字并在备注注明原因,汇总页计入清点;文件级错误才整体退出。
字段与判定口径
- ① 随车检查登记(10 列):序号 / 检查日期 / 车牌号 / 车组 / 班次 / 检查项 / 状态 / 处置措施 / 检查人(工号) / 备注
- ② 药品效期登记(11 列):序号 / 车牌号 / 药品名称(含剂型) / 规格 / 批号 / 效期至 / 剩余效期(天) / 数量 / 处置措施 / 登记人(工号) / 备注
- ③ 领用补充登记(9 列):序号 / 出车单号 / 车牌号 / 领用日期 / 领用药品物品 / 数量 / 补充日期 / 补充人(工号) / 备注
- ④ 月度汇总(14 列):序号 / 月份 / 车牌号 / 车组 / 应查班次数 / 实查班次数 / 检查完成率(%) / 缺项项次 / 过期药品项次 / 领用笔数 / 已补充笔数 / 补充闭环率(%) / 登记人(工号) / 备注
异常行整行标红(写入备注 ⚠️ 提示,人工核对):
- 随车检查:状态=缺项或异常,而处置措施缺失 → 标红 + 处置措施【待填】(状态=正常时处置措施留空自动记「/」,不算缺失)
- 药品效期:过期(效期至早于基准日期)→ 整行标红 + 处置措施强制【待填】(封存/更换须留痕,填了处置也仍标红,过期本身即异常)
- 领用补充:领用药品/数量已记而补充日期缺失(领用后未补充)→ 整行标红 + 补充日期【待填】|补充日期早于领用日期(倒挂)→ 标红
- 月度汇总:实查班次数 > 应查班次数|已补充笔数 > 领用笔数|任意数量为负 → 标红
- 各场景通用:数量为负 → 标红
软提示(备注 ℹ️ 提示,不标红):
- ② 临期:剩余效期 >0 且 ≤ --days 阈值时提示「已进入临期预警」;--days 不给则不做临期提示(阈值由本院制度给定,不硬编默认值)
- ④ 检查完成率 <100% 提示补查;日期/数值无法识别(该格转【待填】)
- 剩余效期(天)、检查完成率(%)、补充闭环率(%) 为纯算术推导(源自已填字段与基准日期),输入不全则为【待填】,绝不代填
- 【待填】单元格红字标红,汇总页清点数量并提示「未补齐视为登记未完成」
- 效期至支持
2027-02-15/2027.2.15/2027/2/15/2027年2月15日/20270215;年月形式2027-05按当月最后一天计 - 检查清单由本院给定可配置:①的「检查项」为自由文本,按本院随车药械清单逐项填写即可
- 患者信息不进入本台账(本工具无患者字段);车牌/工号/批号允许;
--input的 JSON 里也可写"preset": "场景名"自动选路
铁律(医疗合规四关)
- 不判断药品适用性、不碰诊疗决策、不替代药事管理:只做随车药械基数/效期/领补的登记台账;某药该不该用、缺项如何处置、设备能否继续使用,以医师/药师/设备科和本院制度为准,台账只做基数勾稽与留痕;效期管理口径以药品管理法规与本院制度为准(不引用具体条款号)
- 隐私硬拦截:脚本检测到患者姓名明文(「患者张三」「李某某」式)、身份证号、手机号 → 退出码 13 直接拒绝处理(错误提示不回显敏感值);车牌/工号/批号允许;内置白名单防误拦(「患者转运」「检查」「领用」「补充」等场景用语不触发)
- 数据不出机:台账本地生成,无网络请求;随车药械登记信息按院内数据管理规定流转
- 不编造不代填:数量/效期等缺失一律【待填】标红,汇总页清点;剩余效期/完成率/闭环率只做纯算术推导并标注来源,绝不代填处置措施与缺项结果
能力边界量化表
| 能做 | 不做(明确边界) |
|---|---|
| 四场景随车药械登记台账生成(xlsx 双表,可打印归档) | 不替代药事管理系统/急救物资系统:无审批流、无库存联动、无监管报送接口 |
| 异常行整行标红(缺项异常未处置、过期、领用未补充、实查>应查) | 不判断药品适用性与配伍:能不能用、怎么用以说明书与医嘱为准 |
| 剩余效期/完成率/闭环率计算(纯算术推导,标注来源) | 不做设备功能检测判断:在位与效期核对≠功能完好,功能以设备科检测为准 |
临期预警(阈值 --days 由本院制度给定,不硬编) |
不确定临期/过期药品的处置方式:封存/更换等按本院药事制度执行 |
| 【待填】清点与补填提示(不代填) | 不校验登记数量的真伪(盘点是否属实须人工/双人复核) |
| 患者信息隐私拦截(退出码 13)+ 白名单防误拦 | 不记录患者病情与救治过程(属出车/病历工具范畴) |
| 本地生成、数据不出机 | 不引用药品管理法规具体条款号;口径以本院制度为准 |
岗位场景例子
- 急救站站长:「救护车药械每天班班要查,缺了东西要跟踪处置」→ 选 ① → 按本院清单出台账,缺项/异常没记处置的直接红
- 药械专管员:「车上药品效期要逐批登记,临期的要提前换」→ 选 ② +
--days阈值 → 剩余效期自动推算,过期标红强制处置 - 出车护士/司机:「用了药回来要补上,账物要闭环」→ 选 ③ → 领用未补充的行整行红,补齐即闭环
- 站长/质控月报:「月度要报检查完成率和补充闭环率」→ 选 ④ → 完成率/闭环率自动算,按车牌分布汇总
边界提醒
- 与相邻技能的边界(查重划界):
crash-cart-log(抢救车物品清点):管病区/科室抢救车的封存/启封与物品清点,不管救护车随车药械ambulance-dispatch-log(救护车出车登记):管出车任务(出车/响应时长/车辆维保登记),不记车上药械基数与效期- 本技能
vehicle-kit-check-log只做救护车随车急救药品/物品/设备的基数与效期检查(检查/效期/领补/汇总);出车过程请用出车登记工具,病区抢救车请用抢救车清点工具 - 本工具不替代药事管理系统与急救物资台账;纸质/电子台账按院内要求归档
- 临期与过期药品的实际处置(封存/更换/报损)按本院药事管理制度与药品管理法规执行,台账只做登记留痕(本工具不引用具体条款号)
- 台账中不得出现患者姓名/身份证号/手机号——脚本硬拦截(退出码 13);车牌/工号/批号可正常登记
文件索引
| 文件 | 用途 |
|---|---|
| scripts/make_vehicle_kit_check_log.py | 核心:CLI 成稿 + 四场景判定 + 异常标红 + 临期阈值 + 隐私拦截 + 错误码兜底 |
| references/vehicle-kit-check-guide.md | 登记实践参考:随车检查/效期口径/领补闭环/月度汇总台账口径 |
| requirements.txt | 依赖清单(openpyxl) |
| beta-test/run_tests.py | 内测回归脚本(隐私拦截/退出码/异常标红/待填不编造等) |
| CHANGELOG.md | 版本变更记录 |
| assets/faq.md | 常见问题:场景选择/阈值口径/隐私拦截/输出位置/相邻技能分工 |
| assets/anti-patterns.md | 反模式清单:错误用法 → 后果 → 正确做法 |
| assets/input-example.json | 输入示例(脱敏,可直接 --input 试跑) |