发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的打印票据的辅助系统、设备及方法。
依据本发明的一个方面,提供了一种打印票据的辅助系统,包括服务器端以及位于服务网点的辅助设备,所述辅助设备通过网络接口连接到网络,通过数据接口连接到票据打印设备,其中,所述服务器端包括:
票据数据获取单元,用于接收买方用户通过Web页面提交的票据数据,所述票据数据包括票据类型及票据内容;
票据数据发送单元,用于按照预置的网络协议对所述票据数据进行封装后发送到目标辅助设备;
所述辅助设备包括:
解析单元,用于解析所述票据数据发送单元发送的消息,获取所述票据类型及票据内容;
数据转换单元,用于根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
数据输入单元,用于将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
可选的,所述服务器端还包括:
判断单元,用于在接收到买方用户通过Web页面提交的票据数据之后,判断该买方用户选择的服务网点的辅助设备是否处于关闭状态;
第一保存单元,用于如果所述判断单元判断的结果为是,则在服务器端的数据库中保存所述票据数据以及对应的服务网点信息;
所述辅助设备还包括:
心跳信息发送单元,用于接收到启动指令后,向所述服务器端发送心跳信息;
所述服务器端还包括:
第一通知单元,用于在接收到辅助设备上传的心跳信息之后,向该辅助设备发送有票据数据需要发送的通知消息;
所述辅助设备还包括:
第一设备状态反馈单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器端反馈该工作状态信息,以便所述服务器端的所述票据数据发送单元向该辅助设备发送所述票据数据。
可选的,所述服务网点具有多个所述辅助设备,每个辅助设备对应一台票据打印设备,每个辅助设备具有唯一的身份标识;所述服务器端还包括:
第二保存单元,用于在接收到买方用户通过Web页面提交的票据数据以及选择的服务网点之后,在服务器端的数据库中进行保存;
出票指令接收单元,用于接收店主用户通过Web页面提交的出票指令以及选定的辅助设备身份标识;
通知单元,用于向所述选定的辅助设备发送通知消息;
所述辅助设备还包括:
第二设备状态反馈单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器端反馈该工作状态信息,以便所述服务器端的所述票据数据发送单元向该辅助设备发送所述票据数据。
可选的,所述辅助设备的工作状态包括连续状态及停止状态,所述辅助设备还包括:
保存单元,用于在接收到所述服务器端发送的消息之后,如果所述辅助设备处于停止状态,则将票据数据保存在本地数据库中;
触发单元,用于在将所述辅助设备切换到连续状态之后,触发执行数据转换及输入到票据打印设备的操作。
可选的,所述票据打印设备自带有数据输入设备,所述辅助设备还包括:
信号阻断单元,用于当所述辅助设备处于连续状态时,将所述自带的数据输入设备中的信号阻断。
可选的,所述辅助设备还与票据打印设备的打印接口连接,所述辅助设备还包括:
信息采集单元,用于通过所述打印接口采集打印操作相关信息;
消息反馈单元,用于票据打印成功后,向所述服务器端进行消息反馈;
所述服务器端还包括:
显示单元,用于在Web页面中显示出相应的打印成功消息。
根据本发明的另一方面,提供了一种打印票据的辅助设备,其特征在于,所述辅助设备通过网络接口连接到网络,通过数据接口连接到票据打印设备,所述辅助设备包括:
通信单元,用于通过预置的网络协议接收服务器端发送的票据数据消息,所述票据数据包括票据类型及票据内容,由买方用户通过Web页面提交到服务器,并由服务器按照所述网络协议进行封装后发送到所述辅助设备;
解析单元,用于解析所述接收到的票据数据消息,获取所述票据类型及票据内容;
数据转换单元,用于根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
数据输入单元,用于将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
可选的,服务器端在接收到买方用户通过Web页面提交的票据数据之后,如果所述辅助设备处于关闭状态,则在服务器端的数据库中进行保存,所述通信单元包括:
心跳信息发送子单元,用于接收到启动指令后,向所述服务器发送心跳信息,以便所述服务器在接收到辅助设备上传的心跳信息之后,向该辅助设备发送有票据数据需要发送的通知消息;
第一设备状态反馈子单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器反馈该工作状态信息,以便所述服务器向该辅助设备发送所述票据数据;
第一接收子单元,用于通过预置的网络协议接收服务器发送的票据数据。
可选的,所述服务网点具有多个所述辅助设备,每个辅助设备对应一台票据打印设备,每个辅助设备具有唯一的身份标识;所述服务器在接收到用户提交的票据数据之后,在服务器端的数据库中进行保存,当接收到店主用户通过Web页面提交的出票指令以及选定的辅助设备身份标识时,向所述辅助设备发送通知消息;所述通信单元包括:
第二设备状态反馈子单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器反馈该工作状态信息,以便所述服务器向该辅助设备发送所述票据数据;
第二接收子单元,用于通过预置的网络协议接收服务器发送的票据数据。
可选的,所述辅助设备的工作状态包括连续状态及停止状态,所述辅助设备还包括:
保存单元,用于在接收到所述服务器端发送的消息之后,如果所述辅助设备处于停止状态,则将票据数据保存在本地数据库中;
触发单元,用于在将所述辅助设备切换到连续状态之后,触发执行数据转换及输入到票据打印设备的操作。
可选的,所述票据打印设备自带有数据输入设备,所述辅助设备还包括:
信号阻断单元,用于当所述辅助设备处于连续状态时,将所述自带的数据输入设备中的信号阻断。
可选的,所述辅助设备还与票据打印机的打印接口连接,所述辅助设备还包括:
信息采集单元,用于通过所述打印接口采集打印操作相关信息;
消息反馈单元,用于票据打印成功后,向服务器端进行消息反馈,以便服务器端在Web页面中显示出相应的打印成功消息。
可选的,所述辅助设备还包括:
本地保存单元,用于将从服务器端接收到的票据数据在本地数据库进行保存;
本地状态标记单元,用于根据各个票据数据当前所处的状态在所述本地数据库中进行标记,所述当前所处的状态包括尚未打印、已打印成功但未向服务器反馈、已打印成功并已向服务器反馈;
查询单元,用于每次连接到网络时,查询所述本地数据库,如果存在被标记为已打印成功但未向服务器反馈的票据数据,则向服务器端进行消息反馈。
可选的,所述票据打印设备的数据接口包括键盘口和/或读票口,所述数据转换单元包括:
第一转换子单元,用于根据所述票据类型,将所述票据内容转换为模拟键盘值,以便通过模拟键盘输入的方式,将所述票据内容通过所述键盘口发送给所述票据打印设备;
或者,
第二转换子单元,用于根据所述票据类型,将所述票据内容转换为机读卡对应的十六进制数据,以便通过模拟读票器输入的方式,将所述票据内容通过所述读票口发送给所述票据打印设备。
根据本发明的又一方面,提供了一种打印票据的辅助方法,其特征在于,包括:
通过预置的网络协议接收服务器端发送的票据数据消息,所述票据数据包括票据类型及票据内容,由买方用户通过Web页面提交到服务器,并由服务器按照所述网络协议进行封装后发送;
解析所述接收到的票据数据消息,获取所述票据类型及票据内容;
根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
根据本发明,可以通过服务器端与服务网点的辅助设备的相互配合,能够实现买方用户只要在远程通过登录到服务器网站选择或输入自己所需的票据数据,就可以在服务网点打印出相应的纸质票据。对于票据打印设备而言,可以根据辅助设备发送的数据自动进行纸质票据的打印,因此,可以提高票据的打印效率,节约打印票据所需的时间和打印服务提供者的人力物力成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例首先提供了一种打印票据的辅助系统,在该系统中,包括服务器端以及辅助设备,其中,服务器端相当于是整个系统的网站后台,辅助设备位于服务网点,其一端网络接口连接到网络,以便与网站后台进行交互,获取到相关的票据数据,另一端通过数据接口连接到票据打印设备,将从服务器端获取到的票据数据发送到票据打印设备进行打印。
其中,辅助设备中还可以预存有服务器的网址信息,在服务网点安装了辅助设备,并且启动之后,辅助设备可以主动向服务器发送心跳信息,这样服务器端就可以发现该辅助设备,同时,服务器端保存有服务网点与辅助设备之间的对应关系,当需要有票据数据向某服务网点发送时,就可以根据该对应关系以及辅助设备发送的心跳信息,找到对应的辅助设备,然后将票据数据发送到该辅助设备。
服务器中向辅助设备发送的票据数据,是由买方用户通过服务器提供的Web页面提交上来的,也就是说,在本发明实施例中,买方用户不用亲自到服务器网点进行选择号码等操作,直接登录到Web页面就可以填写所需的数据,或者进行号码的选择等,然后提交到服务器端,服务器端则可以将买方用户提交的票据数据发送到服务网点的辅助设备中。
当然,在实际应用中,服务网点的数目众多,只要安装了本发明实施例中的辅助设备,买方用户就可以选择到其中任意一个网点取票。为了实现该选择,在一种实现方式下,可以在Web页面中展现出各个安装有辅助设备的服务网点的列表,买方用户可以根据自己的需要选择取票网点,这样,服务器可以根据该被选择的网点对应的辅助设备的身份标识,向对应的辅助设备发送用户提交的票据数据。
或者,在另一种实现方式下,服务网点在安装辅助设备并启动之后,店主可以通过该辅助设备向服务器提交材料,服务器端可以根据连接到的票据打印机的类型、各个端口的类型等信息,对辅助设备进行配置,并给辅助设备设定一个唯一的身份标识。同时,服务器还可以根据店主提交的材料,为该店主生成一个二级域名,这样,买方用户就可以在该二级域名中进行注册,后续就可以登录到该二级域名,然后通过Web页面中显示出的信息进行数据的提交等操作。另外,还可以在服务器端保存服务网点的二级域名与辅助设备的身份信息之间的对应关系,这样,当买方用户提交了票据数据时,服务器端该买方用户登录到的二级域名网页,确定出该买方用户需要到哪个服务网点取票,进而就可以根据该二级域名对应的辅助设备的身份信息,向对应的辅助设备发送用户提交的票据数据。也就是说,在这种实现方式中,相当于买方用户在注册时就已经选择了取票的服务网点,而不需要在每次购买时都进行选择。
所谓的票据打印设备可以是现有技术中的某种票据的专用打印设备,例如,用于打印飞机票、电影票等票据的设备。这种设备上通常会带有数据接口,用于向设备中输入用于打印的数据,例如键盘口,或者用于与读票器连接的读票口等,本发明实施例中的辅助设备就可以通过这种数据接口与票据打印设备连接,这样,辅助设备就可以向票据打印设备中输入数据,进而通过票据打印设备中的打印机进行打印操作。
需要说明的是,本发明实施例中的辅助设备可以与票据打印设备中原有的数据输入设备共用数据输入接口。例如,参见图1,假设票据打印设备100带有键盘口101以及读票口102作为数据输入接口,其中,在常规的方式中,键盘口101原用于连接键盘103,读票口102原本用于连接读票器104,可以由操作员从键盘103输入字符,通过键盘口101传入票据打印设备100,或者,也可以由买方用户现场对纸质机读卡上的数字进行涂黑,然后由服务网点的操作员将纸质机读卡输入到读票器中,读票器会将被涂黑的数字识别出来,通过读票口102传入票据打印设备100。票据打印设备100在从键盘口101或者读票口102接收到数据之后,通过打印口105发送给打印机106,由打印机106打印出最终的纸质票据。
而在本发明实施例中,辅助设备110需要连接到票据打印设备100上,因此,首先可以将票据打印设备100上原连接的键盘103以及读票器104取下,然后进行重新连接。具体连接时,辅助设备110可以具有一个0号端口,该0号端口连接有一对三的线,其中一条线通过1号端口连接到键盘口101,同时,1号端口还另外接出一条线,这条线通过2号端口与原键盘103连接;0号端口上的第二条线通过3号端口连接到读票口102,该3号端口还另外接出一条线,这条线通过4号端口与原读票器连接;0号端口上的第三条线通过5号端口连接到打印口105,该5号端口还另外接出一条线,这条线通过6号端口与打印机连接。这样,相当于键盘103和读票器104都通过我们的辅助设备110连到票据打印设备100上。这样,既可以通过键盘103和读票器104向票据打印设备100输入票据数据,也可以通过我们的辅助设备110向票据打印设备100输入票据数据。当然,当辅助设备110需要连续出票时,为了防止出错,可以暂时阻断通过键盘103和读票器104向票据打印设备100发送的信号,待辅助设备110出票结束之后,再将信号放行,对此,后文会有详细介绍。
由于本发明实施例中的辅助设备连接到了票据打印设备的数据接口上,因此,辅助设备在从云端服务器获取到票据数据之后,就可以通过模拟数据输入设备的输入操作,使其转换为票据打印设备能够识别的格式,并向票据打印设备输入数据,触发票据打印设备打印出纸质票据即可。
下面就对本发明实施例提供的打印票据的辅助系统包含的各个功能单元进行详细的介绍。
参见图2,服务器端可以包括:
票据数据获取单元201,用于接收买方用户通过Web页面提交的票据数据以及选择的服务网点,所述票据数据包括票据类型及票据内容;
具体实现时,可以为买方用户提供Web页面,当用户需要购买某这票据时,就可以登录到该Web页面中选择自己所需的信息,然后提交到服务器端;同时,Web服务器上还可以罗列出可供选择的服务网点,买方用户可以根据自己的实际需要选择一个服务网点作为自己的取票地点。或者,如前文所述,买方用户也可以登录到某服务网点的二级域名,在直接在该二级域名对应的页面中进行信息的选择或者填写,然后提交到服务器端,服务器端就可以根据该二级域名确定出当前用户需要到哪个网点取票。
其中,由于票据一般具有多种类型,例如,对于彩票而言,可以分为传统彩票及竞彩,等等,不同类型的票据对应到票据打印机端时,能够识别的数据格式会所不同,因此,服务器端在获取买方用户提交的票据数据时,需要获取票据类型以及票据内容两部分信息,票据内容就是用户选择或者输入的具体数字等信息。
票据数据发送单元202,用于按照预置的网络协议对所述票据数据进行封装后发送到服务网点的辅助设备;
服务器端在接收到买方用户提交的票据数据之后,可以按照一定的网络协议对票据数据进行封装,之后就可以发送到服务网点的辅助设备(服务网络可能是买方用户选择的,也可能是根据用户登录到网站的二级域名确定的)。例如,可以采用HTTP(HypertextTransferProtocol,超文本传输协议)进行封装,将票据类型封装在HTTP协议的消息头中,将票据内容封装在HTTP协议的消息体中,当然,还可以将票据类型以及票据内容全部封装在HTTP协议的消息体中,并按照一定的方式进行标识区分,或者,还可以使用其他的网络协议,等等。
辅助设备可以包括:
解析单元203,用于解析所述票据数据发送单元发送的消息,获取所述票据类型及票据内容;
辅助设备在接收到服务器端按照预定的网络协议发送的消息之后,可以按照协议的内容对消息进行解析,也即可以对消息进行解封装,从消息头中解析出票据类型信息,从消息体中解析出票据内容信息。
数据转换单元204,用于根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
在解析出票据内容之后,可以发送给票据打印设备进行打印,但是在此之前,需要将票据内容转换为票据打印设备能够识别的格式。如前文所述,由于在常规方式下,票据打印设备只能接收通过接盘输入的数据,或者通过读票据输入的数据,具体通过哪个数据接口接收数据,是由票据类型决定的。例如,假设票据打印设备是彩票机,则如果是传统彩票,则需要从彩票机的键盘输入数据,如果是竞彩,则需要从彩票机上连接的读票器输入。因此我们在进行数据转换时,就可以根据不同的票据类型,来选择需要进行何种转换,以便模拟出键盘输入或者读票器输入。其中,如果根据票据类型判断出需要模拟键盘输入,则数据转换单元204可以包括:
第一转换子单元,用于根据票据类型,将票据内容转换为模拟键盘值,以便通过模拟键盘输入的方式,将票据内容通过键盘口发送给票据打印设备。
或者,如果根据票据类型判断出需要模拟读票器输入,则数据转换单元204可以包括:
第二转换子单元,用于根据票据类型,将票据内容转换为机读卡对应的十六进制数据,以便通过模拟读票器输入的方式,将票据内容通过读票口发送给票据打印设备。
需要说明的是,为了完成上述数据转换操作,具体涉及一些解析及匹配问题,包括解析票据打印设备键盘的数据格式,解析票据打印设备读票口的数据格式。这些数据可以通过大量的测试和调试后获得,这里不再进行详述。
数据输入单元205,用于将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
在将票据内容转换为票据打印设备能够识别的格式之后,就可以将转换后的数据输入到票据打印设备,票据打印设备就可以通过其连接到的打印机打印出纸质票据。
可见,在本发明实施例中,可以通过服务器端与服务网点的辅助设备的相互配合,能够实现买方用户只要在远程通过登录到服务器网站选择或输入自己所需的票据数据,就可以在服务网点打印出相应的纸质票据。对于票据打印设备而言,可以根据辅助设备发送的数据自动进行纸质票据的打印,因此,可以节约打印票据所需的时间和打印服务提供者的人力物力成本。
需要说明的是,如前文所述,为了实现时更加灵活,可以使得票据打印设备不仅能够根据辅助设备输入的数据进行出票,也可以实现其常规功能,也即通过实际从键盘或读票器输入的数据进行出票,辅助设备可以设置有开关装置。这样,服务网点在正常工作时间,就可以将辅助设备关闭,等到下班时间或者节假日则可以将辅助设备打开。
当然,在辅助设备处于关闭状态时,无法向服务器端发送心跳信号,服务器端也就无法向该辅助设备发送票据数据,因此,在本发明实施例中,如果服务器端在接收到买方用户提交的票据数据时,发现目标辅助设备处于关闭状态(没有检测到目标辅助设备发送的心跳信号),则可以将接收到的票据数据在服务器端的数据库中进行保存。当该目标辅助设备被启动之后,会自动向服务器端发送心跳信号,服务器端接收到心跳信号之后,会判断出该目标辅助设备启动了,于是可以向其发送通知消息,以通过该辅助设备将有票据数据向其发送;该目标辅助设备接收到通知消息之后,如果当前工作状态为空闲,则向服务器端反馈该工作状态信息,这样,服务器端票据数据发送单元就可以向该辅助设备发送票据数据。
也即,对应于该功能,服务器端还包括:
判断单元,用于在接收到买方用户通过Web页面提交的票据数据之后,判断该买方用户选择的服务网点的辅助设备是否处于关闭状态;
第一保存单元,用于如果所述判断单元判断的结果为是,则在服务器端的数据库中保存所述票据数据以及对应的服务网点信息;
所述辅助设备还包括:
心跳信息发送单元,用于接收到启动指令后,向所述服务器端发送心跳信息;
所述服务器端还包括:
第一通知单元,用于在接收到辅助设备上传的心跳信息之后,向该辅助设备发送有票据数据需要发送的通知消息;
所述辅助设备还包括:
第一设备状态反馈单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器端反馈该工作状态信息,以便所述服务器端的所述票据数据发送单元向该辅助设备发送所述票据数据。
另外,在实际应用中,可以允许一个服务网点中配置多个辅助设备,每个辅助设备对应一台票据打印设备,此时,服务器端在接收到买方用户提交的票据数据之后,如果发现对应的服务网点中存在多个辅助设备,可以直接从中随机选择一个处于开启状态的辅助设备作为目标辅助设备。或者在另一种实现方式下,还可以首先将买方用户提交的票据数据保存在服务器端的数据库中。服务网点的店主用户可以登录到服务器中,查看是否有票据数据需要向自己的服务网点发送,如果有,则可以选定一个辅助设备作为此次发送的目标辅助设备,之后,服务器端就可以将票据数据发送到该目标辅助设备。
也即,对应于该功能,所述服务器端还包括:
第二保存单元,用于在接收到买方用户通过Web页面提交的票据数据以及选择的服务网点之后,在服务器端的数据库中进行保存;
出票指令接收单元,用于接收店主用户通过Web页面提交的出票指令以及选定的辅助设备身份标识;
通知单元,用于向所述选定的辅助设备发送通知消息;
所述辅助设备还包括:
第二设备状态反馈单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器端反馈该工作状态信息,以便所述服务器端的所述票据数据发送单元向该辅助设备发送所述票据数据。
当然,在实际应用中,如果一个服务网点中只有一台辅助设备,并且处于开启状态,也可以在服务器端首先在数据库中对买方用户提交的票据数据进行保存,当服务网点的店主用户登录到服务器,并提交出票指示之后,在将票据数据发送到该服务网点的辅助设备。
另外,由于辅助设备还可以连接到票据打印设备的打印接口,因此,可以对打印机的打印状况进行采集,如果采集到已经将某票据数据打印成功,则可以反馈给服务端,服务器端在接收到相应的成功消息之后,可以在Web页面中进行显示,这样,当买方用户登录到Web页面之后,就可以查看到该打印成功的消息。
也即,对应于该功能,所述辅助设备还包括:
信息采集单元,用于通过所述打印接口采集打印操作相关信息;
消息反馈单元,用于票据打印成功后,向所述服务器端进行消息反馈;
所述服务器端还包括:
显示单元,用于在Web页面中显示出相应的打印成功消息。
另外,在实际应用中,还可以在辅助设备本地提供本地数据库,对服务器端发送过来的各个票据数据进行保存,同时,根据各个票据数据当前所处的状态在本地数据库中进行标记,当前所处的状态包括尚未打印、已打印成功但未向服务器反馈、已打印成功并已向服务器反馈等。辅助设备每次连接到网络时,都可以查询本地数据库,如果存在被标记为已打印成功但未向服务器反馈的票据数据,则向服务器端进行消息反馈。
也即,对应于该功能,所述辅助设备还包括:
本地保存单元,用于将从服务器端接收到的票据数据在本地数据库进行保存;
本地状态标记单元,用于根据各个票据数据当前所处的状态在所述本地数据库中进行标记,所述当前所处的状态包括尚未打印、已打印成功但未向服务器反馈、已打印成功并已向服务器反馈;
查询单元,用于每次连接到网络时,查询所述本地数据库,如果存在被标记为已打印成功但未向服务器反馈的票据数据,则向服务器端进行消息反馈。
使用本地数据库是为了数据的安全。例如,一次下载到辅助设备本地的数据有100条票据数据,辅助设备正在控制票据打印设备出票,此时如果网络异常,采集到的打印成功的消息将无法上传到服务器端,此时就可以将本地数据库中的该票据数据标记为“已打印成功但未向服务器反馈”状态。待网络正常时,辅助设备就可以首先检查本地数据库有没有需要反馈给后台的数据,有数据需要反馈则将其打包反馈后台。此方法避免了买方用户获得的信息与实际的打印情况不同,例如辅助设备和票据打印设备工作正常,能够正常出票,但是此时网络异常,数据无法反馈到后台,此时,如果没有本地数据库,则会此条数据将会丢失,后台将会一直显示“未出票”。
另外需要说明的是,在实际应用中,辅助设备上可以带有出票速度快速、中速,慢速三个按键,用于选择三个出票速度。具体在选择速度时,可以根据不同的票据打印设备机型而设定,因为不同机型识别键盘值等信息的速度有差异。辅助设备上还可以带有连续和停止两个工作状态,用于控制辅助设备工作状态。其中,如果处于连续状态,则后台发送票据数据到本地之后,辅助设备可以直接进行数据转换及触发打印。如果是停止状态,则后台发送数据到本地,辅助设备可以将数据保存在本地数据库,而不会直接触发打印,当店主用户或者操作员点击连续按键时,辅助设备才会将控制票据打印设备出票。也即,所述辅助设备还包括:
保存单元,用于在接收到所述服务器端发送的消息之后,如果所述辅助设备处于停止状态,则将票据数据保存在本地数据库中;
触发单元,用于在将所述辅助设备切换到连续状态之后,触发执行数据转换及输入到票据打印设备的操作。
当然,为了出票时的安全性,辅助设备工作状态为连续时,将会屏蔽票据打印设备原有的数据输入设备,也即,此时的键盘、读票器等无法使用,防止自动出票时,因操作键盘等外部设备而导致打印票据出错。也即,在连续状态下,如果票据打印设备还从键盘或者读票器接收到了操作员手动输入的数据,则可能会导致发生错误,为避免这种情况的发生,辅助设备还可以包括:
信号阻断单元,用于当处于连续出票状态时,将票据打印设备自带的数据输入设备中的信号阻断。
当然,等到此次连续出票结束之后,可以再将自带的数据输入设备中的信号恢复,使其能够正常出票。
最后需要说明的是,在实际应用中,设备在运行中,可能出现的错误情况,都有相应的编码号,在设备运行中出现错误操作或者因为设备连接等原因造成的硬件错误,会在反馈给后台的信息中添加相应的信息。然后后台显示给店主或者票据打印设备的操作员,方便其根据此信息检测设备的状态等问题,及时完成设备的调试过程,使设备正常工作。
另外,前述辅助设备可以集成到arm(一种嵌入式系统)处理器中实现,或者还可以按照功能划分成不同的部分,分别集成到不同的处理器中。例如,可以包括云设备及快速打印设备两部分,其中,云设备用于接收网络后台发送的票据数据,并进行解析,快速打印设备用于对数据进行转换,使得其能够被票据打印设备识别。
与本发明实施例提供的前述打印票据的辅助系统相对应,本发明实施例还提供了一种打印票据的辅助设备,参见图3,该辅助设备可以包括:
通信单元301,用于通过预置的网络协议接收服务器端发送的票据数据消息,所述票据数据包括票据类型及票据内容,由买方用户通过Web页面提交到服务器,并由服务器按照所述网络协议进行封装后发送到所述辅助设备;
解析单元302,用于解析所述接收到的票据数据消息,获取所述票据类型及票据内容;
数据转换单元303,用于根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
数据输入单元304,用于将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
其中,服务器端在接收到买方用户通过Web页面提交的票据数据之后,如果所述辅助设备处于关闭状态,则在服务器端的数据库中进行保存,所述通信单元包括:
心跳信息发送子单元,用于接收到启动指令后,向所述服务器发送心跳信息,以便所述服务器在接收到辅助设备上传的心跳信息之后,向该辅助设备发送有票据数据需要发送的通知消息;
第一设备状态反馈子单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器反馈该工作状态信息,以便所述服务器向该辅助设备发送所述票据数据;
第一接收子单元,用于通过预置的网络协议接收服务器发送的票据数据。
所述服务网点可以具有多个所述辅助设备,每个辅助设备对应一台票据打印设备,每个辅助设备具有唯一的身份标识;所述服务器在接收到用户提交的票据数据之后,在服务器端的数据库中进行保存,当接收到店主用户通过Web页面提交的出票指令以及选定的辅助设备身份标识时,向所述辅助设备发送通知消息;所述通信单元包括:
第二设备状态反馈子单元,用于接收到所述通知消息之后,如果当前工作状态为空闲,则向所述服务器反馈该工作状态信息,以便所述服务器向该辅助设备发送所述票据数据;
第二接收子单元,用于通过预置的网络协议接收服务器发送的票据数据。
所述辅助设备的工作状态可以包括连续状态及停止状态,所述辅助设备还包括:
保存单元,用于在接收到所述服务器端发送的消息之后,如果所述辅助设备处于停止状态,则将票据数据保存在本地数据库中;
触发单元,用于在将所述辅助设备切换到连续状态之后,触发执行数据转换及输入到票据打印设备的操作。
所述票据打印设备自带有数据输入设备,所述辅助设备还包括:
信号阻断单元,用于当所述辅助设备处于连续状态时,将所述自带的数据输入设备中的信号阻断。
所述辅助设备还与票据打印机的打印接口连接,所述辅助设备还包括:
信息采集单元,用于通过所述打印接口采集打印操作相关信息;
消息反馈单元,用于票据打印成功后,向服务器端进行消息反馈,以便服务器端在Web页面中显示出相应的打印成功消息。
所述辅助设备还包括:
本地保存单元,用于将从服务器端接收到的票据数据在本地数据库进行保存;
本地状态标记单元,用于根据各个票据数据当前所处的状态在所述本地数据库中进行标记,所述当前所处的状态包括尚未打印、已打印成功但未向服务器反馈、已打印成功并已向服务器反馈;
查询单元,用于每次连接到网络时,查询所述本地数据库,如果存在被标记为已打印成功但未向服务器反馈的票据数据,则向服务器端进行消息反馈。
所述票据打印设备的数据接口包括键盘口和/或读票口,所述数据转换单元包括:
第一转换子单元,用于根据所述票据类型,将所述票据内容转换为模拟键盘值,以便通过模拟键盘输入的方式,将所述票据内容通过所述键盘口发送给所述票据打印设备;
或者,
第二转换子单元,用于根据所述票据类型,将所述票据内容转换为机读卡对应的十六进制数据,以便通过模拟读票器输入的方式,将所述票据内容通过所述读票口发送给所述票据打印设备。
与前述打印票据的辅助系统及设备相对应,本发明实施例还提供了一种打印票据的辅助方法,参见图4,该方法可以包括:
S401:通过预置的网络协议接收服务器端发送的票据数据消息,所述票据数据包括票据类型及票据内容,由买方用户通过Web页面提交到服务器,并由服务器按照所述网络协议进行封装后发送;
S402:解析所述接收到的票据数据消息,获取所述票据类型及票据内容;
S403:根据预置的该票据类型对应的数据转换方式,将所述票据内容转换为票据打印设备能够识别的格式;
S404:将转换后的数据输入到所述票据打印设备进行打印,得到相应的票据。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的打印票据的辅助设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本申请可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。