一种异步实现发票实时上传的方法与流程

文档序号:12719606阅读:708来源:国知局
一种异步实现发票实时上传的方法与流程

本发明涉及数据处理技术领域,尤其是指一种异步实现发票实时上传的方法。



背景技术:

目前增值税收入已占我国年税收总额的近50%,成为名符其实的第一大税种。在税制改革之初,由于增值税建立在手工操作、传统落后的税收征管方式上,仅靠几十万税务人员手工操作,还无法从根本上解决全国的增值税专用发票伪造、虚开、骗抵等问题。

随着信息化时代的到来,采用信息化手段进行税收控制已经成为当前的主流,如公开号为( CN103761251A)的现有中国发明专利公开了一种基于FTP协议的同步上传与下载文件的方法,包括:获取需要上传的压缩文件;拆分所述文件为N个子文件,其中N大于等于2;上传所述子文件给FTP服务器;在FTP服务器上下载所述子文件,相对应的将所有的子文件组合为原压缩文件。在上传端上传的过程中,如果每成功上传一个子文件,下载端都可以进行下载;当上传较大文件时,所述方法能够节约下载端的等待时间。上述方法采用同步上传与下载,如果企业端发出发票上传请求,处理端接收到请求后如果企业端请求一直在后台等待处理结果,而且处理端系统也是直接开始处理上传的发票信息,一直到有发票信息处理结果后才将结果信息抛给上传请求,返回到企业开票端,这种同步处理方式会加大处理端服务器的压力,容易导致企业开票端获取结果超时。



技术实现要素:

为此,本发明所要解决的技术问题在于克服现有技术中采用同步处理方式会增加服务器端的压力导致企业开票端获取结果超时等问题,从而提供一种可有效地降低处理服务器端的压力,同时大幅度减少企业端等待发票结果时间的一种异步实现发票实时上传的方法。

为解决上述技术问题,本发明的一种异步实现发票实时上传的方法,其步骤如下:步骤S1:开票端将上传的发票数据通过密文通道传输至税局端的受理平台;步骤S2:所述受理平台将所述上传的发票数据发送到业务处理系统进行处理;步骤S3:所述业务处理系统调用上传服务接口将发票数据上传成功信息返回至所述开票端,并通过所述上传服务接口将上传的发票数据传输至上传数据处理线程池,利用所述上传数据处理线程池对上传的发票数据进行处理。

在本发明的一个实施例中,所述步骤S3之后,所述开票端接收到所述业务处理系统返回的发票数据上传成功信息后,经过第一预设时间,开票端发起查询上传结果的请求,获取上传的发票数据的处理结果,并根据接收到的处理结果信息更新开票端已开具发票的状态。

在本发明的一个实施例中,所述开票端发起查询上传结果的请求后,若没有获取相应处理结果,则每隔一第二预设时间,再次发起查询上传结果的请求。

在本发明的一个实施例中,所述开票端发起预设次数的查询上传结果的请求后,若没有获取相应处理结果,则返回步骤S1,重新上传所述发票数据。

在本发明的一个实施例中,所述步骤S3中,利用所述上传数据处理线程池对发票数据进行处理时,首先判断用户的有效性,如果是无效信息,则在处理结果表中写入失败标志;如果是有效信息,则判断税控设备的有效性,如果是无效信息,则在处理结果表中写入失败标志;如果是有效信息,继续判断上传发票数据的完整性,若完整,则对发票数据进行验签,否则处理结果表写入失败标志。

在本发明的一个实施例中,对发票数据进行验签时,若发票数据与发票的加签信息匹配,则获取相应税务机关代码,将发票数据存入数据库,在处理结果表写入成功标志;若发票数据与发票的加签信息不匹配或者不能获取相应税务机关代码且没有成功将发票数据存入数据库,则均在处理结果表写入失败标志。

在本发明的一个实施例中,所述处理结果表是数据库中记录上传发票处理结果的表格。

在本发明的一个实施例中,所述步骤S3中,所述上传数据处理线程池是所述业务受理系统可以配置的最大处理线程。

在本发明的一个实施例中,所述开票端在开具发票时使用技术手段利用发票的全票面信息对发票进行加签,所述业务处理系统处理上传发票过程中采用验签的方式辨别发票信息的真伪。

