一种面单打印方法、装置及客户端与流程

文档序号:11386100阅读:222来源:国知局
一种面单打印方法、装置及客户端与流程

本发明涉及物联网技术领域,具体而言,涉及一种面单打印方法、装置及客户端。



背景技术:

在通常的物流企业干线中,物流公司需要在运输物品上贴上面单,面单指物流行业在运送货物的过程中用以记录发件人、收件人以及产品重量、数量、价格等相关信息的单据。而物流的中小企业太多,而且每家公司都有自己的面单,对于面单的需求也都不同。面单供应商对不同的客户,需要提供不同的面单,每次面单的修改需要功能的发布和服务器重启,开发成本高,效率低。制作出符合所有物流企业用户需求的面单,成为了亟待解决的问题。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种面单打印方法、装置及客户端以改善上述问题。

本发明实施例提供的一种面单打印方法,应用于客户端,所述方法包括:获取模板数据,所述模板数据包括面单格式和可选字段;对模板数据进行渲染,生成可选面单及可选字段;响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段;预览所述待打印面单和所述打印字段;将所述待打印面单和所述打印字段对应的代码片段进行调取;控制lodop插件将所述代码片段进行编译,并控制打印机将编译后的数据进行打印。

进一步地,所述客户端与服务器通信连接,所述方法还包括:将所述代码片段发送至所述服务器。

进一步地,所述方法还包括:从所述服务器中接收所述代码片段,控制lodop插件将所述代码片段进行编译,并控制打印机将编译后的数据进行打印。

进一步地,在所述预览所述待打印面单和所述打印字段的步骤之前还包括:响应用户的操作,向所述待打印面单中添加自定义文本。

本发明实施例还提供一种面单打印方法,应用于相互通信的客户端和服务器,所述方法包括:所述客户端从所述服务器获取模板数据,所述模板数据包括面单格式和可选字段;所述客户端对模板数据进行渲染,生成可选面单及可选字段;所述客户端响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段;所述客户端预览所述待打印面单和所述打印字段;所述客户端将所述待打印面单和所述打印字段对应的代码片段进行调取;所述客户端将所述代码片段发送至所述服务器;所述服务器将所述代码片段存入数据仓库;所述客户端控制lodop插件将所述代码片段进行编译,并控制打印机将编译后的数据进行打印。

本发明实施例还提供一种面单打印装置,应用于客户端,所述装置包括:获取模块,用于获取模板数据,所述模板数据包括面单格式和可选字段;渲染模块,用于对模板数据进行渲染,生成可选面单及可选字段;选择模块,用于响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段;预览模块,用于预览所述待打印面单和所述打印字段;调取模块,用于将所述待打印面单和所述打印字段对应的代码片段进行调取;打印模块,用于控制lodop插件将所述代码片段进行编译,将编译后的数据传输至打印机进行打印。

进一步地,所述客户端与服务器通信连接,所述装置还包括发送模块,用于将所述代码片段发送至所述服务器。

进一步地,所述装置还包括接收模块,用于从所述服务器中接收所述代码片段。

进一步地,所述装置还包括添加模块,用于响应用户的操作,向所述待打印面单中添加自定义文本。

本发明实施例还提供一种客户端,包括:存储器;处理器;及面单打印装置,所述面单打印装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模块,所述面单打印装置包括:获取模块,用于获取模板数据,所述模板数据包括面单格式和可选字段;渲染模块,用于对模板数据进行渲染,生成可选面单及可选字段;选择模块,用于响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段;预览模块,用于预览所述待打印面单和所述打印字段;调取模块,用于将所述待打印面单和所述打印字段对应的代码片段进行调取;打印模块,用于控制lodop插件将所述代码片段进行编译,将编译后的数据传输至打印机进行打印。

