一种码图印刷方法及系统的制作方法

文档序号:6640701阅读:231来源:国知局
一种码图印刷方法及系统的制作方法
【专利摘要】本发明提供一种码图印刷方法及系统,码图印刷系统包括客户端和服务器;客户端配置有数据交换模块;数据交换模块包括网络通信模块、任务总量获取模块、任务总量接收模块、任务详细信息获取模块、任务详细信息接收模块、印刷参数发送模块、码图获取模块和码图接收模块。优点如下:(1)数据交换模块由服务器开发并负责维护,不需要印刷客户端参与调试过程,减少了开发调试周期;(2)数据交换模块具有通用性,对不同印刷客户端,基本不需要调整,有很好的复制性;(3)若服务器存在业务等变更或者需要对印刷企业做一些限制时,印刷企业不需要介入,服务器将更新的数据交换模块嵌入到印刷客户端即可。
【专利说明】一种码图印刷方法及系统

【技术领域】
[0001]本发明属于码图印刷【技术领域】,具体涉及一种码图印刷方法及系统。

【背景技术】
[0002]码图,例如,二维码图、一维码图等,已广泛应用于现代社会的各行各业,如,产品防伪/溯源、广告推送、商品交易、电子商务应用、车辆管理、信息传递等。
[0003]为满足码图的广泛应用需求,对码图进行印刷属于基础且关键的技术。现有技术中,存在数量众多的印刷企业,各家印刷企业安装自身的印刷客户端,其对码图进行印刷的方式主要包括两种:
[0004]第一种,通过U盘传输:在服务器生成需要印刷的码图,然后,人工将需印刷的码图存储到U盘;再将U盘携带至印刷企业,由人工将U盘内的码图导入印刷客户端,最终,印刷客户端对码图进行印刷;该种方式存在的主要问题为:由于以U盘作为码图传输的介质,而码图文件通常较大,因此,一方面,码图传输速度慢,另一方面,对U盘存储容量要求高,因此,具有印刷效率低的问题。
[0005]第二种,直接通过网络传输:在服务器生成需要印刷的码图,然后,服务器与印刷客户端之间商议通信及数据处理协议,在达成一致后,在服务器和印刷客户端均进行调试,使服务器和印刷客户端之间建立通信通道;最终,服务器将生成的码图通过通信通道传输到印刷客户端。该种方式存在的主要问题为:(I)在数据交换过程中,由于网络通信及数据处理都很复杂,所以服务器和印刷客户端的开发难度均很大,此外,由于服务器和印刷客户端的技术不同步,因此,具有调试困难和调试周期长的问题;⑵由于现有的印刷客户端并不具备通信协议调试能力,因此,加重了印刷客户端的工作难度;(3)由于服务器需要与多个印刷客户端建立通信连接,而各个印刷客户端与服务器的通信及数据处理协议均不相同,因此,也加重了服务器的开发和维护成本。(4)当服务器存在业务等变更或者需要对印刷企业做一些限制时,需要印刷企业介入开发,影响双方的合作。


【发明内容】

