判断序列号是否重复的方法及电视机序列号的写入方法与流程

文档序号:14519105阅读:611来源:国知局
判断序列号是否重复的方法及电视机序列号的写入方法与流程
本发明涉及计算机领域,具体的,涉及一种判断序列号是否重复的方法及电视机序列号的写入方法。
背景技术
:电视机出厂前,需要向电视机内写入序列号,并且要求每台电视机写入的序列号都具有唯一性,不可重复。而现有的技术条件下,由于将序列号写入电视机之前,并不具有查询各不同生产线之间序列号及同一生产线之间不同电视机序列号是否重复写入的功能,导致序列号经常重复写入电视机内,从而大大加大了后期人力投入,降低生产效率。技术实现要素:针对现有技术的不足,本发明提供一种判断序列号是否重复的方法及电视机序列号的写入方法。根据本发明的第一方面,本文公开的一种判断序列号是否重复的方法,其包括:数据接收:客户端接收待判断的序列号及mac号;数据库查询:客户端查询数据库;判断数据是否重复:完成数据库查询后,客户端判断序列号及mac号是否重复;数据处理:若判断序列号及mac号重复,客户端将重复的序列号及mac号写入xls文档;若判断序列号及mac号不重复,客户端将序列号及mac号写入数据库中。根据本发明的一实施方式,数据库查询步骤包括:若网络处于连接状态,客户端先查询远程数据库,完成远程数据库查询后进行本地数据库查询,完成本地数据库查询后,执行判断数据是否重复步骤;若网络处于断开状态,则仅查询本地数据库,完成本地数据库查询后,执行判断数据是否重复步骤。根据本发明的一实施方式,数据处理步骤包括:设置重复标志位子步骤及判断数据标志位是否重复子步骤:设置重复标志位:若网络处于连接状态,且判断序列号及mac号重复,客户端设置本地重复数据标志位及远程重复数据标志位,后执行判断数据标志位是否重复的子步骤;若判断序列号及mac号不重复,则直接执行判断数据标志位是否重复的子步骤;若网络处于断开状态,且判断序列号及mac号重复,客户端设置本地重复数据标志位,后执行判断数据标志位是否重复子步骤;若判断序列号及mac号不重复,则直接执行判断数据标志位是否重复子步骤;判断数据标志位是否重复:若网络处于连接状态,客户端判断远程数据标志位及本地数据标志位是否重复:若重复,客户端将序列号及mac号写入xls文档;若不重复,客户端将序列号及mac号写入远程数据库及本地数据库;若网络处于断开状态,客户端判断本地数据标志位是否重复:若重复,客户端将序列号及mac号写入xls文档;若不重复,客户端将序列号及mac号写入本地数据库。根据本发明的一实施方式,方法还包括如下步骤:服务器端数据判断:若网络处于连接状态,客户端将接收的待判断的序列号及mac号还发送至服务器端,服务器端接收到序列号及mac号,服务器端查询远程数据库及本地数据库,判断序列号及mac号是否重复,若重复,服务器端反馈判断结果至客户端,客户端执行数据库查询步骤;若不重复,服务器端反馈判断结果至客户端,将序列号及mac号写入远程数据库及本地数据库,客户端执行所述数据库查询步骤。根据本发明的一实施方式,服务器端数据判断中,客户端将接收的待判断的序列号及mac号发送至服务器端包括如下子步骤:数据格式转换:将获取的序列号及mac号转换成字符串格式;字符串分割:将字符串格式中的各字段之间用“’或t’”分割;发送字段:发送分割好的各字段;服务器端接收序列号及mac号包括如下子步骤:接收字段:接收客户端发送的各字段;存放字段并查询数据库:先将各字段存放到元组中;随后服务器端再查询远程数据库及本地数据库。根据本发明的一实施方式,:服务器端数据判断中,客户端与服务器端通过tcp套接字进行网络通讯,服务器端通过tcp套接字通信方式接收客户端发送的待判断的序列号及mac号。根据本发明的一实施方式,将重复的序列号及mac号写入xls文档包括:将重复的序列号及mac号读入文件流中;获取xls的工作表及需要写入xls工作表中的空行;将重复的序列号及mac号写入空行的对应单元格内;flush文件流关闭。根据本发明的一实施方式,所述方法还包括侦听端口步骤:服务器端同时侦听多个客户端的端口,并与多个客户端分别建立通信连接,以分别接收各个客户端发送的接收序列号及mac号,后执行服务器端数据判断步骤。在序列号及mac号写入之前,先进行是否重复的判断,能够避免后续序列号及mac号重复写入,增加人力操作。应用于多个产线中,在多个产线共用一个服务器的情况下,还可以避免多个产线间序列号重复的现象。优选实施方式中,客户端和服务器之间的通信采用tcp套接字,可以更加有效避免不同产线之间序列号的重复,使得本发明的判断序列号重复的方法具有较快的数据速度,从而保证了生产的产品序列号不重复和极大的化简了生产的后续更加有利于后续人工的操作。根据本发明的第二方面,本文公开一种电视机序列号的写入方法,其包括:发送序列号及mac号:多个写序列号软件分别将待写入的序列号及mac号发送至客户端;数据接收:客户端接收待序列号及mac号;数据库查询:客户端查询数据库;判断数据是否重复:完成数据库查询后,客户端判断序列号及mac号是否重复;数据处理:若判断序列号及mac号重复,客户端反馈判断结果至各写序列号软件,并将重复的序列号及mac号写入xls文档;若判断序列号及mac号不重复,客户端反馈判断结果至各写序列号软件,并将序列号及mac号写入数据库中;序列号写入:若序列号及mac号不重复,写序列号软件向对应电视机中写入序列号及mac号,若重复,则不写入。电视机序列号的写入方法能够避免不同电视机及不同产线间序列号及mac号重复写入,极大的减少了由于序列号及mac号重复写入所带来的后期的人力投入,同时提高了处理效率。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为实施例一中客户端软件流程图;图2为实施例一中服务器端软件流程图;图3为实施例一中客户端软件结构框图;图4为实施例一中npoi组件操作xls的流程图;图5为实施例一中sqlite3命令执行流程图。具体实施方式以下将以图式揭露本发明的多个实施方式,为明确说明起见,许多实务上的细节将在以下叙述中一并说明。然而,应了解到,这些实务上的细节不应用以限制本发明。也就是说,在本发明的部分实施方式中,这些实务上的细节是非必要的。此外,为简化图式起见,一些习知惯用的结构与组件在图式中将以简单的示意的方式绘示之。本发明为有关于一种判断序列号是否重复的方法及电视机序列号的写入方法。本发明能够解决电视机生产中序列号及mac号重复写入的问题,特别是避免了不同产线之间电视机序列号及mac号重复写入的现象的发生。通过将各个产线的写序列号软件通过tcp套接字方式连接到服务器,在各产线共用一个服务器的数据库的情况下实现了各个产线之间序列号及mac号的不重复,并对重复的序列号及mac号进行提示,并记录到xls文档的操作,以便后续人工的操作。除此之外,本发明的判断序列号是否重复的方法及电视机序列号的写入方法,还可以用于其他需要写入序列号及mac号的产品如机顶盒或车载终端等中,同样可以避免序列号及mac号重复写入,节省人工操作,提高生产效率。另外,本发明中的客户端使用c#实现,服务器端则使用python实现,客户端和服务器端的数据存储及查询都基于sqlite3,客户端和服务器之间的通信采用tcp套接字。以下,将在二个具体实施方式中详细说明本发明的判断序列号是否重复的方法及电视机序列号的写入方法。实施例一:本例中,判断序列号是否重复的方法依次包括如下步骤:数据接收、数据库查询、判断数据是否重复及数据处理步骤,具体地:数据接收:客户端接收待判断的序列号及mac号;数据库查询:客户端查询数据库;判断数据是否重复:完成数据库查询后,客户端判断序列号及mac号是否重复;数据处理:若判断序列号及mac号重复,客户端将重复的序列号及mac号写入xls文档;若判断序列号及mac号不重复,客户端将序列号及mac号写入数据库中。需要进行判断的序列号及mac号可以通过用户界面直接输入至客户端,还可以由扫码器扫描序列号及mac号,或者是由写序列号软件生成序列号及mac号后发送给客户端,客户端查询数据库,完成数据库的查询后,客户端再进行数据是否重复的判断,客户端根据判断结果进行数据处理,并将判断结果反馈至用户。具体地,客户端完成查询后,客户端将接收的序列号及mac号与数据库中存储的序列号及mac号进行比对,以判断数据是否重复。以下,本实施例将以网络处于连接状态及网络处于断开状态这两种情况为例详述本发明判断序列号是否重复的方法。(一)网络处于连接状态若网络处于连接状态,判断序列号是否重复的方法的具体流程如下,请结合图1:数据接收:客户端接收待判断的序列号及mac号;客户端接收到序列号及mac号后,执行下述数据库查询步骤:数据库查询:客户端先查询远程数据库,完成远程数据库查询后进行本地数据库查询,完成本地数据库查询后,执行判断数据是否重复步骤;判断数据是否重复:完成远程数据库查询及本地数据库查询后,客户端判断序列号及mac号是否重复,后执行数据处理步骤;判断数据是否重复后,为了进一步确认是哪组数据重复,还包括数据处理步骤,数据处理步骤包括:设置重复标志位子步骤及判断数据标志位是否重复子步骤:设置重复标志位:若判断序列号及mac号重复,客户端设置本地重复数据标志位及远程重复数据标志位,后执行判断数据标志位是否重复的子步骤;若判断序列号及mac号不重复,则直接执行判断数据标志位是否重复的子步骤;判断数据标志位是否重复:客户端判断远程数据标志位及本地数据标志位是否重复:若重复,客户端将序列号及mac号写入xls文档;若不重复,客户端将序列号及mac号写入远程数据库及本地数据库。本例中,客户端的数据库查询操作分为本地数据库查询和远程数据库查询两部分。若网络处于连接状态,客户端进行本地数据库及远程数据库的查询时,为了避免远程数据库查询及本地数据库查询同时进行时耗费大量时间,其中,远程数据库查询放在主线程中进行,本地数据库查询则放入到线程中进行,在进行判断远程数据及本地数据是否重复之前,让主线程一直等待直到本地数据库查询结束,完成本地数据库及远程数据库的查询后,再一起判断数据是否重复,随后主要是进行数据重复标志位的操作。若本地数据库及远程数据库完成查询后,判断序列号及mac号重复,则设置本地重复数据标志及远程重复数据标志位,随后,客户端判断本地数据标志位及远程数据标志位是否重复;若本地数据库及远程数据库完成查询后,判断序列号及mac号不重复,则客户端直接判断本地数据标志位及远程数据标志位是否重复,进行本地数据标志位及远程数据标志位是否重复的判断,是为了进一步确认是哪组序列号及mac号重复。若本地数据标志位及远程数据标志位重复,客户端将序列号及mac号写入xls文档,并通过客户端提示用户,若本地数据标志位及远程数据标志位不重复,客户端将序列号及mac号直接写入本地数据库及远程数据库,并提示用户。优选例中,客户端接收到序列号及mac号后,还可以将序列号及mac号发送至服务器端,服务器端进行数据判断,请参考图2。服务器端侦听端口,与客户端建立连接,服务器端开启线程,以接收序列号及mac号,接收到客户端发送的序列号及mac号,服务器端查询远程数据库及本地数据库,判断序列号及mac号是否重复,若重复,服务器端反馈判断结果至客户端;若不重复,服务器端反馈判断结果至客户端,并将序列号及mac号写入远程数据库及本地数据库。判断结果反馈至客户端后,客户端按照图1所示流程继续序列号及mac号是否重复的判断。服务器端将判断结果反馈回客户端,其反馈的值及含义如表1所示:含义反馈值序列号重复duplicatesnlanmac重复duplicatelanwifimac重复duplicatewifibtmac重复duplicatebt新数据newdata表1如图3,为客户端软件结构框图,其中,图3中,用户界面主要功能是实现与用户的交互及与其它结构的通信,如输入序列号及mac号及显示数据判断结果等。当需要进行判断的序列号及mac号通过用户界面操作输入,输入序列号及mac号后,当客户端将序列号及mac号发送至服务器端时,客户端与服务器端通过tcp套接字通信,客户端发送序列号及mac号至服务器端,服务器端接收序列号及mac号;服务器端进行数据是否重复的判断,并将判断结果通过tcp套接字反馈至客户端。tcp套接字用于客户端与服务器端的数据通信,其具有数据传输功能,具体地,客户端与服务器端通过tcp套接字建立通信;客户端通过tcp套接字方式向服务器端发送序列号及mac号,服务器端通过tcp套接字方式向客户端发送数据是否重复的判断结果。客户端判断序列号及mac号重复时,对于重复的数据,npoi组件操作xls,将序列号及mac号写入xls;对于不重复的数据,sqlite3数据库操作,进行数据的存储。请参考图4,客户端把重复的数据写入xls文档主要通过借助开源npoi组件实现,采用npoi组件把重复的数据写入xls文档。对于重复的数据,npoi组件操作xls,将重复数据写入xls文档,npoi组件操作xls流程如图4所示,包括:将重复的序列号及mac号读入文件流中;获取xls的工作表及需要写入xls工作表中的空行;将重复的序列号及mac号写入空行的对应单元格内;flush文件流关闭。若数据不重复,参考图5,sqlite3数据库操作,对本地数据进行存储,sqlite3命令执行流程如图5所示。客户端先设置重复标志位,后判断标志位是否重复,既能够实现数据是否重复的判断,还能进一步确认是哪组数据重复,以便对该组重复数据进行人工操作。上述服务器端数据判断中,客户端将接收的待判断的序列号及mac号发送至服务器端包括如下子步骤:数据格式转换:将获取的序列号及mac号转换成字符串格式;字符串分割:将字符串格式中的各字段之间用“’或t’”分割;发送字段:发送分割好的各字段;服务器端接收序列号及mac号包括如下子步骤:接收字段:接收客户端发送的各字段;存放字段并查询数据库:先将各字段存放到元组中;随后服务器端再查询远程数据库及本地数据库。(二)网络处于断开状态若网络处于断开状态,判断序列号是否重复的方法的具体流程如下,请结合图2一并理解:数据接收:客户端接收待判断的序列号及mac号;客户端接收到序列号及mac号后,执行下述数据库查询步骤:数据库查询:客户端进行本地数据库查询,完成本地数据库查询后,执行判断数据是否重复步骤;判断数据是否重复:完成本地数据库查询后,客户端判断序列号及mac号是否重复,后执行数据处理步骤;判断数据是否重复后,为了进一步确认是哪组数据重复,还包括数据处理步骤,数据处理步骤包括:设置重复标志位子步骤及判断数据标志位是否重复子步骤:设置重复标志位:若判断序列号及mac号重复,客户端设置本地重复数据标志位,后执行判断数据标志位是否重复的子步骤;若判断序列号及mac号不重复,则直接执行判断数据标志位是否重复的子步骤;判断数据标志位是否重复:客户端判断本地数据标志位是否重复:若重复,客户端将序列号及mac号写入xls文档;若不重复,客户端将序列号及mac号写入本地数据库。其中,客户端把重复的数据写入xls文档的操作与网络处于连接状态相同,如图3所示,这里不再赘述。若数据不重复,参考图4,sqlite3数据库操作,对本地数据进行存储,sqlite3命令执行流程如图4所示。若网路连接处于断开状态,则只执行本地数据库的查询。若本地数据库完成查询后,判断序列号及mac号重复,则设置本地重复数据标志,随后,客户端端判断本地数据标志位是否重复;若本地数据库完成查询后,判断序列号及mac号不重复,则客户端直接判断本地数据标志位是否重复,进行本地数据标志位是否重复的判断,是为了进一步确认是哪组序列号及mac号重复。若本地数据标志位重复,客户端将序列号及mac号写入xls文档,并提示用户,若本地数据标志位不重复,客户端将序列号及mac号直接写入本地数据库,并提示用户。由于上述写入数据库和写入xls文档的操作比较耗费时间,所以本例中,判断序列号及mac号是否重复的方法把它们放到两个线程中进行,此时为了避免线程之间的冲突,加入了lock机制,保证一个线程使用数据库或xls文档时其它操作无法获得这两个文件。若同时进行多个生产线序列号是否重复的判断时,服务器端同时侦听多个客户端的端口,并通过tcp套接字与多个客户端分别建立通信连接,采用为每个通信连接建立一个线程处理的方式,建立线程后主线程继续侦听特定客户端端口,线程则进行接收数据并查询数据库、判断数据是否重复、数据处理和反馈判断结果步骤的各项操作。在序列号及mac号写入之前,先进行是否重复的判断,能够避免后续序列号重复写入,增加人力操作。应用于多个产线中,在多个产线共用一个服务器的情况下,还可以避免多个产线间序列号及mac号重复的现象。优选实施方式中,客户端和服务器之间的通信采用tcp套接字,可以更加有效避免不同产线之间序列号及mac号的重复,使得本发明的判断序列号重复的方法具有较快的数据速度,从而保证了生产的产品序列号及mac号不重复和极大的化简了生产的后续更加有利于后续人工的操作。实施例二:本实施例提供一种电视机序列号的写入方法,其包括:发送序列号及mac号:多个写序列号软件分别将待写入的序列号及mac号发送至客户端;数据接收:客户端接收待序列号及mac号;数据库查询:客户端查询数据库;判断数据是否重复:完成数据库查询后,客户端判断序列号及mac号是否重复;数据处理:若判断序列号及mac号重复,客户端反馈判断结果至各写序列号软件,并将重复的序列号及mac号写入xls文档;若判断序列号及mac号不重复,客户端反馈判断结果至各写序列号软件,并将序列号及mac号写入数据库中;序列号写入:若序列号及mac号不重复,写序列号软件向对应电视机中写入序列号及mac号,若重复,则不写入。在其他实施例中,数据库查询、数据处理及服务器端数据判断步骤,以及写xls文档操作均与实施例一相同,这里不再赘述。电视机序列号的写入方法能够避免不同电视机及不同产线间序列号及mac号重复写入,极大的减少了由于序列号及mac号重复写入所带来的后期的人力投入,同时提高了处理效率。上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理的内所作的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1