票务系统里的时区与零点:跨天订单算哪一天、按哪一档价
时间:2026-10-10 11:00:22 作者:景区票务系统

二十三点五十八分下单,零点零二分支付成功。这张票算今天还是明天、按哪一档执行,跟三件事有关:库里把时间存成什么、日切点定在几点、价档按下单时间还是按使用日期取。三个口径不一致,报表一定会对不上,而且月底才看得出来。

一、时间只存一种口径。全库选一个:要么统一存带时区的绝对时间,要么统一存本地时间,不能一半一半。混存最典型的症状,是渠道回传的核销时间与本地记录差整八小时,查半天不是网络掉了,是字段口径不同。订单表建议留两列:终端记录时间、服务端接收时间。两列差值超过三十秒就去看设备校时;差值恰好是整小时倍数,先查时区配置,不用查设备。

二、日切点不是零点。统计口径按运营日切,开园前一到两小时,或者闭园后一小时,按场子自己定,定完写进字典表,不要让人在报表页面上手填一个日期。日切点一旦改过,变更记录里要写清生效日期和批准人,由值班经理签字,不能只留一句"按领导要求调整"。夜场票二十三点五十九分刷、零点上进入,归属要有唯一答案:销售归到哪个运营日看支付时间,入园归到哪天看使用日期。这是两个字段,不要拿一个创建时间兼顾,兼顾了就一定有人在月底偷偷改数。

订单上的两个日期字段

三、价档按使用日期取。按下单时间定档会出事故:零点一档跳过去,前一天下单的人要求退差,退不退没有依据。可用的做法是下单瞬间把档位和单价写进订单的价格快照列,之后改价、退差、对账只看这一列,不回头查实时价格表。跨零点支付超时失败的单,重建时重新取档,并在订单日志里加一行"重新取档,原因是支付超时",这一行是日后解释差额的唯一凭据。

四、分时判档用哪个时间。游客买的是使用时段,闸机判的是刷码那一刻。提前十五分钟放不放、延后三十分钟放不放,要写在时段规则的字段里,不留给通道值守临场决定。延迟入园跨过日切的票,判档基准用使用日期,不用当日日期,否则第二天头一个小时的容量会被前一天夜场的余量顶掉,报表上还看不出原因。

跨零点订单的归属判定

五、三张报表的口径要写在表头。销售日报按日切时间归档,核销日报按使用日期,渠道对账单按对方口径出,三张数字不一样是正常的,不正常的是没人标注口径。每张导出表的第一行加一行口径说明,字段名直接写"使用日期""销售日期",别都叫"日期"。拿两表相减来找平的人,多半是被同名字段误导的。

先做哪一件:先把订单表拆出使用日期和销售日期两列,并把历史数据按现有规则回填一遍,再改日切点,最后调取档规则。日切点改动要留一个双跑周期,新旧两套各出一张表,差异清零再切,单边切换的第二天没人说得清那几百张票去了哪天。

点击下方文字 自动复制微信号
15629900190(点击复制)