[0006]针对现有技术存在的缺陷,本发明提供一种码图印刷方法及系统,可有效解决上述问题。
[0007]本发明采用的技术方案如下:
[0008]本发明提供一种码图印刷方法,包括以下步骤:
[0009]SI,服务器配置并维护与每个客户端唯一对应的数据交换模块,并将所述数据交换模块下发到客户端,所述客户端嵌入对应的数据交换模块;
[0010]S2,服务器启动数据处理线程,等待各个客户端通过所述数据交换模块进行连接;
[0011]S3,服务器加载任务文件;其中,所述任务文件包含任务总量、每条任务的任务详细信息;所述任务总量指需要执行的任务数;每条所述任务详细信息包括:任务ID、计划印刷的码图总数量以及已印刷的码图数量;
[0012]S4,客户端进行本地配置,通过调用所述数据交换模块中的网络通信模块,从而建立与服务器的通信长连接;
[0013]S5,所述客户端向所述数据交换模块发送任务总量获取请求;其中,所述任务总量获取请求是指可执行的任务的总数量;
[0014]S6,所述数据交换模块对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0015]S7,所述服务器在接收所述任务总量获取请求后,读取所述任务文件,获得所述任务总量以及每条任务的任务ID ;然后,向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务总量以及每条任务的任务ID ;
[0016]S8,所述数据交换模块接收到所述任务通知消息后,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端;
[0017]S9,所述客户端在接收到所述任务总量以及每条任务的任务ID后,基于设定的选择策略,选择当前需执行的指定任务ID,然后,向所述数据交换模块发送对指定任务ID的任务详细?目息的获取请求消息;
[0018]S10,所述数据交换模块对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0019]S11,所述服务器在接收到所述任务详细信息的获取请求后,获得所述指定任务ID的任务详细信息,并向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务详细信息;
[0020]S12,所述数据交换模块接收所述任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端;
[0021]S13,所述客户端在接收到所述指定任务ID的任务详细信息后,对本地印刷参数进行配置,并将配置好的所述印刷参数传输到所述数据交换模块;
[0022]S14,所述数据交换模块将所述印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器;
[0023]S15,所述服务器接收所述印刷参数;然后,所述服务器读取到所述任务详细信息中已印刷的码图数量以及计划印刷的码图总数量,记计划印刷的码图总数量为η,已印刷的码图数量为m ;其中,n、m均为自然数,n ^ m ;
[0024]所述服务器判断m是否为0,如果是,表明所述服务器为首次执行所述指定任务ID,还未生成码图,则:所述服务器获得与所述计划印刷的码图总数量η的数量相同的η个码值,然后,将所述印刷参数分别与每个所述码值进行合成操作,生成η个码图,并将所述η个码图暂存在内存中,等待所述客户端的请求;如果否,表明所述服务器已合成过η个码图,并且,所述客户端已印刷m个码图,所述内存中还存在n-m个未印刷的码图,则所述服务器等待所述客户端的进一步请求;
[0025]S16,所述客户端向所述数据交换模块发送本次需要印刷的码图数量;设本次需要的码图数量为X ;其中,X为自然数,并且,X ^ n-m ;
[0026]S17,所述数据交换模块对所述本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器;
[0027]S18,所述服务器在接收到所述本次需要印刷的码图数量X后,读取内存,从未印刷的n-m个码图中选择X个码图,并对内存中的所述X个码图进行标记,标记为已印刷状态;
[0028]然后,所述服务器向所述数据交换模块发送码图下发的通知消息;其中,所述通知消息携带有所述X个码图;
[0029]S19,所述数据交换模块解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端;
[0030]S20,所述客户端接收到所述X个码图后,印刷所述X个码图;
[0031]S21,返回S15,循环执行S16-S20,直到所述客户端印刷完成n_m个码图,则印刷任务完成。
[0032]优选的,所述印刷参数包括:印刷通道信息、码图尺寸信息、码图分辨率信息和码图形状信息中的一种或几种。
[0033]优选的,S3中,所述任务ID为任务序号;或者,所述任务ID为本次印刷任务的委托单位名称信息。
[0034]优选的,S4中,所述客户端进行本地配置,具体指:在客户端设置服务器的ip地址和端口。
[0035]优选的,S9中,所述设定的选择策略为:对各条任务ID的优先级进行排序;选择优先级最尚的任务ID为本次印刷需要执行的任务。
[0036]优选的,所述任务ID的优先级具体为:任务的生成时间最晚,其优先级越高;或者,任务委托方的重要度越高,则对应任务的优先级越高。
[0037]优选的,还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到紧急执行另一条任务R2的通知消息时,所述客户端暂停执行任务R1,然后执行任务R2 ;当所述客户端执行完成任务R2后,再恢复继续执行任务Rl。
[0038]优选的,还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到停止执行任务Rl的通知消息时,所述客户端取消执行任务R1。
[0039]优选的,还包括:当所述客户端对任务Rl执行结束后,所述服务器将所述任务Rl从所述任务文件中完全删除,同时,更新所述任务文件中存储的所述任务总量;当所述服务器接收到新任务R5后,所述服务器将所述新任务R5的详细信息导入所述任务文件中,同时,更新所述任务文件中存储的所述任务总量。
[0040]本发明还提供一种码图印刷系统,包括客户端和服务器;
[0041]所述客户端配置有数据交换模块;
[0042]所述数据交换模块包括:
[0043]网络通信模块,用于实现所述客户端和所述服务器之间的通信长连接;
[0044]任务总量获取模块,用于接收所述客户端发送的任务总量获取请求;对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0045]任务总量接收模块,用于接收所述服务器返回的任务通知消息,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端;
[0046]任务详细信息获取模块,用于接收客户端发送的对指定任务ID的任务详细信息的获取请求消息;对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0047]任务详细信息接收模块,用于接收所述服务器返回的任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端;
[0048]印刷参数发送模块,用于对客户端本地配置的印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器;
[0049]码图获取模块,用于将所述客户端设置的本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器;
[0050]码图接收模块,用于接收所述服务器下发的码图读取的通知消息,并解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端。
[0051]本发明提供的码图印刷方法及系统,具有以下优点:
[0052](I)数据交换模块由服务器开发并负责维护,通过数据交换模块,实现印刷客户端与服务器之间的通信及数据处理,因此,不需要印刷客户端参与调试过程,减少了开发调试周期,极大的降低了开发难度;
[0053](2)数据交换模块具有通用性,对不同印刷客户端,基本不需要调整,有很好的复制性;
[0054](3)若服务器存在业务等变更或者需要对印刷企业做一些限制时,印刷企业不需要介入,服务器将更新的数据交换模块嵌入到印刷客户端即可。