在本发明的一个实施例中,所述步骤S2中,所述受理平台根据发出请求的用户类型以及发出请求的业务类型将用户请求发送至所述业务处理系统进行处理。

本发明的上述技术方案相比现有技术具有以下优点:

本发明所述异步实现发票实时上传的方法,将企业端开票系统与税局端税控处理系统以及税局端数据库三者合成一张电子网,通过采集企业端开具的发票全票面信息,并将采集到的信息实时上传的方式,有效解决发票伪造、虚开、骗抵等问题。

附图说明

为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中

图1是本发明所述发票实时上传流程图;

图2是本发明所述开票端查询发票流程图。

具体实施方式

如图1所示,本实施例提供一种异步实现发票实时上传的方法,其步骤如下:步骤S1:开票端将上传的发票数据通过密文通道传输至税局端的受理平台;步骤S2:所述受理平台将所述上传的发票数据发送到业务处理系统进行处理;步骤S3:所述业务处理系统调用上传服务接口将发票数据上传成功信息返回至所述开票端,并通过所述上传服务接口将上传的发票数据传输至上传数据处理线程池,利用所述上传数据处理线程池对上传的发票数据进行处理。

本实施例所述一种异步实现发票实时上传的方法,所述步骤S1中,开票端发出上传发票数据请求,所述开票端可以是企业端,企业端通过互联网发出上传发票数据,所述开票端发出的请求数据通过密文通道传输至税局端的受理平台,有效保障了信息传输的安全性;所述步骤S2中,所述受理平台将所述上传的发票数据发送到业务处理系统进行处理,所述受理平台是在外网环境中,用于接收从所述企业端发出的请求,且所述受理平台起到一个数据清分的作用,会根据发出请求的用户类型,将用户请求发送到相应的业务处理端进行处理;所述步骤S3中,所述业务处理系统调用上传服务接口将发票上传成功信息返回至所述开票端,并通过所述上传服务接口将上传的发票数据传输至上传数据处理线程池,利用所述上传数据处理线程池对上传的发票数据进行处理,具体地,所述开票端实时上传发票信息后,不必等待所述业务处理系统对发票的处理结果,所述业务处理系统接收到发票上传成功信息后,返回给开票端发票信息上传成功的消息,同时利用所述上传数据处理线程池对上传的发票数据进行处理。由于整个流程采用异步方式实现,与同步相比,有效地降低了处理服务器端的压力,同时大幅度减少了企业端等待发票结果的时间。

如图2所示,所述步骤S3之后,所述开票端接收到所述业务处理系统返回的发票数据上传成功信息后,经过第一预设时间,开票端发起查询上传结果的请求,获取上传的发票数据的处理结果,并根据接收到的处理结果信息更新开票端已开具发票的状态。所述开票端发起查询上传结果的请求后,若没有获取相应处理结果,则每隔一第二预设时间,再次发起查询上传结果的请求。所述第二预设时间与所述第一预设时间可以相同或者不同。所述开票端发起预设次数的查询上传结果的请求后,若没有获取相应处理结果,则返回步骤S1,重新上传所述发票数据,由于对发票上传结果提供单独的查询接口,有效地减轻了发票处理服务端的压力,同时减少了企业端查询发票处理结果的等待时间。

所述步骤S1中,所述开票端在开具发票时使用技术手段利用发票的全票面信息对发票进行加签,不但可以保证发票的真实性,而且可以防止在传输过程中发票信息被篡改;所述密文通道是SSL(Secure Sockets Layer 安全套接层)通道,所述SSL通道首先会进行用户身份验证,有效保证了用户的合法性,另一方面也保证了信息传输过程中的安全性,有效保障了传输数据在传输过程中不被截取或者窃听。

所述步骤S2中,所述受理平台根据发出请求的用户类型以及发出请求的业务类型将用户请求发送至所述业务处理系统进行处理,具体地,所述开票端发出的请求数据经过所述SSL通道进而接入税局端部署的受理平台,所述平台是在外网环境中,用于接收从开票端发出的请求,该平台起到一个数据清分的作用,会根据发出请求的用户类型,将用户请求发送到相应的业务处理端进行处理。

