本发明涉及数据处理技术领域,特别涉及一种二维码生成方法及装置、二维码的数据处理方法及装置。
背景技术:
在移动互联网发展时代下,二维码已经广泛应用于各行各业,如身份识别、电子商务、产品追溯、电子票据、二维码名片、广告营销以及工业自动化控制等领域。将少量数据信息或url(uniformresourcelocator,统一资源定位符)路径存储在一张二维码图片中,并基于网络扫描访问获取信息已成为当前二维码应用的潮流。目前,二维码一般仅会存放少量的数据信息,且结合互联网一起应用。
然而,当数据信息较大时,二维码无法保存所有的数据信息,例如,工作人员现场对电网执行作业任务时,工作人员需要基于较多的作业任务数据进行现场作业,这些数据量较大,无法将其全部保存到二维码中,即生成的二维码中数据缺失,这样导致后续通过扫描二维码获取的数据存在缺失,导致获取的数据不准确。
技术实现要素:
基于此,有必要针对二维码中数据缺失的问题,提供一种二维码生成方式方法及装置、二维码的数据处理方法及装置。
一种二维码生成方法,包括如下步骤:
获取作业任务数据;
当所述作业任务数据的大小大于预设大小时,分割所述作业任务数据获得各子数据,其中,各所述子数据的大小分别小于或等于所述预设大小;
根据各所述子数据生成对应的二维码。
还提供一种二维码生成装置,包括:
数据获取模块,用于获取作业任务数据;
分割模块,用于当所述作业任务数据的大小大于预设大小时,分割所述作业任务数据获得各子数据,其中,各所述子数据的大小分别小于或等于所述预设大小;
二维码生成模块,用于根据各所述子数据生成对应的二维码。
上述二维码生成方式方法及装置,获取作业任务数据,当所述作业任务数据的大小大于预设大小时,分割所述作业任务数据获得各子数据,根据各所述子数据生成对应的二维码,其中,各所述子数据的大小分别小于或等于所述预设大小。在执行电网的作业任务时,需要的作业任务数据的数据量大小可能比较大,为了避免作业任务数据的大小大于预设大小,一张二维码无法存储所有的作业任务数据导致生成的二维码中数据缺失不准确的问题,需要对作业任务数据的大小与预设大小进行比较,当所述作业任务数据的大小大于预设大小时,说明作业任务数据较大可能无法被一张二维码存储,此时,分割所述作业任务数据获得各子数据,得到的各子数据的数据量的大小小于或等于预设大小,这样根据各所述子数据生成对应的二维码,可确保各子数据能完整准确地存储在二维码中,即生成的二维码中的数据完整准确。
还提供一种二维码的数据处理方法,包括如下步骤:
当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据;
当各所述二维码扫描并解析完毕时,根据各所述子数据拼接成作业任务数据。
还提供一种二维码的数据处理装置,包括:
扫描模块,用于当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据;
拼接模块,用于当各所述二维码扫描并解析完毕时,根据各所述子数据拼接成作业任务数据。
上述二维码的数据处理方法及装置,当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据,当各所述二维码扫描并解析完毕时,根据各所述子数据拼接成作业任务数据。通过扫描并解析二维码可获取对应的子数据,只有在二维码均扫描且解析完毕后再将得到的各子数据进行拼接,即作业任务数据是由各子数据拼接而成,即作业任务数据中完整地包含了各子数据,如此,可确保得到的作业任务数据完整准确。
附图说明
图1为一实施例的二维码生成方法的流程图;
图2为另一实施例的二维码生成方法中分割作业任务数据获得各子数据的子流程图;
图3为一实施例的二维码的数据处理方法的流程图;
图4为另一实施例的二维码的数据处理方法中根据各子数据拼接成作业任务数据的子流程图;
图5为作业平台端中作业任务数据展示界面;
图6为作业平台端中第1张二维码显示界面;
图7为作业平台端中第1张二维码和第2张二维码的显示界面;
图8为作业平台端中第1张二维码、第2张二维码以及第3张二维码的显示界面;
图9为移动终端扫描第1张二维码后的显示界面;
图10为移动终端扫描所有二维码后的显示界面;
图11为移动终端中扫描软件中日历显示界面;
图12为移动终端任务模式展示界面;
图13为移动终端执行完作业任务后的展示界面;
图14为作业任务完成后移动终端上二维码的显示界面;
图15为作业平台端接收移动终端回传的作业任务数据后的展示界面;
图16为一实施例的二维码生成装置的模块示意图;
图17为另一实施例的二维码生成装置的模块示意图;
图18为一实施例的二维码的数据处理装置的模块示意图;
图19为另一实施例的二维码的数据处理装置的模块示意图。
具体实施方式
请参阅图1,提供一种实施例的二维码生成方法,包括如下步骤s110至步骤s130:
s110:获取作业任务数据。
作业人员对电网执行作业任务时,需要以相应的作业任务数据作为依据执行作业任务,即作业人员需要根据作业任务数据执行作业任务。上述二维码生成方法可应用于作业平台端(可以是服务器端或pc端等),即在作业平台端生成二维码,移动终端可扫描作业平台端生成的二维码以获取上述作业任务数据,作业人员后续根据这些作业任务数据执行作业任务,此时,作业任务数据包括任务标号、任务工单号、任务名称、任务作业地址、任务类别、任务计划时间、任务分派人、任务负责人以及电子器件的基本信息,其中,电子器件的基本信息是指与该任务类别对应的电子器件的基本信息,即该任务类别所涉及的电子器件的基本信息,例如,任务类别为计量装拆换任务,所涉及的电子器件包括电能表以及互感器等,此时,电器器件的基本信息包括电能表的基本信息以及互感器的基本信息等。
可以理解,上述二维码生成方法也可应用在移动终端(例如,手机、平板以及pda(个人数字助理)等),即作业人员通过移动终端对作业平台端的二维码数据扫描获得作业任务数据,根据作业任务数据执行完作业任务后,可获取到执行作业任务后的结果数据,移动终端可根据上述结果数据通过本实施例的二维码生成方法生成二维码,作业平台端可扫描移动终端生成的二维码以获取结果数据,实现移动终端上的结果数据的上传,即上传至作业平台端,此时,作业任务数据即为上述结果数据,包括任务标号、任务工单号、任务名称、任务作业地址、任务类别、任务计划时间、任务分派人、任务负责人以及更新的电子器件的基本信息。其中,执行作业任务后,电子器件可能发生了更新,例如,拆了一些原来电子器件、增加了电子器件或更换了电子器件等,如此,电子器件的基本信息也随之更新,更新的电子器件的基本信息即为更新后的电器器件对应的基本信息。
在本实施例中,以上述二维码生成方法应用于作业平台端为例进行说明。
s120:当作业任务数据的大小大于预设大小时,分割作业任务数据获得各子数据。
s130:根据各子数据生成对应的二维码。
由于作业任务数据的数据量可能比较大,一张二维码可能不能存储所有的作业任务数据,这会导致生成的二维码中数据缺失,即二维码中的数据不完整即不准确,为了避免数据缺失导致不准确的问题,在本实施例中,还需要对作业任务数据的数据量大小进行判断,即判断作业任务数据的大小是否大于预设大小,此处的预设大小可根据一张二维码可容纳的数据量的大小而定,具体地,预设大小小于或等于一张二维码可容纳的数据量的大小,若作业任务数据的大小大于预设大小,表示作业任务数据可能不能完全保存在一张二维码中,此时,将作业任务数据分割成数据量较小的各子数据,其中,各子数据的大小分别小于或等于预设大小。再根据各子数据生成对应的二维码,即子数据的数目与二维码的数目相同,确保每个子数据能完全存储到一张二维码中,确保二维码中数据完整准确。
上述二维码生成方法,获取作业任务数据,当所述作业任务数据的大小大于预设大小时,分割所述作业任务数据获得各子数据,根据各所述子数据生成对应的二维码,其中,各所述子数据的大小分别小于或等于所述预设大小。在执行电网的作业任务时,需要的作业任务数据的数据量大小可能比较大,为了避免作业任务数据的大小大于预设大小,一张二维码无法存储所有的作业任务数据导致生成的二维码中数据缺失不准确的问题,需要对作业任务数据的大小与预设大小进行比较,当所述作业任务数据的大小大于预设大小时,说明作业任务数据较大可能无法被一张二维码存储,此时,分割所述作业任务数据获得各子数据,得到的各子数据的数据量的大小小于或等于预设大小,这样根据各所述子数据生成对应的二维码,可确保各子数据能完整准确地存储在二维码中,即生成的二维码中的数据完整准确。
进一步地,当作业任务数据的大小小于或等于预设大小时,可无需分割作业任务数据,根据作业任务数据生成对应的二维码即可。
在其中一个实施例中,根据各子数据生成对应的二维码之后,当接收到查看指令时,根据所述查看指令,显示二维码。
请参阅图2,在其中一个实施例中,上述分割作业任务数据获得各子数据的方式包括步骤:
s221:对作业任务数据进行压缩处理获得压缩数据。
为了减小存储至二维码中的数据量的大小,可对作业任务数据进行压缩处理以获得比作业任务数据要小的压缩数据。优选地,可通过zip压缩方式(是一种计算机文件的压缩的算法)对作业任务数据进行压缩,形成一份zip压缩文件即压缩数据。
s222:对压缩数据进行编码处理获得编码数据。
编码是为了保密而对数据进行转换的过程,是将信息从一种形式或格式转换为另一种形式的过程。为了确保数据的安全,需要对压缩数据进行编码。优选地,可通过base64编码方式(最常见的用于传输8bit字节代码的编码方式之一)对压缩后得到的压缩数据进行编码处理获得编码数据,base64编码具有不可读性,从而确保编码数据的安全。
s223:对编码数据进行加密处理获得加密字符串数据。
为了进一步确保编码数据的安全,可对加密数据进行加密处理获得加密字符串数据。优选地,可通过md5(信息-摘要算法5)加密算法将编码数据转换为一定长度的值,即获得加密数据,实现对编码数据的加密。
s224:分割加密子字符串数据获得各子数据。
如果作业任务数据比较大,则对作业任务数据通过压缩、编码以及加密后得到的加密字符串数据也会比较大,需要将加密字符串数据进行分割处理,即将其分割成数据量较小的子数据。然后再通过二维码生成算法分别对各子数据进行二维码生成,即可形成与各子数据对应的二维码,二维码的数目与各子数据的数目相同,即有多少个子数据对应有多少张二维码。
在其中一个实施例中,上述分割作业任务数据获得各子数据的方式具体根据预设字节大小,分割作业任务数据获得各子数据。其中,预设字节大小小于或等于预设大小。进一步地,上述步骤s224则可根据预设字节大小,分割加密子字符串数据获得各子数据。
在其中一个实施例中,二维码携带子数据的数目以及子数据对应的预设顺序标号。
在对作业任务数据进行分割得到各子数据后,可知道各子数据的数目,在生成二维码时,具体地是根据子数据、子数据的数目以及子数据对应的预设顺序标号,生成二维码,也就是说,形成的二维码中携带子数据的数目以及子数据对应的预设顺序标号,生成二维码后,每张二维码有其对应的顺序标号(即子数据的顺序标号)以及二维码的数目(即子数据的数目)。例如,对一作业任务数据进行分割并生成了3张二维码,每张二维码中携带的子数据的数目即二维码的数目为3,且每张二维码有其对应的顺序标号,比如,分别为1、2、3,扫描完一张二维码即可知道是第几张(预设顺序标号)二维码。后续在对二维码扫描时,不仅可获得子数据,还可获得作业人数数据对应的二维码的数目和预设顺序标号。
请参阅图3,还提供一种实施方式的二维码的数据处理方法,包括步骤s310-步骤s320。
由于上述二维码生成方法可应用于作业平台端生成二维码,供移动终端扫描获取作业任务数据,以便作业人员现场根据作业任务数据执行作业任务。也可应用于移动终端生成二维码,供作业平台扫描获取作业人员执行作业任务后的结果数据,实现结果数据的上传。因此,在上述二维码生成方法可应用于作业平台端时,上述二维码的数据处理方法可对应地应用于移动终端,即移动终端通过扫描作业平台端生成的二维码获取作业任务数据,可以理解,在上述二维码生成方法可应用于移动终端时,上述二维码的数据处理方法可对应地应用于作业平台端,即作业平台端通过扫描移动终端生成的二维码获取结果数据。
在本实施例中,以上述二维码的数据处理方法应用于移动终端为例加以说明。
s310:当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据。
作业人员需要进行作业任务执行时,需要通过移动终端对作业平台端生成的二维码进行扫描,具体地,通过操作移动终端中的扫描软件,触发扫描功能即可产生扫描指令,移动终端在响应用户操作接收到扫描指令时,可对二维码进行扫描,并解析二维码获得二维码中存储的子数据。在本实施例中,打开扫描软件进行二维码扫描时,无需网络。
s320:当各二维码扫描并解析完毕时,根据各子数据拼接成作业任务数据。
由于在生成二维码的过程中,为了完整准确地保存所有作业任务数据,可能生成了多张二维码,从而,在进行二维码扫描获取子数据时,为了确保得到的数据完整,需要将一个作业任务数据对应的所有的二维码扫描成,即需要判断各二维码是否扫描完毕,当各二维码扫描并解析完毕时,根据各子数据拼接成作业任务数据,也就是将各子数据合并成作业任务数据。其中,上述二维码的数据处理方法应用在移动终端时,此处的作业任务数据包括任务标号、任务工单号、任务名称、任务作业地址、任务类别、任务计划时间、任务分派人、任务负责人以及电子器件的基本信息。上述二维码的数据处理方法应用在作业平台端时,此处的作业任务数据包括任务标号、任务工单号、任务名称、任务作业地址、任务类别、任务计划时间、任务分派人、任务负责人以及更新的电子器件的基本信息。
上述二维码的数据处理方法,当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据,当各所述二维码扫描并解析完毕时,根据各所述子数据拼接成作业任务数据。通过扫描并解析二维码可获取对应的子数据,只有在二维码均扫描且解析完毕后再将得到的各子数据进行拼接,即作业任务数据是由各子数据拼接而成,即作业任务数据中完整地包含了各子数据,如此,可确保得到的作业任务数据完整准确。
请参阅图4,在其中一个实施例中,上述根据各子数据拼接成作业任务数据的方式包括步骤:
s421:拼接各子数据,形成加密字符串。
由于上述根据子数据生成二维码时,为了减小数据量以及数据安全,采用的子数据是经过压缩、编码和加密后的子数据,从而,在对二维码进行扫描解析后,得到的子数据是压缩、编码和加密后的数据,因此,后续需要进行解压、解码以及解密等操作。那么,首先,拼接各子数据,形成加密字符串。
s422:对加密字符串进行解密处理获得编码数据。
加密字符串包括了各子数据,数据完整准确,由于子数据经过加密了,从而,加密字符串包括了较为安全的加密了的各子数据,也比较安全,为了得到作业任务数据,需对其进行解密,即对加密字符串进行解密处理获得编码数据。优选地,通过md5解密算法对加密字符串进行解密获得编码数据。
s423:对编码数据进行解码处理获得压缩数据。
解密后,再对编码数据进行解码获得压缩数据,优选地,采用base64解码方法对编码数据进行解码获得压缩数据。
s424:对压缩数据进行解压处理获得作业任务数据。
解码获得压缩数据后,再对压缩数据进行解压获得所需的作业任务数据,以作为作业人员执行作业任务的依据。优选地,通过zip解压方法对压缩数据进行解压。
在其中一个实施例中,所述二维码携带有子数据的数目以及子数据对应的预设顺序标号,解析所述二维码还获取所述子数据的数目以及所述子数据对应的预设顺序标号。
其中,扫描并解析二维码获得子数据后,还记录扫描数量,当扫描数量等于子数据的数目时,判定为各二维码扫描并解析完毕。
解析二维码获得子数据的数目以及所述子数据对应的预设顺序标号后,即可知道当前扫描的二维码的预设顺序标号(子数据的预设顺序标号),即知道是第几张二维码,并且可知二维码的数目(子数据的数目)。通过判断扫描数量是否等于子数据的数目,即可知二维码是否扫描完毕,若等于,判定为各二维码扫描并解析完毕。
例如,二维码携带的数据有特定的格式,如下表1所示。
表1二维码携带的数据有特定的格式
示例数据如:{'taskid':'1000','loginid':'登录账号,'apptype':'app类型','qrnum':'第几张二维码','文件名','filename',sumlength:'总长度','startlength':'起始长度,'endlength':'结束长度','data':'数据源','qrsum':'二维码总数目'}。
通过上述指示的二维码数据格式,我们可以看出,扫描任务二维码时,可以任意顺序扫描,app应用程序自动根据数据标签“qrnum”的值排序,根据数据标签“qrsum”的值判断二维码数据是否扫描完成。
扫描二维码后获取子数据,通过判断出任务二维码全部扫描完成后,系统自动获取data中的数据,按照“qrnum”指示的顺序拼接组装成作业任务数据,假定这个作业任务数据为taskdatas,当前这个taskdatas的数据是指真实作业任务数据经过zip压缩后再base64编码所得,那么真实的作业任务数据就是经过base64解码再zip解压后的数据,根据和服务器约定的作业任务数据协议,读取数据并将数据内容展示在移动终端的展示界面。
由于作业任务数据可能过大,base64编码内存易溢出,当数据过大时,比如极端情况超过200m的数据,base64编码很可能内存溢出,在这种情况下,将作业任务数据进行拆分,拆分成符合条件的子数据,再进行base64编码。
为解决作业任务数据读取到移动终端的展示界面耗时问题,作业任务数据一般包含一个db3文件和一个txt文件,txt文件中的内容包含了表示任务详情信息的xml字符串。要在界面上生成任务,我们需要做两个事情,第一个是拷贝db3文件到指定文件目录,第二个读取并解析xml数据。这个过程是个耗时操作,为了增强应用程序用户体验,我们采用多线程处理,不同的线程处理不同类型的数据。
以作业平台端获取移动终端上二维码中包含的数据为例,在移动终端上执行完作业任务后,需要将终端上的执行完的作业任务数据传递到作业平台端,移动终端会先将作业任务数据进行压缩、编码和加密等,然后存放在二维码图中。作业平台端通过扫描获取到的移动终端上二维码图中的数据(该作业任务对应的作业任务数据分割分别存放在三张二维码中)分别为:
第一张:
{"apptype":"bzjl","data":"uesdbbqacagiagvxn0aaaaaaaaaaaaaaaaaiaaaadgfzay50ehr1uz2p1daq/sv8aclbctbjnkywsnsgna4bjcjnnt7f2o0tbodgfw4nddujudbquiaoclzcd0i0vfxli7352l1emsx786w3nhmdbc5l5ajsommiah0kwlqodcuozzmlmq0fs6d5mo05kc4jjfx6qcupzsljaz4a6tpg0k4ivyimzxrij+bfzvzeewriix1w955v7glzp2g/kghzz6ixmhyou48nazzxngey5qc9q+pdni1ticogqpyga3kbworhzw/ohj66f3ok5dax6nwnpigpyylkopjeyfkjoyec753ysadepvbrqs3rquol5m0pma6ssirkwsxmyaqvrguarzxohobnniqtgk9t36yr9aa6wedcnca34ur2x83v7exrd78+/fn++fl39fbbz/dvvn4irnuyzhpxa8fp7xdql6glrktpt6cnf6jmkghbg1/403izphrydd9itohyla4d6sgwskqtzppa2fbmhbxqvoqnqi4yknpbkl38zxam3urqaufvy12vsb+ef73gurzpesptna8/wqiw0lqx/fhl+/avr+oih7okxijjmde2w+ruffh34uex02h3bbh/hzbz+jmepdklgbzuovn3qf4fueshcjvbxptmaqaapamaafblawquaagicabl","taskid":"7370","filename":"1327299071072.zip","qrnum":1,"qrsum":3,"startlength":0,"sumlength":1524,"endlength":700}。
第二张:
{"apptype":"bzjl","data":"ctdaaaaaaaaaaaaaaaaadaaaahrhc2tmb3jtlnr4dk1wy07cqbt9fx+g6woobxizsvwmrcbece2qdfkhhcbu9hncusuxcaojkyumxgtixi0bf/6ck/ua2udfpdqbzuac23pm3jljc9wadqshd+tynek4szvuiiyc8nixwa3ewak5zcguucue0fssv+gzulusfgt7iccxgluzzwpp1hp6tajycgtdbg38otthvfnutvjussmbaiav5pk67gt989cyxxvyxopvna/6z04wqnfinveajhpux+2nxjbjblo992svjce47jkoc/2jypeq6dhs2pucqkytipcqrdhz+r4bc0zcdix4z1+fwzqpaxglqvcubj+ledwd2pddlioms3notw5rxyz5udaxbahg/jnv9rh9ep9n7h4f7sfzruueg5ywwnwu1c6gf/io6etxbml4v/ialq8jkie4pbekn8hlm4lkdvxefyopj36nuk03kma5idinba8serqkgnddbawj4eeigoke56hamrfxxsns8jy7vkzlgsepbtb2f73w8fzty/p5e5xka3nnumxso2xw1lm93rxmu9kyqi0h5layqhhwjhgofc/9qvxofi7k5j/af1blbwifcir5sweaabciaabqswecfaauaagicablctdalvvglmwbaackawaacaaaaaaaaaaaaaaaaaaa","taskid":"7370","filename":"1327299071072.zip","qrnum":2,"qrsum":3,"startlength":700,"sumlength":1524,"endlength":1400}。
第三张:
{"apptype":"bzjl","data":"aaaadgfzay50ehrqswecfaauaagicablctdan3ikebmbaaaxcaaadaaaaaaaaaaaaaaaaaacagaadgfza2zvcm0udhh0uesfbgaaaaacaaiacaaaao8daaaaaa\u003d\u003d","taskid":"7370","filename":"1327299071072.zip","qrnum":3,"qrsum":3,"startlength":1400,"sumlength":1524,"endlength":1524}。
即作业平台端通过扫描移动终端上的上述三张二维码,可获取对应的子数据,然后根据预设顺序编号进行拼接合并,得到完整的作业任务数据。
下面以一具体实施例对上述二维码生成方法的过程以及二维码的数据处理方法的过程加以具体说明。其中,任务类型为计量装拆换任务,该任务类型对应的电子器件有电能表和互感器等。
一、在作业平台端生成二维码(在现场作业管理系统平台中):
作业任务数据从营销管理系统派发至现场作业管理系统平台即作业平台端。此时,作业任务数据的任务基本信息包括的内容如下表2所示。
表2
作业任务数据的电子器件中电能表数据包括的内容如下表3所示。
表3
作业任务数据的电子器件中互感器数据包括的内容如下表4所示。
表4
现场作业管理系统平台接收作业任务数据,然后通过压缩、编码以及加密后将作业任务数据处理并生成二维码,此时该二维码是生成显示在现场作业管理系统平台中的(现场作业管理系统平台在作业平台端上运行)。
如图5所示,为作业平台端中作业任务数据展示界面,即将作业任务数据中的部分数据显示在展示界面,例如,展示界面中显示的任务名称为班组新装、任务工单号包括111111111和111111112以及任务类型为计量装拆换等。展示界面还包括可以查看二维码的查看按键,用户可点击该查看按键进行二维码查看。对该作业任务数据进行处理,生成的二维码的数目为3张,图6至图8为作业任务数据通过压缩、编码以及加密,并生成的二维码。其中,图6中显示的二维码为第1张二维码,图7中显示的二维码为第1张二维码和第2张二维码,图8中显示的二维码为第1张二维码、第2张二维码和第3张二维码。
二、现场作业终端扫描二维码
1、用户去现场执行作业任务是需要通过现场作业终端即移动终端执行。在现场作业终端上安装扫描软件,通过移动终端上的扫描软件对现场作业管理系统平台中生成的二维码进行扫描(多张图的话就逐一扫描),扫描二维码后获取的其实是一连串的字符。
2、当前作业任务对应生成的二维码被现场作业终端的扫描软件全部扫描完成之后,就将扫描后的所有字符串进行处理,包括字符串拼接、解密、解码和解压等,使得移动终端扫描得到的字符串重新被还原成一个作业任务数据。
图9至图10为移动终端扫描并解析二维码后的展示界面,可将扫描并解析获得的二维码对应的子数据存储在移动终端上。例如,若作业平台端生成有3张二维码,移动终端在进行扫描时,扫描并解析完一张二维码即会显示相应地数据,例如二维码的数目,二维码的预设顺序标号,其中,图9为扫描第1张二维码后的展示界面,表示任务工号为111111112的作业任务有3张二维码,当前扫描的是第1张,扫描数量为1张,剩余待扫描的二维码为第2和3张,已扫进度为33.3%。图10为将3张二维码扫描完毕后的展示界面,表示任务工号为111111112的作业任务的3张二维码已全部扫描完毕。
图11为现场作业时,移动终端中扫描软件中日历,图12为任务模式展示界面,移动终端将所有扫描完成的二维码通过数据解析、md5解密、base64解压、zip解压等方式将数据重新整合还原并展示在移动终端上。
三、现场作业终端执行作业任务
现场作业终端上展示还原后的作业任务数据,作业人员使用现场作业终端对该任务操作执行并填写数据等,直至该作业任务要求执行完成。
四、作业任务执行完后得到的作业任务数据生成二维码
在现场作业终端上执行完该作业任务后,得到结果数据即作业任务执行完后得到的作业任务数据,通过压缩、编码和加密等方式生成二维码,此时该二维码是生成显示在现场作业终端上的。
图13为通过移动终端执行完成的作业任务展示界面,其完成后的作业任务数据可理解为结果数据。此时,移动终端可将执行完作业任务后得到的作业任务数据进行处理生成二维码,且移动终端上会显示查看二维码按键,用户操作该查看二维码按键可查看结果数据对应的二维码。即点击二维码按键后二维码可显示在移动终端上,具体为图14,图14为作业任务完成后移动终端通过压缩、base64编码、md5加密并生成的二维码,且图14中还包括已扫进度、二维码的数目以及当前二维码的预设顺序标号。
五、作业任务数据回传至现场作业管理系统平台
1、将二维码扫描工具(扫描仪、扫描枪等)连接到作业平台端,在作业平台端找到对应的作业任务,然后用扫描仪或扫描枪对准扫描现场作业终端上该作业任务对应的二维码。扫描仪或扫描枪扫描二维码后直接获取的其实是一连串的字符。
2、当该作业任务对应的二维码全部被扫描后,现场作业管理系统平台再将扫描后的所有字符串进行处理,包括字符串拼接、解密、解压等,使得现场作业管理系统平台扫描得到的字符串重新被还原成一条已完成的作业任务数据。
图15为移动终端上作业任务数据回传至作业平台端后的展示界面,上传进度为100%,任务状态为已完成。其原理与上述二维码分解及整合一致,此处不再详述。其中移动终端上的作业任务数据形成二维码后上传至作业平台端有两种上传方式,方式一:将作业平台端与扫描仪相连,通过扫描仪扫描出移动终端上作业任务数据形成的二维码,并由作业平台端将扫描出的二维码解析还原成作业任务数据回传至其他业务系统。方式二:将移动终端上作业任务数据形成的二维码通过usb接口导出来并上传到作业平台端,再由作业平台端将扫描出的二维码解析还原成作业任务数据回传至其他业务系统。
3、最终现场作业管理系统平台通过接口方式将数据回传给营销管理系统。
请参阅图16,提供一种实施方式的二维码生成装置,包括:
数据获取模块110,用于获取作业任务数据。
分割模块120,用于当作业任务数据的大小大于预设大小时,分割作业任务数据获得各子数据,其中,各子数据的大小分别小于或等于预设大小。
二维码生成模块130,用于根据各子数据生成对应的二维码。
上述二维码生成装置,获取作业任务数据,当所述作业任务数据的大小大于预设大小时,分割所述作业任务数据获得各子数据,根据各所述子数据生成对应的二维码,其中,各所述子数据的大小分别小于或等于所述预设大小。在执行电网的作业任务时,需要的作业任务数据的数据量大小可能比较大,为了避免作业任务数据的大小大于预设大小,一张二维码无法存储所有的作业任务数据导致生成的二维码中数据缺失不准确的问题,需要对作业任务数据的大小与预设大小进行比较,当所述作业任务数据的大小大于预设大小时,说明作业任务数据较大可能无法被一张二维码存储,此时,分割所述作业任务数据获得各子数据,得到数据量大小小于或等于预设大小的子数据,这样根据各所述子数据生成对应的二维码,可确保各子数据能完整准确地存储在二维码中,即生成的二维码中的数据完整准确。
进一步地,二维码生成模块130还用于,当作业任务数据的大小小于或等于预设大小时,可无需分割作业任务数据,根据作业任务数据生成对应的二维码即可。
在其中一个实施例中,还包括显示模块,用于二维码生成模块130根据各子数据生成对应的二维码之后,当接收到查看指令时,根据所述查看指令,显示二维码。
请参阅图17,在其中一个实施例中,上述分割模块包括:
压缩模块121,用于当作业任务数据的大小大于预设大小时,对作业任务数据进行压缩处理获得压缩数据。
编码模块122,用于对压缩数据进行编码处理获得编码数据。
加密模块123,用于对编码数据进行加密处理获得加密字符串数据。
数据分割模块124,用于分割加密子字符串数据获得各子数据。
在其中一个实施例中,上述分割模块120具体根据预设字节大小,分割作业任务数据获得各子数据。其中,预设字节大小小于或等于预设大小。进一步地,上述数据分割模块124则可用于根据预设字节大小,分割加密子字符串数据获得各子数据。
在其中一个实施例中,二维码携带子数据的数目以及子数据对应的预设顺序标号。
请参阅图18、还提供一种实施方式的二维码的数据处理装置,包括:
扫描模块210,用于当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的数据包。
其中,所述数据包包括子数据。
拼接模块220,用于当各二维码扫描并解析完毕时,根据各子数据拼接成作业任务数据。
上述二维码的数据处理装置,当接收到扫描指令时,根据所述扫描指令扫描生成的二维码,并解析所述二维码获取对应的子数据,当各所述二维码扫描并解析完毕时,根据各所述子数据拼接成作业任务数据。通过扫描并解析二维码可获取对应的子数据,只有在二维码均扫描且解析完毕后再将得到的各子数据进行拼接,即作业任务数据是由各子数据拼接而成,即作业任务数据中完整地包含了各子数据,如此,可确保得到的作业任务数据完整准确。
在其中一个实施例中,请参阅图19,拼接模块包括:
数据拼接模块221,用于各子数据,形成加密字符串。
解密模块222,用于对加密字符串进行解密处理获得编码数据。
解码模块223,用于对编码数据进行解码处理获得压缩数据。
解压模块224,用于对压缩数据进行解压处理获得作业任务数据。
在其中一个实施例中,数据包还包括子数据的数目以及子数据对应的预设顺序标号。
其中,扫描并解析二维码获得子数据后,还记录扫描数量,当扫描数量等于子数据的数目时,判定为各二维码扫描并解析完毕。
上述数据处理方法装置为实现上述数据处理方法的装置,技术特征一一对应,在此不再赘述。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。