与现有技术相比,本发明提供的面单打印方法、装置及客户端先获取模板数据并经过渲染后,用户可以自主的选择需要打印的面单,以及需要打印的字段,可将用户选择的面单进行预览展示,用户可实时修改面单格式、字段,可以应用于不同客户,满足客户的不同需求。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的服务器与客户端进行交互的示意图。

图2为本发明实施例提供的客户端的方框示意图。

图3为本发明第一实施例提供的面单打印装置的功能模块示意图。

图4为本发明第二实施例提供的面单打印装置的功能模块示意图。

图5为本发明第三实施例提供的面单打印方法的流程图。

图6为本发明第四实施例提供的面单打印方法的流程图。

图标:100-客户端;200-服务器;300-网络;400-打印机;500-面单打印装置;101-存储器;102-存储控制器;103-处理器;104-外设接口;105-显示单元;106-音频单元;107-输入输出单元;501-获取模块;502-渲染模块;503-选择模块;504-预览模块;505-调取模块;506-打印模块;507-发送模块;508-接收模块;509-添加模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本发明实施例所提供的面单打印方法、装置可应用于如图1所示的应用环境中。如图1所示,客户端100与服务器200通过网络300进行数据交互,所述客户端100还连接有打印机400,可以控制打印机400打印文字、图片表格等。

服务器200可以是,但不限于,网络服务器、数据库服务器、云端服务器等等。该客户端100可以是,但不限于智能手机、个人电脑(personalcomputer,pc)、平板电脑、个人数字助理(personaldigitalassistant,pda)、移动上网设备(mobileinternetdevice,mid)等。所述客户端100的操作系统可以是,但不限于,安卓(android)系统、ios(iphoneoperatingsystem)系统、windowsphone系统、windows系统等。

于本发明实施例中,该客户端100中安装有浏览器,与服务器200相对应,为用户提供服务,本发明实施例提供的面单打印方法、装置可在客户端100的浏览器和服务器200之间实施,并控制打印机400打印。需要说明的是,该客户端100中还安装有其他应用程序(application,app),如易货嘀客户端100、陆鲸客户端100等,本发明实施例的面单打印方法、装置也可在客户端100的其他应用程序与服务器200之间运行。

请参考图2,是本发明实施例提供的客户端100的方框示意图。所述客户端100包括面单打印装置500、存储器101、存储控制器102、处理器103、外设接口104以及显示单元105。

所述存储器101、存储控制器102、处理器103、外设接口104以及显示单元105,各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述面单打印装置500包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述客户端100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器103用于执行存储器101中存储的可执行模块,例如,所述面单打印装置500包括的软件功能模块或计算机程序。

处理器103可能是一种集成电路芯片,具有信号的处理能力。上述的处理器103可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器103也可以是任何常规的处理器等。

所述外设接口104将各种输入/输出装置耦合至处理器103以及存储器101。在一些实施例中,外设接口104,处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。打印机400可以通过外设接口104与所述客户端100连接,以响应客户端100的指令,进行打印操作。

显示单元105在所述电子设备10与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元105可以是液晶显示器或触控显示器。

音频单元106向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

输入输出单元107用于提供给用户输入数据实现用户与所述电子设备10的交互。所述输入输出单元107可以是,但不限于,鼠标和键盘等。

第一实施例

请参考图3,是本发明第一实施例提供的面单打印装置500的功能模块示意图。所述面单打印装置500包括获取模块501、渲染模块502、选择模块503、预览模块504、调取模块505以及打印模块506。

所述获取模块501,用于获取模板数据,所述模板数据可以预先存储于服务器200,由于客户端100与所述服务器200可进行数据交互,在打印时可从服务器200获取模板数据。当然在其他具体实施方式中,所述模板数据还可以存储于所述存储器101或其他外设存储设备,在进行打印时获取模块501从所述存储器101或其他外设存储设备中读取模板数据。

其中,所述模板数据可以包括面单格式和可选字段。不同的模板可以对应不同的面单格式和可选字段,例如模板可以包括路港快线模板、航空快运模板等等,这些模板对应的面单格式和可选字段存在差异,所述获取模块501用于将所有的模板的所有数据均获取。

