CN101546195A - 一种防倒票的票务系统及方法 - Google Patents
一种防倒票的票务系统及方法 Download PDFInfo
- Publication number
- CN101546195A CN101546195A CN200910302456A CN200910302456A CN101546195A CN 101546195 A CN101546195 A CN 101546195A CN 200910302456 A CN200910302456 A CN 200910302456A CN 200910302456 A CN200910302456 A CN 200910302456A CN 101546195 A CN101546195 A CN 101546195A
- Authority
- CN
- China
- Prior art keywords
- ticket
- booking
- execution
- unit
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种防倒票的票务系统及方法,涉及票务管理领域,所提供的系统由票务中心[101]、售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、通信网络[2][8][13][15][19]构成。采用了一套售票、检票、挂失、举报和处罚、奖励方法,提供了诚信购票、证件购票、本人单购和押金购票四种购票方式及其检票规则,可有效防止倒票。本发明提供的挂失功能可在票丢失或损坏后避免购票人财产损失和社会资源浪费。当票使用过程中发生公共安全或卫生事件时,可利用购票时记录的身份信息或标识码在事后迅速找到相关的购票人,以控制事件的影响范围。
Description
技术领域
本发明涉及票务管理领域,特别是火车票的票务管理领域。
背景技术
中国客运业的运力不足,在客运高峰期,特别是春运期间,热点路段的车票非常紧张。而票贩子通过各种途径囤积车票,更增大了供需矛盾,经常导致大量旅客滞留车站,极易引发群体性伤亡事件,激化社会矛盾。普通票丢失或损坏无法补救,造成购票人经济损失,同时也造成了运输企业的资源浪费。另外,如果乘车过程中发生公共安全事件,普通票不记录购票人身份信息,事发后很难找到可能受影响的乘客。例如,乘客中有非典或猪流感病毒携带者,下车后很难找到同车相距较近的乘客,难以控制疫情扩散。
同样的问题也存在于热门演出、比赛、景观的门票方面。
实名售票可解决上述问题,例如2008年北京奥运会售票采用的实名售票就很好地解决了上述问题,但是售票成本太高,难以推广。另外,普通的实名售票在实用中也存在很多问题,例如,售票、检票速度慢,成本高,容易造成堵塞,从而引发安全事件。
印度铁路客运已实行实名售票50多年,但它更多程度上是一种填单制度,没有认真验证机制,也只是在高等级列车上真正实行,不符合中国国情。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题如下:
1.防止票贩子倒票问题;
2.票丢失或损坏后如何保护购票人的权益问题;
3.突发公共安全事件后,如何迅速找到购票人或票的使用人问题;
(二)技术方案
本发明解决其技术问题所采用的技术方案是:
一种具有防倒票功能的票务系统,由票务中心[101]、售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、通信网络[2][8][13][15][19]构成;其中,移动票务子系统[105]和售票子系统[103]有0个或多个;票务中心[101]和其他子系统均有1个或多个。
票务中心[101]和售票子系统[102]通过通信网络[15]通信,通信网络[15]为专用网或互联网;票务中心[101]和售票子系统[103]通过通信网络[8]通信,通信网络[8]为无线通信网;售票子系统[102][103]和票务中心[101]构成C/S系统;售票子系统[102][103]提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能;票务中心[101]为售票子系统[102][103]提供相应的后台服务;
票务中心[101]还提供WEB模式的业务服务,客户可以使用PC或笔记本[4]通过互联网[2],或者使用移动智能设备[9][10]通过通信网络[8]连接票务中心[101]的WEB服务器,在网上进行票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金;另外,还提供团购资格申请、团购客户自助管理、后台管理功能;
票务中心[101]和检票子系统[104]通过通信网络[15]通信;检票子系统[104]用于检查票是否合法,以及是否合法持有,并更新票的状态、记录检票结果;票务中心[101]为检票子系统[104]提供数据支持,即为检票子系统[104]提供票务信息,并根据检票子系统[104]提供的检票信息更新票的状态和记录检票结果;
移动票务子系统[105]提供售票子系统[103]的所有功能,以及检票功能;它与票务中心[101]通过通信网络[8]通信;票务中心[101]为其提供后台服务和数据支持。
本发明还提供了一套用于防止倒票、跟踪购票人的售票、检票、挂失、举报和处罚、奖励方法,具体描述如下:
每张票有两个ID号,一个为逻辑ID号,用于标识购买活动,或者逻辑票;一个为物理ID号,用于标识每张物理票;在重新出票时,逻辑ID号不变,物理ID号需要更新;在票上记录有票的物理ID号;提供了四种购票方式:诚信购票、证件购票、本人单购和押金购票;可根据业务规则选其中一种或多种作为实际购票方式;每种购票方式的购票规则和检票规则如下:
诚信购票,可购买规定数量的票;购票人需持有有效身份证件;购票时,需进行生物验证,验证购票人所持身份证件或提供的身份证件号码是否为本人的,通过验证方可购票;再检查该身份证件是否有效、该购票人是否有资格购票;记录购票人的身份证件信息;此种购票方式可额外使用优惠证件进行优惠购票;
证件购票,使用有效身份证件、优惠证件购票,每个购票证件可购规定数量的票,推荐每个身份证件限购一张票;购票时,不需进行生物验证,需记录购票证件的信息、类型和号码,如果是不可自动识别的购票证件还需记录购票证件的图像信息;
本人单购,每人限购一张票;购票时,需采集并记录生物特征信息;
押金购票,可购买规定数量的票;购票时,需交纳押金;
购票时需记录票的逻辑ID号和物理ID号、购票方式、购票人身份验证信息、购票人的生物特征信息;购票人的生物特征信息可作为后续服务的终极验证密码;
购票人还需提供标识码和密码,用于挂失、退票或改签票;特殊时期可要求标识码必须为身份证件号码、护照号码或联系电话,用于事后寻找票的使用人;证件购票和本人单购,票上需记录证件号码或名字或标识码;如果票的出票次数大于1次,则需在票上记录出票次数,以明确表示以前出的票作废;
对于系统中保存有相应信息的购票证件,当操作需要提供购票证件时,客户也可以提供购票证件号码,系统根据购票证件号码查找到购票证件记录后确认购票证件是否有效,如对于身份证件采用生物识别技术验证是否是客户本人的,对于优惠证件验证是否与对应身份证件是同一人的;
检票时,先读取票的物理ID号,然后查询票的记录,根据记录检查票是否合法,如果通过了检查,再根据该票的购票方式检查是否合法持有,规则如下:
诚信购票和押金购票,则不做进一步检查;
证件购票,则要求出示购票证件,并检查是否与购票时记录的一致;
本人单购,则检查持票人的生物特征信息与购票时记录的是否一致;如果检票时无法采集持票人的生物特征信息,则要求出示相关证明;
挂失时,如果所挂失的票没有对应的标识码,可添加标识码,已有标识码的,不可修改;允许修改密码;
持票人进行举报时,出示票,采集并记录生物信息,记录举报人的身份证件号码、联系方式、银行帐号或金融卡号,记录票的逻辑ID号或物理ID号;在核实举报属实后,给举报人以奖励,同时处罚对应的购票人,并将其列入黑名单,包括证件黑名单和生物特征信息黑名单;
对于押金购票,票超过使用期或已正常使用后,退还购票人。
优选的,票务中心[101]由应用服务器[106]、WEB服务器、电话票务服务器和数据库服务器以及网络设备构成;
其中应用服务器[106]为售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、WEB服务器和电话票务服务器提供业务处理服务和数据支持;
应用服务器[106]中有服务管理单元、控制单元、分配票单元、查询票务服务单元、查询订/购记录服务单元、查询信用记录服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、奖金领取服务单元、清理过期预订单元、清理超时锁单元、团购资格申请服务单元、团购客户自助管理服务单元、后台管理服务单元、黑名单管理单元、购票证件验证单元、购票证件验证信息同步单元、票状态管理单元、会话管理单元、电子支付子单元、系统数据单元;
服务管理单元为主程序单元,负责启动和管理其它单元;
控制单元负责接收客户端应用的服务请求,调用对应的服务单元,并将结果返回给服务请求方;客户端应用包括本票务系统中的售票机、数据同步服务器[18]、WEB服务器和电话票务服务器以及其它票务系统中票务中心的应用服务器[106];
分配票单元由定时器触发,或由查询票务服务单元、订票服务单元、购票服务单元、清理过期预订单元、退票服务单元、改签票服务单元调用,用于根据计划分配票及回收废弃票资源;
会话管理单元由服务管理单元或控制单元或其它服务单元调用,用于管理客户端应用与应用服务器[106]会话的状态;
查询票务服务单元用于为客户端应用提供票务查询服务;查询订/购记录服务单元用于为客户端应用提供订/购记录查询服务;查询信用记录服务单元用于为客户端应用提供信用记录查询服务;订票服务单元用于处理订票业务;购票服务单元用于处理购票业务;取票服务单元用于处理取票业务;挂失服务单元用于处理挂失业务;退票服务单元用于处理退票业务;举报服务单元用于处理举报业务;改签票服务单元用于处理改签票业务;
押金退还服务单元用于处理退还购票押金业务;
奖金领取服务单元用于处理客户领取举报奖金业务;
清理过期预订单元由定时器触发,用于清理超时未取的票,使其能被重新预订或购买;
清理超时锁单元由定时器触发,用于清理票上超时的锁,释放被未及时释放的票资源;
团购资格申请服务单元用于处理团购资格申请业务;团购客户自助管理服务单元用于团购客户管理自己的设置;后台管理服务单元用于管理系统资源、用户、业务规则;
黑名单管理单元用于处理黑名单管理业务;
购票证件验证单元用于处理购票证件验证业务,由查询票务服务单元、购票服务单元调用;
购票证件验证信息同步单元由定时器触发,用于连接身份证验证中心[3]和其它外部购票证件验证中心,并用其提供的数据更新本地的购票证件验证信息数据库;
票状态管理单元由查询票务服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、清理过期预订单元、清理超时锁单元调用,用于处理更新票的状态业务;
电子支付子单元,用于处理客户的电子支付,由订票服务单元、购票服务单元、取票服务单元、挂失服务单元、改签票服务单元、团购资格申请服务单元调用;
系统数据单元保存系统参数和业务规则;
电话票务服务器提供电话订、购票和电话查询服务,它接收客户的电话服务请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为语音形式返回给客户;
WEB服务器提供网上票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金,以及团购资格申请、团购客户自助管理和后台管理功能;它接收WEB请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为WEB应答,返回给用户;用户通过WEB浏览器可连接WEB服务器,进行相关操作;
数据库服务器中有票务信息数据库和购票证件验证信息数据库,为应用服务器[106]提供数据支持
所有服务单元在处理业务请求时,如果所请求的票不在本票务系统中,则根据配置参数调用相应票务系统的对应业务处理服务单元。
优选的,售票子系统[102]由1个或多个半自动售票机[17]、自动售票机[16]构成;半自动售票机[17]、自动售票机[16]直接通过通信网络[15]接入票务中心[101],或者将同一地域的半自动售票机[17]、自动售票机[16]连入局域网,再通过局域网连接通信网络[15]接入票务中心[101]。
优选的,售票子系统[103]由移动路由器[1]、半自动售票机[17]、自动售票机[16]构成;其中,半自动售票机[17]或自动售票机[16]至少有1台;无线路由器[1]通过通信网络[8]连接票务中心[101],半自动售票机[17]、自动售票机[16]连接在无线路由器[1]上。
优选的,检票子系统[104]由数据同步服务器[18]、通信网络[19]和检票机[14]构成;
数据同步服务器[18]中有票务信息数据库、数据同步单元、服务管理单元、控制单元、检票结果记录服务单元;票务信息数据库为票务中心[101]的数据库服务器中部分票务信息的本地镜像;服务管理单元启动和管理其它单元;控制单元负责接收检票机[14]的服务请求,调用对应相应服务单元处理请求,并返回处理结果;检票结果记录服务单元用于处理记录检票结果业务;数据同步单元,由定时器或数据更新事件触发,用于同步票务信息数据库和票务中心[101]的数据库服务器中的指定票务信息,可由票务信息数据库中的数据同步工具代替。
优选的,移动票务子系统[105]由数据同步服务器[18]、无线路由器[1]、无线局域网[13]、半自动售票机[17]和检票机[14]构成;数据同步服务器[18]和半自动售票机[17]通过无线路由器[1]接入通信网络[8],连入票务中心[101];检票机[14]通过无线局域网[13]连接数据同步服务器[18];也可以将无线路由器[1]和数据同步服务器[18]集成在一起。
优选的,半自动售票机[17]、自动售票机[16]由嵌入式计算机及其辅助设备、网络通信部件、小键盘、显示器、传送机、储票仓、废票仓、打印机、验票机、摄像头或数码相机、生物特征信息采集器、购票证件读卡器和金融卡读卡器构成;半自动售票机[17]的显示设备为双显示器,分别显示给客户和售票员;半自动售票机[17]还有标准I/O设备、购票证件图像输入设备;自动售票机[16]有触摸屏,用于人机交互;半自动售票机[17]由售票员操作;自动售票机[16]由客户操作。
优选的,半自动售票机[17]、自动售票机[16]中有操作系统、售票客户端软件[107]和购票证件验证信息数据库;操作系统提供售票客户端软件[107]的运行环境;售票客户端软件[107]以应用服务器[106]为服务端,提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能,以及自身的故障检测与报告功能;
售票客户端软件[107]有主程序单元、控制单元、用户界面单元、查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、团购单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、通信单元、会话管理单元、故障检测与报告单元,以及支付子单元、出票子单元、生物识别子单元、确定购票方式子单元、确定优惠子单元、获取生物特征子单元、系统数据单元和会话数据单元;
主程序单元为售票客户端软件[107]的入口,负责初始化,调用用户界面单元和控制单元;
用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;
控制单元根据用户操作事件调用查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、会话管理单元,并将操作结果返回给用户界面单元;
查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元分别用于处理相应的业务;它们调用通信单元与应用服务器[106]进行通信;
通信单元负责售票客户端软件[107]与票务中心[101]应用服务器[106]的通信;
会话管理单元,由后台线程执行,跟踪、管理当前会话的状态,监控用户操作是否超时,超时则清除会话记录,返回主界面;会话管理单元有结束操作子单元,允许用户显式调用,以结束会话,清除会话记录,返回主界面;
故障检测与报告单元用于检测和报告半自动售票机[17]、自动售票机[16]本身的故障;
支付子单元用于支付票款、手续费,由订票单元、购票单元、团购单元、取票单元调用;
出票子单元用于出票,由购票单元、团购单元、取票单元调用;
生物识别子单元用于识别购票证件或购票证件号码是否为客户本人所有,由订票单元、购票单元、团购单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元调用;
确定购票方式子单元用于确定购票方式,由购票单元、团购单元、取票单元调用;
确定优惠子单元用于确定购票的优惠方式,由购票单元、团购单元、取票单元调用;
获取生物特征子单元用于捕获客户的生物特征信息,可获取指定的多种生物特征信息,由查询订/购记录单元、退票单元、改签票单元、生物识别子单元、确定购票方式子单元调用;
系统数据单元用于保存初始化数据和业务规则;会话数据单元用于存放当前会话的临时数据;
购票证件验证信息数据库为票务中心[101]的数据库服务器的购票证件验证信息数据库的本地镜像。
优选的,如果所发售的票是车票,则查询票务单元分为“站-站票务查询”和“车次实时票务查询”两种;
“站-站票务查询”的查询参数有车次、出发站、到站、发车时间、购票数量及票的类型;
“车次实时票务查询”的查询参数为车次、出发站和发车时间;查询结果为一个自左向右上升的台阶状的车次余票实时信息表,横坐标从左向右标出本车次从始发站到终点站途经的所有停车站站名,表示到站;纵坐标从下向上,将从始发站到终点站途经的所有停车站站名依次标在对应的台阶上,表示出发站;每个单元格给出出发站到到站的车票总数和可售数量;如果查询参数中的出发站不是始发站,则在车次余票实时信息表中高亮显示以该站为出发站的行;
点击车次余票实时信息表中的单元格,则背景化其它行,高亮显示被点击单元格所在行,并将到站高亮显示在该行下方;突出显示所选单元格;还可以柱状图形式显示该行的每个单元格中的信息;点击空白处,恢复全表显示;
车次余票实时信息表中的信息定时自动更新。
优选的,查询订/购记录单元的工作流程为:
A1)提示选择查询方式;
A2)为用户提供以下查询方式,在用户选择后执行对应的流程:
A2.1)不可自动识别证件查询
A2.1.1)提示售票员检查身份证件,手工输入身份证件信息;
A2.1.2)接收售票员输入的身份证件信息;执行步骤A3);
A2.2)可自动识别证件查询
A2.2.1)循环检测身份证件,检测到了则执行步骤A2.2.2);超时则报错,并执行步骤A1);
A2.2.2)读取身份证件内的信息;验证是否合法,合法执行步骤A2.2.3),不合法报错,并执行步骤A2.2.1);
A2.2.3)检查身份证件中是否有生物特征信息,有则执行步骤A2.2.3.1),无则执行步骤A2.2.3.2);
A2.2.3.1)调用生物识别子单元;通过识别则执行步骤A3),未通过识别则报错,并执行步骤A2.2.3.2);
A2.2.3.2)提示用户输入密码;
A2.2.3.3)接收密码,并执行步骤A2.3);
A2.3)标识码或证件号码+生物特征信息查询
A2.3.1)同步执行步骤A2.3.1.1)和A2.3.1.2),二者都执行完后执行步骤A2.3.2);
A2.3.1.1)调用获取生物特征子单元;
A2.3.1.2)提示并接收用户输入标识码或证件号码;
A2.3.2)格式化步骤A2.3.1)获得的数据,执行步骤A3);
A2.4)标识码+密码查询
A2.4.1)提示输入标识码和密码;
A2.4.2)接收标识码和密码,执行步骤A3);
A3)根据步骤A2)获得的身份验证信息,编制订/购记录查询请求;
A4)调用通信单元,向应用服务器[106]发送订/购记录查询请求;
A5)接收并格式化显示应用服务器[106]返回的查询结果;
A6)结束查询订/购记录单元的本次调用;
上述步骤中的步骤A2.1)仅对半自动售票机[17]有效;自动售票机[16]则不提供该选项。
优选的,订票单元的工作流程为:
B1)检查用户上一操作是否为订票查询操作,不是则执行步骤B2),是则执行步骤B3);
B2)执行订票查询操作;
B3)将查询结果作为订票项,或者请用户从查询结果中选出订票项,将订票项添加到订票列表中;提示选择订票方式或修改订票参数、订票列表;提供证件订票和标识码+密码订票两种方式供用户选择;用户选择证件订票执行步骤B4);选择标识码+密码订票执行步骤B5);
B4)用户执行添加身份证件操作,执行以下步骤:
B4.1)提示出示或选择身份证件;循环检测身份证件,检测到身份证件执行步骤B4.2),超时执行步骤B4);用户从身份证件总列表中选择,并确定,则执行步骤B4.4);
B4.2)验证身份证件是否合法,不合法提示出错,并执行步骤B4.1),合法则执行步骤B4.3);
B4.3)将检测到的身份证件添加到身份证件总列表中;
B4.4)将检测到的或者从身份证件总列表中选择出的身份证件添加到当前订票身份证件列表;更新订票项的订票方式和身份证件列表;等待用户操作事件;
B5)接收用户输入的标识码和密码;将订票方式添加到当前订票项;等待用户操作事件;
B6)用户执行修改订票参数操作,则更新订票参数;等待用户操作事件;
B7)用户执行修改订票列表操作,则更新订票列表;等待用户操作事件;
B8)用户执行继续订票操作,则执行步骤B2);
B9)用户执行完成订票操作,则执行步骤B9.1);
B9.1)检查订票条件是否合法,不合法则执行步骤B9.2);合法则执行步骤B9.3);
B9.2)提示修改条件不合法的订票项;等待用户操作事件;
B9.3)检查是否已有标识码和密码;有则执行步骤B9.5);没有则提示输入标识码和密码,执行下一步;
B9.4)接收用户输入的标识码和密码;检查订票方式,证件订票可跳过本步骤;
B9.5)提示并接受用户输入的联系电话;根据业务规则确定是否需要支付预订款,需要则计算预订款,调用支付子单元;
B9.6)编制订票请求,调用通信单元,向应用服务器[106]发送订票请求;
B9.7)接收并格式化显示应用服务器[106]返回的订票结果;
B9.8)结束订票单元的本次调用。
优选的,购票单元的工作流程为:
C1)检查用户上一操作是否为票务查询操作,不是则执行步骤C2),是则执行步骤C3);
C2)调用查询票务单元;
C3)将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;调用确定购票方式子单元;更新购票项的购票方式;等待用户操作事件;
C4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;
C5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;
C6)用户执行继续购票操作,则执行步骤C2);
C7)用户执行完成购票操作,则检查购票条件是否满足,满足执行步骤C7.1);不满足则提示修改,等待用户操作事件;
C7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤C7.2);不输入则执行步骤C7.3);
C7.2)接收用户输入的标识码和密码;
C7.3)计算票款,调用支付子单元;
C7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;
C7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤C7.6);如果电子支付出错,则执行步骤C7.3);如果超时或出错超限,或其它错误,则执行步骤C8);
C7.6)调用出票子单元;
C8)结束购票单元的本次调用。
优选的,退票单元的工作流程为:
D1)提示选择凭票退票或电子退票;如果用户选择凭票退票则执行步骤D2);如果用户选择电子退票,则执行步骤D3);
D2)同步执行步骤D2.1)和步骤D2.2);步骤D2.1)和步骤D2.2)都执行完后,执行步骤D5);
D2.1)如果尚未进行身份验证也未获取身份验证信息,则提示用户选择身份验证方式,提供三种验证方式:用户选择生物识别执行步骤D2.1.1);选择生物特征信息验证执行步骤D2.1.2);选择标识码+密码验证执行步骤D2.1.3);
D2.1.1)调用生物识别子单元,未通过识别执行步骤D9);
D2.1.2)调用获取生物特征子单元,未捕获到执行步骤D9);
D2.1.3)提示用户输入标识码和密码;接收用户输入的标识码和密码;
D2.2)循环检测是否有票送入出票口,有则执行步骤D2.2.1),超时则执行步骤D1);
D2.2.1)识别送入的票,未通过识别则报错并执行步骤D2.2);通过识别则执行步骤D2.2.2);
D2.2.2)将识别出的票的物理ID号加入到退票列表中,更新退票列表;将票送入废票仓;提示用户继续送入要退的票或确定退票;
D2.2.3)循环检测是否有票送入出票口和用户确定退票操作事件,如果检测到有票送入,则执行步骤D2.2.1);如果检测到用户确定退票操作事件,则结束步骤D2.2);超时,则执行步骤D9);
D3)调用查询订/购记录单元;检查是否有可退的票,有则执行步骤D4);无则执行步骤D9);
D4)显示可退的票列表,提示用户选择要退的票;接收用户选择,更新退票列表;
D5)检查原购票支付方式是否为电子支付,是则执行步骤D7);否则执行步骤D6);
D6)提示用户确认退款方式,同步执行步骤D6.1)、D6.2)和D6.3);
D6.1)检测用户是否选择现金退款,是则执行步骤D7);
D6.2)循环检测是否有金融卡插入,有则检测是否合法,合法则读取卡内信息,然后执行步骤D7);不合法或读取不出正确信息,则提示出错,执行步骤D6);
D6.3)检测用户是否输入银行帐号或金融卡号,是则接收输入,执行步骤D7);
D7)编写退票请求,调用通信单元,向应用服务器[106]发送退票请求;
D8)接收并格式化显示应用服务器[106]返回的退票结果;如果超时或出错,则执行步骤D9);如果电子退款出错则执行D6);如果退票成功且为现金退款,则执行步骤D10);否则执行步骤D11);
D9)提示错误,结束退票单元的本次调用;
D10)吐出退还票款或显示退款金额;
D11)结束退票单元的本次调用。
优选的,团购单元的工作流程为:
E1)提示进行身份验证或输入团购验证信息;提供三种选择:生物特征信息验证、插入团购卡、输入团购卡号;同步执行步骤E1.1)、E1.2)和E1.3)
E1.1)调用生物识别子单元,通过识别则执行步骤E2),未通过则提示出错,并执行步骤E1);
E1.2)提示用户输入团购卡号和密码,接收用户输入,执行步骤E2);
E1.3)循环检测团购卡,检测到后验证是否合法,合法则执行步骤E2);否则执行步骤E1);
E2)将团购查询作为查询类型参数,调用查询票务单元;将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;
E3)调用确定购票方式子单元;更新并显示购票列表;更新购票项的购票方式;等待用户操作事件;
E4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;
E5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;
E6)用户执行继续购票操作,则执行步骤E2);
E7)用户执行完成购票操作,则执行步骤E7.1);
E7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤E7.2);不输入则执行步骤E7.3);
E7.2)接收用户输入的标识码和密码;
E7.3)计算票款;调用支付子单元;
E7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;
E7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤E7.6);如果电子支付出错,则执行步骤E7.3);如果超时或出错超限,或其它错误,则执行步骤E8);
E7.6)调用出票子单元;
E8)结束团购单元的本次调用。
优选的,挂失单元的工作流程为:
F1)调用查询订/购记录单元;检查查询结果中是否有可挂失的购票记录,如果无,则提示,然后结束挂失单元的本次调用;如果有,则显示可挂失的购票列表;
F2)提示选择要挂失的票;记录用户选择的票;
F3)提示用户选择挂失操作类型;提供两种类型,根据用户选择执行步骤F3.1)或F3.2);
F3.1)用户选择仅挂失;编写挂失请求;请求中包含挂失类型;执行步骤F4);
F3.2)用户选择挂失并重取票;计算取票费;执行步骤F3.2.1);
F3.2.1)调用支付子单元;
F3.2.2)编写挂失请求;请求中包含挂失类型及支付信息;执行步骤F4);
F4)调用通信单元,向应用服务器[106]发送挂失请求;
F5)接收并格式化显示应用服务器[106]返回的挂失结果;检查挂失结果,如果需要出票,执行步骤F6);否则执行步骤F7);
F6)调用出票子单元;
F7)结束挂失单元的本次调用。
优选的,取票单元的工作流程为:
G1)调用查询订/购记录单元;检查查询结果中是否有可取的票,如果无,则提示,然后结束取票单元的本次调用;如果有,则显示可取票列表;
G2)提示用户选择要取的票;接受用户选择;
G3)判断是否为重新取票,是则执行步骤G5);否则执行步骤G4);
G4)调用确定购票方式子单元;
G5)检查是否已足额付款,是则执行步骤G7);否则执行步骤G6);
G6)调用支付子单元;
G7)编制取票请求,调用通信单元,发送取票请求;
G8)接收并格式化显示应用服务器[106]返回的取票结果;检查取票结果,如果电子支付有误,执行步骤G6);其它错误执行步骤G10);取票成功,执行步骤G9);
G9)调用出票子单元;
G10)结束出票单元的本次调用。
优选的,举报单元的工作流程为:
H1)提示将票送入出票口;
H2)循环检测是否有票送入出票口;有则执行步骤H3);超时则报错,结束举报单元的本次调用;
H3)将票从出票口传送至验票机;
H4)命令验票机获取票的图像或获取票的物理ID号;验证是否合法,不合法则执行步骤H9);合法则执行下一步;
H5)提示输入联系电话和密码;接收用户输入的联系电话和密码;
H6)提示输入银行帐号或金融卡号,或插入金融卡;同步执行步骤H6.1)、H6.2)、H6.3);
H6.1)接收用户输入的银行帐号或金融卡号,执行步骤H7);
H6.2)循环检测金融卡,检测到后验证是否合法,合法则读卡并执行步骤H7);不合法则提示错误,执行步骤H6);超时执行步骤H9);
H6.3)提示用户选择自行领取奖励接收用户选择,执行H7);
H7)编制取票请求,调用通信单元,向应用服务器[106]发送举报请求;
H8)接收并格式化显示应用服务器[106]返回的举报结果;执行步骤H10);
H9)提示错误;
H10)将票送至废票仓,结束举报单元的本次调用。
优选的,出票子单元的工作流程为:
I1)将空白票出从储票仓中取出,送至打印机;
I2)打印票;
I3)将票传送至验票机;
I4)命令验票机获取票的图像或获取票的物理ID号;获取后验证是否合法,不合法则执行步骤I9);合法则执行下一步;
I5)将票传送到出票口;计数器加1;记录已成功打出的票;
I6)检查是否打印完,打印完,执行步骤I7);未打印完,执行步骤I1);
I7)编制成功出票异步消息,调用通信单元,向应用服务器[106]发送成功出票异步消息;
I8)将票送出出票口;执行步骤I10);
I9)将票送至废票仓;检测出错是否超限,超限则提示错误,检查是否有已成功打出的票,有则执行步骤I7),无则结束出票子单元的本次调用;如果出错未超限,执行步骤I1)
I10)提示取票;结束出票子单元的本次调用。
优选的,生物识别子单元的工作流程为:
J1)检查身份证件总列表是否为空,为空则执行步骤J2);不为空则执行步骤J3);
J2)同步执行步骤J5)、J6)、J7);
J3)同步执行步骤J4)、J5)、J6)、J7);
J4)显示身份证件总列表;提示用户从身份证件总列表中选择身份证件;接收用户选择;取出用户选择的身份证件对应的生物特征信息,执行步骤J9);
J5)提示用户出示身份证件;循环检测身份证件,检测到则验证合法性,不合法则提示错误,执行步骤J1);合法则读取身份证件中的信息,执行步骤J8);
J6)提示售票员检查身份证件,执行步骤J6.1);
J6.1)提示输入身份证件信息,接收输入;提示输入身份证件图像;捕获身份证件图像;执行步骤J6.2);
J6.2)从身份证件图像中获取客户照片作为身份证件中的生物特征信息;执行步骤J8);
J7)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤J12);如果找到了,则读取该身份证件的信息;执行步骤J8);
J8)将该身份证件添加到身份证件总列表中,执行步骤J9);
J9)调用获取生物特征子单元;
J10)验证身份证件中的生物特征信息和步骤J9)获取的生物特征信息是否匹配;匹配则执行步骤J12);不匹配则执行步骤J11);
J11)检查出错次数是否超限,超限则执行步骤J12);未超限则执行步骤J9);
J12)返回识别结果和获取的生物特征信息;
步骤J7)中根据用户输入的身份证件号码查找身份证件,可从本地的购票证件验证信息数据库中查找,也可以远程调用应用服务器[106]的购票证件验证单元远程查找。
优选的,确定购票方式子单元的工作流程为:
K1)提示用户选择购票方式,提供四种方式供选择;用户选择证件购票执行步骤K2),选择诚信购票执行步骤K3),选择个人单购或押金购票执行步骤K4);
K2)检查是否已获取客户的生物特征信息,未获取则执行步骤K2.1);已获取则执行步骤K2.2);
K2.1)调用获取生物特征子单元,执行步骤K2.2);
K2.2)同步执行步骤K2.2.1)、K2.2.2)、K2.2.3)、K2.2.4);
K2.2.1)提示用户输入身份证件信息;接收身份证件信息输入,并获取身份证件图像;执行步骤K2.3);
K2.2.2)提示用户从身份证件总列表中选择购票证件;接收用户选择,更新当前购票身份证件列表;等待用户操作事件;
K2.2.3)提示用户出示身份证件;循环检测身份证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤K2.2);如果合法,则执行步骤K2.3);
K2.2.4)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤K2.2);如果找到了,则读取该身份证件的信息;执行步骤K2.3);
K2.3)记录步骤K2.2)获取的身份证件;提示用户选择是否有优惠证件,有则执行步骤K2.4);无则执行步骤K2.5);
K2.4)调用确定优惠子单元;将获得的优惠证件列表添加到当前的身份证件上;
K2.5)更新当前购票证件列表和身份证件总列表;等待用户操作事件;
K2.6)用户执行删除身份证件操作,则提示用户在当前身份证件列表中选择要删除的身份证件;接收用户选择;更新当前购票身份证件列表;等待用户操作事件;
K2.7)用户执行结束身份证件输入操作,则为当前购票身份证件列表中每个身份证件分配票数,提示用户确认或修改;如果用户选择确定,执行K2.9);用户选择修改,执行步骤K2.8);
K2.8)提示用户修改分配给身份证件的票数;接收用户修改,显示修改结果;执行步骤K2.9);
K2.9)检查是否满足购票条件,满足则执行步骤K7);不满足则提示修改,等待用户操作事件;
K2.10)用户选择添加身份证件操作,则执行步骤K2.2);
K2.11)用户选择修改分配票数操作,则执行步骤K2.8);
K3)检查是否已通过生物识别,已通过则执行步骤K5);尚未通过则调用生物识别子单元;如果通过识别,执行步骤K6);未通过识别,执行步骤K5);
K4)检查是否已获取了客户生物特征信息,已获取执行步骤K6);未获取则调用获取生物特征子单元,如果获取生物特征信息成功,执行步骤K6);不成功,执行步骤K5);
K5)报错,执行步骤K1);
K6)提示用户选择是否有优惠证件,用户选择有则调用确定优惠子单元,执行步骤K7);选择无则执行步骤K7);
K7)显示购票方式;
K8)结束确定购票方式子单元的本次调用。
优选的,确定优惠子单元的工作流程为:
L1)用户选择添加优惠证件操作,则提示出示或输入优惠证件;
L2)同步执行步骤L2.1)、L2.2)、L2.3);
L2.1)提示售票员检查优惠证件,并输入优惠证件信息;接收优惠证件信息输入,并获取优惠证件图像;执行步骤L3);
L2.2)提示用户出示优惠证件;循环检测优惠证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤L2);如果合法,执行步骤L3);
L2.3)提示用户输入优惠证件号码;接受用户输入;根据用户输入的优惠证件号码查找优惠证件;如果没找到,执行步骤L4);如果找到了,则读取该优惠证件的信息;执行步骤L3);
L3)验证优惠证件的有效性;如果有效,则记录该优惠证件,更新优惠证件列表;
L4)显示添加操作结果;等待用户操作事件;
L5)用户选择删除优惠证件操作,则提示用户从优惠证件列表中选择要删除的优惠证件;接收用户选择;删除所选优惠证件,更新证件列表;等待用户操作事件;
L6)用户选择结束优惠证件输入操作,则计算优惠价格,记录并显示优惠结果;
L7)结束确定优惠子单元的本次调用。
优选的,检票机[14]具有系统配置、检票、查询票、数据同步功能;有半自动检票机[20]、全自动检票机[21]和介于二者之间的增强型半自动检票机三种;半自动检票机[20]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备、无线通信模块构成;全自动检票机[21]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备、购票证件读卡器、购票证件图像采集设备、生物特征信息采集器、摄像头或数码相机、检票标记识别器、检票标记器、通信模块构成。
优选的,检票机[14]有操作系统、检票客户端软件和票务信息数据库;检票客户端软件有主程序单元、控制单元、用户界面单元、配置系统单元、半自动检票单元或全自动检票单元、查询票单元、通信单元、数据同步单元、系统数据单元;
主程序单元为检票客户端软件的入口,负责初始化,调用用户界面单元和控制单元;
用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;
控制单元根据用户操作事件调用配置系统单元、半自动检票单元、全自动检票单元、查询票单元、通信单元、数据同步单元;
配置系统单元用于设置系统参数;半自动检票单元和全自动检票单元用于检验票;查询票用于根据用户输入的票的物理ID号或逻辑ID号查询票的信息;通信单元用于检票机[14]与数据同步服务器[18]间的通信;数据同步单元用于在检票机[14]与数据同步服务器[18]间同步检票机[14]需要的票务信息,可由用户操作事件触发,也可根据系统配置由定时器、半自动检票单元、全自动检票单元、查询票单元触发,可由票务信息数据库中的数据同步工具代替。
优选的,全自动检票单元的工作流程为:
M1)提示出示票;同步执行步骤M2)、M3);
M2)循环检测普通票;检测到后执行步骤M2.1);
M2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M2.2);
M2.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M2.3);
M2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤M2.9);否则执行步骤M2.4);
M2.4)提示进行生物验证;调用获取生物特征子单元,执行步骤M2.5);
M2.5)验证持票人的生物特征信息与购票证件中或购票时采集的生物特征信息是否一致,如果购票时记录的是购票证件的图像,则拍摄持票人的面部图像,然后根据从购票证件图像中提取出照片进行人脸识别;检查购票方式;根据业务规则决定选择“一致”或“一致且无优惠证件”作为当前通过检票条件,满足当前通过检票条件则执行步骤M2.9);不满足且是个人单购,则报错,执行步骤M4);否则执行步骤M2.6);
M2.6)提示出示购票证件;
M2.7)循环检测购票证件,检测到后读取证件内信息或获取证件图像;
M2.8)验证检测到的购票证件和购票时记录的购票证件是否相同;相同则执行步骤M2.9);不同则报错,执行步骤M4);
M2.9)检查票上标记和记录中的是否一致;一致则在票上做本次检票标记,执行步骤M4);不一致则报错,执行步骤M4);
M3)循环检测电子票;检测到后执行步骤M3.1);
M3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M3.2);
M3.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M3.3);
M3.3)在电子票中记录本次检票;执行步骤M4);
M4)记录并显示本次检票结果;
M5)结束确定全自动检票单元的本次调用。
优选的,半自动检票单元的工作流程为:
N1)提示出示票;同步执行步骤N2)、N3);
N2)循环检测普通票;检测到后执行步骤N2.1);
N2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N2.2);
N2.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N2.3);
N2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤N2.6);否则执行步骤N2.4);
N2.4)显示购票证件或购票人照片或购票证件上的照片,以及本票的检票记录;提示检票员核对;
N2.5)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);
N2.6)显示本票的检票记录,提示检票员核对;
N2.7)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);
N3)循环检测电子票;检测到后执行步骤N3.1);
N3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N3.2);
N3.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N3.3);
N3.3)在电子票中记录本次检票;执行步骤N4);
N4)记录并显示本次检票结果;
N5)结束确定半自动检票单元的本次调用。
优选的,押金退还服务单元用于处理退还购票押金;有押金自动退还子服务单元和押金被动退还子服务单元;其中,押金自动退还子服务单元由定时器触发调用,在票过期或正常使用后规定的时间调用,检查票是否自然过期或已正常使用,是则将以押金购票方式购买的票的押金,退还到原购票的银行帐号或金融卡号中,或者是购票时指定的银行帐号或金融卡号中;押金被动退还子服务单元在应用服务器[106]接到领取押金服务请求时由控制单元调用,为客户端应用提供退还押金业务服务。
优选的,查询票务服务单元的工作流程:
O1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤O2);如果是新会话,则执行步骤O3);
O2)取出会话记录,检查当前查询票务请求是否为重复查询,如果是则执行O2.1),不是则执行O3);
O2.1)将上次返回给调用者的结果作为本次调用的结果返回给调用者;执行步骤O5);
O3)检查当前查询票务请求的查询参数所查询的票数,如果票数大于规定的值,则执行步骤O3.1);否则,执行步骤O4);
O3.1)从当前查询票务请求的查询参数中取出客户的身份验证信息;对客户的身份验证信息进行验证,并根据团购规则,确定是否允许该客户进行团购查询;允许则执行步骤O4);不允许则执行步骤O3.2);
O3.2)返回无团购资格错误,执行步骤O5);
O4)根据当前查询票务请求的查询参数查询符合条件的可出售的票;将查询结果按票的宿主和类型的组合进行分组,每一组为一个查询结果项;初始化返回值集合RESULT,RESULT为MAP类型,票的宿主类型组合为KEY,该组合的可购票数为VALUE;执行步骤O4.1);
O4.1)检查查询结果中是否还有尚未处理的查询结果项,有则取出一个尚未处理的查询结果项作为当前查询结果项,执行步骤O4.2);无则更新会话记录,记录本次查询票务请求,及其查询票务结果,查询结果中保存有本次查询票务处理加锁的票或票的主键;将RESULT作为返回值,执行步骤O5);
O4.2)检查当前查询结果项,如果当前查询结果项为空,则在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主-类型组合,VALUE=0,执行步骤O4.1);如果当前查询结果项不为空,则执行步骤O4.3);
O4.3)将查询结果项中的票按指定规则排序;从查询结果项中取出前NQUERY张票,NQUERY为查询票务请求中取出的查询票数,或最大可查询数,如果查询结果项中的票数小于NQUERY,则全部取出;将取出的每张票都加锁,并记录加锁时间;执行步骤O4.4);
O4.4)在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主-类型组合,VALUE=上一步操作加锁的票数;执行步骤O4.1);
O5)结束查询票务服务单元的本次调用。
优选的,购票服务单元的工作流程:
P1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤P3);如果是新会话,则编制错误信息作为返回结果,执行步骤P12);
P2)检查是否已进行过购票资格验证或需要进行购票资格验证,如果已验证或不需要验证则执行步骤P3);否则执行步骤P2.1);
P2.1)从当前购票请求中取出身份验证信息,调用黑名单管理单元和购票证件验证单元进行身份验证,如果通过验证则执行步骤P3),否则返回身份验证未通过错误,执行步骤P12);
P3)取出会话记录,从当前购票请求中取出购票列表,从购票列表中取出一个购票项作为当前购票项;
P4)查找是否有与当前购票项对应的查询结果项;如果有则执行步骤P5);否则编制错误信息作为返回结果,执行步骤P12);
推荐使用以下判定购票请求和查询结果项是否对应的方法和规则之一进行判定:
1.当前购票项中有查询结果项ID,与处理查询票务服务单元步骤O4.2)更新会话记录操作记录的查询结果项ID一致,则二者对应;
2.当前购票项中购票参数中的票的宿主类型组合与处理查询票务服务单元步骤O4.1)更新会话记录操作记录的查询结果项中的票的宿主类型组合完全相同,且查询结果项中的票数大于或等于购票参数中的票数,则二者对应;
P5)计算当前购票项中购票参数中票数减去对应查询结果项中的票数的差NDIF,如果NDIF>0,则执行步骤P8);否则,执行下一步;
P6)将对应查询结果项中的票都取出,将其解锁;从中取出NBUY张票,NBUY等于购票参数中的票数,将这些票的状态改为已出售;生成票的物理ID号;更新票的属性;
P7)清除会话记录中当前购票项对应的查询结果项;
P8)检查购票列表中是否还有未处理的购票项,有则取出一个作为当前购票项,执行步骤P4);无则执行步骤P9);
P9)检查购票请求中的支付参数,如果为现金支付,则执行步骤P11);否则,计算票款,以购票请求中客户的银行账号或金融卡号、密码和从系统数据单元中获取的售票账号以及票款为参数,调用电子支付子单元;检查电子支付是否成功,成功则执行步骤P11),不成功则执行步骤P10);
P10)撤销步骤P6)和P7)所做的操作,编制错误信息作为返回结果,执行步骤P12);
P11)将所有在步骤P6)中状态改为已出售的票作为购票请求结果返回给调用者;
P12)结束购票服务单元的本次调用。
优选的,为了使所购票尽量不受并发访问影响且所购票序号或座次尽可能连续,查询票务服务单元的步骤O4.1)更新会话记录时,记录本次查询票务请求的查询票务结果时不保存本次加锁的票或票的主键;购票服务单元的步骤P6)可由以下操作代替:
P6A)以当前购票项购买参数中票的宿主、类型为参数查询已加锁的票;检查查询结果,如果查询结果中的票数少于NBUY,则执行步骤P8);否则,执行步骤P6A.1);
P6A.1)将查询结果中的票按指定规则排序;取出前NBUY张票,解锁,并将其状态都改为已出售;
P6A.2)检查NDIF,如果等于0,则执行步骤P7);如果小于0,则从P6A.1)的已排序的查询结果中取出最后的NDIF张票,将其都解锁;执行步骤P7)。
本发明还提供了一种关联查询票和购票活动的方法,用于保证客户能不受其他客户对系统的并发访问的影响,购买到查询结果中显示的票数,且尽可能地保证一次购得的同类票的号码或座次是连续的,具体描述如下:
处理查询票请求时,在查询到有所需的可出售票后,将其加锁,并记录加锁时间;在处理购票请求时,先找对应的查询票务处理结果;如果没有对应的查询票务处理结果,或购买请求中的票数大于对应查询票务处理时加锁的票数NCLOCK,则报错;查询满足购票请求条件的已加锁的可出售票,按指定规则排序;取出前NBUY张票,作为本次出售的票,NBUY为购票数;如果NBUY小于NCLOCK,则再取出后NCLOCK-NBUY张票,解锁;
为了避免异常造成票的死锁,提供一个专门的清理超时锁单元,定时调用,清理加锁时间超时的票。
本发明还提供了一种编制票的物理ID号的方法,具体描述如下:
票的物理ID号=票的逻辑ID号+出票序号+随机码+校验码
其中,校验码为可选项
票的逻辑ID号为可唯一标识逻辑票的字符串,例如:
1.车票可以由以下信息项构成逻辑ID号:
票的逻辑ID号=车次+起始站+到站+车厢号+座号+日期+备用项;
2.演出、比赛门票可由以下信息项构成逻辑ID号:
票的逻辑ID号=场地+日期+场次+座号+日期+备用项;
3.城市轨道交通票由以下信息项构成逻辑ID号:
票的逻辑ID号=起始站+到站+购票时间+备用项。
(三)有益效果
采用本发明提供的票务系统可最大限度地打击票贩子,保护购票人利益,在票损坏或丢失时可重新出票,以避免购票人的损失。本发明提供的挂失、举报和奖励功能可破坏票贩子和二手票购买者之间脆弱的信任关系,进一步增加了倒票难度。本发明提供的票务系统可与现有普通票务系统混合使用,必要时还可降级为普通票务系统使用,可以实现无缝升级。
另外,在特殊时期,如公共卫生事件初发期,可要求使用本发明提供的票务系统购票时所提供的标识码必须为身份证号码、护照号码或联系电话,这样可以使用购票时记录的购票证件号码或标识码在事后迅速找到购票人,进而确定票的使用人。
附图说明
图1是实施例的系统拓扑图;
图2是实施例的半自动售票机的查询订/购记录活动图;
图3是实施例的自动售票机的查询订/购记录活动图;
图4是实施例的订票活动图;
图5是实施例的出票活动图;
图6是实施例的购票活动图;
图7是实施例的挂失活动图;
图8是实施例的半自动检票活动图;
图9是实施例的全自动检票活动图;
图10是实施例的举报活动图;
图11是实施例的票务查询活动图;
图12是实施例的取票活动图;
图13是实施例的确定购票方式活动图;
图14是实施例的确定优惠活动图;
图15是实施例的人脸捕获活动图;
图16是实施例的生物识别活动图;
图17是实施例的团购活动图;
图18是实施例的退票活动图;
图19是实施例的支付活动图;
图20是实施例的车次余票实时信息表的示例图;
图21是实施例的车次余票实时信息表的突显关注单元示例图;
具体实施方式
以下实施例用于说明本发明,但不用来限制本发明的保护范围。
本实施例提供一种票务系统,具有防止倒票功能,并可以跟踪票的使用情况,特殊时期可在事后迅速寻找到票的使用人。
实施例
本实施例附图中标号所代表的对象如下:
票务中心[101]、售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、应用服务器[106]、售票客户端软件[107]、通信网络[2][8][13][15][19]、身份证验证中心[3]、PC或笔记本[4]、移动智能设备[9][10]、检票机[14]、自动售票机[16]、半自动售票机[17]、数据同步服务器[18]、半自动检票机[20]、全自动检票机[21]、客户[301]、售票员[302]、金融卡读卡器[303]、传送机[304]、验票机[305]、打印机[306]、检票员[307]。
本实施例采用了一套可防止倒票,特殊时期可迅速寻找购票人的票务管理方法,包括售票、检票、挂失、举报和处罚、奖励等环节。具体方法如下:
每张票有两个ID号,一个为逻辑ID号,用于标识购买活动,或者逻辑票;一个为物理ID号,用于标识每张物理票;在重新出票时,逻辑ID号不变,物理ID号需要更新(例如,客户买了一张火车票,丢失后挂失,重新打印一张,则新旧两张票的逻辑ID号一样,而物理ID号不同);在票上记录有票的物理ID号,可使用条形码标识或磁介质或电子方式;提供了四种购票方式:诚信购票、证件购票、本人单购和押金购票;可根据业务规则选其中一种或多种作为实际购票方式;每种购票方式的购票规则和检票规则如下:
诚信购票,可购买规定数量的票;购票人需持有有效身份证件;购票时,需进行生物验证,如人脸识别、指纹识别、虹膜识别、骨骼识别等,验证购票人所持身份证件或提供的身份证件号码是否为本人的,通过验证方可购票;再检查该身份证件是否有效、该购票人是否有资格购票,如,是否列入了黑名单;是否为通缉犯;记录购票人的身份证件信息;此种购票方式可额外使用优惠证件进行优惠购票;
证件购票,使用有效身份证件、优惠证件购票,每个购票证件可购规定数量的票,推荐每个身份证件限购一张票;购票时,不需进行生物验证,需记录证件的信息、类型和号码,如果是不可自动识别的证件还需记录证件的图像信息;
本人单购,每人限购一张票;购票时,需采集并记录生物特征信息;
押金购票,可购买规定数量的票;购票时,需交纳押金;
购票时需记录票的逻辑ID号和物理ID号、购票方式、购票人身份验证信息、购票人的生物特征信息;购票人的生物特征信息可作为后续服务的终极验证密码;
购票人还需提供标识码和密码(对于前两种方式是可选的,对于后两种是必需的),用于挂失、退票或改签票;特殊时期可要求标识码必须为身份证件号码、护照号码或联系电话,用于事后寻找票的使用人;证件购票和本人单购,票上需记录证件号码或名字或标识码;如果票的出票次数大于1次,则需在票上记录出票次数,以明确表示以前出的票作废;
对于系统中保存有相应信息的购票证件,当操作需要提供购票证件时,客户也可以提供购票证件号码,系统根据购票证件号码查找到购票证件记录后确认购票证件是否有效,如对于身份证件采用生物识别技术验证是否是客户本人的,对于优惠证件验证是否与对应身份证件是同一人的;
检票时,先读取票的物理ID号,然后查询票的记录,根据记录检查票是否合法(检查记录中票的状态、票上的标记是否已记录一致),如果通过了检查,再根据该票的购票方式检查是否合法持有,规则如下:
诚信购票和押金购票,则不做进一步检查;对于使用了优惠证件的诚信购票,根据业务规则决定是否在检票时检查优惠证件;对于优惠证件是否能单独使用,也由业务规则规定;
证件购票,则要求出示购票证件,并检查是否与购票时记录的一致;
本人单购,则检查持票人的生物特征信息与购票时记录的是否一致;如果检票时无法采集持票人的生物特征信息,则要求出示相关证明;如使用人脸识别技术作为生物识别技术,检票时持票人面部有绷带时,要求出示受伤证明;
挂失时,如果所挂失的票没有对应的标识码,可添加标识码,已有标识码的,不可修改;允许修改密码;
持票人进行举报时,出示票,采集并记录生物信息,记录举报人的身份证件号码、联系方式、银行帐号或金融卡号,记录票的逻辑ID号或物理ID号;在核实举报属实后,给举报人以奖励,同时处罚对应的购票人,并将其列入黑名单,包括证件黑名单和生物特征信息黑名单;
对于押金购票,票超过使用期或已正常使用后,退还购票人。
上述票务管理方法还有一个重要的特点,即,它是现有票务系统的升级版本,可很好地兼容现有票务系统,必要时也可降级为现有的普通票务系统使用。例如,采用零押金售票,且标识码和密码可以为空。
一种票务系统,由票务中心[101]、售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、通信网络[2][8][13][15][19]构成,系统拓扑图如图1所示。
移动票务子系统[105]和售票子系统[103]有0个或多个;票务中心[101]和其他子系统均有1个或多个。
票务中心[101]和售票子系统[102]通过通信网络[15]通信,通信网络[15]为专用网或互联网;票务中心[101]和售票子系统[103]通过通信网络[8]通信,通信网络[8]为无线通信网,例如手机通信网、卫星通信网、无线局域网;售票子系统[102][103]和票务中心[101]构成C/S系统;售票子系统[102][103]提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能;票务中心[101]为售票子系统[102][103]提供相应的后台服务。
票务中心[101]还提供WEB模式的业务服务,客户可以使用PC或笔记本[4]通过互联网[2],或者使用移动智能设备[9][10]通过通信网络[8]连接票务中心[101]的WEB服务器,在网上进行票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金操作;另外,还提供团购资格申请、团购客户自助管理、后台管理功能。
票务中心[101]和检票子系统[104]通过通信网络[15]通信;检票子系统[104]用于检查票是否合法,以及是否合法持有,并更新票的状态、记录检票结果;票务中心[101]为检票子系统[104]提供数据支持,即为检票子系统[104]提供票务信息,并根据检票子系统[104]提供的检票信息更新票的状态和记录检票结果。
移动票务子系统[105]提供售票子系统[103]的所有功能,以及检票功能;它与票务中心[101]通过通信网络[8]通信;票务中心[101]为其提供后台服务和数据支持。
票务中心[101]由应用服务器[106]、WEB服务器、电话票务服务器和数据库服务器以及网络设备构成。其中,应用服务器[106]为售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、WEB服务器和电话票务服务器提供业务处理服务和数据支持。
应用服务器[106]中有服务管理单元、控制单元、分配票单元、查询票务服务单元、查询订/购记录服务单元、查询信用记录服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、奖金领取服务单元、清理过期预订单元、清理超时锁单元、团购资格申请服务单元、团购客户自助管理服务单元、后台管理服务单元、黑名单管理单元、购票证件验证单元、购票证件验证信息同步单元、票状态管理单元、会话管理单元、电子支付子单元、系统数据单元。
服务管理单元为主程序单元,负责启动和管理其它单元。
控制单元负责接收客户端应用(包括本票务系统中的售票机、数据同步服务器[18]、WEB服务器和电话票务服务器以及其它票务系统中票务中心的应用服务器[106])的服务请求,调用对应的服务单元,并将结果返回给服务请求方。
分配票单元由定时器触发,或由查询票务服务单元、订票服务单元、购票服务单元、清理过期预订单元、退票服务单元、改签票服务单元调用,用于根据计划分配票及回收废弃票资源。
会话管理单元由服务管理单元或控制单元或其它服务单元调用,用于管理客户端应用与应用服务器[106]会话的状态。
查询票务服务单元用于为客户端应用提供票务查询服务;查询订/购记录服务单元用于为客户端应用提供订/购记录查询服务;查询信用记录服务单元用于为客户端应用提供信用记录查询服务;订票服务单元用于处理订票业务;购票服务单元用于处理购票业务;取票服务单元用于处理取票业务;挂失服务单元用于处理挂失业务;退票服务单元用于处理退票业务;举报服务单元用于处理举报业务;改签票服务单元用于处理改签票业务。
押金退还服务单元用于处理退还购票押金业务;奖金领取服务单元用于处理客户领取举报奖金业务;清理过期预订单元由定时器触发,用于清理超时未取的票,使其能被重新预订或购买;清理超时锁单元由定时器触发,用于清理票上超时的锁,释放被未及时释放的票资源。
团购资格申请服务单元用于处理团购资格申请业务;团购客户自助管理服务单元用于团购客户管理自己的设置;后台管理服务单元用于管理系统资源、用户、业务规则;黑名单管理单元用于处理黑名单管理业务;购票证件验证单元用于处理购票证件验证业务,由查询票务服务单元、购票服务单元调用。
购票证件验证信息同步单元由定时器触发,用于连接身份证验证中心[3]和其它外部购票证件验证中心,并用其提供的数据更新本地的购票证件验证信息数据库。
票状态管理单元由查询票务服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、清理过期预订单元、清理超时锁单元调用,用于处理更新票的状态业务。
电子支付子单元,用于处理客户的电子支付,由订票服务单元、购票服务单元、取票服务单元、挂失服务单元、改签票服务单元、团购资格申请服务单元调用。
系统数据单元保存系统参数和业务规则。
电话票务服务器提供电话订、购票和电话查询服务,它接收客户的电话服务请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为语音形式返回给客户。
WEB服务器提供网上票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金,以及团购资格申请、团购客户自助管理和后台管理功能;它接收WEB请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为WEB应答,返回给用户;用户通过WEB浏览器可连接WEB服务器,进行相关操作;
数据库服务器中有票务信息数据库和购票证件验证信息数据库,为应用服务器[106]提供数据支持。
所有服务单元在处理业务请求时,如果所请求的票不在本票务系统中,则根据配置参数调用相应票务系统的对应业务处理服务单元。
售票子系统[102]由1个或多个半自动售票机[17]、自动售票机[16]构成;半自动售票机[17]、自动售票机[16]直接通过通信网络[15]接入票务中心[101],或者将同一地域的半自动售票机[17]、自动售票机[16]连入局域网,再通过局域网连接通信网络[15]接入票务中心[101]。
售票子系统[103]由移动路由器[1]、半自动售票机[17]、自动售票机[16]构成;其中,半自动售票机[17]或自动售票机[16]至少有1台;无线路由器[1]通过通信网络[8]连接票务中心[101],半自动售票机[17]、自动售票机[16]连接在无线路由器[1]上。该子系统有装载在汽车上,成为移动售票车。
检票子系统[104]由数据同步服务器[18]、通信网络[19]和检票机[14]构成。数据同步服务器[18]中有票务信息数据库、数据同步单元、服务管理单元、控制单元、检票结果记录服务单元;票务信息数据库为票务中心[101]的数据库服务器中部分票务信息的本地镜像;服务管理单元启动和管理其它单元;控制单元负责接收检票机[14]的服务请求,调用对应相应服务单元处理请求,并返回处理结果;检票结果记录服务单元用于处理记录检票结果业务;数据同步单元,由定时器或数据更新事件触发,用于同步票务信息数据库和票务中心[101]的数据库服务器中的指定票务信息,可由票务信息数据库中的数据同步工具代替。对于小型票务系统,可不设数据同步服务器[18],应用服务器[106]直接为检票机[14]提供数据支持和业务服务。
移动票务子系统[105]由数据同步服务器[18]、无线路由器[1]、无线局域网[13]、半自动售票机[17]和检票机[14]构成;数据同步服务器[18]和半自动售票机[17]通过无线路由器[1]接入通信网络[8],连入票务中心[101];检票机[14]通过无线局域网[13]连接数据同步服务器[18];也可以将无线路由器[1]和数据同步服务器[18]集成在一起。该子系统实为一个移动售票系统和移动检票系统的结合。对于火车票的票务系统,该系统可以作为火车的车载票务子系统。
半自动售票机[17]、自动售票机[16]由嵌入式计算机及其辅助设备、网络通信部件、小键盘、显示器、传送机、储票仓、废票仓、打印机、验票机、摄像头或数码相机(在本实施例中用作生物特征信息采集器)、购票证件读卡器(在本实施例中为身份证读卡器和优惠证件读卡器)和金融卡读卡器构成;半自动售票机[17]的显示设备为双显示器,分别显示给客户和售票员;半自动售票机[17]还有标准I/O设备、购票证件图像输入设备(摄像头或数码相机或扫描仪);自动售票机[16]有触摸屏,用于人机交互;半自动售票机[17]由售票员操作;自动售票机[16]由客户操作。
半自动售票机[17]、自动售票机[16]中有操作系统、售票客户端软件[107]和购票证件验证信息数据库(可选组件);操作系统提供售票客户端软件[107]的运行环境;售票客户端软件[107]以应用服务器[106]为服务端,提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能,以及自身的故障检测与报告功能。
售票客户端软件[107]有主程序单元、控制单元、用户界面单元、查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、团购单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、通信单元、会话管理单元、故障检测与报告单元,以及支付子单元、出票子单元、生物识别子单元、确定购票方式子单元、确定优惠子单元、获取生物特征子单元、系统数据单元和会话数据单元。
主程序单元为售票客户端软件[107]的入口,负责初始化,调用用户界面单元和控制单元;
用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;
控制单元根据用户操作事件调用查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、会话管理单元,并将操作结果返回给用户界面单元。
查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元分别用于处理相应的业务;它们调用通信单元与应用服务器[106]进行通信。
通信单元负责售票客户端软件[107]与票务中心[101]应用服务器[106]的通信。
会话管理单元,由后台线程执行,跟踪、管理当前会话的状态,监控用户操作是否超时,超时则清除会话记录,返回主界面。会话管理单元有结束操作子单元,允许用户显式调用,以结束会话,清除会话记录,返回主界面。
故障检测与报告单元用于检测和报告半自动售票机[17]、自动售票机[16]本身的故障,在本机上向用户报告,并向应用服务器[106]报告。
支付子单元用于支付票款、手续费,由订票单元、购票单元、团购单元、取票单元调用;
出票子单元用于出票,由购票单元、团购单元、取票单元调用;生物识别子单元用于识别购票证件或购票证件号码是否为客户本人所有,由订票单元、购票单元、团购单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元调用;确定购票方式子单元用于确定购票方式,由购票单元、团购单元、取票单元调用;确定优惠子单元用于确定购票的优惠方式,由购票单元、团购单元、取票单元调用;获取生物特征子单元用于捕获客户的生物特征信息,可获取指定的多种生物特征信息,由查询订/购记录单元、退票单元、改签票单元、生物识别子单元、确定购票方式子单元调用,在本实施例中采用的是人脸识别技术采集的是面部图像。
系统数据单元用于保存初始化数据和业务规则;会话数据单元用于存放当前会话的临时数据。
购票证件验证信息数据库为票务中心[101]的数据库服务器的购票证件验证信息数据库的本地镜像。
如果所发售的票是车票,则查询票务单元分为“站-站票务查询”和“车次实时票务查询”两种。
“站-站票务查询”的查询参数有车次、出发站、到站、发车时间、购票数量及票的类型,如火车票的硬座、硬卧、软卧等。
“车次实时票务查询”的查询参数为车次、出发站和发车时间;查询结果为一个自左向右上升的台阶状的车次余票实时信息表;横坐标从左向右标出本车次从始发站到终点站途经的所有停车站站名,表示到站;纵坐标从下向上,将从始发站到终点站途经的所有停车站站名依次标在对应的台阶上,表示出发站。每个单元格给出出发站到到站的车票总数和可售数量;如果查询参数中的出发站不是始发站,则在车次余票实时信息表中高亮显示以该站为出发站的行。图20是实施例的车次余票实时信息表的示例图,其中有7个车站。
点击车次余票实时信息表中的单元格,则背景化其它行,高亮显示被点击单元格所在行,并将到站高亮显示在该行下方;突出显示所选单元格;还可以柱状图形式显示该行的每个单元格中的信息;点击空白处,恢复全表显示。图21是图20对应的车次余票实时信息表的突显关注单元示例图。
车次余票实时信息表中的信息定时自动更新。
查询订/购记录单元的工作流程为:
A1)提示选择查询方式;
A2)为用户提供以下查询方式,在用户选择后执行对应的流程:
A2.1)不可自动识别证件查询
A2.1.1)提示售票员检查身份证件,手工输入身份证件信息;
A2.1.2)接收售票员输入的身份证件信息;执行步骤A3);
A2.2)可自动识别证件查询
A2.2.1)循环检测身份证件,检测到了则执行步骤A2.2.2);超时则报错,并执行步骤A1);
A2.2.2)读取身份证件内的信息;验证是否合法,合法执行步骤A2.2.3),不合法报错,并执行步骤A2.2.1);
A2.2.3)检查身份证件中是否有生物特征信息,有则执行步骤A2.2.3.1),无则执行步骤A2.2.3.2);
A2.2.3.1)调用生物识别子单元;通过识别则执行步骤A3),未通过识别则报错,并执行步骤A2.2.3.2);
A2.2.3.2)提示用户输入密码;
A2.2.3.3)接收密码,并执行步骤A2.3);
A2.3)标识码或证件号码+生物特征信息查询
A2.3.1)同步执行步骤A2.3.1.1)和A2.3.1.2),二者都执行完后执行步骤A2.3.2);
A2.3.1.1)调用获取生物特征子单元;
A2.3.1.2)提示并接收用户输入标识码或证件号码;
A2.3.2)格式化步骤A2.3.1)获得的数据,执行步骤A3);
A2.4)标识码+密码查询
A2.4.1)提示输入标识码和密码;
A2.4.2)接收标识码和密码,执行步骤A3);
A3)根据步骤A2)获得的身份验证信息,编制订/购记录查询请求;
A4)调用通信单元,向应用服务器[106]发送订/购记录查询请求;
A5)接收并格式化显示应用服务器[106]返回的查询结果;
A6)结束查询订/购记录单元的本次调用;
上述步骤中的步骤A2.1)仅对半自动售票机[17]有效;自动售票机[16]则不提供该选项。
订票单元的工作流程为:
B1)检查用户上一操作是否为订票查询操作,不是则执行步骤B2),是则执行步骤B3);
B2)执行订票查询操作;
B3)将查询结果作为订票项,或者请用户从查询结果中选出订票项,将订票项添加到订票列表中;提示选择订票方式或修改订票参数、订票列表;提供证件订票和标识码+密码订票两种方式供用户选择;用户选择证件订票执行步骤B4);选择标识码+密码订票执行步骤B5);
B4)用户执行添加身份证件操作,执行以下步骤:
B4.1)提示出示或选择身份证件;循环检测身份证件,检测到身份证件执行步骤B4.2),超时执行步骤B4);用户从身份证件总列表中选择,并确定,则执行步骤B4.4);
B4.2)验证身份证件是否合法,不合法提示出错,并执行步骤B4.1),合法则执行步骤B4.3);
B4.3)将检测到的身份证件添加到身份证件总列表中;
B4.4)将检测到的或者从身份证件总列表中选择出的身份证件添加到当前订票身份证件列表;更新订票项的订票方式和身份证件列表;等待用户操作事件;
B5)接收用户输入的标识码和密码;将订票方式添加到当前订票项;等待用户操作事件;
B6)用户执行修改订票参数操作,则更新订票参数;等待用户操作事件;
B7)用户执行修改订票列表操作,则更新订票列表;等待用户操作事件;
B8)用户执行继续订票操作,则执行步骤B2);
B9)用户执行完成订票操作,则执行步骤B9.1);
B9.1)检查订票条件是否合法,不合法则执行步骤B9.2);合法则执行步骤B9.3);
B9.2)提示修改条件不合法的订票项;等待用户操作事件;
B9.3)检查是否已有标识码和密码;有则执行步骤B9.5);没有则提示输入标识码和密码,执行下一步;
B9.4)接收用户输入的标识码和密码;检查订票方式,证件订票可跳过本步骤;
B9.5)提示并接受用户输入的联系电话;根据业务规则确定是否需要支付预订款,需要则计算预订款,调用支付子单元;
B9.6)编制订票请求,调用通信单元,向应用服务器[106]发送订票请求;
B9.7)接收并格式化显示应用服务器[106]返回的订票结果;
B9.8)结束订票单元的本次调用。
购票单元的工作流程为:
C1)检查用户上一操作是否为票务查询操作,不是则执行步骤C2),是则执行步骤C3);
C2)调用查询票务单元;
C3)将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;调用确定购票方式子单元;更新购票项的购票方式;等待用户操作事件;
C4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;
C5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;
C6)用户执行继续购票操作,则执行步骤C2);
C7)用户执行完成购票操作,则检查购票条件是否满足,满足执行步骤C7.1);不满足则提示修改,等待用户操作事件;
C7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤C7.2);不输入则执行步骤C7.3);
C7.2)接收用户输入的标识码和密码;
C7.3)计算票款,调用支付子单元;
C7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;
C7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤C7.6);如果电子支付出错,则执行步骤C7.3);如果超时或出错超限,或其它错误,则执行步骤C8);
C7.6)调用出票子单元;
C8)结束购票单元的本次调用。
退票单元的工作流程为:
D1)提示选择凭票退票或电子退票;如果用户选择凭票退票则执行步骤D2);如果用户选择电子退票,则执行步骤D3);
D2)同步执行步骤D2.1)和步骤D2.2);步骤D2.1)和步骤D2.2)都执行完后,执行步骤D5);
D2.1)如果尚未进行身份验证也未获取身份验证信息,则提示用户选择身份验证方式,提供三种验证方式:用户选择生物识别执行步骤D2.1.1);选择生物特征信息验证执行步骤D2.1.2);选择标识码+密码验证执行步骤D2.1.3);
D2.1.1)调用生物识别子单元,未通过识别执行步骤D9);
D2.1.2)调用获取生物特征子单元,未捕获到执行步骤D9);
D2.1.3)提示用户输入标识码和密码;接收用户输入的标识码和密码;
D2.2)循环检测是否有票送入出票口,有则执行步骤D2.2.1),超时则执行步骤D1);
D2.2.1)识别送入的票,未通过识别则报错并执行步骤D2.2);通过识别则执行步骤D2.2.2);
D2.2.2)将识别出的票的物理ID号加入到退票列表中,更新退票列表;将票送入废票仓;提示用户继续送入要退的票或确定退票;
D2.2.3)循环检测是否有票送入出票口和用户确定退票操作事件,如果检测到有票送入,则执行步骤D2.2.1);如果检测到用户确定退票操作事件,则结束步骤D2.2);超时,则执行步骤D9);
D3)调用查询订/购记录单元;检查是否有可退的票,有则执行步骤D4);无则执行步骤D9);
D4)显示可退的票列表,提示用户选择要退的票;接收用户选择,更新退票列表;
D5)检查原购票支付方式是否为电子支付,是则执行步骤D7);否则执行步骤D6);
D6)提示用户确认退款方式,同步执行步骤D6.1)、D6.2)和D6.3);
D6.1)检测用户是否选择现金退款,是则执行步骤D7);
D6.2)循环检测是否有金融卡插入,有则检测是否合法,合法则读取卡内信息,然后执行步骤D7);不合法或读取不出正确信息,则提示出错,执行步骤D6);
D6.3)检测用户是否输入银行帐号或金融卡号,是则接收输入,执行步骤D7);
D7)编写退票请求,调用通信单元,向应用服务器[106]发送退票请求;
D8)接收并格式化显示应用服务器[106]返回的退票结果;如果超时或出错,则执行步骤D9);如果电子退款出错则执行D6);如果退票成功且为现金退款,则执行步骤D10);否则执行步骤D11);
D9)提示错误,结束退票单元的本次调用;
D10)吐出退还票款或显示退款金额;
D11)结束退票单元的本次调用。
团购单元的工作流程为:
E1)提示进行身份验证或输入团购验证信息;提供三种选择:生物特征信息验证、插入团购卡、输入团购卡号;同步执行步骤E1.1)、E1.2)和E1.3)
E1.1)调用生物识别子单元,通过识别则执行步骤E2),未通过则提示出错,并执行步骤E1);
E1.2)提示用户输入团购卡号和密码,接收用户输入,执行步骤E2);
E1.3)循环检测团购卡,检测到后验证是否合法,合法则执行步骤E2);否则执行步骤E1);
E2)将团购查询作为查询类型参数,调用查询票务单元;将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;
E3)调用确定购票方式子单元;更新并显示购票列表;更新购票项的购票方式;等待用户操作事件;
E4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;
E5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;
E6)用户执行继续购票操作,则执行步骤E2);
E7)用户执行完成购票操作,则执行步骤E7.1);
E7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤E7.2);不输入则执行步骤E7.3);
E7.2)接收用户输入的标识码和密码;
E7.3)计算票款;调用支付子单元;
E7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;
E7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤E7.6);如果电子支付出错,则执行步骤E7.3);如果超时或出错超限,或其它错误,则执行步骤E8);
E7.6)调用出票子单元;
E8)结束团购单元的本次调用。
挂失单元的工作流程为:
F1)调用查询订/购记录单元;检查查询结果中是否有可挂失的购票记录,如果无,则提示,然后结束挂失单元的本次调用;如果有,则显示可挂失的购票列表;
F2)提示选择要挂失的票;记录用户选择的票;
F3)提示用户选择挂失操作类型;根据用户选择执行步骤F3.1)或F3.2);
F3.1)用户选择仅挂失;编写挂失请求;请求中包含挂失类型;执行步骤F4);
F3.2)用户选择挂失并重取票;计算取票费;执行步骤F3.2.1);
F3.2.1)调用支付子单元;
F3.2.2)编写挂失请求;请求中包含挂失类型及支付信息;执行步骤F4);
F4)调用通信单元,向应用服务器[106]发送挂失请求;
F5)接收并格式化显示应用服务器[106]返回的挂失结果;检查挂失结果,如果需要出票,执行步骤F6);否则执行步骤F7);
F6)调用出票子单元;
F7)结束挂失单元的本次调用。
取票单元的工作流程为:
G1)调用查询订/购记录单元;检查查询结果中是否有可取的票,如果无,则提示,然后结束取票单元的本次调用;如果有,则显示可取票列表;
G2)提示用户选择要取的票;接受用户选择;
G3)判断是否为重新取票,是则执行步骤G5);否则执行步骤G4);
G4)调用确定购票方式子单元;
G5)检查是否已足额付款,是则执行步骤G7);否则执行步骤G6);
G6)调用支付子单元;
G7)编制取票请求,调用通信单元,向应用服务器[106]发送取票请求;
G8)接收并格式化显示应用服务器[106]返回的取票结果;检查取票结果,如果电子支付有误,执行步骤G6);其它错误执行步骤G10);取票成功,执行步骤G9);
G9)调用出票子单元;
G10)结束出票单元的本次调用。
举报单元的工作流程为:
H1)提示将票送入出票口;
H2)循环检测是否有票送入出票口;有则执行步骤H3);超时则报错,结束举报单元的本次调用;
H3)将票从出票口传送至验票机;
H4)命令验票机获取票的图像或获取票的物理ID号(如,扫描票的条码);验证(分析票的物理ID号的编码)是否合法,不合法则执行步骤H9);合法则执行下一步;
H5)提示输入联系电话和密码;接收用户输入的联系电话和密码;
H6)提示输入银行帐号或金融卡号,或插入金融卡;同步执行步骤H6.1)、H6.2)、H6.3);
H6.1)接收用户输入的银行帐号或金融卡号,执行步骤H7);
H6.2)循环检测金融卡,检测到后验证是否合法,合法则读卡并执行步骤H7);不合法则提示错误,执行步骤H6);超时执行步骤H9);
H6.3)提示用户选择自行领取奖励接收用户选择,执行H7);
H7)编制取票请求,调用通信单元,向应用服务器[106]发送举报请求;
H8)接收并格式化显示应用服务器[106]返回的举报结果;执行步骤H10);
H9)提示错误;
H10)将票送至废票仓,结束举报单元的本次调用。
出票子单元的工作流程为:
I1)将空白票出从储票仓中取出,送至打印机;
I2)打印票;
I3)将票传送至验票机;
I4)命令验票机获取票的图像或获取票的物理ID号(如,扫描票的条码);获取后验证(检验打印的信息是否有误,是否能正确识别)是否合法,不合法则执行步骤I9);合法则执行下一步;
I5)将票传送到出票口;计数器加1;记录已成功打出的票;
I6)检查是否打印完,打印完,执行步骤I7);未打印完,执行步骤I1);
I7)编制成功出票异步消息,调用通信单元,向应用服务器[106]发送成功出票异步消息;
I8)将票送出出票口;执行步骤I10);
I9)将票送至废票仓;检测出错是否超限,超限则提示错误,检查是否有已成功打出的票,有则执行步骤I7),无则结束出票子单元的本次调用;如果出错未超限,执行步骤I1)
I10)提示取票;结束出票子单元的本次调用。
生物识别子单元的工作流程为:
J1)检查身份证件总列表是否为空,为空则执行步骤J2);不为空则执行步骤J3);
J2)同步执行步骤J5)、J6)、J7);
J3)同步执行步骤J4)、J5)、J6)、J7);
J4)显示身份证件总列表;提示用户从身份证件总列表中选择身份证件;接收用户选择;取出用户选择的身份证件对应的生物特征信息,执行步骤J9);
J5)提示用户出示身份证件;循环检测身份证件,检测到则验证合法性,不合法则提示错误,执行步骤J1);合法则读取身份证件中的信息,执行步骤J8);
J6)提示售票员检查身份证件,执行步骤J6.1);
J6.1)提示输入身份证件信息,接收输入;提示输入身份证件图像;捕获身份证件图像;执行步骤J6.2);
J6.2)从身份证件图像中获取客户照片作为身份证件中的生物特征信息;执行步骤J8);
J7)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤J12);如果找到了,则读取该身份证件的信息;执行步骤J8);
J8)将该身份证件添加到身份证件总列表中,执行步骤J9);
J9)调用获取生物特征子单元;
J10)验证身份证件中的生物特征信息和步骤J9)获取的生物特征信息是否匹配;匹配则执行步骤J12);不匹配则执行步骤J11);
J11)检查出错次数是否超限,超限则执行步骤J12);未超限则执行步骤J9);
J12)返回识别结果和获取的生物特征信息;
步骤J7)中根据用户输入的身份证件号码查找身份证件,可从本地的购票证件验证信息数据库中查找,也可以远程调用应用服务器[106]的购票证件验证单元远程查找。
确定购票方式子单元的工作流程为:
K1)提示用户选择购票方式,提供四种方式供选择;用户选择证件购票执行步骤K2),选择诚信购票执行步骤K3),选择个人单购或押金购票执行步骤K4);
K2)检查是否已获取客户的生物特征信息,未获取则执行步骤K2.1);已获取则执行步骤K2.2);
K2.1)调用获取生物特征子单元,执行步骤K2.2);
K2.2)同步执行步骤K2.2.1)、K2.2.2)、K2.2.3)、K2.2.4);
K2.2.1)提示用户输入身份证件信息;接收身份证件信息输入,并获取身份证件图像;执行步骤K2.3);
K2.2.2)提示用户从身份证件总列表中选择购票证件;接收用户选择,更新当前购票身份证件列表;等待用户操作事件;
K2.2.3)提示用户出示身份证件;循环检测身份证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤K2.2);如果合法,则执行步骤K2.3);
K2.2.4)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤K2.2);如果找到了,则读取该身份证件的信息;执行步骤K2.3);
K2.3)记录步骤K2.2)获取的身份证件;提示用户选择是否有优惠证件,有则执行步骤K2.4);无则执行步骤K2.5);
K2.4)调用确定优惠子单元;将获得的优惠证件列表添加到当前的身份证件上;
K2.5)更新当前购票证件列表和身份证件总列表;等待用户操作事件;
K2.6)用户执行删除身份证件操作,则提示用户在当前身份证件列表中选择要删除的身份证件;接收用户选择;更新当前购票身份证件列表;等待用户操作事件;
K2.7)用户执行结束身份证件输入操作,则为当前购票身份证件列表中每个身份证件分配票数,提示用户确认或修改;如果用户选择确定,执行K2.9);用户选择修改,执行步骤K2.8);
K2.8)提示用户修改分配给身份证件的票数;接收用户修改,显示修改结果;执行步骤K2.9);
K2.9)检查是否满足购票条件,满足则执行步骤K7);不满足则提示修改,等待用户操作事件;
K2.10)用户选择添加身份证件操作,则执行步骤K2.2);
K2.11)用户选择修改分配票数操作,则执行步骤K2.8);
K3)检查是否已通过生物识别,已通过则执行步骤K5);尚未通过则调用生物识别子单元;如果通过识别,执行步骤K6);未通过识别,执行步骤K5);
K4)检查是否已获取了客户生物特征信息,已获取执行步骤K6);未获取则调用获取生物特征子单元,如果获取生物特征信息成功,执行步骤K6);不成功,执行步骤K5);
K5)报错,执行步骤K1);
K6)提示用户选择是否有优惠证件,用户选择有则调用确定优惠子单元,执行步骤K7);选择无则执行步骤K7);
K7)显示购票方式;
K8)结束确定购票方式子单元的本次调用。
确定优惠子单元的工作流程为:
L1)用户选择添加优惠证件操作,则提示出示或输入优惠证件;
L2)同步执行步骤L2.1)、L2.2)、L2.3);
L2.1)提示售票员检查优惠证件,并输入优惠证件信息;接收优惠证件信息输入,并获取优惠证件图像;执行步骤L3);
L2.2)提示用户出示优惠证件;循环检测优惠证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤L2);如果合法,执行步骤L3);
L2.3)提示用户输入优惠证件号码;接受用户输入;根据用户输入的优惠证件号码查找优惠证件;如果没找到,执行步骤L4);如果找到了,则读取该优惠证件的信息;执行步骤L3);
L3)验证优惠证件的有效性;如果有效,则记录该优惠证件,更新优惠证件列表;
L4)显示添加操作结果;等待用户操作事件;
L5)用户选择删除优惠证件操作,则提示用户从优惠证件列表中选择要删除的优惠证件;接收用户选择;删除所选优惠证件,更新证件列表;等待用户操作事件;
L6)用户选择结束优惠证件输入操作,则计算优惠价格,记录并显示优惠结果;
L7)结束确定优惠子单元的本次调用。
检票机[14]具有系统配置、检票、查询票、数据同步功能;有半自动检票机[20]、全自动检票机[21]和介于二者之间的增强型半自动检票机三种;半自动检票机[20]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备(本实施例为条码扫描仪)、无线通信模块构成;全自动检票机[21]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备(如条码扫描仪)、购票证件读卡器、购票证件图像采集设备(如摄像头或数码相机或扫描仪)、生物特征信息采集器(如摄像头或数码相机)、检票标记识别器(如摄像头或数码相机或扫描仪)、检票标记器(如打孔机或剪票机)、通信模块构成。
检票机[14]有操作系统、检票客户端软件和票务信息数据库;检票客户端软件有主程序单元、控制单元、用户界面单元、配置系统单元、半自动检票单元或全自动检票单元、查询票单元、通信单元、数据同步单元、系统数据单元;
主程序单元为检票客户端软件的入口,负责初始化,调用用户界面单元和控制单元;
用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;
控制单元根据用户操作事件调用配置系统单元、半自动检票单元、全自动检票单元、查询票单元、通信单元、数据同步单元;
配置系统单元用于设置系统参数,包括网络配置、待检票的属性(如车次),检票方式(全自动或半自动)等;半自动检票单元和全自动检票单元用于检验票;查询票用于根据用户输入的票的物理ID号或逻辑ID号查询票的信息;通信单元用于检票机[14]与数据同步服务器[18]间的通信;数据同步单元用于在检票机[14]与数据同步服务器[18]间同步检票机[14]需要的票务信息,可由用户操作事件触发,也可根据系统配置由定时器、半自动检票单元、全自动检票单元、查询票单元触发,可由票务信息数据库中的数据同步工具代替。
全自动检票单元的工作流程为:
M1)提示出示票;同步执行步骤M2)、M3);
M2)循环检测普通票;检测到后执行步骤M2.1);
M2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M2.2);
M2.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M2.3);
M2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤M2.9);否则执行步骤M2.4);
M2.4)提示进行生物验证;调用获取生物特征子单元,执行步骤M2.5);
M2.5)验证持票人的生物特征信息与购票证件中或购票时采集的生物特征信息是否一致,如果购票时记录的是购票证件的图像,则拍摄持票人的面部图像,然后根据从购票证件图像中提取出照片进行人脸识别;检查购票方式;根据业务规则决定选择“一致”或“一致且无优惠证件”作为当前通过检票条件,满足当前通过检票条件则执行步骤M2.9);不满足且是个人单购,则报错,执行步骤M4);否则执行步骤M2.6);
M2.6)提示出示购票证件;
M2.7)循环检测购票证件,检测到后读取证件内信息或获取证件图像;
M2.8)验证检测到的购票证件和购票时记录的购票证件是否相同;相同则执行步骤M2.9);不同则报错,执行步骤M4);
M2.9)检查票上标记和记录中的是否一致;一致则在票上做本次检票标记,执行步骤M4);不一致则报错,执行步骤M4);
M3)循环检测电子票;检测到后执行步骤M3.1);
M3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M3.2);
M3.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M3.3);
M3.3)在电子票中记录本次检票;执行步骤M4);
M4)记录并显示本次检票结果;
M5)结束确定全自动检票单元的本次调用。
半自动检票单元的工作流程为:
N1)提示出示票;同步执行步骤N2)、N3);
N2)循环检测普通票;检测到后执行步骤N2.1);
N2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N2.2);
N2.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N2.3);
N2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤N2.6);否则执行步骤N2.4);
N2.4)显示购票证件或购票人照片或购票证件上的照片,以及本票的检票记录;提示检票员核对;
N2.5)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);
N2.6)显示本票的检票记录,提示检票员核对;
N2.7)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);
N3)循环检测电子票;检测到后执行步骤N3.1);
N3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N3.2);
N3.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N3.3);
N3.3)在电子票中记录本次检票;执行步骤N4);
N4)记录并显示本次检票结果;
N5)结束确定半自动检票单元的本次调用。
半自动检票单元和全自动检票单元的工作流程中查找票记录和记录检票结果操作既可以是对本地的票务信息数据库操作,也可以是对数据同步服务器[18]的票务信息数据库操作,优先选项由系统配置决定。
应用服务器[106]的押金退还服务单元用于处理退还购票押金;有押金自动退还子服务单元和押金被动退还子服务单元;其中,押金自动退还子服务单元由定时器触发调用,在票过期或正常使用后规定的时间调用,检查票是否自然过期或已正常使用,是则将以押金购票方式购买的票的押金,退还到原购票的银行帐号或金融卡号中,或者是购票时指定的银行帐号或金融卡号中;押金被动退还子服务单元在应用服务器[106]接到领取押金服务请求时由控制单元调用,为客户端应用提供退还押金业务服务。
应用服务器[106]的查询票务服务单元的工作流程:
O1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤O2);如果是新会话,则执行步骤O3);
O2)取出会话记录,检查当前查询票务请求是否为重复查询,如果是则执行O2.1),不是则执行O3);
O2.1)将上次返回给调用者的结果作为本次调用的结果返回给调用者;执行步骤O5);
O3)检查当前查询票务请求的查询参数所查询的票数,如果票数大于规定的值,则执行步骤O3.1);否则,执行步骤O4);
O3.1)从当前查询票务请求的查询参数中取出客户的身份验证信息;对客户的身份验证信息进行验证,并根据团购规则,确定是否允许该客户进行团购查询;允许则执行步骤O4);不允许则执行步骤O3.2);
O3.2)返回无团购资格错误,执行步骤O5);
O4)根据当前查询票务请求的查询参数查询符合条件的可出售的票;将查询结果按票的宿主(例如,车次、场次等)和类型(例如,火车票的硬座、软座、硬卧、软卧)的组合进行分组,每一组为一个查询结果项;初始化返回值集合RESULT,RESULT为MAP类型,票的宿主类型组合为KEY,该组合的可购票数为VALUE;执行步骤O4.1);
O4.1)检查查询结果中是否还有尚未处理的查询结果项,有则取出一个尚未处理的查询结果项作为当前查询结果项,执行步骤O4.2);无则更新会话记录,记录本次查询票务请求,及其查询票务结果,查询结果中保存有本次查询票务处理加锁的票或票的主键;将RESULT作为返回值,执行步骤O5);
O4.2)检查当前查询结果项,如果当前查询结果项为空,则在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主类型组合,VALUE=0,执行步骤O4.1);如果当前查询结果项不为空,则执行步骤O4.3);
O4.3)将查询结果项中的票按指定规则(如,票的序号或逻辑ID号或座次)排序;从查询结果项中取出前NQUERY张票,NQUERY为查询票务请求中取出的查询票数,或最大可查询数,如果查询结果项中的票数小于NQUERY,则全部取出;将取出的每张票都加锁,并记录加锁时间;执行步骤O4.4);
O4.4)在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主类型组合,VALUE=上一步操作加锁的票数;执行步骤O4.1);
O5)结束查询票务服务单元的本次调用。
购票服务单元的工作流程:
P1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤P3);如果是新会话,则编制错误信息作为返回结果,执行步骤P12);
P2)检查是否已进行过购票资格验证或需要进行购票资格验证(个人单购和押金购票不需要验证),如果已验证或不需要验证则执行步骤P3);否则执行步骤P2.1);
P2.1)从当前购票请求中取出身份验证信息,调用黑名单管理单元和购票证件验证单元进行身份验证,如果通过验证则执行步骤P3),否则返回身份验证未通过错误,执行步骤P12);
P3)取出会话记录,从当前购票请求中取出购票列表,从购票列表中取出一个购票项作为当前购票项;
P4)查找是否有与当前购票项对应的查询结果项;如果有则执行步骤P5);否则编制错误信息作为返回结果,执行步骤P12);
推荐使用以下判定购票请求和查询结果项是否对应的方法和规则之一进行判定:
1.当前购票项中有查询结果项ID,与处理查询票务服务单元步骤O4.2)更新会话记录操作记录的查询结果项ID一致,则二者对应;
2.当前购票项中购票参数中的票的宿主类型组合与处理查询票务服务单元步骤O4.1)更新会话记录操作记录的查询结果项中的票的宿主类型组合完全相同,且查询结果项中的票数大于或等于购票参数中的票数,则二者对应;
P5)计算当前购票项中购票参数中票数减去对应查询结果项中的票数的差NDIF,如果NDIF>0,则执行步骤P8);否则,执行下一步;
P6)将对应查询结果项中的票都取出,将其解锁;从中取出NBUY张票,NBUY等于购票参数中的票数,将这些票的状态改为已出售;生成票的物理ID号;更新票的属性(如,票的物理ID号、购票方式、购票证件信息、购票的标识码、密码等);
P7)清除会话记录中当前购票项对应的查询结果项;
P8)检查购票列表中是否还有未处理的购票项,有则取出一个作为当前购票项,执行步骤P4);无则执行步骤P9);
P9)检查购票请求中的支付参数,如果为现金支付,则执行步骤P11);否则,计算票款,以购票请求中客户的银行账号或金融卡号、密码和从系统数据单元中获取的售票账号以及票款为参数,调用电子支付子单元;检查电子支付是否成功,成功则执行步骤P11),不成功则执行步骤P10);
P10)撤销步骤P6)和P7)所做的操作,编制错误信息作为返回结果,执行步骤P12);
P11)将所有在步骤P6)中状态改为已出售的票作为购票请求结果返回给调用者;
P12)结束购票服务单元的本次调用。
为了使所购票尽量不受并发访问影响且所购票序号或座次尽可能连续,查询票务服务单元的步骤O4.1)更新会话记录时,记录本次查询票务请求的查询票务结果时不保存本次加锁的票或票的主键;购票服务单元的步骤P6)可由以下操作代替:
P6A)以当前购票项购买参数中票的宿主、类型为参数查询已加锁的票;检查查询结果,如果查询结果中的票数少于NBUY,则执行步骤P8);否则,执行步骤P6A.1);
P6A.1)将查询结果中的票按指定规则(如,票的序号或逻辑ID号或座次)排序;取出前NBUY张票,解锁,并将其状态都改为已出售;
P6A.2)检查NDIF,如果等于0,则执行步骤P7);如果小于0,则从P6A.1)的已排序的查询结果中取出最后的NDIF张票,将其都解锁;执行步骤P7)。
本实施例使用了一种关联查询票和购票活动的方法,用于保证客户能不受其他客户对系统的并发访问的影响,购买到查询结果中显示的票数,且尽可能地保证一次购得的同类票的号码或座次是连续的,具体方法如下:
处理查询票请求时,在查询到有所需的可出售票后,将其加锁,并记录加锁时间;在处理购票请求时,先找对应的查询票务处理结果;如果没有对应的查询票务处理结果,或购买请求中的票数大于对应查询票务处理时加锁的票数NCLOCK,则报错;查询满足购票请求条件的已加锁的可出售票,按指定规则(如,票的序号或逻辑ID号或座次)排序;取出前NBUY张票,作为本次出售的票,NBUY为购票数;如果NBUY小于NCLOCK,则再取出后NCLOCK-NBUY张票,解锁;
为了避免异常造成票的死锁,提供一个专门的清理超时锁单元,定时调用,清理加锁时间超时的票。
本实施例采用了一种编制票的物理ID号的方法,具体方法如下:
票的物理ID号=票的逻辑ID号+出票序号+随机码+校验码
其中,校验码为可选项;
出票序号,即本逻辑票打印出来的次数,重新出一次票则出票序号+1;
票的逻辑ID号为可唯一标识逻辑票的字符串,例如:
1.车票可以由以下信息项构成逻辑ID号:
票的逻辑ID号=车次+起始站+到站+车厢号+座号+日期+备用项;
2.演出、比赛门票可由以下信息项构成逻辑ID号:
票的逻辑ID号=场地+日期+场次+座号+日期+备用项
3.城市轨道交通票由以下信息项构成逻辑ID号:
票的逻辑ID号=起始站+到站+购票时间+备用项。
虽然本发明是具体结合个别优选实施例示出和说明的,但熟悉该技术领域的人员可以理解,其中无论在形式上还是在细节上都可以作出各种改变,这并不背离本发明的精神实质和专利保护范围。
Claims (32)
- 【权利要求1】一种防倒票的票务系统,由票务中心[101]、售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、通信网络[2][8][13][15][19]构成;其特征在于:移动票务子系统[105]和售票子系统[103]有0个或多个;票务中心[101]和其他子系统均有1个或多个;票务中心[101]和售票子系统[102]通过通信网络[15]通信,通信网络[15]为专用网或互联网;票务中心[101]和售票子系统[103]通过通信网络[8]通信,通信网络[8]为无线通信网;售票子系统[102][103]和票务中心[101]构成C/S系统;售票子系统[102][103]提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能;票务中心[101]为售票子系统[102][103]提供相应的后台服务;票务中心[101]还提供WEB模式的业务服务,客户可以使用PC或笔记本[4]通过互联网[2],或者使用移动智能设备[9][10]通过通信网络[8]连接票务中心[101]的WEB服务器,在网上进行票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金;另外,还提供团购资格申请、团购客户自助管理、后台管理功能;票务中心[101]和检票子系统[104]通过通信网络[15]通信;检票子系统[104]用于检查票是否合法,以及是否合法持有,并更新票的状态、记录检票结果;票务中心[101]为检票子系统[104]提供数据支持,即为检票子系统[104]提供票务信息,并根据检票子系统[104]提供的检票信息更新票的状态和记录检票结果;移动票务子系统[105]提供售票子系统[103]的所有功能,以及检票功能;它与票务中心[101]通过通信网络[8]通信;票务中心[101]为其提供后台服务和数据支持。
- 【权利要求2】本发明提供了一套用于防止倒票、跟踪购票人的售票、检票、挂失、举报和处罚、奖励方法,其特征在于:每张票有两个ID号,一个为逻辑ID号,用于标识购买活动,或者逻辑票;一个为物理ID号,用于标识每张物理票;在重新出票时,逻辑ID号不变,物理ID号需要更新;在票上记录有票的物理ID号;提供了四种购票方式:诚信购票、证件购票、本人单购和押金购票;可根据业务规则选其中一种或多种作为实际购票方式;每种购票方式的购票规则和检票规则如下:诚信购票,可购买规定数量的票;购票人需持有有效身份证件;购票时,需进行生物验证,验证购票人所持身份证件或提供的身份证件号码是否为本人的,通过验证方可购票;再检查该身份证件是否有效、该购票人是否有资格购票;记录购票人的身份证件信息;此种购票方式可额外使用优惠证件进行优惠购票;证件购票,使用有效身份证件、优惠证件购票,每个购票证件可购规定数量的票,推荐每个身份证件限购一张票;购票时,不需进行生物验证,需记录购票证件的信息、类型和号码,如果是不可自动识别的购票证件还需记录购票证件的图像信息;本人单购,每人限购一张票;购票时,需采集并记录生物特征信息;押金购票,可购买规定数量的票;购票时,需交纳押金;购票时需记录票的逻辑ID号和物理ID号、购票方式、购票人身份验证信息、购票人的生物特征信息;购票人的生物特征信息可作为后续服务的终极验证密码;购票人还需提供标识码和密码,用于挂失、退票或改签票;特殊时期可要求标识码必须为身份证件号码、护照号码或联系电话,用于事后寻找票的使用人;证件购票和本人单购,票上需记录证件号码或名字或标识码;如果票的出票次数大于1次,则需在票上记录出票次数,以明确表示以前出的票作废;对于系统中保存有相应信息的购票证件,当操作需要提供购票证件时,客户也可以提供购票证件号码,系统根据购票证件号码查找到购票证件记录后确认购票证件是否有效,如对于身份证件采用生物识别技术验证是否是客户本人的,对于优惠证件验证是否与对应身份证件是同一人的;检票时,先读取票的物理ID号,然后查询票的记录,根据记录检查票是否合法,如果通过了检查,再根据该票的购票方式检查是否合法持有,规则如下:诚信购票和押金购票,则不做进一步检查;证件购票,则要求出示购票证件,并检查是否与购票时记录的一致;本人单购,则检查持票人的生物特征信息与购票时记录的是否一致;如果检票时无法采集持票人的生物特征信息,则要求出示相关证明;挂失时,如果所挂失的票没有对应的标识码,可添加标识码,已有标识码的,不可修改;允许修改密码;持票人进行举报时,出示票,采集并记录生物信息,记录举报人的身份证件号码、联系方式、银行帐号或金融卡号,记录票的逻辑ID号或物理ID号;在核实举报属实后,给举报人以奖励,同时处罚对应的购票人,并将其列入黑名单,包括证件黑名单和生物特征信息黑名单;对于押金购票,票超过使用期或已正常使用后,退还购票人。
- 【权利要求3】根据权利要求1所述的票务中心[101],其特征在于:票务中心[101]由应用服务器[106]、WEB服务器、电话票务服务器和数据库服务器以及网络设备构成;其中应用服务器[106]为售票子系统[102][103]、检票子系统[104]、移动票务子系统[105]、WEB服务器和电话票务服务器提供业务处理服务和数据支持;应用服务器[106]中有服务管理单元、控制单元、分配票单元、查询票务服务单元、查询订/购记录服务单元、查询信用记录服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、奖金领取服务单元、清理过期预订单元、清理超时锁单元、团购资格申请服务单元、团购客户自助管理服务单元、后台管理服务单元、黑名单管理单元、购票证件验证单元、购票证件验证信息同步单元、票状态管理单元、会话管理单元、电子支付子单元、系统数据单元;服务管理单元为主程序单元,负责启动和管理其它单元;控制单元负责接收客户端应用的服务请求,调用对应的服务单元,并将结果返回给服务请求方;客户端应用包括本票务系统中的售票机、数据同步服务器[18]、WEB服务器和电话票务服务器以及其它票务系统中票务中心的应用服务器[106];分配票单元由定时器触发,或由查询票务服务单元、订票服务单元、购票服务单元、清理过期预订单元、退票服务单元、改签票服务单元调用,用于根据计划分配票及回收废弃票资源;会话管理单元由服务管理单元或控制单元或其它服务单元调用,用于管理客户端应用与应用服务器[106]会话的状态;查询票务服务单元用于为客户端应用提供票务查询服务;查询订/购记录服务单元用于为客户端应用提供订/购记录查询服务;查询信用记录服务单元用于为客户端应用提供信用记录查询服务;订票服务单元用于处理订票业务;购票服务单元用于处理购票业务;取票服务单元用于处理取票业务;挂失服务单元用于处理挂失业务;退票服务单元用于处理退票业务;举报服务单元用于处理举报业务;改签票服务单元用于处理改签票业务;押金退还服务单元用于处理退还购票押金业务;奖金领取服务单元用于处理客户领取举报奖金业务;清理过期预订单元由定时器触发,用于清理超时未取的票,使其能被重新预订或购买;清理超时锁单元由定时器触发,用于清理票上超时的锁,释放被未及时释放的票资源;团购资格申请服务单元用于处理团购资格申请业务;团购客户自助管理服务单元用于团购客户管理自己的设置;后台管理服务单元用于管理系统资源、用户、业务规则;黑名单管理单元用于处理黑名单管理业务;购票证件验证单元用于处理购票证件验证业务,由查询票务服务单元、购票服务单元调用;购票证件验证信息同步单元由定时器触发,用于连接身份证验证中心[3]和其它外部购票证件验证中心,并用其提供的数据更新本地的购票证件验证信息数据库;票状态管理单元由查询票务服务单元、订票服务单元、购票服务单元、取票服务单元、挂失服务单元、退票服务单元、举报服务单元、改签票服务单元、押金退还服务单元、清理过期预订单元、清理超时锁单元调用,用于处理更新票的状态业务;电子支付子单元,用于处理客户的电子支付,由订票服务单元、购票服务单元、取票服务单元、挂失服务单元、改签票服务单元、团购资格申请服务单元调用;系统数据单元保存系统参数和业务规则;电话票务服务器提供电话订、购票和电话查询服务,它接收客户的电话服务请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为语音形式返回给客户;WEB服务器提供网上票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金,以及团购资格申请、团购客户自助管理和后台管理功能;它接收WEB请求,调用应用服务器[106]中的相应服务单元进行处理,并将结果封装为WEB应答,返回给用户;用户通过WEB浏览器可连接WEB服务器,进行相关操作;数据库服务器中有票务信息数据库和购票证件验证信息数据库,为应用服务器[106]提供数据支持所有服务单元在处理业务请求时,如果所请求的票不在本票务系统中,则根据配置参数调用相应票务系统的对应业务处理服务单元。
- 【权利要求4】根据权利要求1所述的售票子系统[102],其特征在于:售票子系统[102]由1个或多个半自动售票机[17]、自动售票机[16]构成;半自动售票机[17]、自动售票机[16]直接通过通信网络[15]接入票务中心[101],或者将同一地域的半自动售票机[17]、自动售票机[16]连入局域网,再通过局域网连接通信网络[15]接入票务中心[101]。
- 【权利要求5】根据权利要求1所述的售票子系统[103],其特征在于:售票子系统[103]由移动路由器[1]、半自动售票机[17]、自动售票机[16]构成;其中,半自动售票机[17]或自动售票机[16]至少有1台;无线路由器[1]通过通信网络[8]连接票务中心[101],半自动售票机[17]、自动售票机[16]连接在无线路由器[1]上。
- 【权利要求6】根据权利要求1所述的检票子系统[104],其特征在于:检票子系统[104]由数据同步服务器[18]、通信网络[19]和检票机[14]构成;数据同步服务器[18]中有票务信息数据库、数据同步单元、服务管理单元、控制单元、检票结果记录服务单元;票务信息数据库为票务中心[101]的数据库服务器中部分票务信息的本地镜像;服务管理单元启动和管理其它单元;控制单元负责接收检票机[14]的服务请求,调用对应相应服务单元处理请求,并返回处理结果;检票结果记录服务单元用于处理记录检票结果业务;数据同步单元,由定时器或数据更新事件触发,用于同步票务信息数据库和票务中心[101]的数据库服务器中的指定票务信息,可由票务信息数据库中的数据同步工具代替。
- 【权利要求7】根据权利要求1所述的移动票务子系统[105],其特征在于:移动票务子系统[105]由数据同步服务器[18]、无线路由器[1]、无线局域网[13]、半自动售票机[17]和检票机[14]构成;数据同步服务器[18]和半自动售票机[17]通过无线路由器[1]接入通信网络[8],连入票务中心[101];检票机[14]通过无线局域网[13]连接数据同步服务器[18];也可以将无线路由器[1]和数据同步服务器[18]集成在一起。
- 【权利要求8】根据权利要求1所述的售票子系统[102][103],其特征在于:半自动售票机[17]、自动售票机[16]由嵌入式计算机及其辅助设备、网络通信部件、小键盘、显示器、传送机、储票仓、废票仓、打印机、验票机、摄像头或数码相机、生物特征信息采集器、购票证件读卡器和金融卡读卡器构成;半自动售票机[17]的显示设备为双显示器,分别显示给客户和售票员;半自动售票机[17]还有标准I/O设备、购票证件图像输入设备;自动售票机[16]有触摸屏,用于人机交互;半自动售票机[17]由售票员操作;自动售票机[16]由客户操作。
- 【权利要求9】根据权利要求8所述的半自动售票机[17]、自动售票机[16],其特征在于:半自动售票机[17]、自动售票机[16]中有操作系统、售票客户端软件[107]和购票证件验证信息数据库;操作系统提供售票客户端软件[107]的运行环境;售票客户端软件[107]以应用服务器[106]为服务端,提供票务查询、订/购记录查询、信用记录查询、订票、购票、团购、退票、挂失、取票、举报、改签票、领取押金、领取奖金功能,以及自身的故障检测与报告功能;售票客户端软件[107]有主程序单元、控制单元、用户界面单元、查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、团购单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、通信单元、会话管理单元、故障检测与报告单元,以及支付子单元、出票子单元、生物识别子单元、确定购票方式子单元、确定优惠子单元、获取生物特征子单元、系统数据单元和会话数据单元;主程序单元为售票客户端软件[107]的入口,负责初始化,调用用户界面单元和控制单元;用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;控制单元根据用户操作事件调用查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元、会话管理单元,并将操作结果返回给用户界面单元;查询票务单元、查询订/购记录单元、查询信用记录单元、订票单元、购票单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元分别用于处理相应的业务;它们调用通信单元与应用服务器[106]进行通信;通信单元负责售票客户端软件[107]与票务中心[101]应用服务器[106]的通信;会话管理单元,由后台线程执行,跟踪、管理当前会话的状态,监控用户操作是否超时,超时则清除会话记录,返回主界面;会话管理单元有结束操作子单元,允许用户显式调用,以结束会话,清除会话记录,返回主界面;故障检测与报告单元用于检测和报告半自动售票机[17]、自动售票机[16]本身的故障;支付子单元用于支付票款、手续费,由订票单元、购票单元、团购单元、取票单元调用;出票子单元用于出票,由购票单元、团购单元、取票单元调用;生物识别子单元用于识别购票证件或购票证件号码是否为客户本人所有,由订票单元、购票单元、团购单元、退票单元、挂失单元、取票单元、举报单元、改签票单元、领取押金单元、领取奖金单元调用;确定购票方式子单元用于确定购票方式,由购票单元、团购单元、取票单元调用;确定优惠子单元用于确定购票的优惠方式,由购票单元、团购单元、取票单元调用;获取生物特征子单元用于捕获客户的生物特征信息,可获取指定的多种生物特征信息,由查询订/购记录单元、退票单元、改签票单元、生物识别子单元、确定购票方式子单元调用;系统数据单元用于保存初始化数据和业务规则;会话数据单元用于存放当前会话的临时数据;购票证件验证信息数据库为票务中心[101]的数据库服务器的购票证件验证信息数据库的本地镜像。
- 【权利要求10】根据权利要求9所述的查询票务单元,其特征在于:如果所发售的票是车票,则查询票务单元分为“站-站票务查询”和“车次实时票务查询”两种;“站-站票务查询”的查询参数有车次、出发站、到站、发车时间、购票数量及票的类型;“车次实时票务查询”的查询参数为车次、出发站和发车时间;查询结果为一个自左向右上升的台阶状的车次余票实时信息表,横坐标从左向右标出本车次从始发站到终点站途经的所有停车站站名,表示到站;纵坐标从下向上,将从始发站到终点站途经的所有停车站站名依次标在对应的台阶上,表示出发站;每个单元格给出出发站到到站的车票总数和可售数量;如果查询参数中的出发站不是始发站,则在车次余票实时信息表中高亮显示以该站为出发站的行;点击车次余票实时信息表中的单元格,则背景化其它行,高亮显示被点击单元格所在行,并将到站高亮显示在该行下方;突出显示所选单元格;还可以柱状图形式显示该行的每个单元格中的信息;点击空白处,恢复全表显示;车次余票实时信息表中的信息定时自动更新。
- 【权利要求11】根据权利要求9所述的查询订/购记录单元,其特征在于:查询订/购记录单元的工作流程为:A1)提示选择查询方式;A2)为用户提供以下查询方式,在用户选择后执行对应的流程:A2.1)不可自动识别证件查询A2.1.1)提示售票员检查身份证件,手工输入身份证件信息;A2.1.2)接收售票员输入的身份证件信息;执行步骤A3);A2.2)可自动识别证件查询A2.2.1)循环检测身份证件,检测到了则执行步骤A2.2.2);超时则报错,并执行步骤A1);A2.2.2)读取身份证件内的信息;验证是否合法,合法执行步骤A2.2.3),不合法报错,并执行步骤A2.2.1);A2.2.3)检查身份证件中是否有生物特征信息,有则执行步骤A2.2.3.1),无则执行步骤A2.2.3.2);A2.2.3.1)调用生物识别子单元;通过识别则执行步骤A3),未通过识别则报错,并执行步骤A2.2.3.2);A2.2.3.2)提示用户输入密码;A2.2.3.3)接收密码,并执行步骤A2.3);A2.3)标识码或证件号码+生物特征信息查询A2.3.1)同步执行步骤A2.3.1.1)和A2.3.1.2),二者都执行完后执行步骤A2.3.2);A2.3.1.1)调用获取生物特征子单元;A2.3.1.2)提示并接收用户输入标识码或证件号码;A2.3.2)格式化步骤A2.3.1)获得的数据,执行步骤A3);A2.4)标识码+密码查询A2.4.1)提示输入标识码和密码;A2.4.2)接收标识码和密码,执行步骤A3);A3)根据步骤A2)获得的身份验证信息,编制订/购记录查询请求;A4)调用通信单元,向应用服务器[106]发送订/购记录查询请求;A5)接收并格式化显示应用服务器[106]返回的查询结果;A6)结束查询订/购记录单元的本次调用;上述步骤中的步骤A2.1)仅对半自动售票机[17]有效;自动售票机[16]则不提供该选项。
- 【权利要求12】根据权利要求9所述的订票单元,其特征在于:订票单元的工作流程为:B1)检查用户上一操作是否为订票查询操作,不是则执行步骤B2),是则执行步骤B3);B2)执行订票查询操作;B3)将查询结果作为订票项,或者请用户从查询结果中选出订票项,将订票项添加到订票列表中;提示选择订票方式或修改订票参数、订票列表;提供证件订票和标识码+密码订票两种方式供用户选择;用户选择证件订票执行步骤B4);选择标识码+密码订票执行步骤B5);B4)用户执行添加身份证件操作,执行以下步骤:B4.1)提示出示或选择身份证件;循环检测身份证件,检测到身份证件执行步骤B4.2),超时执行步骤B4);用户从身份证件总列表中选择,并确定,则执行步骤B4.4);B4.2)验证身份证件是否合法,不合法提示出错,并执行步骤B4.1),合法则执行步骤B4.3);B4.3)将检测到的身份证件添加到身份证件总列表中;B4.4)将检测到的或者从身份证件总列表中选择出的身份证件添加到当前订票身份证件列表;更新订票项的订票方式和身份证件列表;等待用户操作事件;B5)接收用户输入的标识码和密码;将订票方式添加到当前订票项;等待用户操作事件;B6)用户执行修改订票参数操作,则更新订票参数;等待用户操作事件;B7)用户执行修改订票列表操作,则更新订票列表;等待用户操作事件;B8)用户执行继续订票操作,则执行步骤B2);B9)用户执行完成订票操作,则执行步骤B9.1);B9.1)检查订票条件是否合法,不合法则执行步骤B9.2);合法则执行步骤B9.3);B9.2)提示修改条件不合法的订票项;等待用户操作事件;B9.3)检查是否已有标识码和密码;有则执行步骤B9.5);没有则提示输入标识码和密码,执行下一步;B9.4)接收用户输入的标识码和密码;检查订票方式,证件订票可跳过本步骤;B9.5)提示并接受用户输入的联系电话;根据业务规则确定是否需要支付预订款,需要则计算预订款,调用支付子单元;B9.6)编制订票请求,调用通信单元,向应用服务器[106]发送订票请求;B9.7)接收并格式化显示应用服务器[106]返回的订票结果;B9.8)结束订票单元的本次调用。
- 【权利要求13】根据权利要求9所述的购票单元,其特征在于:购票单元的工作流程为:C1)检查用户上一操作是否为票务查询操作,不是则执行步骤C2),是则执行步骤C3);C2)调用查询票务单元;C3)将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;调用确定购票方式子单元;更新购票项的购票方式;等待用户操作事件;C4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;C5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;C6)用户执行继续购票操作,则执行步骤C2);C7)用户执行完成购票操作,则检查购票条件是否满足,满足执行步骤C7.1);不满足则提示修改,等待用户操作事件;C7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤C7.2);不输入则执行步骤C7.3);C7.2)接收用户输入的标识码和密码;C7.3)计算票款,调用支付子单元;C7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;C7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤C7.6);如果电子支付出错,则执行步骤C7.3);如果超时或出错超限,或其它错误,则执行步骤C8);C7.6)调用出票子单元;C8)结束购票单元的本次调用。
- 【权利要求14】根据权利要求9所述的退票单元,其特征在于:退票单元的工作流程为:D1)提示选择凭票退票或电子退票;如果用户选择凭票退票则执行步骤D2);如果用户选择电子退票,则执行步骤D3);D2)同步执行步骤D2.1)和步骤D2.2);步骤D2.1)和步骤D2.2)都执行完后,执行步骤D5);D2.1)如果尚未进行身份验证也未获取身份验证信息,则提示用户选择身份验证方式,提供三种验证方式:用户选择生物识别执行步骤D2.1.1);选择生物特征信息验证执行步骤D2.1.2);选择标识码+密码验证执行步骤D2.1.3);D2.1.1)调用生物识别子单元,未通过识别执行步骤D9);D2.1.2)调用获取生物特征子单元,未捕获到执行步骤D9);D2.1.3)提示用户输入标识码和密码;接收用户输入的标识码和密码;D2.2)循环检测是否有票送入出票口,有则执行步骤D2.2.1),超时则执行步骤D1);D2.2.1)识别送入的票,未通过识别则报错并执行步骤D2.2);通过识别则执行步骤D2.2.2);D2.2.2)将识别出的票的物理ID号加入到退票列表中,更新退票列表;将票送入废票仓;提示用户继续送入要退的票或确定退票;D2.2.3)循环检测是否有票送入出票口和用户确定退票操作事件,如果检测到有票送入,则执行步骤D2.2.1);如果检测到用户确定退票操作事件,则结束步骤D2.2);超时,则执行步骤D9);D3)调用查询订/购记录单元;检查是否有可退的票,有则执行步骤D4);无则执行步骤D9);D4)显示可退的票列表,提示用户选择要退的票;接收用户选择,更新退票列表;D5)检查原购票支付方式是否为电子支付,是则执行步骤D7);否则执行步骤D6);D6)提示用户确认退款方式,同步执行步骤D6.1)、D6.2)和D6.3);D6.1)检测用户是否选择现金退款,是则执行步骤D7);D6.2)循环检测是否有金融卡插入,有则检测是否合法,合法则读取卡内信息,然后执行步骤D7);不合法或读取不出正确信息,则提示出错,执行步骤D6);D6.3)检测用户是否输入银行帐号或金融卡号,是则接收输入,执行步骤D7);D7)编写退票请求,调用通信单元,向应用服务器[106]发送退票请求;D8)接收并格式化显示应用服务器[106]返回的退票结果;如果超时或出错,则执行步骤D9);如果电子退款出错则执行D6);如果退票成功且为现金退款,则执行步骤D10);否则执行步骤D11);D9)提示错误,结束退票单元的本次调用;D10)吐出退还票款或显示退款金额;D11)结束退票单元的本次调用。
- 【权利要求15】根据权利要求9所述的团购单元,其特征在于:团购单元的工作流程为:E1)提示进行身份验证或输入团购验证信息;提供三种选择:生物特征信息验证、插入团购卡、输入团购卡号;同步执行步骤E1.1)、E1.2)和E1.3)E1.1)调用生物识别子单元,通过识别则执行步骤E2),未通过则提示出错,并执行步骤E1);E1.2)提示用户输入团购卡号和密码,接收用户输入,执行步骤E2);E1.3)循环检测团购卡,检测到后验证是否合法,合法则执行步骤E2);否则执行步骤E1);E2)将团购查询作为查询类型参数,调用查询票务单元;将查询结果作为购票项,或者请用户从查询结果中选出购票项,将购票项添加到购票列表中;E3)调用确定购票方式子单元;更新并显示购票列表;更新购票项的购票方式;等待用户操作事件;E4)用户执行修改购票参数操作,则更新购票参数;等待用户操作事件;E5)用户执行修改购票列表操作,则更新购票列表;等待用户操作事件;E6)用户执行继续购票操作,则执行步骤E2);E7)用户执行完成购票操作,则执行步骤E7.1);E7.1)询问用户是否输入标识码和密码,接收用户选择,输入则执行步骤E7.2);不输入则执行步骤E7.3);E7.2)接收用户输入的标识码和密码;E7.3)计算票款;调用支付子单元;E7.4)编制购票请求,调用通信单元,向应用服务器[106]发送购票请求;E7.5)接收并格式化显示应用服务器[106]返回的购票结果;检查购票结果,如果购票成功,则执行步骤E7.6);如果电子支付出错,则执行步骤E7.3);如果超时或出错超限,或其它错误,则执行步骤E8);E7.6)调用出票子单元;E8)结束团购单元的本次调用。
- 【权利要求16】根据权利要求9所述的挂失单元,其特征在于:挂失单元的工作流程为:F1)调用查询订/购记录单元;检查查询结果中是否有可挂失的购票记录,如果无,则提示,然后结束挂失单元的本次调用;如果有,则显示可挂失的购票列表;F2)提示选择要挂失的票;记录用户选择的票;F3)提示用户选择挂失操作类型;提供两种类型,根据用户选择执行步骤F3.1)或F3.2);F3.1)用户选择仅挂失;编写挂失请求;请求中包含挂失类型;执行步骤F4);F3.2)用户选择挂失并重取票;计算取票费;执行步骤F3.2.1);F3.2.1)调用支付子单元;F3.2.2)编写挂失请求;请求中包含挂失类型及支付信息;执行步骤F4);F4)调用通信单元,向应用服务器[106]发送挂失请求;F5)接收并格式化显示应用服务器[106]返回的挂失结果;检查挂失结果,如果需要出票,执行步骤F6);否则执行步骤F7);F6)调用出票子单元;F7)结束挂失单元的本次调用。
- 【权利要求17】根据权利要求9所述的取票单元,其特征在于:取票单元的工作流程为:G1)调用查询订/购记录单元;检查查询结果中是否有可取的票,如果无,则提示,然后结束取票单元的本次调用;如果有,则显示可取票列表;G2)提示用户选择要取的票;接受用户选择;G3)判断是否为重新取票,是则执行步骤G5);否则执行步骤G4);G4)调用确定购票方式子单元;G5)检查是否已足额付款,是则执行步骤G7);否则执行步骤G6);G6)调用支付子单元;G7)编制取票请求,调用通信单元,向应用服务器[106]发送取票请求;G8)接收并格式化显示票务中心[101]应用服务器[106]返回的取票结果;检查取票结果,如果电子支付有误,执行步骤G6);其它错误执行步骤G10);取票成功,执行步骤G9);G9)调用出票子单元;G10)结束出票单元的本次调用。
- 【权利要求18】根据权利要求9所述的举报单元,其特征在于:举报单元的工作流程为:H1)提示将票送入出票口;H2)循环检测是否有票送入出票口;有则执行步骤H3);超时则报错,结束举报单元的本次调用;H3)将票从出票口传送至验票机;H4)命令验票机获取票的图像或获取票的物理ID号;验证是否合法,不合法则执行步骤H9);合法则执行下一步;H5)提示输入联系电话和密码;接收用户输入的联系电话和密码;H6)提示输入银行帐号或金融卡号,或插入金融卡;同步执行步骤H6.1)、H6.2)、H6.3);H6.1)接收用户输入的银行帐号或金融卡号,执行步骤H7);H6.2)循环检测金融卡,检测到后验证是否合法,合法则读卡并执行步骤H7);不合法则提示错误,执行步骤H6);超时执行步骤H9);H6.3)提示用户选择自行领取奖励接收用户选择,执行H7);H7)编制取票请求,调用通信单元,向应用服务器[106]发送举报请求;H8)接收并格式化显示应用服务器[106]返回的举报结果;执行步骤H10);H9)提示错误;H10)将票送至废票仓,结束举报单元的本次调用。
- 【权利要求19】根据权利要求9所述的出票子单元,其特征在于:出票子单元的工作流程为:I1)将空白票出从储票仓中取出,送至打印机;I2)打印票;I3)将票传送至验票机;I4)命令验票机获取票的图像或获取票的物理ID号;获取后验证是否合法,不合法则执行步骤I9);合法则执行下一步;I5)将票传送到出票口;计数器加1;记录已成功打出的票;I6)检查是否打印完,打印完,执行步骤I7);未打印完,执行步骤I1);I7)编制成功出票异步消息,调用通信单元,向应用服务器[106]发送成功出票异步消息;I8)将票送出出票口;执行步骤I10);I9)将票送至废票仓;检测出错是否超限,超限则提示错误,检查是否有已成功打出的票,有则执行步骤I7),无则结束出票子单元的本次调用;如果出错未超限,执行步骤I1)I10)提示取票;结束出票子单元的本次调用。
- 【权利要求20】根据权利要求9所述的生物识别子单元,其特征在于:生物识别子单元的工作流程为:J1)检查身份证件总列表是否为空,为空则执行步骤J2);不为空则执行步骤J3);J2)同步执行步骤J5)、J6)、J7);J3)同步执行步骤J4)、J5)、J6)、J7);J4)显示身份证件总列表;提示用户从身份证件总列表中选择身份证件;接收用户选择;取出用户选择的身份证件对应的生物特征信息,执行步骤J9);J5)提示用户出示身份证件;循环检测身份证件,检测到则验证合法性,不合法则提示错误,执行步骤J1);合法则读取身份证件中的信息,执行步骤J8);J6)提示售票员检查身份证件,执行步骤J6.1);J6.1)提示输入身份证件信息,接收输入;提示输入身份证件图像;捕获身份证件图像;执行步骤J6.2);J6.2)从身份证件图像中获取客户照片作为身份证件中的生物特征信息;执行步骤J8);J7)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤J12);如果找到了,则读取该身份证件的信息;执行步骤J8);J8)将该身份证件添加到身份证件总列表中,执行步骤J9);J9)调用获取生物特征子单元;J10)验证身份证件中的生物特征信息和步骤J9)获取的生物特征信息是否匹配;匹配则执行步骤J12);不匹配则执行步骤J11);J11)检查出错次数是否超限,超限则执行步骤J12);未超限则执行步骤J9);J12)返回识别结果和获取的生物特征信息;步骤J7)中根据用户输入的身份证件号码查找身份证件,可从本地的购票证件验证信息数据库中查找,也可以远程调用应用服务器[106]的购票证件验证单元远程查找。
- 【权利要求21】根据权利要求9所述的确定购票方式子单元,其特征在于:确定购票方式子单元的工作流程为:K1)提示用户选择购票方式,提供四种方式供选择;用户选择证件购票执行步骤K2),选择诚信购票执行步骤K3),选择个人单购或押金购票执行步骤K4);K2)检查是否已获取客户的生物特征信息,未获取则执行步骤K2.1);已获取则执行步骤K2.2);K2.1)调用获取生物特征子单元,执行步骤K2.2);K2.2)同步执行步骤K2.2.1)、K2.2.2)、K2.2.3)、K2.2.4);K2.2.1)提示用户输入身份证件信息;接收身份证件信息输入,并获取身份证件图像;执行步骤K2.3);K2.2.2)提示用户从身份证件总列表中选择购票证件;接收用户选择,更新当前购票身份证件列表;等待用户操作事件;K2.2.3)提示用户出示身份证件;循环检测身份证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤K2.2);如果合法,则执行步骤K2.3);K2.2.4)提示用户输入身份证件号码;接受用户输入;根据用户输入的身份证件号码查找身份证件;如果没找到,执行步骤K2.2);如果找到了,则读取该身份证件的信息;执行步骤K2.3);K2.3)记录步骤K2.2)获取的身份证件;提示用户选择是否有优惠证件,有则执行步骤K2.4);无则执行步骤K2.5);K2.4)调用确定优惠子单元;将获得的优惠证件列表添加到当前的身份证件上;K2.5)更新当前购票证件列表和身份证件总列表;等待用户操作事件;K2.6)用户执行删除身份证件操作,则提示用户在当前身份证件列表中选择要删除的身份证件;接收用户选择;更新当前购票身份证件列表;等待用户操作事件;K2.7)用户执行结束身份证件输入操作,则为当前购票身份证件列表中每个身份证件分配票数,提示用户确认或修改;如果用户选择确定,执行K2.9);用户选择修改,执行步骤K2.8);K2.8)提示用户修改分配给身份证件的票数;接收用户修改,显示修改结果;执行步骤K2.9);K2.9)检查是否满足购票条件,满足则执行步骤K7);不满足则提示修改,等待用户操作事件;K2.10)用户选择添加身份证件操作,则执行步骤K2.2);K2.11)用户选择修改分配票数操作,则执行步骤K2.8);K3)检查是否已通过生物识别,已通过则执行步骤K5);尚未通过则调用生物识别子单元;如果通过识别,执行步骤K6);未通过识别,执行步骤K5);K4)检查是否已获取了客户生物特征信息,已获取执行步骤K6);未获取则调用获取生物特征子单元,如果获取生物特征信息成功,执行步骤K6);不成功,执行步骤K5);K5)报错,执行步骤K1);K6)提示用户选择是否有优惠证件,用户选择有则调用确定优惠子单元,执行步骤K7);选择无则执行步骤K7);K7)显示购票方式;K8)结束确定购票方式子单元的本次调用。
- 【权利要求22】根据权利要求9所述的确定优惠子单元,其特征在于:确定优惠子单元的工作流程为:L1)用户选择添加优惠证件操作,则提示出示或输入优惠证件;L2)同步执行步骤L2.1)、L2.2)、L2.3);L2.1)提示售票员检查优惠证件,并输入优惠证件信息;接收优惠证件信息输入,并获取优惠证件图像;执行步骤L3);L2.2)提示用户出示优惠证件;循环检测优惠证件,如果检测到,验证合法性,如果不合法,提示错误,执行步骤L2);如果合法,执行步骤L3);L2.3)提示用户输入优惠证件号码;接受用户输入;根据用户输入的优惠证件号码查找优惠证件;如果没找到,执行步骤L4);如果找到了,则读取该优惠证件的信息;执行步骤L3);L3)验证优惠证件的有效性;如果有效,则记录该优惠证件,更新优惠证件列表;L4)显示添加操作结果;等待用户操作事件;L5)用户选择删除优惠证件操作,则提示用户从优惠证件列表中选择要删除的优惠证件;接收用户选择;删除所选优惠证件,更新证件列表;等待用户操作事件;L6)用户选择结束优惠证件输入操作,则计算优惠价格,记录并显示优惠结果;L7)结束确定优惠子单元的本次调用。
- 【权利要求23】根据权利要求6、7所述的检票机[14],其特征在于:检票机[14]具有系统配置、检票、查询票、数据同步功能;有半自动检票机[20]、全自动检票机[21]和介于二者之间的增强型半自动检票机三种;半自动检票机[20]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备、无线通信模块构成;全自动检票机[21]由嵌入式计算机及其辅助设备、小键盘、显示器、触摸屏、电子票读卡器、票的物理ID号读取设备、购票证件读卡器、购票证件图像采集设备、生物特征信息采集器、摄像头或数码相机、检票标记识别器、检票标记器、通信模块构成。
- 【权利要求24】根据权利要求6、7所述的检票机[14],其特征在于:检票机[14]有操作系统、检票客户端软件和票务信息数据库;检票客户端软件有主程序单元、控制单元、用户界面单元、配置系统单元、半自动检票单元或全自动检票单元、查询票单元、通信单元、数据同步单元、系统数据单元;主程序单元为检票客户端软件的入口,负责初始化,调用用户界面单元和控制单元;用户界面单元用于人机交互,收集用户输入,显示提示和操作结果,触发用户操作事件,并将用户操作事件传递给控制单元;控制单元根据用户操作事件调用配置系统单元、半自动检票单元、全自动检票单元、查询票单元、通信单元、数据同步单元;配置系统单元用于设置系统参数;半自动检票单元和全自动检票单元用于检验票;查询票用于根据用户输入的票的物理ID号或逻辑ID号查询票的信息;通信单元用于检票机[14]与数据同步服务器[18]间的通信;数据同步单元用于在检票机[14]与数据同步服务器[18]间同步检票机[14]需要的票务信息,可由用户操作事件触发,也可根据系统配置由定时器、半自动检票单元、全自动检票单元、查询票单元触发,可由票务信息数据库中的数据同步工具代替。
- 【权利要求25】根据权利要求24所述的全自动检票单元,其特征在于:全自动检票单元的工作流程为:M1)提示出示票;同步执行步骤M2)、M3);M2)循环检测普通票;检测到后执行步骤M2.1);M2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M2.2);M2.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M2.3);M2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤M2.9);否则执行步骤M2.4);M2.4)提示进行生物验证;调用获取生物特征子单元,执行步骤M2.5);M2.5)验证持票人的生物特征信息与购票证件中或购票时采集的生物特征信息是否一致,如果购票时记录的是购票证件的图像,则拍摄持票人的面部图像,然后根据从购票证件图像中提取出照片进行人脸识别;检查购票方式;根据业务规则决定选择“一致”或“一致且无优惠证件”作为当前通过检票条件,满足当前通过检票条件则执行步骤M2.9);不满足且是个人单购,则报错,执行步骤M4);否则执行步骤M2.6);M2.6)提示出示购票证件;M2.7)循环检测购票证件,检测到后读取证件内信息或获取证件图像;M2.8)验证检测到的购票证件和购票时记录的购票证件是否相同;相同则执行步骤M2.9);不同则报错,执行步骤M4);M2.9)检查票上标记和记录中的是否一致;一致则在票上做本次检票标记,执行步骤M4);不一致则报错,执行步骤M4);M3)循环检测电子票;检测到后执行步骤M3.1);M3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤M4);找到了则执行步骤M3.2);M3.2)验证票的合法性,如果不合法,提示错误,执行步骤M4);如果合法,执行步骤M3.3);M3.3)在电子票中记录本次检票;执行步骤M4);M4)记录并显示本次检票结果;M5)结束确定全自动检票单元的本次调用。
- 【权利要求26】根据权利要求24所述的半自动检票单元,其特征在于:半自动检票单元的工作流程为:N1)提示出示票;同步执行步骤N2)、N3);N2)循环检测普通票;检测到后执行步骤N2.1);N2.1)读取票上的物理ID号;根据物理ID号查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N2.2);N2.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N2.3);N2.3)检查该票的购票方式,根据业务规则决定选择“诚信购票或押金购票或诚信团购”或“诚信购票或押金购票或诚信团购且无优惠证件”作为当前通过检票条件,满足当前通过检票条件,则执行步骤N2.6);否则执行步骤N2.4);N2.4)显示购票证件或购票人照片或购票证件上的照片,以及本票的检票记录;提示检票员核对;N2.5)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);N2.6)显示本票的检票记录,提示检票员核对;N2.7)接收检票员输入的通过核对或未通过核对选择;未通过,则执行步骤N4);通过则提示检票员在票上做检票标记,执行步骤N4);N3)循环检测电子票;检测到后执行步骤N3.1);N3.1)读取电子票中的信息,查找该票记录;如果找不到,报错,执行步骤N4);找到了则执行步骤N3.2);N3.2)验证票的合法性,如果不合法,提示错误,执行步骤N4);如果合法,执行步骤N3.3);N3.3)在电子票中记录本次检票;执行步骤N4);N4)记录并显示本次检票结果;N5)结束确定半自动检票单元的本次调用。
- 【权利要求27】根据权利要求3所述的押金退还服务单元,其特征在于:押金退还服务单元用于处理退还购票押金;有押金自动退还子服务单元和押金被动退还子服务单元;其中,押金自动退还子服务单元由定时器触发调用,在票过期或正常使用后规定的时间调用,检查票是否自然过期或已正常使用,是则将以押金购票方式购买的票的押金,退还到原购票的银行帐号或金融卡号中,或者是购票时指定的银行帐号或金融卡号中;押金被动退还子服务单元在应用服务器[106]接到领取押金服务请求时由控制单元调用,为客户端应用提供退还押金业务服务。
- 【权利要求28】根据权利要求3所述的查询票务服务单元,其特征在于:查询票务服务单元的工作流程:O1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤O2);如果是新会话,则执行步骤O3);O2)取出会话记录,检查当前查询票务请求是否为重复查询,如果是则执行O2.1),不是则执行O3);O2.1)将上次返回给调用者的结果作为本次调用的结果返回给调用者;执行步骤O5);O3)检查当前查询票务请求的查询参数所查询的票数,如果票数大于规定的值,则执行步骤O3.1);否则,执行步骤O4);O3.1)从当前查询票务请求的查询参数中取出客户的身份验证信息;对客户的身份验证信息进行验证,并根据团购规则,确定是否允许该客户进行团购查询;允许则执行步骤O4);不允许则执行步骤O3.2);O3.2)返回无团购资格错误,执行步骤O5);O4)根据当前查询票务请求的查询参数查询符合条件的可出售的票;将查询结果按票的宿主和类型的组合进行分组,每一组为一个查询结果项;初始化返回值集合RESULT,RESULT为MAP类型,票的宿主-类型组合为KEY,该组合的可购票数为VALUE;执行步骤O4.1);O4.1)检查查询结果中是否还有尚未处理的查询结果项,有则取出一个尚未处理的查询结果项作为当前查询结果项,执行步骤O4.2);无则更新会话记录,记录本次查询票务请求,及其查询票务结果,查询结果中保存有本次查询票务处理加锁的票或票的主键;将RESULT作为返回值,执行步骤O5);O4.2)检查当前查询结果项,如果当前查询结果项为空,则在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主-类型组合,VALUE=0,执行步骤O4.1);如果当前查询结果项不为空,则执行步骤O4.3);O4.3)将查询结果项中的票按指定规则排序;从查询结果项中取出前NQUERY张票,NQUERY为查询票务请求中取出的查询票数,或最大可查询数,如果查询结果项中的票数小于NQUERY,则全部取出;将取出的每张票都加锁,并记录加锁时间;执行步骤O4.4);O4.4)在RESULT中增加一个新节点,其KEY=当前查询结果项的宿主-类型组合,VALUE=上一步操作加锁的票数;执行步骤O4.1);O5)结束查询票务服务单元的本次调用。
- 【权利要求29】根据权利要求3所述的购票服务单元,其特征在于:购票服务单元的工作流程:P1)检查当前查询票务请求是否为新会话;如果不是新会话,执行步骤P3);如果是新会话,则编制错误信息作为返回结果,执行步骤P12);P2)检查是否已进行过购票资格验证或需要进行购票资格验证,如果已验证或不需要验证则执行步骤P3);否则执行步骤P2.1);P2.1)从当前购票请求中取出身份验证信息,调用黑名单管理单元和购票证件验证单元进行身份验证,如果通过验证则执行步骤P3),否则返回身份验证未通过错误,执行步骤P12);P3)取出会话记录,从当前购票请求中取出购票列表,从购票列表中取出一个购票项作为当前购票项;P4)查找是否有与当前购票项对应的查询结果项;如果有则执行步骤P5);否则编制错误信息作为返回结果,执行步骤P12);推荐使用以下判定购票请求和查询结果项是否对应的方法和规则之一进行判定:1.当前购票项中有查询结果项ID,与处理查询票务服务单元步骤O4.2)更新会话记录操作记录的查询结果项ID一致,则二者对应;2.当前购票项中购票参数中的票的宿主-类型组合与处理查询票务服务单元步骤O4.1)更新会话记录操作记录的查询结果项中的票的宿主-类型组合完全相同,且查询结果项中的票数大于或等于购票参数中的票数,则二者对应;P5)计算当前购票项中购票参数中票数减去对应查询结果项中的票数的差NDIF,如果NDIF>0,则执行步骤P8);否则,执行下一步;P6)将对应查询结果项中的票都取出,将其解锁;从中取出NBUY张票,NBUY等于购票参数中的票数,将这些票的状态改为已出售;生成票的物理ID号;更新票的属性;P7)清除会话记录中当前购票项对应的查询结果项;P8)检查购票列表中是否还有未处理的购票项,有则取出一个作为当前购票项,执行步骤P4);无则执行步骤P9);P9)检查购票请求中的支付参数,如果为现金支付,则执行步骤P11);否则,计算票款,以购票请求中客户的银行账号或金融卡号、密码和从系统数据单元中获取的售票账号以及票款为参数,调用电子支付子单元;检查电子支付是否成功,成功则执行步骤P11),不成功则执行步骤P10);P10)撤销步骤P6)和P7)所做的操作,编制错误信息作为返回结果,执行步骤P12);P11)将所有在步骤P6)中状态改为已出售的票作为购票请求结果返回给调用者;P12)结束购票服务单元的本次调用。
- 【权利要求30】根据权利要求28所述的查询票务服务单元和权利要求29所述的购票服务单元,其特征在于:为了使所购票尽量不受并发访问影响且所购票序号或座次尽可能连续,查询票务服务单元的步骤O4.1)更新会话记录时,记录本次查询票务请求的查询票务结果时不保存本次加锁的票或票的主键;购票服务单元的步骤P6)可由以下操作代替:P6A)以当前购票项购买参数中票的宿主、类型为参数查询已加锁的票;检查查询结果,如果查询结果中的票数少于NBUY,则执行步骤P8);否则,执行步骤P6A.1);P6A.1)将查询结果中的票按指定规则排序;取出前NBUY张票,解锁,并将其状态都改为已出售;P6A.2)检查NDIF,如果等于0,则执行步骤P7);如果小于0,则从P6A.1)的已排序的查询结果中取出最后的NDIF张票,将其都解锁;执行步骤P7)。
- 【权利要求31】本发明提供了一种关联查询票和购票活动的方法,用于保证客户能不受其他客户对系统的并发访问的影响,购买到查询结果中显示的票数,且尽可能地保证一次购得的同类票的号码或座次是连续的,其特征在于:处理查询票请求时,在查询到有所需的可出售票后,将其加锁,并记录加锁时间;在处理购票请求时,先找对应的查询票务处理结果;如果没有对应的查询票务处理结果,或购买请求中的票数大于对应查询票务处理时加锁的票数NCLOCK,则报错;查询满足购票请求条件的已加锁的可出售票,按指定规则排序;取出前NBUY张票,作为本次出售的票,NBUY为购票数;如果NBUY小于NCLOCK,则再取出后NCLOCK-NBUY张票,解锁;为了避免异常造成票的死锁,提供一个专门的清理超时锁单元,定时调用,清理加锁时间超时的票。
- 【权利要求32】本发明提供了一种编制票的物理ID号的方法,其特征在于:票的物理ID号=票的逻辑ID号+出票序号+随机码+校验码其中,校验码为可选项票的逻辑ID号为可唯一标识逻辑票的字符串,例如:1.车票可以由以下信息项构成逻辑ID号:票的逻辑ID号=车次+起始站+到站+车厢号+座号+日期+备用项;2.演出、比赛门票可由以下信息项构成逻辑ID号:票的逻辑ID号=场地+日期+场次+座号+日期+备用项;3.城市轨道交通票由以下信息项构成逻辑ID号:票的逻辑ID号=起始站+到站+购票时间+备用项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910302456A CN101546195A (zh) | 2009-05-20 | 2009-05-20 | 一种防倒票的票务系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910302456A CN101546195A (zh) | 2009-05-20 | 2009-05-20 | 一种防倒票的票务系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101546195A true CN101546195A (zh) | 2009-09-30 |
Family
ID=41193360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910302456A Pending CN101546195A (zh) | 2009-05-20 | 2009-05-20 | 一种防倒票的票务系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101546195A (zh) |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096950A (zh) * | 2010-12-10 | 2011-06-15 | 汉王科技股份有限公司 | 用于售票系统的人脸识别装置和识别方法 |
CN102436681A (zh) * | 2011-10-31 | 2012-05-02 | 江苏科技大学 | 自动售检票系统对车票挂失后补票的查验方法 |
CN102622778A (zh) * | 2012-02-20 | 2012-08-01 | 常熟理工学院 | 一种基于指纹的无票化乘车系统 |
CN102663633A (zh) * | 2012-03-16 | 2012-09-12 | 上海宝钢钢材贸易有限公司 | 钢材交易系统 |
CN102693555A (zh) * | 2011-07-13 | 2012-09-26 | 上海理工大学 | 实名制进站检票系统 |
CN102750742A (zh) * | 2012-06-16 | 2012-10-24 | 毛振刚 | 一种智能火车票防逃票系统 |
CN104268196A (zh) * | 2014-09-22 | 2015-01-07 | 广东粤铁科技有限公司 | 一种票务系统的票库及其更新方法 |
CN105512920A (zh) * | 2015-11-23 | 2016-04-20 | 北京奇虎科技有限公司 | 网络购票处理方法和服务器 |
CN105551089A (zh) * | 2015-11-27 | 2016-05-04 | 天津市协力自动化工程有限公司 | 一种基于虹膜识别技术的票务系统 |
CN105610649A (zh) * | 2016-02-22 | 2016-05-25 | 太仓苏易信息科技有限公司 | 一种挂号黑名单监测系统 |
CN106504346A (zh) * | 2016-11-14 | 2017-03-15 | 厦门路桥信息股份有限公司 | 售检票方法及系统 |
CN106600716A (zh) * | 2016-12-07 | 2017-04-26 | 深圳市万通顺达科技股份有限公司 | 基于二维码的单程票购票与验票方法和系统 |
CN106778139A (zh) * | 2016-12-30 | 2017-05-31 | 中国民航信息网络股份有限公司 | 旅客身份验真方法和系统 |
CN107426333A (zh) * | 2017-08-10 | 2017-12-01 | 中国民航信息网络股份有限公司 | 自助退改签服务方法和系统 |
CN107534673A (zh) * | 2015-09-24 | 2018-01-02 | 锡克拜控股有限公司 | 远程安全证件分析 |
CN107705434A (zh) * | 2017-11-03 | 2018-02-16 | 孙庆玲 | 具有售票系统的列车专用自动售货机及使用方法 |
CN107767192A (zh) * | 2016-08-19 | 2018-03-06 | 方正国际软件(北京)有限公司 | 一种电子票据的验证方法、装置及系统 |
CN107784616A (zh) * | 2017-11-20 | 2018-03-09 | 孙庆玲 | 具有票务系统的列车专用小型图书馆及使用方法 |
CN107808293A (zh) * | 2017-10-20 | 2018-03-16 | 珠海华发新科技投资控股有限公司 | 一种票务管理系统 |
CN108023940A (zh) * | 2017-11-20 | 2018-05-11 | 广东欧珀移动通信有限公司 | 信息更新方法、装置、服务器及可读存储介质 |
CN108074095A (zh) * | 2016-11-18 | 2018-05-25 | 腾讯科技(深圳)有限公司 | 一种票务处理方法和装置 |
WO2018112945A1 (zh) * | 2016-12-23 | 2018-06-28 | 深圳前海达闼云端智能科技有限公司 | 查询电子票的状态信息的方法、装置及区块链节点 |
CN108259181A (zh) * | 2017-11-28 | 2018-07-06 | 中国平安财产保险股份有限公司 | 刷单检测方法及终端设备 |
CN108389313A (zh) * | 2018-01-22 | 2018-08-10 | 深圳市满心科技有限公司 | 自动售货装置、自动售货机及其实名售卖的方法 |
CN108805546A (zh) * | 2010-10-13 | 2018-11-13 | 沃尔玛阿波罗有限责任公司 | 使用移动设备进行自动结账的方法 |
CN109118597A (zh) * | 2018-08-29 | 2019-01-01 | 上海哔哩哔哩科技有限公司 | 智能终端、票务验证系统、方法及计算机可读存储介质 |
CN110020587A (zh) * | 2019-01-18 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 识别系统智能提速的方法、系统、装置和设备 |
CN110334963A (zh) * | 2019-07-11 | 2019-10-15 | 四川亨通网智科技有限公司 | 门票订单后台管理系统 |
CN110826442A (zh) * | 2019-10-28 | 2020-02-21 | 广州凯风科技有限公司 | 一种基于活体检测的票据数据处理方法、系统、设备及介质 |
CN111612922A (zh) * | 2019-02-22 | 2020-09-01 | 上海银晨智能识别科技有限公司 | 验票方法及系统、计算机可读存储介质 |
CN112334956A (zh) * | 2018-06-18 | 2021-02-05 | 环球城市电影有限责任公司 | 贴票系统和方法 |
CN112950314A (zh) * | 2021-02-26 | 2021-06-11 | 腾竞体育文化发展(上海)有限公司 | 购票资格的确定方法、装置、设备及存储介质 |
CN113947874A (zh) * | 2021-09-01 | 2022-01-18 | 北京声智科技有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1349631A (zh) * | 1999-03-17 | 2002-05-15 | 圣达特出版公司 | 用于预订航线旅程的计算机执行系统和方法 |
CN1423473A (zh) * | 2001-12-07 | 2003-06-11 | 明基电通股份有限公司 | 移动电子票务系统及其方法 |
CN1734493A (zh) * | 2004-07-14 | 2006-02-15 | 招商银行股份有限公司 | 号码分配系统及其处理方法 |
CN101075353A (zh) * | 2007-06-14 | 2007-11-21 | 高英杰 | 多功能电子票务系统 |
US20070276944A1 (en) * | 2006-05-09 | 2007-11-29 | Ticketmaster | Apparatus for access control and processing |
CN101226648A (zh) * | 2006-10-01 | 2008-07-23 | 王苏兵 | 互联网、手机自助购票系统及方法 |
-
2009
- 2009-05-20 CN CN200910302456A patent/CN101546195A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1349631A (zh) * | 1999-03-17 | 2002-05-15 | 圣达特出版公司 | 用于预订航线旅程的计算机执行系统和方法 |
CN1423473A (zh) * | 2001-12-07 | 2003-06-11 | 明基电通股份有限公司 | 移动电子票务系统及其方法 |
CN1734493A (zh) * | 2004-07-14 | 2006-02-15 | 招商银行股份有限公司 | 号码分配系统及其处理方法 |
US20070276944A1 (en) * | 2006-05-09 | 2007-11-29 | Ticketmaster | Apparatus for access control and processing |
CN101226648A (zh) * | 2006-10-01 | 2008-07-23 | 王苏兵 | 互联网、手机自助购票系统及方法 |
CN101075353A (zh) * | 2007-06-14 | 2007-11-21 | 高英杰 | 多功能电子票务系统 |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805546A (zh) * | 2010-10-13 | 2018-11-13 | 沃尔玛阿波罗有限责任公司 | 使用移动设备进行自动结账的方法 |
CN102096950A (zh) * | 2010-12-10 | 2011-06-15 | 汉王科技股份有限公司 | 用于售票系统的人脸识别装置和识别方法 |
CN102693555A (zh) * | 2011-07-13 | 2012-09-26 | 上海理工大学 | 实名制进站检票系统 |
CN102436681B (zh) * | 2011-10-31 | 2014-07-23 | 江苏科技大学 | 自动售检票系统对车票挂失后补票的查验方法 |
CN102436681A (zh) * | 2011-10-31 | 2012-05-02 | 江苏科技大学 | 自动售检票系统对车票挂失后补票的查验方法 |
CN102622778A (zh) * | 2012-02-20 | 2012-08-01 | 常熟理工学院 | 一种基于指纹的无票化乘车系统 |
CN102663633A (zh) * | 2012-03-16 | 2012-09-12 | 上海宝钢钢材贸易有限公司 | 钢材交易系统 |
CN102750742A (zh) * | 2012-06-16 | 2012-10-24 | 毛振刚 | 一种智能火车票防逃票系统 |
CN104268196B (zh) * | 2014-09-22 | 2018-10-30 | 广东粤铁科技有限公司 | 一种票务系统的票库及其更新方法 |
CN104268196A (zh) * | 2014-09-22 | 2015-01-07 | 广东粤铁科技有限公司 | 一种票务系统的票库及其更新方法 |
CN107534673A (zh) * | 2015-09-24 | 2018-01-02 | 锡克拜控股有限公司 | 远程安全证件分析 |
CN105512920A (zh) * | 2015-11-23 | 2016-04-20 | 北京奇虎科技有限公司 | 网络购票处理方法和服务器 |
CN105551089A (zh) * | 2015-11-27 | 2016-05-04 | 天津市协力自动化工程有限公司 | 一种基于虹膜识别技术的票务系统 |
CN105610649A (zh) * | 2016-02-22 | 2016-05-25 | 太仓苏易信息科技有限公司 | 一种挂号黑名单监测系统 |
CN107767192A (zh) * | 2016-08-19 | 2018-03-06 | 方正国际软件(北京)有限公司 | 一种电子票据的验证方法、装置及系统 |
CN106504346A (zh) * | 2016-11-14 | 2017-03-15 | 厦门路桥信息股份有限公司 | 售检票方法及系统 |
CN108074095A (zh) * | 2016-11-18 | 2018-05-25 | 腾讯科技(深圳)有限公司 | 一种票务处理方法和装置 |
CN108074095B (zh) * | 2016-11-18 | 2021-12-14 | 腾讯科技(深圳)有限公司 | 一种票务处理方法和装置 |
CN106600716A (zh) * | 2016-12-07 | 2017-04-26 | 深圳市万通顺达科技股份有限公司 | 基于二维码的单程票购票与验票方法和系统 |
WO2018112945A1 (zh) * | 2016-12-23 | 2018-06-28 | 深圳前海达闼云端智能科技有限公司 | 查询电子票的状态信息的方法、装置及区块链节点 |
CN106778139A (zh) * | 2016-12-30 | 2017-05-31 | 中国民航信息网络股份有限公司 | 旅客身份验真方法和系统 |
CN107426333A (zh) * | 2017-08-10 | 2017-12-01 | 中国民航信息网络股份有限公司 | 自助退改签服务方法和系统 |
CN107808293A (zh) * | 2017-10-20 | 2018-03-16 | 珠海华发新科技投资控股有限公司 | 一种票务管理系统 |
CN107705434A (zh) * | 2017-11-03 | 2018-02-16 | 孙庆玲 | 具有售票系统的列车专用自动售货机及使用方法 |
CN107784616A (zh) * | 2017-11-20 | 2018-03-09 | 孙庆玲 | 具有票务系统的列车专用小型图书馆及使用方法 |
CN108023940A (zh) * | 2017-11-20 | 2018-05-11 | 广东欧珀移动通信有限公司 | 信息更新方法、装置、服务器及可读存储介质 |
CN108259181B (zh) * | 2017-11-28 | 2020-12-11 | 中国平安财产保险股份有限公司 | 刷单检测方法及终端设备 |
CN108259181A (zh) * | 2017-11-28 | 2018-07-06 | 中国平安财产保险股份有限公司 | 刷单检测方法及终端设备 |
CN108389313A (zh) * | 2018-01-22 | 2018-08-10 | 深圳市满心科技有限公司 | 自动售货装置、自动售货机及其实名售卖的方法 |
CN112334956A (zh) * | 2018-06-18 | 2021-02-05 | 环球城市电影有限责任公司 | 贴票系统和方法 |
CN109118597A (zh) * | 2018-08-29 | 2019-01-01 | 上海哔哩哔哩科技有限公司 | 智能终端、票务验证系统、方法及计算机可读存储介质 |
CN110020587A (zh) * | 2019-01-18 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 识别系统智能提速的方法、系统、装置和设备 |
CN111612922A (zh) * | 2019-02-22 | 2020-09-01 | 上海银晨智能识别科技有限公司 | 验票方法及系统、计算机可读存储介质 |
CN110334963A (zh) * | 2019-07-11 | 2019-10-15 | 四川亨通网智科技有限公司 | 门票订单后台管理系统 |
CN110826442B (zh) * | 2019-10-28 | 2020-10-27 | 广州云从凯风科技有限公司 | 一种基于活体检测的票据数据处理方法、系统、设备及介质 |
CN110826442A (zh) * | 2019-10-28 | 2020-02-21 | 广州凯风科技有限公司 | 一种基于活体检测的票据数据处理方法、系统、设备及介质 |
CN112950314A (zh) * | 2021-02-26 | 2021-06-11 | 腾竞体育文化发展(上海)有限公司 | 购票资格的确定方法、装置、设备及存储介质 |
CN113947874A (zh) * | 2021-09-01 | 2022-01-18 | 北京声智科技有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101546195A (zh) | 一种防倒票的票务系统及方法 | |
US9495705B2 (en) | Process of and system for facilitating cash collections deposits and deposit tracking | |
CN103186861B (zh) | 基于云数据处理技术的电子支付方法 | |
CN1348566A (zh) | 处理金融交易的系统和方法 | |
US20030024988A1 (en) | System for providing evidence of payment | |
CN100385458C (zh) | 便携式读卡机和卡结算系统 | |
US20040206814A1 (en) | Electronic money system and transaction method using the same | |
US20020107799A1 (en) | Transaction method, transaction system, management equipment and IC card therefor | |
AU2010206118A1 (en) | Method and system for management of electronic receipts on portable devices | |
EP1010148A1 (en) | Method for electronically vending, distributing, and recharging of pre-paid value, a vending machine and an electronic system for use therein | |
US8397983B2 (en) | Distribution services reservation integration | |
CN108960941A (zh) | 电子支付开票方法 | |
CN110232554A (zh) | 一种银行业务快速办理管理方法 | |
CN106845742A (zh) | 旅馆一体化管理系统 | |
US20040249758A1 (en) | Point management program provision server and apparatus | |
CN107148634A (zh) | 积分累积系统、积分累积方法及其 nfc 终端设备 | |
JP2004171349A (ja) | 物品貸し出し情報管理システムを構成する管理センタ | |
CN1315711A (zh) | 在线支付方法 | |
CN104143140A (zh) | 一种支票的兑付方法、兑付系统以及圈存系统 | |
CN100595785C (zh) | 用于小额支付的动态密码运用方法 | |
JP2002109120A (ja) | 競技用投票システム | |
JP2011013704A (ja) | 製品購入履歴情報の自動作成装置およびその方法 | |
KR100537488B1 (ko) | 추첨식 복권 자동 발매 시스템 | |
JP2002117308A (ja) | 案内情報提供装置 | |
JP2006268091A (ja) | 駐車場及び/又は駐輪場管理システム、駐車場及び/又は駐輪場管理方法、並びにサーバ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C53 | Correction of patent of invention or patent application | ||
CB03 | Change of inventor or designer information |
Inventor after: Qiao Chao Inventor after: Wang Chunhong Inventor after: Qiao Yi Inventor before: Qiao Chao |
|
COR | Change of bibliographic data |
Free format text: CORRECT: INVENTOR; FROM: QIAO CHAO TO: QIAO CHAO WANG CHUNHONG QIAO YI |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20090930 |