一种生成对账单的方法及装置与流程

文档序号:12035611阅读:401来源:国知局
一种生成对账单的方法及装置与流程

本发明涉及在线支付技术,尤其涉及一种生成对账单的方法及装置。



背景技术:

互联网技术的发展给人们带来了极大的便利,也给传统的产业带来了新的契机。以传统的影院为例,互联网技术的发展使得影院票务的电子化成为可能,影院可以进行互联网售票,通过互联网提供影院票务线上预订业务,使得用户可以预先浏览最近放映的影片,并相应进行电子购票,避免了用户需要现场购票导致的等待时间较长以及无法预知所放影片的技术问题。

作为利用互联网售票的影院,需要涉及到票务结账的流程,目前的互联网售票,利用的是第三方售票平台,即第三方售票平台从影院端获取票务并按照第一价格售卖给用户,第三方售票平台从购买票务的用户收取票务费,然后,按照与影院约定的结算日期(出账目)生成包含各具体明细的流水账单,依据预先设置的结算规则对流水账单进行筛选得到对账单,最后由第三方售票平台与影院确认对账单认后进行结算,例如,按照对账单售出的票数与影院端允诺给第三方售票平台的第二价格进行结算。

目前,在对流水账单进行筛选时,采用人工方式进行手工筛选,需要消耗大量的时间、精力,对账效率较低,同时,由于人工方式不可避免地出现错误,使得生成的对账单准确性不高。



技术实现要素:

有鉴于此,本发明实施例提供一种生成对账单的方法及装置,能够提升对账单准确性以及对账效率,以解决现有的生成对账单的方法中采用人工方式导致的对账效率较低以及对账单准确性不高的问题。

第一方面,本发明实施例提供一种生成对账单的方法,包括:

在当前时间满足预先设置的结算触发条件后,查询并获取所述结算触发条件映射的结算周期以及对账单核对方信息;

提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类;

获取所述对账单核对方信息映射的对账规则,对分类的订单进行处理生成对账单。

结合第一方面,在第一方面的第一种实施方式中,在所述在当前时间满足预先设置的结算触发条件之前,该方法还包括:

接收用户的购票请求,依据所述购票请求中包含的目标方信息,调用所述目标方信息对应的接口以使所述目标方信息进行锁票;

监测到用户对所述锁票的金额支付成功后,生成订单并存储至预先设置的mysql数据库。

结合第一方面,在第一方面的第二种实施方式中,所述提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类包括:

在mysql数据库中提取在所述结算周期内的订单;

依据所述对账单核对方信息数量构建分类订单,每一分类订单以对账单核对方信息为标识;

遍历每一提取的订单,提取订单中包含的对账单核对方信息,与分类订单的对账单核对方信息标识进行匹配,将订单置于匹配的分类订单中。

结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第三种实施方式中,在所述对分类的订单进行处理之前,该方法还包括:

为每一分类的订单分配一线程。

结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第四种实施方式中,所述对分类的订单进行处理包括:

依据所述对账单核对方信息映射的对账规则,计算分类的订单的销售额;

统计分类的订单中的销退订单,计算销退订单的销退额;

获取销售额与销退额的差值,得到对账单。

结合第一方面的第四种实施方式,在第一方面的第五种实施方式中,通过sql语句编写对分类的订单进行处理的程序代码段。

结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第六种实施方式中,所述方法还包括:

重置对账单,所述重置对账单包括:

接收重刷对账单请求,获取所述重刷对账单请求中包含的对账单重刷方信息以及对账更新规则;

删除所述对账单重刷方信息对应的对账单,提取所述对账单重刷方信息对应的分类订单;

依据所述对账更新规则对提取的分类订单进行处理,得到更新对账单。

结合第一方面的第六种实施方式,在第一方面的第七种实施方式中,使用python语言封装sql语句实现所述重置对账单。

第二方面,本发明实施例提供一种生成对账单的装置,包括:触发查询模块、订单分类模块以及对账单生成模块,其中,

触发查询模块,用于在当前时间满足预先设置的结算触发条件后,查询并获取所述结算触发条件映射的结算周期以及对账单核对方信息;

订单分类模块,用于提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类;

对账单生成模块,用于获取所述对账单核对方信息映射的对账规则,对分类的订单进行处理生成对账单。

结合第二方面,在第二方面的第一种实施方式中,所述装置还包括:

订单生成模块,用于接收用户的购票请求,依据所述购票请求中包含的目标方信息,调用所述目标方信息对应的接口以使所述目标方信息进行锁票;监测到用户对所述锁票的金额支付成功后,生成订单并存储至预先设置的mysql数据库。

