CN108230052A - 一种发票开具及上传方法和系统 - Google Patents
一种发票开具及上传方法和系统 Download PDFInfo
- Publication number
- CN108230052A CN108230052A CN201611200818.3A CN201611200818A CN108230052A CN 108230052 A CN108230052 A CN 108230052A CN 201611200818 A CN201611200818 A CN 201611200818A CN 108230052 A CN108230052 A CN 108230052A
- Authority
- CN
- China
- Prior art keywords
- service
- invoice
- worker thread
- business information
- service request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/04—Billing or invoicing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种发票开具及上传方法和系统,所述方法,包括:接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;解析所述外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。待业务处理完成后,将处理结果经协议发送模块反馈给开票客户端。采用本发明提供的方法,实现了发票开具和发票上传的并行处理,确保了既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种发票开具及上传方法及系统。
背景技术
随着网络和互联网的发展,税控设备和软件也在朝着智能化的方向发展,过去的税控软件往往只具备发票开具和简单的票源管理功能。每到征期,财税人员必须拿着税控盘到税务局大厅办理报税业务,当发票用尽的时候,财税人员也要到税务局大厅现场购买票源。这种税控管理方式使得财税人员花费大量时间和精力往返于企业和税局之间,也要浪费大量时间在税局大厅等候业务的办理,这不仅影响了企业的运营效率,也增加了财税人员的工作负担。
相较于过去,当前的税务软件在发票开具的基础上,通常具备了发票上传、网络抄报税和完善的网络票源管理功能,使得之前需要到税局大厅办理的业务,足不出户使用网络就能办理,不仅方便了企业的税务管理,还减轻了财税人员的工作负担。但是税控设备和软件在向智能化方向发展的同时,仍然面临性能不足的问题。主要表现在:现有的税控软件中发票上传和发票开具是串行过程,在发票上传成功后发票开具才能完成。且发票上传是通过SSL(Secure Socket Layer,安全套接层)网络通道将发票信息上传至税局局端,耗时较长,尤其是在网络传输不畅通的情况下,需要等待更长时间,大大降低了发票开具的速度。
随着电子商务的发展,网上交易平台每日成交的交易量越来越大,对发票开具的速度提出了更高要求,目前的税控设备和软件很难满足其要求。同时由于每月的发票开具量巨大,如果不能在开票的同时,将发票实时上传至税局局端,必然累积大量未上传发票,导致在下一个征期时,无法及时完成网络抄报税功能,影响发票开具,进而导致企业无法进行正常的业务运营。
综上所述,对于电商企业,如何确保税控设备既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度是亟待解决的问题之一。
发明内容
本发明实施例提供一种发票开具及上传方法和系统,用以确保税控设备既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度,提高税控设备的运行效率。
本发明实施例提供一种发票开具及上传方法,包括:
接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;
解析所述外层业务信息,获得所述业务请求的业务标识;并
根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及
触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
本发明实施例提供一种发票开具及上传系统,包括:开票服务器和至少一台开票客户端,其中:
所述至少一台开票客户端,用于向所述开票服务器发送业务请求;
所述开票服务器,用于接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;解析所述外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
本发明有益效果:
本发明实施例提供的一种发票开具及上传方法和系统,开票客户端在向开票服务器发送业务请求时,所述业务请求包括内层业务信息和外层业务信息;开票服务器接收到该业务请求后,解析业务请求中包含的外层业务信息,获得该业务请求的业务标识;并根据获得的业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。采用本发明提供的方法,当开票客户端发送多个业务请求时,如发票开具业务请求和发票上传业务请求,能够根据每一个业务请求的业务标识,分别上传至不同的工作线程,实现了多业务的并行处理,确保了既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度,更提高了系统的运行效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例提供的发票开具及上传系统的结构示意图;
图2a为本发明实施例提供的发票开具及上传方法的实施流程示意图;
图2b为本发明实施例提供的发票开具及上传方法的具体实施流程示意图;
图3为本发明实施例提供的发票开具及上传方法中业务处理模块处理业务的实施流程示意图。
具体实施方式
本发明实施例提供的发票开具及上传方法和系统,实现了发票开具和发票上传等多业务的并行处理,确保了既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度。
需要说明的是,本发明中涉及的税控设备并不是单一设备,而是发票开具及上传系统所涉及的设备的集合,如可以但不限于包括:至少一个开票客户端、开票服务器、税控管理设备和税局局端设备等。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
如图1所示,为本发明实施例提供的发票开具及上传系统的结构示意图,可以包括:至少一个开票客户端1和开票服务器2,其中:
至少一个开票客户端1,用于向所述开票服务器发送业务请求。
所述开票服务器2,用于接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;解析所述外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
具体的,所述业务请求包含的外层业务信息用于获取该业务的业务请求的业务标识;以及所述业务请求包含的内层业务信息,根据业务请求的类别的不同而不同,如果所述业务请求为发票开具业务请求,则内层业务信息为发票开具业务所需要的开具发票的基本信息;如果所述业务请求为发票上传业务请求,则内层业务信息为发票上传业务所需要的基本信息等。
较佳地,所述开票服务器2可以但不限于基于Libevent搭建的,可同时与多个开票客户端1建立网络连接,接收至少一个开票客户端1发送的业务请求。
具体实施时,所述系统,还包括税控管理设备3和税局局端设备4,其中:
所述税控管理设备3,用于向所述开票服务器2提供功能接口。
所述税局局端设备4,用于接收所述开票服务器2中业务处理模块对发票信息签名后的发票签名信息,并对所述发票签名信息进行合法性验证。
具体地,所述税控管理设备3可以但不限于是金税盘设备,为了描述方便,以金税盘设备为例进行说明。
较佳地,所述开票服务器2,具体用于为每一工作线程维护一个等待队列;以及根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程的等待队列。
优选地,所述开票服务器2,还用于为每一工作线程设置优先级;以及按照工作线程的优先级由高到低的顺序,从优先级最高的工作线程开始,利用该工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
进一步地,所述开票服务器2,还用于触发所述业务处理模块对税控管理设备3的互斥量加锁,及当确定出所述税控管理设备3正常时,根据所述内层业务信息,调用所述税控管理设备3的功能接口处理所述内层业务信息对应的内层业务,以及当确定出调用所述税控管理设备3的功能接口结束后,对税控管理设备3的互斥量解锁。
具体实施时,所述至少一个开票客户端1发送的业务请求包括发票开具业务请求、发票上传业务请求和第三业务请求,其中:
所述第三业务请求包括以下至少一种:发票领购业务请求、发票查询业务请求、发票管理业务请求、身份认证业务请求和抄报税业务请求。
具体地,所述税控管理设备3提供的功能可以但不限于包括发票开具、发票领购、发票安全存储及查询、发票管理、身份认证和抄报税等。
本发明实施例提供的发票开具及上传系统的工作原理为:以发票开具和发票上传业务请求为例进行说明,首先,至少一个开票客户端1向开票服务器2分别发送发票开具和发票上传业务请求后,开票服务器2分别根据所述发票开具业务请求和发票上传业务请求中包含的外层业务信息,分别获得发票开具业务请求的业务标识和发票上传业务的业务标识,并根据业务标识与工作线程的对应关系,分别将发票开具业务请求包含的内层业务信息对应的发票开具业务上传至发票开具业务的业务标识对应的工作线程,以及将发票上传业务请求包含的内层业务信息对应的发票上传业务上传至发票上传业务的业务标识对应的工作线程,然后开票服务器2分别触发发票开具业务和发票上传业务的业务标识对应的工作线程对应的业务处理模块分别处理发票开具业务和发票上传业务。其中,用于处理发票开具业务的业务处理模块为发票开具业务处理模块;以及用于处理发票上传业务的业务处理模块为发票上传业务处理模块。开票服务器2分别触发发票开具业务处理模块和发票上传业务处理模块执行以下操作:对税控管理设备3的互斥量加锁,当确定出所述税控管理设备3正常时,根据内层业务信息,调用所述税控管理设备3的功能接口处理所述内层业务信息对应的内层业务,以及当确定出调用所述税控管理设备3的功能接口结束后,对税控管理设备3的互斥量解锁。实现了发票开具业务和发票上传业务的并行处理。待发票开具业务处理模块对发票业务处理完成后,将处理结果发送给开票服务器2中的协议发送模块,由协议发送模块将发票开具业务的处理结果发送给相应的开票客户端1。此外,待发票上传业务处理模块对发票上传业务中的发票信息签名后,将签名后的发票发送至税局局端设备4。在此之前,开票服务器2与税局局端设备4建立了SSL通信连接。将签名后的发票上传至税局局端设备4的过程为:开票服务器2通过该SSL通信连接将签名后的发票上传至税局局端设备4,然后税局局端设备4对接收到的发票进行合法性验证,并将验证结果返回给开票服务器。需要说明的是,发票上传业务支持批量上传,具体为:开票客户端1发送的发票上传业务请求中可以包括多张发票信息,开票服务器2中的发票上传业务处理模块可以将发票上传业务中的多张发票信息进行签名,然后开票服务器2可以通过SSL通信连接一起将多张签名后的发票信息发送给税局局端设4,税局局端设备4在接收到多张签名后的发票后,分别将每一签名后的发票进行合法性验证,并将验证结果返回给开票服务器2,最后,开票服务器2将多张发票的验证结果经协议发票模块反馈给开票客户端1。
较佳地,所述开票服务器2,可以以32位ARM架构CPU(Central Processing Unit,中央处理器)控制板为核心,通过USB(Universal Serial Bus,通用串行总线)与税控管理设备3连接,可调用税控管理设备3的功能接口,驱动税控管理设备3完成发票开具、发票领取等业务。
优选地,所述开票服务器2与税局局端设备4之间,以及开票服务器2与至少一个开票客户端1之间通过网络连接。
需要说明的是,开票服务器2在接收开票客户端1发送的业务请求之前,需要对税控管理设备3进行初始化,该初始操作包括税控管理设备3开卡、税控管理设备3口令认证和税控管理设备3身份认证以及初始化税控管理设备3的互斥量等。此外,开票服务器2执行的任务,除其中的业务处理模块的业务处理流程运行在工作线程,开票服务器2的其它流程运行在主线程,如对税控管理设备3的初始化操作,接收至少一个开票客户端1发送的业务请求操作等,其中主线程与工作线程之间通过管道进行间通信
本发明实施例提供的一种发票开具及上传系统,开票服务器在接收到至少一个开票客户端发送的业务请求时,根据业务请求包含的外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务,实现了多业务的并行处理能力。
实施例二
需要说明的是,本发明实施例提供的发票开具及上传方法,可以应用于开票服务器中,本发明以开票服务器执行发票开具及上传方法为例进行说明。
如图2a所示,为本发明实施例提供的发票开具及上传方法的实施流程示意图,可以包括以下步骤:
S21、接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息。
具体实施时,在接收开票客户端发送的业务请求之前,还包括:将税控管理设备进行初始化,该初始操作包括税控管理设备开卡、税控管理设备口令认证和税控管理设备身份认证等。
较佳地,所述业务请求可以但不限于包括:发票开具业务请求、发票上传业务请求和第三业务请求,其中:
所述第三业务请求包括以下至少一种:发票领购业务请求、发票查询业务请求、发票管理业务请求、身份认证业务请求和抄报税业务请求。
具体地,所述外层业务信息携带有所述业务请求的业务标识;所述内层业务信息携带有所述业务请求需要的基本信息,此外,针对不同的业务请求,其外层业务信息携带的所述业务请求的业务标识不同;同样地,其内层业务信息携带的所述业务请求的基本信息也不同。具体为:如果所述业务请求为发票开具业务请求,则所述业务标识可以为ID_FPKJ,所述内层业务信息可以为发票开具业务请求所需的基本信息;如果所述业务请求为发票上传业务请求,则所述业务标识可以为ID_FPSC,所述内层业务信息可以为发票上传业务请求所需的基本信息;如果所述业务请求为第三业务请求,则所述业务标识可以为ID_OTHER,所述内层业务信息可以为第三业务请求所需的基本信息。
较佳地,所述业务请求可以但不限于包括XML格式的业务请求。
S22、解析所述外层业务信息,获得所述业务请求的业务标识。
具体地,如果所述业务请求为发票开具业务请求,则获取的所述发票开具业务请求的业务标识为ID_FPKJ;如果所述业务请求为发票上传业务请求,则获取的所述发票上传业务请求的业务标识为ID_FPSC;如果所述业务请求为第三业务请求,则获取的所述第三业务请求的业务标识为ID_OTHER。
S23、根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程。
具体地,所述业务标识与工作线程的对应关系可以如表1所示,从表1中可看出,如果所述业务请求为发票开具业务请求,则获取的所述业务标识为ID_FPKJ,则根据表1中的业务标识与工作线程的对应关系,则将所述内层业务信息对应的内层业务上传至工作线程1。同样的,如果所述业务请求为发票上传业务请求,则根据步骤S22可知,其业务标识为ID_FPSC,则根据表1中的业务标识与工作线程的对应关系,则将所述发票上传业务请求中内层业务信息对应的内层业务上传至工作线程2;以及将所述第三业务请求中内层业务信息对应的内层业务上传至工作线程3。
表1
业务标识 | 工作线程 |
ID_FPKJ | 工作线程1 |
ID_FPSC | 工作线程2 |
ID_OTHER | 工作线程3 |
…… | …… |
需要说明的是,表1中只是列举了一种业务标识与工作线程的对应关系,当然还可以有其它对应关系,用户可以根据实际需求进行设置,本发明实施例对此不进行限定。
具体实施时,所述方法,还包括:为每一工作线程维护一个等待队列;以及根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程的等待队列。
具体地,参考表1所示,开票服务器为表1中的每一个工作线程均维护一个等待队列,如工作线程1、2和3分别维护等待队列1、等待队列2和等待队列3等。此外,具体实施时,在运行步骤S21~S23的方法时,开票服务器运行于主线程,且该主线程维护等待队列0。
S24、触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
具体实施时,所述方法,还包括:为每一工作线程设置优先级;以及按照工作线程的优先级由高到低的顺序,从优先级最高的工作线程开始,利用该工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
具体地,以工作线程1、2和3为例进行说明,开票服务器可以为工作线程1设置最高优先级,工作线程2次之,为工作线程3设置最低的优先级。当多个工作线程的状态皆为ready时,优先处理处于工作线程1的业务。这只是一种最简单的优先级分配方式,当然,用户也可以根据需要采用其它方法对工作线程设置优先级,本发明对此不进行限定。
具体实施时,所述业务处理模块可以但不限于包括发票开具业务处理模块、发票上传业务处理模块和第三业务处理模块等。
本发明以发票开具、上传和第三业务处理模块为例进行描述,具体参考图2b所示的流程图:
从图2b中可知,开票服务器2在运行发票开具及上传方法时,触发业务处理模块处理相应业务运行于工作线程,即步骤S24运行于工作线程,而步骤S21~S23运行于主线程。
在图2b中,三个工作线程分别维护三个等待队列,开票服务器2在解析外层业务获取业务标识后,根据业务标识与工作线程的对应关系,可以将内层业务信息对应的内层业务上传至业务标识对应的工作线程的等待队列中,如将发票开具业务上传至工作线程1的等待队列1,将发票上传业务上传至工作线程2的等待队列2,将第三业务上传至工作线程3的等待队列3。然后工作线程中的业务处理模块分别从等待队列中提取业务信息,并对该业务进行业务处理,待处理完成后,由于处于不同工作线程的业务处理模块同时处理其等待队列中的业务,因此在将处理结果返回给开票客户端1时,需要先将业务处理结果上传至等待队列0,然后触发协议发送模块,协议发送模块从等待队列0中依次读取业务处理结果,并将业务处理结果反馈给相应的开票客户端1。
本发明实施例提供的发票开具及上传方法,开票客户端在向开票服务器发送业务请求时,所述业务请求包括内层业务信息和外层业务信息;开票服务器接收到该业务请求后,解析业务请求中包含的外层业务信息,获得该业务请求的业务标识;并根据获得的业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。采用本发明提供的方法,当开票客户端发送多个业务请求时,如发票开具业务请求和发票上传业务请求,能够根据每一个业务请求的业务标识,分别上传至不同的工作线程,实现了多业务的并行处理,确保了既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度,提高了系统的运行效率。
实施例三
具体实施时,由于税控管理设备(如金税盘设备)的功能接口可能不支持并行访问,因此本发明实施例在业务处理模块对业务处理时,设置了税控管理设备的互斥量,通过对互斥量的加锁操作,实现对税控管理设备的同步访问,具体地,开票服务器在触发所述工作线程对应的业务处理模块处理所述内层业务,具体包括:
触发所述业务处理模块对税控管理设备的互斥量加锁,及当确定出所述税控管理设备正常时,根据所述内层业务信息,调用所述税控管理设备的功能接口处理所述内层业务信息对应的内层业务,以及当确定出调用所述税控管理设备的功能接口结束后,对税控管理设备的互斥量解锁。
优选地,本发明实施例提供的发票开具及上传方法中所述业务处理模块处理业务请求时的流程示意图参考图3所示,可以包括以下步骤:
S31、从等待队列获取业务请求的内层业务信息。
具体实施时,根据步骤S23中描述,业务处理模块维护等待队列,因此需要从等待队列中获取业务请求的内层业务信息。
S32、对税控管理设备的互斥量加锁。
具体地,在对税控管理设备互斥量加锁失败时,该工作线程进入等待状态,直至对税控管理设备互斥量加锁成功为止。
S33、判断税控管理设备的状态标识是否为1,如果是,则执行步骤S37;否则,执行步骤S34。
具体地,如果当前税控管理设备的状态标识为1,则表示税控管理设备正常,则执行步骤S37;若为0,则表示当前税控管理设备不支持调用功能接口,则执行步骤S34。
S34、对税控管理设备重新初始化。
具体实施时,所述初始化操作包括:税控管理设备开卡操作、口令认证操作和身份认证操作等。
S35、判断税控管理设备初始化是否成功,如果是,则执行步骤S36;否则,执行步骤S310。
S36、将税控管理设备的状态标识设置为1。
在步骤S35对税控管理设备初始化成功之后,则将该税控管理设备的状态标识设置为1,表明该税控管理设备正常,可以满足开票服务器调用其功能接口。
S37、调用税控管理设备的功能接口。
在调用税控管理设备的功能接口后,业务处理模块可以进行相关业务处理,如发票开具业务处理模块调用税控管理设备的发票开具功能接口执行开具发票的业务,发票上传业务处理模块调用税控管理设备的发票查询功能接口获取发票上传业务中所需的基本信息等。
S38、判断税控管理设备的功能接口是否调用成功,如果是,则执行步骤S310;否则,执行步骤S39。
S39、将税控管理设备的状态标识设置为0。
具体实施时,当确定出步骤S38中税控管理设备的功能接口调用失败时,表明该税控管理设备异常,因此,需要将将税控管理设备的状态标识设置为0。
S310、对税控管理设备的互斥量解锁。
S311、执行业务处理的其它操作。
所述业务处理的其它操作根据业务的不同而不同,如发票开具业务主要进行数据库的存储与更新;发票上传业务的其它操作包括开票服务器与税局局端设备建立SSL安全网络通道,将发票信息上传至税局局端设备,并接收税局局端返回的发票信息的验证结果。
S312、将业务处理结果上传至等待队列0。
具体实施时,待业务处理完成后,开票服务器需要将处理结果返回到开票客户端,由于不同的工作线程均将处理结果上传至等待队列0,然后触发协议发送模块从等待队列0依次读取业务处理结果并反馈给相应的开票客户端,此外,协议发送模块运行于开票服务器的主线程。
S313、通知协议发送模块有待发送数据。
通过执行步骤S31~S313即可实现处于各工作线程的业务处理模块对税控管理设备的功能接口调用的同步处理,并通过对税控管理设备的状态标识的判断实现对税控管理设备的容错处理,充分利用税控管理设备运行安全快速的特点,提高了税控管理设备的运行效率。
本申请的实施例所提供的发票开具及上传系统可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要发票开具及上传系统具有上述功能,都应该在本申请的保护范围之内。
本发明实施例提供的发票开具及上传方法和系统,接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;解析所述外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。采用本发明提供的方法,实现了发票开具和发票上传的并行处理,确保了既能够快速完成发票开具和发票上传,同时还能够在网络传输不畅通的情况下,使发票上传不影响发票开具速度。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种发票开具及上传方法,其特征在于,包括:
接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;
解析所述外层业务信息,获得所述业务请求的业务标识;并
根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及
触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
2.如权利要求1所述的方法,其特征在于,还包括:为每一工作线程维护一个等待队列;以及
根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程,具体包括:
根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程的等待队列。
3.如权利要求1或2所述的方法,其特征在于,还包括:为每一工作线程设置优先级;以及
触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务,具体包括:
按照工作线程的优先级由高到低的顺序,从优先级最高的工作线程开始,利用该工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
4.如权利要求1或2所述的方法,其特征在于,所述业务请求包括:发票开具业务请求、发票上传业务请求和第三业务请求,其中:
所述第三业务请求包括以下至少一种:发票领购业务请求、发票查询业务请求、发票管理业务请求、身份认证业务请求和抄报税业务请求。
5.如权利要求1所述的方法,其特征在于,触发所述工作线程对应的业务处理模块处理所述内层业务,具体包括:
触发所述业务处理模块对税控管理设备的互斥量加锁,及当确定出所述税控管理设备正常时,根据所述内层业务信息,调用所述税控管理设备的功能接口处理所述内层业务信息对应的内层业务,以及当确定出调用所述税控管理设备的功能接口结束后,对税控管理设备的互斥量解锁。
6.一种发票开具及上传系统,其特征在于,包括:至少一台开票客户端和开票服务器,其中:
所述至少一台开票客户端,用于向所述开票服务器发送业务请求;
所述开票服务器,用于接收开票客户端发送的业务请求,所述业务请求包括内层业务信息和外层业务信息;解析所述外层业务信息,获得所述业务请求的业务标识;并根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程;以及触发所述工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
7.如权利要求6所述的系统,其特征在于,所述开票服务器,具体用于为每一工作线程维护一个等待队列;以及根据所述业务标识,以及业务标识与工作线程的对应关系,将所述内层业务信息对应的内层业务上传至所述业务标识对应的工作线程的等待队列。
8.如权利要求6或7所述的系统,其特征在于,所述开票服务器,还用于为每一工作线程设置优先级;以及按照工作线程的优先级由高到低的顺序,从优先级最高的工作线程开始,利用该工作线程对应的业务处理模块处理所述内层业务信息对应的内层业务。
9.如权利要求6所述的系统,其特征在于,所述开票服务器,还用于触发所述业务处理模块对税控管理设备的互斥量加锁,及当确定出所述税控管理设备正常时,根据所述内层业务信息,调用所述税控管理设备的功能接口处理所述内层业务信息对应的内层业务,以及当确定出调用所述税控管理设备的功能接口结束后,对税控管理设备的互斥量解锁。
10.如权利要求9所述的系统,其特征在于,所述税控管理设备,用于向所述开票服务器提供功能接口;以及所述系统,还包括:税局局端设备,其中:
所述税局局端设备,用于接收所述开票服务器中业务处理模块对发票信息签名后的发票签名信息,并对所述发票签名信息进行合法性验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611200818.3A CN108230052A (zh) | 2016-12-22 | 2016-12-22 | 一种发票开具及上传方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611200818.3A CN108230052A (zh) | 2016-12-22 | 2016-12-22 | 一种发票开具及上传方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108230052A true CN108230052A (zh) | 2018-06-29 |
Family
ID=62656170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611200818.3A Pending CN108230052A (zh) | 2016-12-22 | 2016-12-22 | 一种发票开具及上传方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108230052A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111210286A (zh) * | 2019-12-26 | 2020-05-29 | 大象慧云信息技术有限公司 | 一种基于税控服务器的发票高效开具方法及系统 |
CN111210288A (zh) * | 2019-12-26 | 2020-05-29 | 大象慧云信息技术有限公司 | 基于税控服务器的发票批量开具作业优化调度方法及系统 |
CN111222927A (zh) * | 2019-12-26 | 2020-06-02 | 大象慧云信息技术有限公司 | 一种对发票数据的进行实时采集的方法及系统 |
CN111292143A (zh) * | 2020-01-15 | 2020-06-16 | 苏宁云计算有限公司 | 一种电子发票的开具方法、装置及计算机系统 |
CN116385085A (zh) * | 2023-03-29 | 2023-07-04 | 北京融易算科技有限公司 | 一种防止发票重开的方法、装置及设备 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901526A (zh) * | 2010-07-21 | 2010-12-01 | 浪潮齐鲁软件产业有限公司 | 一种应用于商业零售业税控发票的开具方法 |
CN102025649A (zh) * | 2010-06-04 | 2011-04-20 | 西本新干线股份有限公司 | 企业服务总线的消息处理方法 |
CN102663649A (zh) * | 2012-05-18 | 2012-09-12 | 苏州工业园区凌志软件有限公司 | 金融衍生品交易系统 |
CN103338230A (zh) * | 2013-06-03 | 2013-10-02 | 广州天宁信息技术有限公司 | 一种业务数据的处理方法及系统 |
CN103888547A (zh) * | 2014-04-16 | 2014-06-25 | 中国银行股份有限公司 | 一种账单处理方法和服务器 |
CN103927679A (zh) * | 2014-03-31 | 2014-07-16 | 浪潮软件集团有限公司 | 一种电子发票签章及验证方法 |
CN104133724A (zh) * | 2014-04-03 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 并发任务调度方法及装置 |
CN104715402A (zh) * | 2013-12-17 | 2015-06-17 | 航天信息股份有限公司 | 基于数字签章的电子发票生成方法 |
CN104933606A (zh) * | 2015-06-16 | 2015-09-23 | 浪潮软件集团有限公司 | 一种自助点餐联机开票系统及方法 |
CN105046538A (zh) * | 2015-07-27 | 2015-11-11 | 浪潮集团有限公司 | 一种基于云计算的电子发票管理方法 |
CN105071976A (zh) * | 2015-09-08 | 2015-11-18 | 安一恒通(北京)科技有限公司 | 数据传输方法和装置 |
CN105632042A (zh) * | 2014-11-03 | 2016-06-01 | 航天信息股份有限公司 | 一种税控金融开票系统及方法 |
CN105678617A (zh) * | 2015-12-31 | 2016-06-15 | 中国建设银行股份有限公司 | 面向多个汇款代理商的个人国际速汇系统 |
CN105812438A (zh) * | 2014-12-31 | 2016-07-27 | 航天信息股份有限公司 | 一种税控设备发行信息远程管理系统及方法 |
CN105897934A (zh) * | 2016-06-20 | 2016-08-24 | 乐视控股(北京)有限公司 | 在服务器实现的业务请求处理方法及装置 |
-
2016
- 2016-12-22 CN CN201611200818.3A patent/CN108230052A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025649A (zh) * | 2010-06-04 | 2011-04-20 | 西本新干线股份有限公司 | 企业服务总线的消息处理方法 |
CN101901526A (zh) * | 2010-07-21 | 2010-12-01 | 浪潮齐鲁软件产业有限公司 | 一种应用于商业零售业税控发票的开具方法 |
CN102663649A (zh) * | 2012-05-18 | 2012-09-12 | 苏州工业园区凌志软件有限公司 | 金融衍生品交易系统 |
CN103338230A (zh) * | 2013-06-03 | 2013-10-02 | 广州天宁信息技术有限公司 | 一种业务数据的处理方法及系统 |
CN104715402A (zh) * | 2013-12-17 | 2015-06-17 | 航天信息股份有限公司 | 基于数字签章的电子发票生成方法 |
CN103927679A (zh) * | 2014-03-31 | 2014-07-16 | 浪潮软件集团有限公司 | 一种电子发票签章及验证方法 |
CN104133724A (zh) * | 2014-04-03 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 并发任务调度方法及装置 |
CN103888547A (zh) * | 2014-04-16 | 2014-06-25 | 中国银行股份有限公司 | 一种账单处理方法和服务器 |
CN105632042A (zh) * | 2014-11-03 | 2016-06-01 | 航天信息股份有限公司 | 一种税控金融开票系统及方法 |
CN105812438A (zh) * | 2014-12-31 | 2016-07-27 | 航天信息股份有限公司 | 一种税控设备发行信息远程管理系统及方法 |
CN104933606A (zh) * | 2015-06-16 | 2015-09-23 | 浪潮软件集团有限公司 | 一种自助点餐联机开票系统及方法 |
CN105046538A (zh) * | 2015-07-27 | 2015-11-11 | 浪潮集团有限公司 | 一种基于云计算的电子发票管理方法 |
CN105071976A (zh) * | 2015-09-08 | 2015-11-18 | 安一恒通(北京)科技有限公司 | 数据传输方法和装置 |
CN105678617A (zh) * | 2015-12-31 | 2016-06-15 | 中国建设银行股份有限公司 | 面向多个汇款代理商的个人国际速汇系统 |
CN105897934A (zh) * | 2016-06-20 | 2016-08-24 | 乐视控股(北京)有限公司 | 在服务器实现的业务请求处理方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111210286A (zh) * | 2019-12-26 | 2020-05-29 | 大象慧云信息技术有限公司 | 一种基于税控服务器的发票高效开具方法及系统 |
CN111210288A (zh) * | 2019-12-26 | 2020-05-29 | 大象慧云信息技术有限公司 | 基于税控服务器的发票批量开具作业优化调度方法及系统 |
CN111222927A (zh) * | 2019-12-26 | 2020-06-02 | 大象慧云信息技术有限公司 | 一种对发票数据的进行实时采集的方法及系统 |
CN111292143A (zh) * | 2020-01-15 | 2020-06-16 | 苏宁云计算有限公司 | 一种电子发票的开具方法、装置及计算机系统 |
CN116385085A (zh) * | 2023-03-29 | 2023-07-04 | 北京融易算科技有限公司 | 一种防止发票重开的方法、装置及设备 |
CN116385085B (zh) * | 2023-03-29 | 2024-05-14 | 杭州融易算科技有限公司 | 一种防止发票重开的方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108230052A (zh) | 一种发票开具及上传方法和系统 | |
US8386332B2 (en) | Community management for electronic peer to peer business to business transactions | |
RU2718175C1 (ru) | Устройство и способ сетевой транзакции, основанные на управлении разделения привилегий | |
CN106504044A (zh) | 一种开票方法及系统 | |
CN111030983B (zh) | 基于分布式分发的数据处理方法、装置及相关设备 | |
CN104219326A (zh) | 保洁服务信息管理系统中的资源共享装置和方法 | |
KR20080005247A (ko) | 자체 자원 상호작용, 전자 거래 정보 처리 방법 및 시스템 | |
WO2019227345A1 (zh) | 维修厂的管理方法、系统及数据管理服务器 | |
CN111400344A (zh) | 电子面单打印方法、装置、设备及存储介质 | |
US20230281522A1 (en) | Booking management system | |
CN108650289A (zh) | 一种基于区块链的管理数据的方法和装置 | |
CN106303125A (zh) | 自动充值系统、方法及装置 | |
CN107465644A (zh) | 数据传输方法、数据传送客户端及数据传送执行器 | |
CN106603721A (zh) | 一种远程控制的方法及系统、一种远程控制客户端 | |
CN111861409A (zh) | 一种项目业务管理系统 | |
CN101630420A (zh) | 售票系统与票务处理系统 | |
CN102647296B (zh) | 一种基于权限设置的业务注册方法 | |
CN109584028B (zh) | 一种虚拟资源分配方法及装置 | |
US20100146050A1 (en) | Distributed document transformation for electronic business to business transactions | |
CN115983853A (zh) | 基于区块链的客户侧绿电应用服务方法、系统及电子设备 | |
CN107274238A (zh) | 一种电子凭据服务系统及其方法 | |
CN115859379A (zh) | 一种行程数据的校验方法、系统、电子设备及存储介质 | |
US20100146281A1 (en) | Security and certificate management for electronic business to business transactions | |
CN109741009A (zh) | 一种费用报销管理方法及装置 | |
CN105827564B (zh) | 一种信息管理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |
|
RJ01 | Rejection of invention patent application after publication |