所述渲染模块502,用于对模板数据进行渲染,生成可选面单及可选字段。本实施例中,所述面单打印装置500的使用环境为浏览器,所述渲染模块502可以利用javascript语言对模板数据进行渲染,得到可选面单及可选字段,渲染模块502可以将可选面单和可选字段渲染为用户所需要的排版布局和文字。在其他具体实施方式中,若所述面单打印装置500的使用环境为其他应用程序时,渲染模块502可利用其他脚本语言对模板数据进行渲染,如jquery语言等。

所述选择模块503,用于响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段。用户可以利用输入输出单元107(如鼠标)对浏览器显示的页面进行操作,在渲染模块502渲染后得到的可选面单及可选字段中依据自身的需求进行对应面单的选择。还可以选择需要增加的字段加入面单中,以满足打印需求。

所述预览模块504,用于预览所述待打印面单和所述打印字段。当用户将需要打印的面单选择出后,可以将需要添加并打印的字段加入此面单,预览模块504将待打印面单或增加有打印字段的待打印面单通过显示单元105展现出来,以供用户预览。

所述调取模块505,用于将所述待打印面单和所述打印字段对应的代码片段进行调取。在浏览器中待打印面单和所述打印字段均对应有相应的代码片段,所述调取模块505将依据用户需求选择的待打印面单和所述打印字段进行代码片段的调取。

所述打印模块506,用于控制lodop插件将所述代码片段进行编译,并控制打印机400将编译后的数据进行打印。lodop插件为一种打印控件,打印模块506利用lodop插件可以将调取模块505调取的代码片段进行编译,编译为符合打印机400打印的数据,打印模块506将编译后的数据和控制指令发送至打印机400,打印机400则进行打印。

第二实施例

请参考图4,是本发明第二实施例提供的面单打印装置500的功能模块示意图。本实施例提供的面单打印装置500与所述第一实施例的区别在于,本实施例的面单打印装置500还包括发送模块507、接收模块508以及添加模块509。

所述发送模块507,用于将所述调取模块505调取的与所述待打印面单和所述打印字段对应的代码片段发送至服务器200。所述服务器200可以加将这些代码片段进行存储,以便用户在下次打印时直接从服务器200获取代码片段,并利用打印模块506打印。

所述接收模块508,用于从服务器200中接收预先存储的代码片段,可以是发送模块507发送给服务器200的代码片段,以便面单打印装置500直接将这些代码片段进行编译,并控制打印机400打印。

所述添加模块509,用于响应用户的操作,向所述待打印面单中添加自定义文本。具体的,在选择模块503选择待打印面单和待打印字段后,面单打印装置500可将选择模块503选择的待打印面单和待打印字段进行预览和打印,如果用户还需要自己加一些文本到待打印面单中去,可以利用添加模块509将用户需要添加的自定义文本加入所述待打印面单,再进行预览、打印等操作。如此,可以提高本面单打印装置500的灵活性。

第三实施例

请参考图5,是本发明第三实施例提供的面单打印方法的流程图。需要说明的是,本发明所述的面单打印方法并不以图5以及以下所述的具体顺序为限制。应当理解,在其它实施例中,本发明所述的面单打印方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。本实施例的面单打印方法应用于第一实施例的面单打印装置500。下面将对图5所示的具体流程进行详细阐述。请参阅图5,所述面单打印方法包括:

步骤s101,获取模板数据。

所述模板数据可以预先存储于服务器200,由于客户端100与所述服务器200可进行数据交互,在打印时客户端100可从服务器200获取模板数据。所述模板数据还可以存储于所述存储器101或其他外设存储设备,在进行打印时获取模块501从所述存储器101或其他外设存储设备中读取模板数据。其中,所述模板数据可以包括面单格式和可选字段。不同的模板可以对应不同的面单格式和可选字段,例如模板可以包括路港快线模板、航空快运模板等等,这些模板对应的面单格式和可选字段存在差异,所述获取模块501用于将所有的模板的所有数据均获取。

