业务单据的生成方法及系统与流程

文档序号:14653639发布日期:2018-06-08 22:32阅读:442来源:国知局
业务单据的生成方法及系统与流程
本发明涉及电子信息领域,具体涉及一种业务单据的生成方法及系统。
背景技术
:为了便于用户及商家了解业务状况,很多业务操作都会产生对应的业务单据。例如,当用户缴费后,收款单位会打印缴费小票供业务双方核实,缴费小票就属于一种形式的业务单据。除缴费小票外,超市购物小票、点餐单等都可以称作业务单据。目前,为了实现上述业务单据的打印,通常采用如下方案:预先编写用于打印业务单据的应用程序,并且,在该应用程序中,设置用于接收业务数据并对业务数据进行排版、格式调整等操作的代码段。由此可见,在该种方式中,业务单据的打印方式是由代码段预先定义好的,当接收到业务数据后,只需通过对应的代码段即可实现业务单据的打印操作。但是,发明人在实现本发明的过程中,发现在现有技术中至少存在如下问题:由于业务单据的打印方式是由代码段预先定义好的,因此,业务单据只能按照固定的方式进行打印,若需要调整业务单据的打印方式,则不得不重新编写应用程序中包含的代码段。并且,在重新编写代码段之后,往往还需要对更改后的应用程序进行更新发布,才能使更改生效。由此可见,在现有的业务单据生成方式中,业务单据的生成方式相对固定、不能灵活调整。技术实现要素:鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种业务单据的生成方法及系统。根据本发明的一个方面,提供了一种业务单据的生成方法,包括:确定与业务单据相对应的样式信息,根据所述样式信息生成与所述业务单据相对应的单据模板;将生成的单据模板预先存储到预设的单据模板库中;当接收到与业务操作相对应的业务数据时,从所述单据模板库中获取与所述业务数据相对应的单据模板;根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据。可选地,所述确定与业务单据相对应的样式信息,根据所述样式信息生成与所述业务单据相对应的单据模板的步骤具体包括:预先将业务单据划分为多种类型,分别确定与每种类型的业务单据相对应的样式信息,根据每种类型的业务单据的样式信息生成与该种类型的业务单据相对应的单据模板;则所述从所述单据模板库中获取与所述业务数据相对应的单据模板的步骤具体包括:分析所述业务数据的数据内容,根据分析结果确定与该业务数据相对应的业务单据的类型,从所述单据模板库中获取与该类型的业务单据相对应的单据模板。可选地,所述确定与业务单据相对应的样式信息,根据所述样式信息生成与所述业务单据相对应的单据模板的步骤之后,进一步包括:对已生成的与所述业务单据相对应的单据模板进行更新,根据更新结果更新所述单据模板库。可选地,所述确定与业务单据相对应的样式信息,根据所述样式信息生成与所述业务单据相对应的单据模板的步骤具体包括:通过服务器确定与业务单据相对应的样式信息,根据所述样式信息在所述服务器上生成与所述业务单据相对应的单据模板;则所述将生成的单据模板预先存储到预设的单据模板库中的步骤具体包括:在终端设备启动时和/或运行过程中,获取服务器上生成的与所述业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。可选地,所述接收到与业务操作相对应的业务数据的步骤具体包括:接收来自业务后台的推送消息,根据所述推送消息确定与业务操作相对应的业务数据。可选地,所述与业务操作相对应的业务数据包括以下中的至少一个:与付款类型的业务操作相对应的付款类型的业务数据、与点餐类型的业务操作相对应的点餐类型的业务数据、以及与购物类型的业务操作相对应的购物类型的业务数据。可选地,所述根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据的步骤具体包括:根据与所述业务数据相对应的单据模板确定所述业务数据的展示样式,根据所述展示样式对所述业务数据进行无线打印;其中,所述无线打印包括:蓝牙打印和/或WIFI打印。可选地,所述与业务单据相对应的样式信息包括以下中的至少一个:单据抬头、起始字段、结尾字段、业务字段、以及二维码信息;其中,所述业务字段的数量为至少一个,且所述样式信息中进一步包含各个业务字段的字段位置、字段标识、字段状态和/或字段格式。可选地,所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符;则当所述与业务操作相对应的业务数据中包含多个相同类型的数据字段时,每个数据字段中进一步包含字段属性信息。可选地,当所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符,且所述业务字段的数量为多个时,所述与业务操作相对应的业务数据中的各个数据字段进一步包含数据类型标识符,则所述根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据的步骤具体包括:根据预设的模板配置信息,确定所述数据类型标识符与所述字段类型标识符之间的映射关系;根据所述映射关系,将所述业务数据添加到与所述业务数据相对应的单据模板中,以生成对应的业务单据。可选地,所述业务单据的类型包括以下中的至少一个:携带优惠信息的业务单据、携带商品信息的业务单据、携带交易次数的业务单据;其中,所述优惠信息包括:折扣信息、和/或电子券信息。可选地,所述当接收到与业务操作相对应的业务数据时,从所述单据模板库中获取与所述业务数据相对应的单据模板;根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据的步骤具体包括:当应用程序接收到与业务操作相对应的业务数据时,通过预设的调用接口从所述单据模板库中获取与所述业务数据相对应的单据模板;由所述应用程序根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据;其中,所述调用接口用于访问所述单据模板库。根据本发明的另一方面,提供了一种业务单据的生成系统,包括:单据模板生成模块,适于确定与业务单据相对应的样式信息,根据所述样式信息生成与所述业务单据相对应的单据模板;存储模块,适于将生成的单据模板预先存储到预设的单据模板库中;接收模块,适于接收到与业务操作相对应的业务数据;获取模块,适于当接收到与业务操作相对应的业务数据时,从所述单据模板库中获取与所述业务数据相对应的单据模板;业务单据生成模块,适于根据所述业务数据以及与所述业务数据相对应的单据模板生成对应的业务单据。可选地,所述单据模板生成模块进一步适于:预先将业务单据划分为多种类型,分别确定与每种类型的业务单据相对应的样式信息,根据每种类型的业务单据的样式信息生成与该种类型的业务单据相对应的单据模板;则所述获取模块进一步适于:分析所述业务数据的数据内容,根据分析结果确定与该业务数据相对应的业务单据的类型,从所述单据模板库中获取与该类型的业务单据相对应的单据模板。可选地,所述系统进一步包括:更新模块,适于对已生成的与所述业务单据相对应的单据模板进行更新,根据更新结果更新所述单据模板库。可选地,所述单据模板生成模块进一步适于:通过服务器确定与业务单据相对应的样式信息,根据所述样式信息在所述服务器上生成与所述业务单据相对应的单据模板;则所述存储模块进一步适于:在终端设备启动时和/或运行过程中,获取服务器上生成的与所述业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。可选地,所述接收模块进一步适于:接收来自业务后台的推送消息,根据所述推送消息确定与业务操作相对应的业务数据。可选地,所述与业务操作相对应的业务数据包括以下中的至少一个:与付款类型的业务操作相对应的付款类型的业务数据、与点餐类型的业务操作相对应的点餐类型的业务数据、以及与购物类型的业务操作相对应的购物类型的业务数据。可选地,所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符;则当所述与业务操作相对应的业务数据中包含多个相同类型的数据字段时,每个数据字段中进一步包含字段属性信息。可选地,当所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符,且所述业务字段的数量为多个时,所述与业务操作相对应的业务数据中的各个数据字段进一步包含数据类型标识符,则所述业务单据生成模块具体适于:根据预设的模板配置信息,确定所述数据类型标识符与所述字段类型标识符之间的映射关系;根据所述映射关系,将所述业务数据添加到与所述业务数据相对应的单据模板中,以生成对应的业务单据。可选地,所述业务单据生成模块进一步适于:根据与所述业务数据相对应的单据模板确定所述业务数据的展示样式,根据所述展示样式对所述业务数据进行无线打印;其中,所述无线打印包括:蓝牙打印和/或WIFI打印。依据本发明的再一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如上述的业务单据的生成方法对应的操作。依据本发明的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述的业务单据的生成方法对应的操作。综上所述,在本发明提供的业务单据的生成方法及系统中,预先根据业务单据的样式信息生成对应的单据模板,并在接收到与业务操作相对应的业务数据时,选择与该业务数据相对应的单据模板,根据该单据模板生成对应的业务单据。由此可见,在本实施例中,预先定义了业务单据的单据模板,且该单据模板中包含的样式信息与具体的业务数据内容无关,因此,单据模板可通用于各次业务操作所对应的业务数据,从而实现了根据单据模板快速生成业务单据的效果。并且,由于单据模板存储在单据模板库中,与应用程序的代码段分离,因此,能够通过更新单据模板库中的单据模板便捷地更新业务单据的生成方式,提升了灵活性。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本发明实施例一提供的一种业务单据的生成方法的流程图;图2示出了本发明实施例二提供的一种业务单据的生成方法的流程图;图3示出了本发明实施例三提供的一种业务单据的生成系统的结构图;图4示出了根据本发明实施例五提供的一种电子设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。实施例一图1示出了本发明实施例一提供的一种业务单据的生成方法的流程图。如图1所示,该方法包括:步骤S110:确定与业务单据相对应的样式信息,根据该样式信息生成与业务单据相对应的单据模板。其中,与业务单据相对应的样式信息主要是指:与业务单据中的业务数据的具体内容无关的信息,用于控制业务单据的展示样式。具体地,与业务单据相对应的样式信息可包括多种内容。例如,可以包括业务单据的抬头信息、起始字段、结尾字段以及位于结尾的二维码信息等。另外,还可以包括业务单据中的各个业务字段的字段位置、字段标识、字段状态和/或字段格式等。相应地,根据该样式信息生成的与业务单据相对应的单据模板中包含了上述样式信息的内涵。因此,通过该单据模板即可快速确定对应的业务单据的展示样式。步骤S120:将生成的单据模板预先存储到预设的单据模板库中。由于步骤S110中生成的单据模板的数量可能不止一个,因此,为了便于管理,将步骤S110中生成的各个单据模板存储到单据模板库中。其中,该单据模板库可用于存储各种类型的单据模板,例如,付款类型的单据模板、购物类型的单据模板、点餐类型的单据模板等。另外,针对每种类型的单据模板,还可以进一步设置多种单据子模板,例如,付款类型的单据模板又可以进一步包括:携带优惠信息的单据子模板、未携带优惠信息的单据子模板、现金付款类型的单据子模板、刷卡付款类型的单据子模板等。步骤S130:当接收到与业务操作相对应的业务数据时,从单据模板库中获取与该业务数据相对应的单据模板。具体地,当用户触发业务操作时,本实施例中的执行主体将会接收到与业务操作相对应的业务数据。其中,当本实施例中的执行主体为终端设备时,业务数据可由后台业务系统通过推送消息的方式推送给该终端设备;或者,当业务操作直接通过该终端设备触发时,也可由该终端设备直接获取与该业务操作相对应的业务数据。总之,本发明不限定业务数据的具体来源。另外,还可以预先设置需要打印业务单据的业务操作的操作类型,相应地,每当相应类型的业务操作被触发时,本实施例中的相关设备自动捕获到该业务操作,相应地,本实施例中的执行主体自动接收到与该业务操作相对应的业务数据,从而省去了人工触发业务单据的生成过程的繁琐操作,能够实现业务单据的全自动生成。其中,与业务操作相对应的业务数据包括以下中的至少一个:与付款类型的业务操作相对应的付款类型的业务数据、与点餐类型的业务操作相对应的点餐类型的业务数据、以及与购物类型的业务操作相对应的购物类型的业务数据。具体地,当接收到业务数据后,可根据该业务数据的类型从单据模板库中获取与该类型的业务数据相对应的单据模板。步骤S140:根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据。具体地,根据与业务数据相对应的单据模板确定业务数据的展示样式,然后,根据该展示样式生成与该业务数据相对应的业务单据。其中,可通过多种方式生成业务单据,例如,可以通过无线打印的方式生成纸质的业务单据;又如,还可以通过电子发票等形式生成电子的业务单据。由此可见,在本实施例中,预先定义了业务单据的单据模板,且该单据模板中包含的样式信息与具体的业务数据内容无关,因此,单据模板可通用于各次业务操作所对应的业务数据,从而实现了根据单据模板快速生成业务单据的效果。并且,由于单据模板存储在单据模板库中,与应用程序的代码段分离,因此,能够通过更新单据模板库中的单据模板便捷地更新业务单据的生成方式,提升了灵活性。实施例二图2示出了本发明实施例二提供的一种业务单据的生成方法的流程图。其中,在本实施例中,以能够为商家提供收款、对账、营销等功能的APP为例进行说明。当然,在本发明其他的实施例中,本发明中的方式还可以应用于其他各类场景中,例如,应用于能够为商家提供点餐、购物等功能的APP中。如图2所示,该方法包括:步骤S210:预先将业务单据划分为多种类型,分别确定与每种类型的业务单据相对应的样式信息,根据每种类型的业务单据的样式信息生成与该种类型的业务单据相对应的单据模板。其中,业务单据的类型可以根据业务功能的类型进行划分。例如,划分为收款类型的业务单据、对账类型的业务单据、点餐类型的业务单据等。另外,业务单据的类型还可以根据业务实现方式进行划分,例如,划分为携带优惠信息的业务单据、携带商品信息的业务单据、携带交易次数的业务单据等。并且,针对一种类型的业务单据,还可以进一步将该类型的业务单据进一步划分为多种类型的业务子单据。例如,在本实施例中,针对收款类型的业务单据,根据付款方式和/或付款金额的不同,还可以进一步划分为以下中的至少一个:带有优惠信息(包括折扣信息和/或电子券信息)的业务子单据、不带有优惠信息的业务子单据、现金支付的业务子单据、刷卡支付的业务子单据、现金与刷卡混合支付的业务子单据、未携带商品信息的业务子单据、携带有商品信息的业务子单据、以及携带交易次数的业务子单据。例如,对于通过理发店的会员卡进行支付所产生的业务单据而言,还需要携带交易次数,具体包括:这是您的第M次交易,您剩余的交易次数为N次等等。总之,在本实施例中,考虑到各种形式的付款方式所对应的业务单据中所显示的内容略有差异,因此,在本实施例中,可以预先结合业务功能、业务操作方式、付款方式等多种因素将业务单据划分为多种类型,并分别确定与每种类型的业务单据相对应的样式信息,根据每种类型的业务单据的样式信息生成与该种类型的业务单据相对应的单据模板。具体地,与每种类型的业务单据相对应的样式信息主要是指:与业务单据中的业务数据的具体内容无关的信息,用于控制业务单据的展示样式。具体地,与业务单据相对应的样式信息可包括多种内容。例如,可以包括业务单据的抬头信息、起始字段、结尾字段以及位于结尾的二维码信息等。另外,还可以包括业务单据中的各个业务字段的字段位置、字段标识、和/或字段格式等。例如,针对现金与刷卡混合支付的业务单据而言,其对应的样式信息包括:抬头信息:付款凭证;起始字段:年月日信息;结尾字段:祝您购物愉快。另外,样式信息中还包括如下多个业务字段:字段标识为“业务字段一”的第一业务字段,其位于起始字段的下方,字段格式为黑体加粗,具体可用于填写付款总金额;字段标识为“业务字段二”的第二业务字段,其位于第一业务字段的下方,字段格式为楷体非加粗,具体可用于填写现金支付金额;字段标识为“业务字段三”的第三业务字段,其位于第二业务字段的下方,字段格式为楷体非加粗,具体可用于填写刷卡支付金额。相应地,根据该样式信息生成的与业务单据相对应的单据模板中包含了上述样式信息的内涵。因此,通过该单据模板即可快速确定对应的业务单据的展示样式。例如,在单据模板中可设置对应的字体大小、粗细及模板的显示样式、换行及分割线位置等。由此可见,单据模板中仅包含与单据显示样式相关的描述信息,与具体业务数据无关。另外,在本实施例中,步骤S210的执行主体为服务器。相应地,通过服务器确定与业务单据相对应的样式信息,根据该样式信息在服务器上生成与业务单据相对应的单据模板。其中,服务器可以通过各类后台系统实现,相应地,单据模板的编写和发布过程完全在后台系统中完成。通过服务器生成单据模板的方式,能够使一台服务器上生成的单据模板适用于大量的终端设备,从而提升了模板的复用率,避免了针对各个终端设备逐一设置模板的繁琐操作,提升了设置模板的效率。步骤S220:将生成的单据模板预先存储到预设的单据模板库中。具体地,在终端设备启动时和/或运行过程中,获取服务器上生成的与业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。例如,在本步骤的一种实现方式中,每当终端设备启动后,则获取服务器上生成的与业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。其中,终端设备可以是指设备本身,也可以是指安装在终端设备上的用于生成业务单据的移动端应用。又如,在本步骤的另一种实现方式中,在终端设备的运行过程中,实时地或每隔预设周期获取服务器上生成的与业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。上述两种实现方式既可以单独使用,也可以结合使用。具体获取时,既可以由服务器通过消息推送的方式将单据模板推送给终端设备,也可以由终端设备通过同步消息等方式从服务器获取单据模板。具体地,由于步骤S210中生成的单据模板的数量很多,因此,为了便于管理,将步骤S210中生成的各个单据模板存储到终端设备本地的单据模板库中。其中,该单据模板库可用于存储各种类型的单据模板,例如,付款类型的单据模板、购物类型的单据模板、点餐类型的单据模板等。另外,针对每种类型的单据模板,还可以进一步设置多种单据子模板,例如,付款类型的单据模板又可以进一步包括:携带优惠信息的单据子模板、未携带优惠信息的单据子模板、现金付款类型的单据子模板、刷卡付款类型的单据子模板等。单据模板库中存储的单据模板的具体数量和类型取决于步骤S210中生成的单据模板的具体数量和类型。步骤S230:对已生成的与业务单据相对应的单据模板进行更新,根据更新结果更新单据模板库。在本实施例中,可以根据业务调整情况或需求变化情况灵活更新已生成的单据模板。具体更新时,既可以在服务器上进行更新,并使终端设备根据服务器的更新结果更新单据模板库;还可以直接在终端设备本地进行更新。例如,当在服务器上进行更新时,为了便于区分更新前后的单据模板,在各个单据模板中进一步包含版本信息。相应地,在服务器上对已生成的与业务单据相对应的单据模板进行更新,根据更新结果修改已生成的与业务单据相对应的单据模板的版本信息。例如,针对单据模板一而言,更新前的版本信息为版本1.0,更新后的版本信息为版本2.0。另外,为了使终端设备能够实现同步更新,可采用下述两种方式中的至少一种完成终端设备的更新。在一种方式中,每当服务器更新单据模板后,由服务器通过通知消息或同步消息等方式,将更新后的单据模板发送给终端设备,以供终端设备完成同步更新。该种方式的实时性较好,能够满足终端设备实时更新模板的需求。在另一种方式中,由终端设备启动后,根据单据模板的版本信息判断单据模板库中的单据模板是否需要更新,若是,根据服务器上存储的单据模板对单据模板库中的单据模板进行更新。例如,假设终端设备本地的单据模板库中已存储有版本1.0所对应的单据模板一,终端设备向服务器请求最新的单据模板的版本信息,判断出请求到的版本信息与本地存储的版本信息不一致,则根据服务器中存储的最新的模板信息下载版本2.0所对应的单据模板一,以实现单据模板库的更新操作。该种方式无需服务器发送消息,降低了服务器的开销,可适用于实时性要求不高的业务场景中。又如,当在终端设备本地进行更新时,能够通过终端设备提供的第一类更新入口更新本地存储的单据模板库,以实现针对该终端设备本地的单据模板库的更新操作。经过该操作后,当该终端设备再次生成业务单据时,将按照更新后的单据模板生成。该操作方式对其他终端设备的单据生成方式不产生影响,能够实现针对特定用户的个性化定制需求。或者,也可以通过终端设备提供的第二类更新入口向服务器发送更新请求,以便更新服务器上的单据模板,进而针对全部终端设备本地的单据模板库进行更新。另外,本领域技术人员能够理解的是,本发明对步骤S230的执行时机不做限定,实际上,步骤S230可在生成单据模板之后的任意时机执行,即:步骤S230可与其后续的各个步骤调换执行顺序。步骤S240:当接收到与业务操作相对应的业务数据时,从单据模板库中获取与该业务数据相对应的单据模板。在本实施例中,预先设置需要打印业务单据的业务操作的操作类型,相应地,每当相应类型的业务操作被触发时,本实施例中的相关设备自动捕获到该业务操作,相应地,本实施例中的终端设备自动接收到与该业务操作相对应的业务数据,从而省去了人工触发业务单据的生成过程的繁琐操作,能够实现业务单据的全自动生成。例如,预先设置付款类型的业务操作、购物类型的业务操作以及点餐类型的业务操作均属于需要打印业务单据的业务操作。相应地,只要检测到付款类型、购物类型和/或点餐类型的业务操作被触发,则获取与该业务操作相对应的业务数据。例如,在本实施例中,与业务操作相对应的业务数据包括以下中的至少一个:与付款类型的业务操作相对应的付款类型的业务数据、与点餐类型的业务操作相对应的点餐类型的业务数据、以及与购物类型的业务操作相对应的购物类型的业务数据。具体地,在获取与该业务操作相对应的业务数据时,可由业务后台(即后台业务系统)通过推送消息的方式推送给该终端设备。相应地,终端设备接收来自业务后台的推送消息,根据该推送消息确定与业务操作相对应的业务数据。另外,在该种方式中,推送消息的传输通道不仅仅是数据传递的通道,同时也是生成指令的下发通道,从而使终端设备接收到业务数据的同时自动触发业务单据的生成操作(在本实施例中生成指令主要是指打印指令)。或者,当业务操作直接通过该终端设备触发时,也可由该终端设备直接获取与该业务操作相对应的业务数据。总之,本发明不限定业务数据的具体来源。例如,在本实施例的一个应用场景中,当客户端应用程序通过扫描门店二维码等方式实现支付操作时,客户端应用程序将在支付后接收到服务器通过推送消息等方式下发的支付结果通知消息,该支付结果通知消息中包含上述的业务数据,以自动触发后续操作。另外,由于业务单据的类型包括多种,因此,业务数据的类型也包括多种。相应地,从单据模板库中获取与该业务数据相对应的单据模板时,首先,分析业务数据的数据内容,根据分析结果确定与该业务数据相对应的业务单据的类型,然后,从单据模板库中获取与该类型的业务单据相对应的单据模板。例如,当接收到的业务数据为付款类型的业务数据时,需要从单据模板库中选择付款类型的业务单据所对应的单据模板。步骤S250:根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据。首先,根据与业务数据相对应的单据模板确定业务数据的展示样式,然后,根据该展示样式生成与该业务数据相对应的业务单据。其中,可通过多种方式生成业务单据,例如,可以通过无线打印的方式生成纸质的业务单据;又如,还可以通过电子发票等形式生成电子的业务单据。其中,无线打印方式又可以包括:蓝牙打印和/或WIFI打印。在本实施例中,以蓝牙打印方式为例进行说明。具体地,首先,对单据模板进行解析;然后,将解析后的单据模板与实际的业务数据相结合,渲染出需要打印的单据二进制流;最后,将最终合成后的单据打印数据(即单据二进制流)发送给蓝牙打印机,以实现打印过程。蓝牙打印方式能够减少桌面上令人不快的电缆,并且可以将打印机设置在远离主机的位置,大大方便了用户。为了便于理解本发明,表1示出了一种业务数据中包含的若干数据项:表1信息项标识信息项含义TradeType交易类型TotalAmount交易总额SellerRealRefundAmount实付款金额TradeNo交易序号ShopName店铺名称SellerName卖家名称BuyerLogonld交易账户信息RefundTimeDesc交易时间信息通过表1可以看出,业务数据中可包括多种信息项,其中,“实付款金额”在处理退款纠纷的交易中较为常见。相应地,在本实施例中,可以根据业务数据中的一个或多个信息项确定与该业务数据相对应的单据模板,例如,当分别针对于不同的店铺设置有对应的单据模板时,可根据业务数据中的店铺名称选择对应的单据模板。另外,本领域技术人员还可以对实施例二进行各种改动和变形。例如,在步骤S210中,除了由服务器生成单据模板之外,还可以由终端设备生成单据模板。此时,步骤S210的执行主体为终端设备。例如,当通过终端设备生成单据模板时,可以通过终端设备提供的第一类单据生成入口生成单据模板,从而生成专用于该终端设备的单据模板,实现单据模板的个性化定制。或者,也可以通过终端设备提供的第二类单据生成入口向服务器发送单据生成请求,以使服务器据此生成对应的单据模板。又如,还可以根据日期生成对应的单据模板,比如,工作日的单据模板为绿色,休息日的单据模板为红色等。另外,发明人在实现本发明的过程中发现:如果将单据模板中的各个业务字段设置为与具体的业务属性相对应的字段,一方面,会导致模板的数据量过大;另一方面,会导致模板中需要预埋业务数据,从而降低了模板的普适性和灵活性;再一方面,一旦黑客破解了应用程序代码及模板库,则会通过预埋业务数据获取到与用户隐私有关的具体业务信息,从而带来不可预知的安全隐患。例如,在点餐业务中,若将单据模板中的各个业务字段设置为与具体的业务属性相对应的字段,则需要分别针对每样菜品设置对应的业务字段,具体包括:与宫保鸡丁金额相对应的第一业务字段、与糖醋里脊金额相对应的第二业务字段、与酸汤鱼金额相对应的第三业务字段等等。由此可见,该种方式需要在模板中设置数量繁多的业务字段,使模板的数据量过于庞大,并且,这些业务字段是由具体的业务信息决定的,因此,该种方式实质上是通过预埋业务信息的方式实现的,一旦业务信息发生变化,则会导致原有的模板不适用,从而降低了模板的普适性和灵活性。而且,由于业务字段与具体的业务信息相关,因此,一旦黑客恶意破解单据模板库中的模板数据,则会进一步获知到对应的用户数据或业务数据,从而为业务安全带来了隐患。为了解决上述问题,优选地,在本实施例中,将单据模板中的各个业务字段设置为与具体的业务属性无关的字段,即:设置为更加上位且更加通用的字段。例如,在本实施例中,将业务字段的字段标识设置为适用于多个相同类型的字段的字段类型标识符;相应地,当接收到的与业务操作相对应的业务数据中包含多个相同类型的数据字段时,为了对各个数据字段进行区分,且为了获取到各个数据字段的具体属性信息,在每个数据字段中进一步包含字段属性信息。其中,该字段属性信息可以通过添加字段标识、添加前缀或添加后缀等各种方式实现。例如,假设本实施例中包含的一个业务字段为金额类型字段,该字段对应于金额类型。相应地,在接收到的与业务操作相对应的业务数据中包含下述的三个数据字段:对应于可打折消费金额的第一数据字段、对应于不可打折消费金额的第二数据字段、以及对应于总消费金额的第三数据字段。由于这三个数据字段均属于金额类型字段,因此,为了便于确定各个数据字段所对应的具体属性信息,在每个数据字段中进一步包含对应的字段属性信息。通过该种方式,无需预埋业务数据,能够简化模板的数据量、提升模板的通用性和灵活性、且提高模板的安全性。即使黑客破解了模板信息,但由于其中未包含具体的业务信息,因此,不会对业务安全造成影响。并且,通常情况下,一个类型的业务字段对应于多个样式相同的数据字段,因此,只需在业务字段中定义一次样式信息即可,省去了逐一针对各个数据字段定义样式信息的繁琐操作,进一步简化了模板结构。另外,当单据模板中包含的业务字段的数量为多个时,为了确定业务数据中的各个数据字段分别对应于哪个业务字段,在本实施例中,使与业务操作相对应的业务数据中的各个数据字段进一步包含数据类型标识符,相应地,根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据时,根据预设的模板配置信息,确定数据类型标识符与字段类型标识符之间的映射关系;根据该映射关系,将业务数据添加到与业务数据相对应的单据模板中,以生成对应的业务单据。例如,假设单据模板中共包含三个业务字段,分别对应于下述的字段类型标识符:A1、A2、A3。相应地,服务器在生成业务数据时,需要针对业务数据中的各个数据字段设置对应的数据类型标识符,该数据类型标识符的具体符号可与对应的字段类型标识符相同或不同。在本实施例中,将业务数据中的各个数据字段所对应的数据类型标识符设置为C1、C2、C3。相应地,在接收到业务数据之后,首先,根据预设的模板配置信息,确定数据类型标识符与字段类型标识符之间的映射关系;然后,根据映射关系,将业务数据添加到与业务数据相对应的单据模板中,以生成对应的业务单据。其中,模板配置信息用于存储数据类型标识符与字段类型标识符之间的映射关系,具体可通过配置文件或配置项的形式实现,本发明不限定模板配置信息的具体实现方式。例如,假设模板配置信息中存储有下述内容:A1——C1;A2——C2;A3——C3,则将携带数据类型标识符C1的数据字段填入字段类型标识符A1所对应的业务字段处,将携带数据类型标识符C2的数据字段填入字段类型标识符A2所对应的业务字段处,将携带数据类型标识符C3的数据字段填入字段类型标识符A3所对应的业务字段处。通过模板配置信息存储映射关系的优势在于:可根据业务调整情况动态更新模板配合信息中的映射关系,例如,假设业务调整后,模板配置信息中存储有下述内容:A1——C3;A2——C2;A3——C1,则将携带数据类型标识符C1的数据字段填入字段类型标识符A3所对应的业务字段处,将携带数据类型标识符C2的数据字段填入字段类型标识符A2所对应的业务字段处,将携带数据类型标识符C3的数据字段填入字段类型标识符A1所对应的业务字段处。通过该种方式,当业务调整后,既不用修改单据模板,也不用修改服务器侧的业务数据,仅通过修改模板配置信息即可实现调整目的,提升了灵活性。另外,申请人还要强调的是,在本实施例中,将单据模板与用于实现单据打印功能的应用程序相分离,使模板独立于应用程序,从而无需更新应用程序即可更新模板,提升了模板更新的灵活性。例如,当应用程序接收到与业务操作相对应的业务数据时,通过预设的调用接口从单据模板库中获取与业务数据相对应的单据模板;由应用程序根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据;其中,该调用接口用于访问单据模板库。具体实现时,还可以将应用程序存储在第一存储空间,将单据模板库存储在第二存储空间,从而实现单据模板与应用程序完全脱离的效果。综上可知,本实施例中的上述方式至少具备如下有益效果:首先,现有技术中,当单据样式变化后,需要在APP中重新编写相关代码段,同时用户需要更新对应的APP才可以打印出改变样式后的单据。现有方式在更改单据样式后还可能涉及到APP新版本的发布,导致整体开发成本较高,耗时较长。而本实施例中,将单据模板和业务数据分离,从而有利于动态修改、更新单据打印样式,无需用户更新应用程序,能够实现模板的实时更新。具体地,当用户需要更改单据的打印样式时,只需要更新单据模板,而业务数据不需要变化。例如,当业务变化后原来的业务数据中包含的一个字段无需在打印后的单据中出现时,无需更改业务数据的数据内容,只需通过更新模板将业务数据中的相应字段的字段状态设置为隐藏状态即可。同理,还可以通过更新模板将其中的部分字段设置为显示状态。由此可见,模板中还可以进一步包含各个业务字段的字段状态,该字段状态的状态值为0时,显示该字段;该字段状态的状态值为1时,隐藏该字段。其次,现有的单据生成方式大多为用户手动触发,例如,由收款员手动按下打印按钮,从而触发业务单据的打印过程。而本实施例中,能够在接收到业务数据后自动根据接收到的业务数据触发业务单据的生成过程,无需用户操作,简化了业务单据的生成过程,且避免了由于用户疏忽而遗漏部分业务单据的情况。实施例三图3示出了本发明实施例三提供的一种业务单据的生成系统的结构示意图,该系统包括:单据模板生成模块31,适于确定与业务单据相对应的样式信息,根据样式信息生成与业务单据相对应的单据模板;存储模块32,适于将生成的单据模板预先存储到预设的单据模板库中;接收模块33,适于接收与业务操作相对应的业务数据;获取模块34,适于当接收到与业务操作相对应的业务数据时,从单据模板库中获取与业务数据相对应的单据模板;业务单据生成模块35,适于根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据。可选地,单据模板生成模块31进一步适于:预先将业务单据划分为多种类型,分别确定与每种类型的业务单据相对应的样式信息,根据每种类型的业务单据的样式信息生成与该种类型的业务单据相对应的单据模板;可选地,获取模块34进一步适于:分析业务数据的数据内容,根据分析结果确定与该业务数据相对应的业务单据的类型,从单据模板库中获取与该类型的业务单据相对应的单据模板。可选地,上述系统进一步包括:更新模块36,适于对已生成的与业务单据相对应的单据模板进行更新,根据更新结果更新单据模板库。可选地,单据模板生成模块31进一步适于:通过服务器确定与业务单据相对应的样式信息,根据样式信息在服务器上生成与业务单据相对应的单据模板;可选地,存储模块32进一步适于:在终端设备启动时和/或运行过程中,获取服务器上生成的与业务单据相对应的单据模板,将获取到的单据模板存储到预设的单据模板库中。可选地,接收模块33进一步适于:接收来自业务后台的推送消息,根据推送消息确定与业务操作相对应的业务数据。可选地,与业务操作相对应的业务数据包括以下中的至少一个:与付款类型的业务操作相对应的付款类型的业务数据、与点餐类型的业务操作相对应的点餐类型的业务数据、以及与购物类型的业务操作相对应的购物类型的业务数据。可选地,业务单据生成模块35进一步适于:根据与业务数据相对应的单据模板确定业务数据的展示样式,根据展示样式对业务数据进行无线打印;其中,无线打印包括:蓝牙打印和/或WIFI打印。可选地,所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符;则当所述与业务操作相对应的业务数据中包含多个相同类型的数据字段时,每个数据字段中进一步包含字段属性信息。可选地,当所述业务字段的字段标识为适用于多个相同类型的字段的字段类型标识符,且所述业务字段的数量为多个时,所述与业务操作相对应的业务数据中的各个数据字段进一步包含数据类型标识符,则所述业务单据生成模块具体适于:根据预设的模板配置信息,确定所述数据类型标识符与所述字段类型标识符之间的映射关系;根据所述映射关系,将所述业务数据添加到与所述业务数据相对应的单据模板中,以生成对应的业务单据。关于上述各个模块的具体结构和工作原理可参照方法实施例中相应部分的描述,此处不再赘述。实施例四本申请实施例四提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的业务单据的生成方法。可执行指令具体可以用于使得处理器执行以下操作:确定与业务单据相对应的样式信息,根据样式信息生成与业务单据相对应的单据模板;将生成的单据模板预先存储到预设的单据模板库中;当接收到与业务操作相对应的业务数据时,从单据模板库中获取与业务数据相对应的单据模板;根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据。实施例五图4示出了根据本发明实施例五的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(CommunicationsInterface)406、存储器(memory)404、以及通信总线408。其中:处理器402、通信接口406、以及存储器404通过通信总线408完成相互间的通信。通信接口406,用于与其它设备比如客户端或其它服务器等的网元通信。处理器402,用于执行程序410,具体可以执行上述业务单据的生成方法实施例中的相关步骤。具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecificIntegratedCircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。存储器404,用于存放程序410。存储器404可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。程序410具体可以用于使得处理器402执行以下操作:确定与业务单据相对应的样式信息,根据样式信息生成与业务单据相对应的单据模板;将生成的单据模板预先存储到预设的单据模板库中;当接收到与业务操作相对应的业务数据时,从单据模板库中获取与业务数据相对应的单据模板;根据业务数据以及与业务数据相对应的单据模板生成对应的业务单据。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的业务单据的生成系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1