本发明实施例提供的一种生成对账单的方法及装置,通过在当前时间满足预先设置的结算触发条件后,查询并获取所述结算触发条件映射的结算周期以及对账单核对方信息;提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类;获取所述对账单核对方信息映射的对账规则,对分类的订单进行处理生成对账单,能够提升对账单准确性以及对账效率,以解决现有的生成对账单的方法中采用人工方式导致的对账效率较低以及对账单准确性不高的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明的实施例一生成对账单的方法流程示意图;

图2为本发明的实施例二生成对账单的装置结构示意图。

具体实施方式

下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1为本发明的实施例一生成对账单的方法流程示意图,如图1所示,本实施例的方法可以包括:

步骤101,在当前时间满足预先设置的结算触发条件后,查询并获取所述结算触发条件映射的结算周期以及对账单核对方信息;

本实施例中,结算触发条件由第三方售票平台与影院进行协商确定,不同的影院,可以设置不同的结算触发条件,多个影院(对账单核对方信息)也可以设置同一结算触发条件。当然,实际应用中,对账单核对方信息也可以是航空公司、长途客运站、旅游酒店以及火车站等,本实施例对此不作限定。

本实施例中,作为一可选实施例,结算触发条件是触发生成出账单的日期,即出账日期,包括但不限于:按周结算触发条件、按月结算触发条件、按季结算触发条件等,以按月结算触发条件为例,可以设置为每月5日、每月10日等。举例来说,假设某一影院要求每月5日出对账单以结算上月的订单,则系统在每月5日触发生成该影院对账单。

本实施例中,作为一可选实施例,每一结算触发条件映射一结算周期,例如,对于每月5目的结算触发条件,映射的结算周期可以为上一月1目的0点至上一月最后一日的24点。当然,实际应用中,对于同一结算触发条件,不同的影院也可以设置不同的结算周期,此外,不同的影院也可以具有相同或不同的对账规则。

本实施例中,作为一可选实施例,预先设置的结算触发条件存储在mysql数据库中。

本实施例中,结算触发条件、结算周期、对账单核对方信息以及对账规则形成相互映射关系,示例如表1所示。

表1

本实施例,在结算触发条件触发后,依据结算触发条件查询mysql数据库,获取该结算触发条件映射的结算周期以及对账单核对方信息。其中,结算周期可以是一个或多个,每一结算周期映射的对账单核对方信息,也可以是一个或多个。

本实施例中,作为一可选实施例,在所述在当前时间满足预先设置的结算触发条件之前,该方法还包括:

a11,接收用户的购票请求,依据所述购票请求中包含的目标方信息,调用所述目标方信息对应的接口以使所述目标方信息进行锁票;

本实施例中,以一影院为例,假设第三方售票平台为微影,用户通过微影购买电影票,微影去调用该影院的接口,将用户票信息(例如,影院名、影片名、影片场次、影片座位号、影片放映时间以及票价等信息)通知对应影院进行锁座,以锁定该电影票不被其他用户购买,避免购票冲突。其中,用户购票信息还可以用作后续生成的订单中包含的信息。

本实施例中,目标方信息为票务方,例如,如果用户购买电影票,则目标方信息为影院,如果用户购买机票,则目标方信息为航空公司。

本实施例中,作为一可选实施例,在第三方售票平台与影院之间,还可以进一步包括系统集成商的接口,这样,在购票时,微影去调用系统集成商的接口,系统集成商去调用影院的接口以完成锁票。

本实施例中,系统集成商为微影与影院的中间桥梁,微影通过系统集成商获取影院的影票售卖信息。

a12,监测到用户对所述锁票的金额支付成功后,生成订单并存储至预先设置的mysql数据库。

本实施例中,订单通过第三方售票平台生成后并存储在mysql数据库或数据仓库(hadoop)中,订单中至少包含有对账单核对方信息以及时间戳信息,其中,对账单核对方信息即目标方信息。例如,如果是由某一影院委托微影进行网上售票,则在微影每售出一该影院的票务生成的订单中,至少包含有该影院信息以及时间戳信息。

本实施例中,作为一可选实施例,mysql数据库可以按照预先设置的抓取周期(每日、每周等)自动抓取第三方售票平台上生成的所有订单。

本实施例中,作为一可选实施例,可以由订单生成系统负责订单的生成以及暂时存储。每日从,按照时间戳抓取订单。

本实施例中,作为一可选实施例,在mysql数据库中存储的订单也可以预先按照对账单核对方信息(例如,影院名)进行分类存储。这样,后续可以通过影院名选取影院分类订单,在后续需要生成对账单时,可以直接依据影院的结算规则提取相应影院的分类订单。

步骤102,提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类;