本实施例中,所述步骤s101可以由获取模块501执行。

步骤s102,对模板数据进行渲染,生成可选面单及可选字段。

所述面单打印方法的应用环境为浏览器时,可以利用javascript语言对模板数据进行渲染,得到可选面单及可选字段,渲染模块502可以将可选面单和可选字段渲染为用户所需要的排版布局和文字。

本实施例中,所述步骤s102可以由渲染模块502执行。

步骤s103,响应用户的操作,从所述可选面单和所述可选字段中选择待打印面单和待打印字段。

在步骤s102生成可选面单及可选字段后,可以从所述可选面单和所述可选字段中选择待打印面单和待打印字段。例如,用户可以利用鼠标对浏览器显示的页面进行操作,来选择面单。

本实施例中,所述步骤s103可以由选择模块503执行。

步骤s104,预览所述待打印面单和所述打印字段。

步骤s103选择出待打印面单和所述打印字段后,可以将待打印面单或增加有打印字段的待打印面单通过显示单元105展现出来,以供用户预览。

本实施例中,所述步骤s104可以由预览模块504执行。

步骤s105,将所述待打印面单和所述打印字段对应的代码片段进行调取。

在浏览器中待打印面单和所述打印字段均对应有相应的代码片段,所述调取模块505将依据用户需求选择的待打印面单和所述打印字段进行代码片段的调取。

本实施例中,所述步骤s105可以由调取模块505执行。

步骤s106,控制lodop插件将所述代码片段进行编译,并控制打印机400将编译后的数据进行打印。

利用lodop插件可以将调取模块505调取的代码片段进行编译,编译为符合打印机400打印的数据,打印模块506将编译后的数据和控制指令发送至打印机400,打印机400则进行打印。

本实施例中,所述步骤s106可以由打印模块506执行。

第四实施例

请参考图6,是本发明第四实施例提供的面单打印方法的流程图。本实施例的面单打印方法应用于第二实施例的面单打印装置500。下面将对图6所示的具体流程进行详细阐述。请参阅图6,所述面单打印方法与第三实施例的面单打印方法的区别在于,本实施例的面单打印方法还包括步骤s201和步骤202。

步骤s201,向所述待打印面单中添加自定义文本。

在步骤s103执行后,可将选择的待打印面单和待打印字段进行预览和打印,如果用户还需要自己加一些文本到待打印面单中去,可以利用添加模块509将用户需要添加的自定义文本加入所述待打印面单,再进行预览、打印等操作。

本实施例中,所述步骤s201可以由添加模块509执行。

步骤s202,将所述代码片段发送至所述服务器200。具体的,将步骤s105调取的与所述待打印面单和所述打印字段对应的代码片段发送至服务器200。所述服务器200可以加将这些代码片段进行存储,以便用户在下次打印时直接从服务器200获取代码片段,并利用打印模块506打印。

本实施例中,所述步骤s202可以由发送模块507执行。

需要提到的是,步骤s105执行后,可以同时执行步骤s202可以和步骤s106。

本实施例的面单打印方法还可以包括:从所述服务器200中接收所述代码片段。所述代码片段可以是步骤s202发送给服务器200的代码片段,以便面单打印装置500直接将这些代码片段进行编译,并控制打印机400打印。

综上所述,本发明实施例提供的面单打印方法、装置及客户端先获取模板数据并经过渲染后,用户可以自主的选择需要打印的面单,以及需要打印的字段,可将用户选择的面单进行预览展示,用户可实时修改面单格式、字段,可以应用于不同客户,满足客户的不同需求。相比于每次发布新的面单,需要重新进行代码编写、测试、服务器停机、再发布的方式,本发明实施例降低了程序员编码工作量、提高系统发布效率,降低应用的开发成本。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1