凭证自动打印系统技术领域
本发明涉及一种凭证自动打印系统。
背景技术
现有技术中的凭证打印系统,尤其是用于报销的凭证的打印系统,均是通过第三
方软件且通过手动操作的方式来实现凭证的打印,最终邮寄给用户。由于手动操作的方式
会造成人工成本高、邮寄成本高且邮寄地址易出错等缺陷,导致该凭证的获取方式效率低
下。
发明内容
本发明要解决的技术问题是为了克服现有技术中手动打印凭证导致用户获取凭
证的方式效率低下、易出错的缺陷,提供一种凭证自动打印系统。
本发明是通过以下技术方案解决上述技术问题的:
一种凭证自动打印系统,其特点在于,包括一打印机、均与所述打印机通信连接的
一打印机控制器、一凭证打印管理模块以及一数据库,所述凭证包括订单,所述数据库存储
有由所述订单构成的一待打印订单列表以及每一所述订单的订单票号的状态;
所述凭证打印管理模块用于设置所述打印机与所述订单对应的打印规则;
所述打印机控制器用于向所述打印机发送一订单打印请求;
所述打印机用于在收到所述订单打印请求后获取所述打印规则对应的所述订单
的订单票号,并按一预设顺序对所述订单票号排序,并返回第一个待打印的第一订单票号
至所述打印机控制器;
所述打印机控制器还用于在收到所述第一订单票号后向所述打印机发送所述第
一订单票号的状态;
所述打印机还用于根据所述第一订单票号的状态打印第一订单,并更新所述数据
库中所述第一订单票号的状态。
较佳地,所述凭证还包括与所述订单对应的发票,所述数据库还存储有每一发票
的状态,所述打印机控制器还用于向所述打印机发送一发票打印请求,所述打印机还用于
根据所述发票打印请求打印与所述订单对应的发票,并更新所述数据库中所述发票的状
态。
较佳地,所述凭证还包括与所述订单对应的面单,所述数据库还存储有每一面单
的状态,所述打印机控制器还用于向所述打印机发送一面单打印请求,所述打印机还用于
根据所述面单打印请求打印与所述订单对应的面单,并更新所述数据库中所述面单的状
态。
较佳地,所述凭证打印管理模块还用于在所述打印机内设置一行程单号段,所述
打印机还包括一第一判断模块,所述第一判断模块用于判断所述行程单号段是否能够满足
所述待打印订单列表内的订单的打印,并在判断结果为是时根据所述订单打印请求获取所
述打印规则对应的所述订单的订单票号。
较佳地,所述打印机还包括一第二判断模块,所述第二判断模块用于判断所述数
据库的发票的状态是否可用,并在判断结果为是时根据所述发票打印请求打印与所述订单
对应的发票。
本发明的积极进步效果在于:本发明通过凭证打印管理模块、打印机控制器、打印
机以及数据库的相互通信和配合,实现了对凭证的自动打印,无需借助第三方软件,只需要
打印机控制器发送相应的打印请求,打印机执行相应的处理,即可自动完成对包括订单、发
票、面单等凭证的自动打印。
附图说明
图1为本发明实施例1的凭证自动打印系统的系统结构示意图。
图2为本发明实施例1的凭证自动打印系统的控制关系示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实
施例范围之中。
实施例1
本实施例提供一种凭证自动打印系统,如图1-2所示,包括一打印机1、均与所述打
印机通信连接的一打印机控制器2、一凭证打印管理模块3以及一数据库4,所述凭证包括订
单,所述数据库存储有由所述订单构成的一待打印订单列表以及每一所述订单的订单票号
的状态;
其中,订单可为机票订单、旅行订单、住宿订单、货物采购订单等。订单票号的状态
可包括订单的内容、订单是否被打印、订单被打印的时间、订单被打印的次数等,本实施例
的订单票号的状态可为其中的一项或多项。而订单的数据表可为下表1所示:
表1订单的数据表
![]()
![]()
从表1可看出,订单的打印可以任务组的方式执行,任务组的状态决定了订单是否
需要执行自动打印;而任务组可分配至不同的认领人来处理该任务。而订单的数据表形式
不限于表1。
所述凭证打印管理模块用于设置所述打印机与所述订单对应的打印规则;
其中,打印规则指根据订单的具体类型进行哪些小项的打印和布局,如针对A类型
的订单,需要打印成涵盖小项B、C和D的X风格的订单页面。如下表2针对机票订单所示的打
印规则的数据表,但本实施例的打印规则不限于此。
表2打印规则的数据表
![]()
![]()
从表2可以看出,针对不同的订单类型分配有不同的规则名称,如针对机票订单,
根据包括所在城市以及所在机场等参数项来分配该类订单的打印规则ID(识别号)。可以理
解,表1和表2中的字段名的中文释义为该表内“描述”一栏,而“类型”和“默认值”一栏英文
描述均为本领域技术人员在建立数据表时的通常表述方法,本实施例对此不作赘述。
所述打印机控制器用于向所述打印机发送一订单打印请求;
所述打印机用于在收到所述订单打印请求后获取所述打印规则对应的所述订单
的订单票号,并按一预设顺序对所述订单票号排序,并返回第一个待打印的第一订单票号
至所述打印机控制器;
其中,订单票号是指订单的编号。
所述打印机控制器还用于在收到所述第一订单票号后向所述打印机发送所述第
一订单票号的状态;
所述打印机还用于根据所述第一订单票号的状态打印第一订单,并更新所述数据
库中所述第一订单票号的状态。
可以理解,打印机在完成第一订单的打印后可根据设置自动完成之后的订单的打
印操作。而第一订单票号的状态可表现为对执行打印操作之前和之后的订单票号的状态变
化。
所述凭证还包括与所述订单对应的发票,所述数据库还存储有每一发票的状态,
所述打印机控制器还用于向所述打印机发送一发票打印请求,所述打印机还用于根据所述
发票打印请求打印与所述订单对应的发票,并更新所述数据库中所述发票的状态。
所述凭证还包括与所述订单对应的面单,所述数据库还存储有每一面单的状态,
所述打印机控制器还用于向所述打印机发送一面单打印请求,所述打印机还用于根据所述
面单打印请求打印与所述订单对应的面单,并更新所述数据库中所述面单的状态。
针对发票和面单的打印,上述方案可通过在系统中设置针对发票打印和面单打印
的接口,从而实现对发票和面单的自动打印。而发票和面单的状态的更新可举例为:在打印
发票和/或面单前,该订单对应的发票和/或面单的状态为s1,而在完成发票和/或面单的打
印后,该订单对应的发票和/或面单的状态为s2。
所述凭证打印管理模块还用于在所述打印机内设置一行程单号段,所述打印机还
包括一第一判断模块11,所述第一判断模块用于判断所述行程单号段是否能够满足所述待
打印订单列表内的订单的打印,并在判断结果为是时根据所述订单打印请求获取所述打印
规则对应的所述订单的订单票号。
行程单号段是指多个行程单的编号所形成的段区间。涉及到行程单的订单种类通
常可为机票订单或旅行订单,打印机会根据该行程单号段来打印在该号段内的机票订单或
旅行订单。以提高凭证打印的可靠性和有效性。
所述打印机还包括一第二判断模块12,所述第二判断模块用于判断所述数据库的
发票的状态是否可用,并在判断结果为是时根据所述发票打印请求打印与所述订单对应的
发票。
此外,在打印发票之前判断是否有可用的发票,能够提高凭证打印的可靠性和有
效性。
通过凭证打印管理模块、打印机控制器、打印机以及数据库的相互通信和配合,实
现了对凭证的自动打印,无需借助第三方软件,只需要打印机控制器发送相应的打印请求,
打印机执行相应的处理,即可自动完成对包括订单、发票、面单等凭证的自动打印。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些
仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背
离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更
和修改均落入本发明的保护范围。