本实施例中,以每月5日出账,结算触发条件映射的结算周期为上一月1目的0点至上一月最后一日的24点、对账单核对方信息为影院1、影院2、影院3为例,则在每月5日,提取订单生成时间在上一月1目的0点至上一月最后一日的24点的订单,然后,将提取的订单分类为影院1订单、影院2订单以及影院3订单。当然,实际应用中,也可以在每月5日,分别取出这3家影院的结算规则以及3家影院的所有订单,并将取出的结算规则和订单进行封装后输出至后续进行处理。

本实施例中,作为一可选实施例,利用python语言对结算规则进行封装。

本实施例中,作为一可选实施例,提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类包括:

b11,在mysql数据库中提取在所述结算周期内的订单;

b12,依据所述对账单核对方信息数量构建分类订单,每一分类订单以对账单核对方信息为标识;

b13,遍历每一提取的订单,提取订单中包含的对账单核对方信息,与分类订单的对账单核对方信息标识进行匹配,将订单置于匹配的分类订单中。

步骤103,获取所述对账单核对方信息映射的对账规则,对分类的订单进行处理生成对账单。

本实施例中,作为一可选实施例,可以通过一线程或一进程对分类的订单进行处理。

本实施例中,作为另一可选实施例,为了加快订单的处理速度,提升对账单的生成效率,在所述对分类的订单进行处理之前,该方法还包括:

为每一分类的订单分配一线程。

本实施例中,采用并发处理流程,即并发机制为每家影院生成相应对账单,每一分类的订单对应一线程,每一线程为单个数据处理流程(job)。以影院为例,依据订单中包含的影院数,分配影院数个数据处理流程,将各影院的结算规则集合采用python语言进行封装或一影院的结算规则分发给单个数据处理流程,每一数据处理流程处理一个影院的订单。当然,实际应用中,也可以设置一数据处理流程处理多个影院的订单,该数据处理流程处理的多个影院的订单形成一对账单结算单位,例如,可以将相同对账规则的多个影院的订单组合为一对账单结算单位。

本实施例中,作为一可选实施例,对分类的订单进行处理包括:

依据所述对账单核对方信息映射的对账规则,计算分类的订单的销售额;

统计分类的订单中的销退订单,计算销退订单的销退额;

获取销售额与销退额的差值,得到对账单。

本实施例中,对订单进行筛选处理,例如:删除无效订单、筛选售卖订单和退售订单,将筛选处理的订单同步到结算系统进行对账单结算。

本实施例中,作为一可选实施例,通过sql语句编写对分类的订单进行处理的程序代码段。

本实施例中,以影院为例,第三方售票平台(微影)与影院的结算方式采用周期结算,并按照第三方售票平台与影院预先协商的结算规则,定期生成对账单,上传至双方预先协商好的结算系统或发送至影院方,以供影院方的相关结算人员对账。本实施例中,如果满足结算触发条件的影院为多个,微影需要为每家影院提供一份汇总的对账单,以供影院侧核实后进行结算。

本实施例中,作为一可选实施例,结算触发条件、结算周期、对账单核对方信息以及对账规则构成结算规则,包括:影院名称、结算周期类型(影片放映时间或订单创建时间)、周期起始时间(每月一日0点或每月一日6点)以及出账日期。作为另一可选实施例,结算规则还可以包括系统集成商信息。

本实施例中,还可以为每一对账单设置相应的对账单标识,依据对账单标识,可以获取该对账单的结算规则。

本实施例中,对账单的对账额为销售额与销退额的差额。

本实施例中,由于对账的特殊性,需要双方结算人员共同对账,得出一互相承认的对账单,然后再进行具体结算,如果出现结算人员不认可的订单,需要重置对账单。因而,作为一可选实施例,该方法还包括:

c11,接收重刷对账单请求,获取所述重刷对账单请求中包含的对账单重刷方信息以及对账更新规则;

本实施例中,对账单重刷方信息是指需要对哪家影院的对账单进行重置,对账更新规则包括但不限于:整体对账规则的调整、新增优惠活动对应的订单的对账规则更新、取消的优惠活动对应的订单的对账规则更新。作为一可选实施例,重刷对账单请求中还可以包含新增订单、和/或,待删除订单以及对账单标识。

c12,删除所述对账单重刷方信息对应的对账单,提取所述对账单重刷方信息对应的分类订单;

本实施例中,当结算人员在前台调整错误,可以重置对账单。作为一可选实施例,可以将重刷对账单任务加入到重刷队列中,触发向结算后台输出重刷对账单请求,结算后台依据重刷队列中的重刷对账单任务自动重刷对账单;或者,将重刷对账单任务加入到重刷队列中,结算后台轮巡重刷队列并自动重刷对账单。

