本发明涉及标签网络打印系统领域,具体是一种基于b/s的标签打印系统。
背景技术:
目前,现有的标签网络打印系统有以下几个方式:
1、基于ie浏览器使用activex插件,调用打印软件。该方式存在安全性、兼容性差的问题。通过activex控件,浏览器可以随意操作本地应用程序,控制本地应用,安全性得不到保障。因此,activex已被各大浏览器厂商抛弃,目前支持的仅有ie内核的浏览器,导致兼容性得不到保障。
2.开发桌面应用程序,调用打印软件。该方式中桌面应用程序的开发周期长,迭代维护成本高,工厂同步性差。采用c#开发桌面应用程序,功能开发周期长,人机交互实现难度较大,系统维护成本相对较高,而且工厂同步软件版本相对比较差。
3.直接使用打印软件。该方式存在数据维护成本高的问题,数据的维护全部采用线下管理的方式,后期数据无法维护。
技术实现要素:
本发明的目的是提供一种基于b/s的标签打印系统,以解决现有技术标签网络打印系统存在的安全性差、另外开发成本高,以及数据难以维护的问题。
为了达到上述目的,本发明所采用的技术方案为:
基于b/s的标签打印系统,其特征在于:构建服务端、web端管理平台、web端打印系统及各自对应的windows本地后台程序,其中:
用户通过web端管理平台将打印软件生成的标签模板绑定工单、工序并上传至服务端;操作web端打印系统,向web端打印系统输入工单、工序后,由web端打印系统从服务端拉取对应的标签模板和服务端生成的打印数据,web端打印系统将获取的标签模板和打印数据传输至该web端打印系统对应的windows本地后台程序,windows本地后台程序将标签模板和打印数据整合为打印软件可识别的数据并传送至打印软件,并由windows本地后台程序控制打印软件进行打印;打印软件返回windows本地后台程序打印结果,再由windows本地后台程序传输至对应的web端打印系统,最终由web端打印系统发送至服务端,由服务端存储并维护打印结果数据。
所述的基于b/s的标签打印系统,其特征在于:所述web端打印系统与服务端之间通过http协议传输数据。
所述的基于b/s的标签打印系统,其特征在于:所述web端打印系统和windows本地后台程序之间通过websocket传输协议双向传输数据。
所述的基于b/s的标签打印系统,其特征在于:所述windows本地后台程序为c#语言编写并集成activex控件控制打印软件工作。
所述的基于b/s的标签打印系统,其特征在于:若web端打印系统工作于chrome浏览器环境,则以ppapi控件集成activex控件并取代windows本地后台程序。
本发明采用b/s架构构建标签网络打印系统,解决了直接使用打印软件打印数据的不可维护性问题;避免了开发桌面应用程序存在的难度大的问题;还避免了直接使用activex控件的风险和兼容性差的问题。本发明采用服务端维护数据,web端打印系统实现用户交互,用一个运行在本地的windows本地后台程序集成activex控件调用打印软件实现标签打印。
附图说明
图1是本发明系统数据传输原理图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
如图1所示,基于b/s的标签打印系统,构建服务端、web端管理平台、web端打印系统及各自对应的windows本地后台程序,其中:
web端管理平台、各个web端打印系统分别与服务端之间通过http协议传输数据。用户通过web端管理平台将打印软件生成的标签模板绑定工单、工序并上传至服务端;操作web端打印系统,向web端打印系统输入工单、工序后,由web端打印系统从服务端拉取对应的标签模板和服务端生成的打印数据。
每个web端打印系统和其对应的windows本地后台程序之间通过websocket传输协议双向传输数据。web端打印系统将标签模板和打印数据传输至该web端打印系统对应的windows本地后台程序。
windows本地后台程序为c#语言编写并集成activex控件控制打印软件工作。windows本地后台程序将标签模板和打印数据整合为打印软件可识别的数据并传送至打印软件,并由windows本地后台程序控制打印软件基于控制数据进行打印。
打印软件返回windows本地后台程序打印结果,再由windows本地后台程序传输至对应的web端打印系统,最终由web端打印系统发送至服务端,由服务端存储并维护打印结果数据。
本发明中,若web端打印系统工作于chrome浏览器环境,则以ppapi控件集成activex控件并取代windows本地后台程序。
本发明将数据维护、用户的交互和打印软件控制分开。服务端维护数据、标签模板并记录打印结果;web端管理平台、web端打印系统与服务端通过http(超文本传输协议)协议拉取数据、上报结果;用户的操作、交互在web端实现;将具体的操作命令和服务端拉取的数据通过websocket(浏览器与服务器进行全双工通讯的网络技术)传输协议发送给运行在本地的windows本地后台程序(c#编写),本地后台程序集成activex控件,将数据实时传给打印软件,并返回web端打印系统打印结果,实现一轮标签打印。
本发明所述的实施例仅仅是对本发明的优选实施方式进行的描述,并非对本发明构思和范围进行限定,在不脱离本发明设计思想的前提下,本领域中工程技术人员对本发明的技术方案作出的各种变型和改进,均应落入本发明的保护范围,本发明请求保护的技术内容,已经全部记载在权利要求书中。
1.基于b/s的标签打印系统,其特征在于:构建服务端、web端管理平台、web端打印系统及各自对应的windows本地后台程序,其中:
用户通过web端管理平台将打印软件生成的标签模板绑定工单、工序并上传至服务端;操作web端打印系统,向web端打印系统输入工单、工序后,由web端打印系统从服务端拉取对应的标签模板和服务端生成的打印数据,web端打印系统将获取的标签模板和打印数据传输至该web端打印系统对应的windows本地后台程序,windows本地后台程序将标签模板和打印数据整合为打印软件可识别的数据并传送至打印软件,并由windows本地后台程序控制打印软件进行打印;打印软件返回windows本地后台程序打印结果,再由windows本地后台程序传输至对应的web端打印系统,最终由web端打印系统发送至服务端,由服务端存储并维护打印结果数据。
2.根据权利要求1所述的基于b/s的标签打印系统,其特征在于:所述web端打印系统与服务端之间通过http协议传输数据。
3.根据权利要求1所述的基于b/s的标签打印系统,其特征在于:所述web端打印系统和windows本地后台程序之间通过websocket传输协议双向传输数据。
4.根据权利要求1所述的基于b/s的标签打印系统,其特征在于:所述windows本地后台程序为c#语言编写并集成activex控件控制打印软件工作。
5.根据权利要求4所述的基于b/s的标签打印系统,其特征在于:若web端打印系统工作于chrome浏览器环境,则以ppapi控件集成activex控件并取代windows本地后台程序。