所述步骤S3中,所述业务处理系统处理上传发票过程中采用验签的方式辨别发票信息的真伪,有效地解决了伪造、虚开发票的问题,既提高了效率,同时也加大了税控的力度。税局端部署的业务处理系统根据收到的用户请求业务类型以及发出请求的业务类型,调用业务处理系统的发票上传服务接口,对上传发票数据进行处理。具体地,所述业务处理系统通过上传服务接口将上传信息返回至所述开票端,所述上传信息是指上传数据成功信息,使所述开票端获取上传成功的信息;同时通过所述上传服务接口将发票数据传输至上传数据处理线程池,利用所述上传数据处理线程池对发票数据进行处理。利用所述上传数据处理线程池对发票信息进行处理时,首先判断用户的有效性,如果是无效信息,则在处理结果表中写入失败标志;如果是有效信息,则判断税控设备的有效性,如果是无效信息,则在处理结果表中写入失败标志;如果是有效信息,继续判断上传数据的完整性,若完整,则对发票进行验签,否则处理结果表写入失败标志;对发票进行验签时,若信息与发票的加签信息匹配,则获取相应税务机关代码,将发票数据存入数据库,在处理结果表写入成功标志;若信息与发票的加签信息不匹配或者不能获取相应税务机关代码且没有成功将发票数据存入数据库,则均在处理结果表写入失败标志,其中所述处理结果表是数据库中记录上传发票处理结果的表格。

值得注意的是:所述开票端对发票进行加签后,发票信息被传输至所述业务处理端,所述业务处理端利用所述的全票面发票信息对发票进行验签时,加签与验签是一个不可逆的过程,只有验证完全通过,此发票才会被认可,存入数据库,以方便后续查找操作,一方面保证发票的真实性,另一方面也可以检测出是否在传输问题中发票信息被篡改,由于业务处理系统在将发票信息入库前验签,有效地保证了入库发票的真实性,很大程度上加大了税控的力度。

为了提高了系统的吞吐量,上传的发票数据提交给异步处理的线程池处理,所述上传数据处理线程池是所述业务受理系统可以配置的最大处理线程,从而可以根据服务器性能和并发用户动态调整异步处理的线程数,超过最大线程将拒绝新的请求,从而可以保证服务的稳定性。

本实施例中,所述企业开票系统与税局端税控处理系统以及税局端数据库三者合成一张电子网,通过采集企业开票端开具的发票全票面信息,并将采集到的信息实时上传的方式,有效解决发票伪造、虚开、骗抵等问题。

本发明的一个成功案例是基于JAVA语言开发的标准J2EE项目。

综上,本发明所述技术方案具有以下优点:

1.本发明所述异步实现发票实时上传的方法,所述步骤S1中,开票端发出上传发票数据,所述开票端可以是企业端,企业端通过互联网发出上传发票数据;所述开票端发出的请求数据通过密文通道传输至税局端的受理平台,有效保障了信息传输的安全性;所述步骤S2中,所述受理平台将所述请求数据发送到业务处理系统进行处理,所述受理平台是在外网环境中,用于接收从所述企业端发出的请求,且所述受理平台起到一个数据清分的作用,会根据发出请求的用户类型,将用户请求发送到相应的业务处理端进行处理;所述步骤S3中,所述业务处理系统通过上传服务接口将上传成功信息返回至所述开票端,同时调用所述上传服务接口将发票数据传输至上传数据处理线程池,利用所述上传数据处理线程池对发票数据进行处理,由于整个流程采用异步方式实现,与同步相比,有效地降低了处理服务器端的压力,同时大幅度减少了企业端等待发票结果的时间。

2.本发明所述一种异步实现发票实时上传的方法,所述步骤S3之后,所述开票端接收到所述业务处理系统返回的发票数据上传成功信息后,经过第一预设时间,开票端发起查询上传结果的请求,获取上传的发票数据的处理结果,并根据接收到的处理结果信息更新开票端已开具发票的状态。所述开票端发起查询上传结果的请求后,若没有获取相应处理结果,则每隔一第二预设时间,再次发起查询上传结果的请求。所述第二预设时间与所述第一预设时间可以相同或者不同。所述开票端发起预设次数的查询上传结果的请求后,若没有获取相应处理结果,则返回步骤S1,重新上传所述发票数据,由于对发票上传结果提供单独的查询接口,有效地减轻了发票处理服务端的压力,同时减少了企业端查询发票处理结果的等待时间。

显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

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