散客票的逻辑是“一张票对应一个人的一次进入”,卖出去就结束。活动票不一样:报名在前、名单在变、入园分批、带队人只拿一个码。用散客那套流程去接一个两百人的夏令营,现场会出现三种结果——人数点不清、家长问不到孩子是否入园、活动改期之后账全乱。
第一处差别:订单之后还有一张名单
活动票的核心数据结构不是订单,而是订单下面挂的参与人名单。名单要有姓名、证件号、性别、年龄段、紧急联系人、健康提示这几列,且要能从表格批量导入,因为组织方一定用表格管理。导入时要做重复校验和格式校验,同一个证件号在同一场活动里只能出现一次。名单在系统里是可变的:报名期允许增删,出发前锁一份提交版,锁定的版本号要留痕,之后的修改逐条记录是谁改的。保险和用餐这类二次信息也挂在名单行上,不要挂在订单上,因为一张订单下的人可能各不相同。

第二处差别:按人头核销,而不是按票核销
散客是一张码刷一次。活动票要能按名单上的人逐个核销,任何一个人被核销过就不能重复进。落地方式是名单每人一条子记录,各自有可独立校验的状态。闸机端如果只支持扫一张码一次,就用带队码加现场逐人登记;有手持机的通道,可以按名单勾选放行,勾中即核销。这两种都要产生流水,不能只在纸上打勾——没有流水,事后无法回答“某某什么时候进的园”。
第三处差别:分批入园是常态
一个团常分两到三批到达,早批先开展活动,晚批还在路上。所以活动票的有效期要能配成“活动日全天多批次入场”,而不是默认的当日一次。分批要有批次号,每批次显示应到人数、实到人数、未到名单。这三个数在检票口现场就要看到,否则领队在门口用手机表格加人工数人头,误差会一直带到结算。

带队人一张码要解决两件事
一张码代表一个团,方便进场时不用收几十张票;风险是这张码会被复制传给无票的人。折中做法是带队码只做“报到”动作,把整团的状态置为已到场,具体到每个人的入园仍然要逐人核销或抽样核对。带队码要有绑定关系:一个码只对应一个团、一个当天有效时段,且首次使用后不可撤销地关联到操作通道。带队人的身份验证走工号或联系人手机号,别只凭一张截图。
改期和换人是两套动作,不要混
改期是整团挪到另一天,要校验目标日期是否有额度、价格是否变动、名单快照是否保留。换人是名单内部替换,名额总数不变。前者影响库存和结算,后者影响实名和保险。系统里如果只有一个“修改订单”按钮把两件事合在一起,改一次期就会顺带把名单改花。稳妥配置是分开放:活动改期需要审批权限,名单换人给到组织方自助,但要留下每次替换的原名字段。
结算口径要提前定:按名单报名人数打包,还是按实际核销人头结算。后者更常见,也更容易被质疑,所以核销流水必须能导出成组织方看得懂的清单,含姓名和时间。还有一个字段建议提前留:活动编号。同一所学校、同一个产品做三期,编号能把它们串起来,报名量和实际入园量才有的比较;没有编号,每一期都是一张孤立的表,明年再谈合作时拿不出依据。

鄂公网安备 42018502004652号