【专利附图】

【附图说明】
[0055]图1为本发明提供的码图印刷系统的结构示意图。

【具体实施方式】
[0056]以下结合附图对本发明进行详细说明:
[0057]本发明提供一种码图印刷方法,包括以下步骤:
[0058]SI,服务器配置并维护与每个客户端唯一对应的数据交换模块,并将所述数据交换模块下发到客户端,所述客户端嵌入对应的数据交换模块;
[0059]S2,服务器启动数据处理线程,等待各个客户端通过所述数据交换模块进行连接;
[0060]S3,服务器加载任务文件;其中,所述任务文件包含任务总量、每条任务的任务详细信息;所述任务总量指需要执行的任务数;每条所述任务详细信息包括:任务ID、计划印刷的码图总数量以及已印刷的码图数量;
[0061]此处,任务ID为任务序号;或者,所述任务ID为本次印刷任务的委托单位名称信息。
[0062]例如,任务文件包含的任务总量为3个,分别为任务1、任务2和任务3 ;其中,任务I的任务详细信息为:厂商I委托印刷200个二维码图;任务2的任务详细信息为:厂商2委托印刷100个二维码图;任务3的任务详细信息为:厂商3委托印刷300个二维码图。
[0063]S4,客户端进行本地配置,例如,在客户端设置服务器的ip地址和端口,通过调用所述数据交换模块中的网络通信模块,从而建立与服务器的通信长连接;
[0064]S5,所述客户端向所述数据交换模块发送任务总量获取请求;其中,所述任务总量获取请求是指可执行的任务的总数量;
[0065]S6,所述数据交换模块对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0066]S7,所述服务器在接收所述任务总量获取请求后,读取所述任务文件,获得所述任务总量以及每条任务的任务ID ;然后,向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务总量以及每条任务的任务ID ;
[0067]S8,所述数据交换模块接收到所述任务通知消息后,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端;
[0068]S9,所述客户端在接收到所述任务总量以及每条任务的任务ID后,基于设定的选择策略,选择当前需执行的指定任务ID,然后,向所述数据交换模块发送对指定任务ID的任务详细?目息的获取请求消息;
[0069]本步骤中,所述设定的选择策略包括但不限于:对各条任务ID的优先级进行排序;选择优先级最尚的任务ID为本次印刷需要执行的任务。其中,任务ID的优先级具体为:任务的生成时间最晚,其优先级越尚;或者,任务委托方的重要度越尚,则对应任务的优先级越尚。
[0070]例如,当前任务总量为3个,表明客户端有三个任务尚未处理,则客户端需选择当前要执行的任务,例如,第3条任务。此处需要强调的是,客户端在执行某条任务时,可以灵活的根据需求,暂停当前正在执行的任务,而执行其他任务;或者,根据通知消息,取消执行某条任务。例如,当厂商3委托印刷300个二维码图后,在该条任务尚未执行时,如果厂商3取消委托,则客户端也可取消该条任务。
[0071]S10,所述数据交换模块对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0072]S11,所述服务器在接收到所述任务详细信息的获取请求后,获得所述指定任务ID的任务详细信息,并向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务详细信息;
[0073]S12,所述数据交换模块接收所述任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端;
[0074]S13,所述客户端在接收到所述指定任务ID的任务详细信息后,对本地印刷参数进行配置,并将配置好的所述印刷参数传输到所述数据交换模块;
[0075]其中,印刷参数包括:印刷通道信息、码图尺寸信息、码图分辨率信息和码图形状信息中的一种或几种。
[0076]S14,所述数据交换模块将所述印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器;
[0077]S15,所述服务器接收所述印刷参数;然后,所述服务器读取到所述任务详细信息中已印刷的码图数量以及计划印刷的码图总数量,记计划印刷的码图总数量为n,已印刷的码图数量为m ;其中,n、m均为自然数,n ^ m ;
[0078]所述服务器判断m是否为0,如果是,表明所述服务器为首次执行所述指定任务ID,还未生成码图,则:所述服务器获得与所述计划印刷的码图总数量η的数量相同的η个码值,然后,将所述印刷参数分别与每个所述码值进行合成操作,生成η个码图,并将所述η个码图暂存在内存中,等待所述客户端的请求;如果否,表明所述服务器已合成过η个码图,并且,所述客户端已印刷m个码图,所述内存中还存在n-m个未印刷的码图,则所述服务器等待所述客户端的进一步请求;
[0079]例如,对于任务3,厂商3委托印刷300个二维码码图。服务器首次接收到客户端对任务3的印刷请求时,一次性生成300个二维码码图,并将300个二维码码图存储到内存中,初始时,每个二维码码图均标记为未印刷状态;然后,当客户端请求印刷任务3中的50个码图时,服务器将第1-50个码图下发给客户端,同时,将内存中的第1-50个码图标记为已印刷状态;当客户端再次请求印刷任务3中的50个码图时,服务器将第51-100个码图下发给客户端,同时,将内存中第51-100个码图标记为已印刷状态;依此类推,直至将300个码图均下发给客户端时,表明对任务3的执行结束,将任务3从任务文件中删除。
[0080]S16,所述客户端向所述数据交换模块发送本次需要印刷的码图数量;设本次需要的码图数量为X ;其中,X为自然数,并且,X ^ n-m ;
[0081]S17,所述数据交换模块对所述本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器;
[0082]S18,所述服务器在接收到所述本次需要印刷的码图数量X后,读取内存,从未印刷的n-m个码图中选择X个码图,并对内存中的所述X个码图进行标记,标记为已印刷状态;
[0083]然后,所述服务器向所述数据交换模块发送码图下发的通知消息;其中,所述通知消息携带有所述X个码图;
[0084]S19,所述数据交换模块解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端;
[0085]S20,所述客户端接收到所述X个码图后,印刷所述X个码图;
[0086]S21,返回S15,循环执行S16-S20,直到所述客户端印刷完成n_m个码图,则印刷任务完成。
[0087]还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到紧急执行另一条任务R2的通知消息时,所述客户端暂停执行任务R1,然后执行任务R2 ;当所述客户端执行完成任务R2后,再恢复继续执行任务Rl。
[0088]还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到停止执行任务Rl的通知消息时,所述客户端取消执行任务R1。
[0089]还包括:当所述客户端对任务Rl执行结束后,所述服务器将所述任务Rl从所述任务文件中完全删除,同时,更新所述任务文件中存储的所述任务总量;当所述服务器接收到新任务R5后,所述服务器将所述新任务R5的详细信息导入所述任务文件中,同时,更新所述任务文件中存储的所述任务总量。
[0090]如图1所示,本发明还提供一种码图印刷系统,包括客户端和服务器;
[0091]所述客户端配置有数据交换模块;
[0092]所述数据交换模块包括:
[0093]网络通信模块,用于实现所述客户端和所述服务器之间的通信长连接;
[0094]任务总量获取模块,用于接收所述客户端发送的任务总量获取请求;对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0095]任务总量接收模块,用于接收所述服务器返回的任务通知消息,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端;
[0096]任务详细信息获取模块,用于接收客户端发送的对指定任务ID的任务详细信息的获取请求消息;对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器;
[0097]任务详细信息接收模块,用于接收所述服务器返回的任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端;
[0098]印刷参数发送模块,用于对客户端本地配置的印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器;
[0099]码图获取模块,用于将所述客户端设置的本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器;
[0100]码图接收模块,用于接收所述服务器下发的码图读取的通知消息,并解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端。
[0101]本发明提供的码图印刷方法及系统,具有以下优点:
[0102](I)数据交换模块由服务器开发并负责维护,通过数据交换模块,实现印刷客户端与服务器之间的通信及数据处理,因此,不需要印刷客户端参与调试过程,减少了开发调试周期,极大的降低了开发难度;
[0103](2)数据交换模块具有通用性,对不同印刷客户端,基本不需要调整,有很好的复制性;
[0104](3)若服务器存在业务等变更或者需要对印刷企业做一些限制时,印刷企业不需要介入,服务器将更新的数据交换模块嵌入到印刷客户端即可。
[0105]以上所述仅是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
【权利要求】
1.一种码图印刷方法,其特征在于,包括以下步骤: SI,服务器配置并维护与每个客户端唯一对应的数据交换模块,并将所述数据交换模块下发到客户端,所述客户端嵌入对应的数据交换模块; S2,服务器启动数据处理线程,等待各个客户端通过所述数据交换模块进行连接; S3,服务器加载任务文件;其中,所述任务文件包含任务总量、每条任务的任务详细信息;所述任务总量指需要执行的任务数;每条所述任务详细信息包括:任务ID、计划印刷的码图总数量以及已印刷的码图数量; S4,客户端进行本地配置,通过调用所述数据交换模块中的网络通信模块,从而建立与服务器的通信长连接; S5,所述客户端向所述数据交换模块发送任务总量获取请求;其中,所述任务总量获取请求是指可执行的任务的总数量; S6,所述数据交换模块对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器; 57,所述服务器在接收所述任务总量获取请求后,读取所述任务文件,获得所述任务总量以及每条任务的任务ID ;然后,向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务总量以及每条任务的任务ID ; 58,所述数据交换模块接收到所述任务通知消息后,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端; S9,所述客户端在接收到所述任务总量以及每条任务的任务ID后,基于设定的选择策略,选择当前需执行的指定任务ID,然后,向所述数据交换模块发送对指定任务ID的任务详细?目息的获取请求消息; S10,所述数据交换模块对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器; S11,所述服务器在接收到所述任务详细信息的获取请求后,获得所述指定任务ID的任务详细信息,并向所述数据交换模块发送任务通知消息;其中,所述任务通知消息携带有所述任务详细信息; S12,所述数据交换模块接收所述任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端; S13,所述客户端在接收到所述指定任务ID的任务详细信息后,对本地印刷参数进行配置,并将配置好的所述印刷参数传输到所述数据交换模块; S14,所述数据交换模块将所述印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器; S15,所述服务器接收所述印刷参数;然后,所述服务器读取到所述任务详细信息中已印刷的码图数量以及计划印刷的码图总数量,记计划印刷的码图总数量为η,已印刷的码图数量为m ;其中,n、m均为自然数,n ^ m ; 所述服务器判断m是否为O,如果是,表明所述服务器为首次执行所述指定任务ID,还未生成码图,则:所述服务器获得与所述计划印刷的码图总数量η的数量相同的η个码值,然后,将所述印刷参数分别与每个所述码值进行合成操作,生成η个码图,并将所述η个码图暂存在内存中,等待所述客户端的请求;如果否,表明所述服务器已合成过η个码图,并且,所述客户端已印刷m个码图,所述内存中还存在n-m个未印刷的码图,则所述服务器等待所述客户端的进一步请求; S16,所述客户端向所述数据交换模块发送本次需要印刷的码图数量;设本次需要的码图数量为X ;其中,X为自然数,并且,X ^ n-m ; S17,所述数据交换模块对所述本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器; S18,所述服务器在接收到所述本次需要印刷的码图数量X后,读取内存,从未印刷的n-m个码图中选择X个码图,并对内存中的所述X个码图进行标记,标记为已印刷状态; 然后,所述服务器向所述数据交换模块发送码图下发的通知消息;其中,所述通知消息携带有所述X个码图; S19,所述数据交换模块解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端; S20,所述客户端接收到所述X个码图后,印刷所述X个码图; S21,返回S15,循环执行S16-S20,直到所述客户端印刷完成n_m个码图,则印刷任务完成。
2.根据权利要求1所述的码图印刷方法,其特征在于,所述印刷参数包括:印刷通道信息、码图尺寸信息、码图分辨率信息和码图形状信息中的一种或几种。
3.根据权利要求1所述的码图印刷方法,其特征在于,S3中,所述任务ID为任务序号;或者,所述任务ID为本次印刷任务的委托单位名称信息。
4.根据权利要求1所述的码图印刷方法,其特征在于,S4中,所述客户端进行本地配置,具体指:在客户端设置服务器的ip地址和端口。
5.根据权利要求1所述的码图印刷方法,其特征在于,S9中,所述设定的选择策略为:对各条任务ID的优先级进行排序;选择优先级最尚的任务ID为本次印刷需要执行的任务。
6.根据权利要求5所述的码图印刷方法,其特征在于,所述任务ID的优先级具体为:任务的生成时间最晚,其优先级越尚;或者,任务委托方的重要度越尚,则对应任务的优先级越高。
7.根据权利要求5所述的码图印刷方法,其特征在于,还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到紧急执行另一条任务R2的通知消息时,所述客户端暂停执行任务Rl,然后执行任务R2 ;当所述客户端执行完成任务R2后,再恢复继续执行任务Rl0
8.根据权利要求5所述的码图印刷方法,其特征在于,还包括:当所述客户端执行本次任务Rl的过程中,当所述客户端接收到停止执行任务Rl的通知消息时,所述客户端取消执行任务Rl。
9.根据权利要求1所述的码图印刷方法,其特征在于,还包括:当所述客户端对任务Rl执行结束后,所述服务器将所述任务Rl从所述任务文件中完全删除,同时,更新所述任务文件中存储的所述任务总量;当所述服务器接收到新任务R5后,所述服务器将所述新任务R5的详细信息导入所述任务文件中,同时,更新所述任务文件中存储的所述任务总量。
10.一种码图印刷系统,其特征在于,包括客户端和服务器; 所述客户端配置有数据交换模块; 所述数据交换模块包括: 网络通信模块,用于实现所述客户端和所述服务器之间的通信长连接; 任务总量获取模块,用于接收所述客户端发送的任务总量获取请求;对所述任务总量获取请求进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器; 任务总量接收模块,用于接收所述服务器返回的任务通知消息,对所述任务通知消息进行解析,得到所述任务总量以及每条任务的任务ID,然后,将所述任务总量以及每条任务的任务ID发送到所述客户端; 任务详细信息获取模块,用于接收客户端发送的对指定任务ID的任务详细信息的获取请求消息;对所述指定任务ID的任务详细信息的获取请求消息进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的获取请求发送到所述服务器; 任务详细信息接收模块,用于接收所述服务器返回的任务通知消息,并对所述任务通知消息进行解析,得到所述指定任务ID的任务详细信息,然后,将所述指定任务ID的任务详细信息发送到所述客户端; 印刷参数发送模块,用于对客户端本地配置的印刷参数进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的印刷参数发送到所述服务器; 码图获取模块,用于将所述客户端设置的本次需要印刷的码图数量X进行封装,得到符合所述数据交换模块与所述服务器之间通信协议的数据格式,然后,将封装后的码图数量X发送到所述服务器; 码图接收模块,用于接收所述服务器下发的码图读取的通知消息,并解析所述通知消息,获得所述X个码图,并将所述X个码图发送到所述客户端。
【文档编号】G06F3/12GK104503716SQ201410843955
【公开日】2015年4月8日 申请日期:2014年12月30日 优先权日:2014年12月30日
【发明者】邓伟, 陈桂亮 申请人:北京慧眼智行科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1