ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

宠物服务门店系统的工程实现:时段库存、预付权益账本与档期防超卖

宠物服务门店系统的工程实现:时段库存、预付权益账本与档期防超卖 先说结论宠物门店类系统看起来是预约 会员工程上真正的难点集中在三处时段库存工位容量与人员档期取交集防并发超卖、预付权益账本次卡与储值的余次、余额、有效期与跨店结算要有一本可回溯的流水、档期区间库存寄养按房型按晚扣减防重叠占用并保留交接记录。这三块都属于出错很难补的类型时段卖重了是现场事故账本对不平是财务纠纷档期排重了是客户投诉。这篇按三段拆实现要点最后给模块划分速查。一、排班与时段库存工位与人员的双资源建模配图位 · 图 5排班与时段库存模型structure资源建模 / 库存扣减 / 并发约束 / 工时结算四组图注图 5排班侧模块划分——双资源建模、库存扣减、并发约束与工时结算1. 资源建模把可预约资源拆成两层而不是一层物理资源洗护工位、烘干位、住店房型各自有容量与占用时长人力资源美容师/洗护师带技能标签可承接项目类型与日产能上限。服务项目上挂三个属性预估基准时长、占用哪类物理资源、需要哪类技能标签。可预约时段 按日展开的营业时段 ∩ 物理资源空闲窗口 ∩ 具备技能的人员可用窗口。只有一层资源的系统在两个工位三个人的场景下必然出错。2. 库存扣减时段库存建议做成独立的库存行门店 日期 时段 资源类型 已用/总量预约成功即扣减取消或改约按规则回补。不要在订单表里用聚合查询实时算余量——并发一上来就会卖重。3. 并发约束同一时段的扣减必须收口在一个原子操作里数据库行锁、Redis 原子扣减或分布式锁三选一业务代码不直接读改写。同时要做幂等客户端重复提交、回调重放都不能产生两次扣减。4. 时长修正基准时长只是默认值按体型与毛量给出修正系数服务人员开工后可手动追加时长并记录原因。没有修正机制一只长毛大型犬拖两小时后面全排崩。5. 工时与提成结算开工/完工打卡要与库存行挂钩打卡即写入实际占用区间完工后按实际时长与项目单价生成提成明细。结算数据由任务按日汇总不靠线下表格。二、次卡与预付权益核销账本、有效期与跨店结算配图位 · 图 6次卡核销与余额账本流水线flow发卡→预约抵扣→核销出账→跨店结算→到期处置图注图 6次卡从发卡到核销的账本流转——每次动作都写独立流水1. 账本模型流水是唯一真相权益余额不要只存一个数字字段要建权益账户 权益流水两张表账户存当前余次/余额与状态流水记录每一次发放、核销、赠送、冻结、退回。账户余额可由流水重算校验这是发现对不平的唯一手段。流水表只增不改冲正走反向流水而不是 UPDATE。2. 核销与幂等核销入口有两个门店端扫码/输手机号用户端主动出示核销码。两条路径共用同一个核销服务用业务单号做幂等键同一张核销单重复提交只出账一次。异常核销补录、跨天补核要留操作人与原因。3. 有效期与状态机权益账户的状态建议做成有效 / 临期 / 已冻结 / 已失效 / 已退回。到期前按可配置天数触发提醒订阅消息或短信到期后是冻结还是顺延按门店政策配置为策略字段不做默认动作。关键约束任何影响客户资产的规则变更都要留版本与生效时间避免规则昨天还是这样的争议。4. 跨店核销与内部结算连锁场景下发卡门店与核销门店往往不是同一家。做法是在发卡时写入两个字段适用门店范围、跨店核销的内部结算单价可按时段或项目类型分档。核销成功即生成一条内部结算记录按月汇总到总部账门店之间的谁卖卡谁出工矛盾就从人情问题变成数据问题。5. 退款与折算退款要能算清三件事已核销部分按什么口径折算、赠送权益是否回收、跨店消费后的退款如何在门店间回冲。建议在卡模板里把折算规则显式配置化退款流程生成独立的冲正流水不允许直接改历史流水。三、寄养档期区间库存、防重叠与交接留痕配图位 · 图 7寄养档期与交接留痕双通道compare前场预约与提醒 vs 后场库存与记录图注图 7前场负责预约与提醒后场负责区间库存与交接记录前场 · 预约与提醒按房型展示可入住区间而不是按剩余总房间数入住与退房日期之间的每一晚都要校验占用跨月订单同样逐晚扣减高峰期采用候补队列承接溢出需求候补转正时给出确认时限超时自动释放入住前一天提醒客户携带免疫记录与随行物品减少现场沟通摩擦。后场 · 库存与记录区间占用的实现以房型 日期为粒度建占用行插入前做重叠校验同房型同日期的占用计数不得超过容量校验与插入放在同一事务内靠唯一索引或行锁兜底防止并发下同一晚被排两次入住登记基础状态项勾选精神状况、皮肤与被毛、有无外伤、随行物品清单、现场照片记录由双方确认作为后续沟通依据退房核对对照入店记录逐项核对并再次留档异常项写入备注健康异常处置系统内提供固定的联络与转诊提示语明确生活服务与动物诊疗的边界服务人员不给出诊疗判断影像与隐私托管期间的实时画面只对本人订单开放不留公开入口影像文件设保留期限并按时清理。四、模块划分速查模块核心职责关键约束资源模型工位、房型、人员技能与产能双资源取交集单层建模必出错时段库存可约时段生成与扣减原子扣减 幂等键禁止聚合实时算余量预约中心下单、改约、取消、候补状态机收口回补与扣减成对出现时长修正体型与毛量系数、人工追加追加需记录原因影响后续排期重算权益账户余次、余额、状态余额可由流水重算校验权益流水发放、核销、赠送、冲正只增不改冲正走反向流水跨店结算适用范围与内部单价发卡期配置核销即生成结算记录档期库存房型按晚占用与重叠校验事务内校验唯一索引兜底交接记录入住与退房状态留档双方确认影像设保留期限工时结算实际占用与提成汇总打卡即落数据按日汇总权限与脱敏角色分级、敏感信息展示员工端按角色脱敏操作留审计日志小结门店类系统的工程重心是三个库存、一本账时段库存、档期库存、资源库存加上一套只增不改的权益流水。时段库存做不稳现场就会出现约重账本做不成流水客户问卡里还剩几次时前台无法自证档期不做区间校验节假日必然出现同房双排。这三块在架构期定型后续加项目类型、加门店、加权益种类都只是配置变更定型不稳任何一次改规则都要动核心表。附图三张分别给出资源与时段建模、权益账本流转、档期与交接双通道的结构参考。
返回列表