本实施例中,作为一可选实施例,可以从mysql数据库中提取订单,对于无增减订单的重刷对账单请求,也可以采用前述该影院已分类的订单。

c13,依据所述对账更新规则对提取的分类订单进行处理,得到更新对账单。

本实施例中,作为一可选实施例,重置对账单可以使用python语言进行封装,并通过sql语句操作mysql数据库实现重置功能。

本实施例中,通过使用python语言封装sql语句实现重置对账单功能,能够快速帮助结算人员重置订单以及重刷对账单,不仅可以有效减少工作量,提升对账效率,而且能够大大提高准确率以及实时性。

图2为本发明的实施例二生成对账单的装置结构示意图,如图2所示,本实施例的装置可以包括:触发查询模块21、订单分类模块22以及对账单生成模块23,其中,

触发查询模块21,用于在当前时间满足预先设置的结算触发条件后,查询并获取所述结算触发条件映射的结算周期以及对账单核对方信息;

本实施例中,结算触发条件由第三方售票平台与影院进行协商确定,不同的影院,可以设置不同的结算触发条件,多个影院也可以设置同一结算触发条件。

本实施例中,作为一可选实施例,每一结算触发条件映射一个结算周期或多个结算周期,每一结算周期映射一个对账规则或多个对账规则。

订单分类模块22,用于提取在所述结算周期内的订单,依据所述对账单核对方信息对提取的订单进行分类;

本实施例中,作为一可选实施例,订单分类模块22包括:订单提取单元、分类单元以及订单匹配单元(图中未示出),其中,

订单提取单元,用于在mysql数据库中提取在所述结算周期内的订单;

分类单元,用于依据所述对账单核对方信息数量构建分类订单,每一分类订单以对账单核对方信息为标识;

订单匹配单元,用于遍历每一提取的订单,提取订单中包含的对账单核对方信息,与分类订单的对账单核对方信息标识进行匹配,将订单置于匹配的分类订单中。

对账单生成模块23,用于获取所述对账单核对方信息映射的对账规则,对分类的订单进行处理生成对账单。

本实施例中,作为一可选实施例,对账单生成模块23还用于为每一分类的订单分配一线程。

本实施例中,采用并发处理流程,即并发机制为每家影院生成相应对账单,每一分类的订单对应一线程,每一线程为单个数据处理流程。以影院为例,依据订单中包含的影院数,分配影院数个数据处理流程,将各影院的结算规则集合采用python语言进行封装或一影院的结算规则分发给单个数据处理流程,每一数据处理流程处理一个影院的订单。当然,实际应用中,也可以设置一数据处理流程处理多个影院的订单,该数据处理流程处理的多个影院的订单形成一对账单结算单位。

本实施例中,作为一可选实施例,对账单生成模块23包括:对账规则获取单元、第一计算单元、第二计算单元以及对账单生成单元(图中未示出),其中,

对账规则获取单元,用于获取所述对账单核对方信息映射的对账规则;

第一计算单元,用于依据所述对账单核对方信息映射的对账规则,计算分类的订单的销售额;

第二计算单元,用于统计分类的订单中的销退订单,计算销退订单的销退额;

对账单生成单元,用于获取销售额与销退额的差值,得到对账单。

本实施例中,作为一可选实施例,通过sql语句编写对分类的订单进行处理的程序代码段。

本实施例中,作为一可选实施例,结算触发条件、结算周期、对账单核对方信息以及对账规则构成结算规则,包括:影院名称、结算周期类型、周期起始时间以及出账日期。作为另一可选实施例,结算规则还可以包括系统集成商信息。

本实施例中,作为一可选实施例,该装置还包括:

订单生成模块(图中未示出),用于接收用户的购票请求,依据所述购票请求中包含的目标方信息,调用所述目标方信息对应的接口以使所述目标方信息进行锁票;监测到用户对所述锁票的金额支付成功后,生成订单并存储至预先设置的mysql数据库。

本实施例中,订单通过第三方售票平台生成后并存储在mysql数据库或数据仓库(hadoop)中,订单中至少包含有对账单核对方信息以及时间戳信息。

本实施例中,作为另一可选实施例,该装置还包括:

对账单重置模块,用于重置对账单,包括:重置请求单元、订单重获取单元以及对账单更新单元,其中,

重置请求单元,用于接收重刷对账单请求,获取所述重刷对账单请求中包含的对账单重刷方信息以及对账更新规则;

订单重获取单元,用于删除所述对账单重刷方信息对应的对账单,提取所述对账单重刷方信息对应的分类订单;

对账单更新单元,用于依据所述对账更新规则对提取的分类订单进行处理,得到更新对账单。

本实施例中,作为一可选实施例,使用python语言封装sql语句实现所述重置对账单。

本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。

尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。

在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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