浴场很少像停车场那样卡一个精确到分钟的点,但“超时”这件事照样要认:夜场跨到凌晨、闭馆以后环还没交、按项目结算的场子里人早走了账还没结。能拿出来的依据只有一个——环的进出时间戳。
两个时刻,一条时长。领取时刻是立式收发机把这枚环放出来的那一秒,投放时刻是回收机感应到它落进去的那一秒,同一个卡号配上对,在场时长就有了。领取这一头是串口一问一答、115200、8N1,一次动作平均三到五秒;回收那一头读卡零点三秒,剩下的时间花在机构动作和确认掉落上。这两段都是固定开销,不会把秒级时刻污染成分钟级。

判定用哪一侧的钟,要先说死:以系统侧为基准,机器侧只做记录。两边差多少得实测一次——让同一个动作在两边各留一条时刻,连着看三天。差值稳定,是配置没对齐;差值在漂,是链路或者机器掉过电。这一条不校,后面所有“超了多久”都建立在偏移上,讲不出道理。
宽限给多久,别拍一个数。把“当日最后一笔投放时刻减闭馆时刻”取近三十天的分布,看九成的人落在哪一分钟,那个位置就是宽限线。多数场子最后一条落在半小时上下,这一档和清场广播、关灯动线、最后一个项目散场的时间都对得上。把宽限定在九成以外,收不到什么效果,只会把争议推到人工判断上。
配不成对的那几条才是麻烦来源。三种情况要分开处理。读不到号的投放只有一次记录、没有卡号,只能按机器号和时刻近似,这种必须在现场当场登记,事后补不回来。领取流水里这个号被出过两次,配出来的时长就会短得不像话,这种情况要回到领取那一步去查原因,不在时长这一头处理。昨日未归的环今天被投进来,时长会超过二十四小时——这个异常值反过来是最好的线索,它把“跨日”这件事直接写在数上。

跨午夜的场子要单独定规则。凌晨还在营业的夜场,按自然日切分会把同一枚环切成两段,前一段没有终点、后一段没有起点。做法是按“这一次领取到它下一次投放”算,日期只在归集的时候对上班次和账期,不参与时长计算。自检各留的那两只备用环不在客人流水里,算时长之前先排掉,不然会得到两只永远没还的环。
最后一条边界:机器给的是两个时刻,超不超、怎么追,是场子自己定的口径。把时长当依据用,别把它当条款用。客人回来问“我到底几点交的环”,口头上怎么说都没用,但机器里有那一秒——这才是回收环节值得留时间戳的原因。
