用于租户会计订单计费的系统的制作方法

文档序号:12916304阅读:283来源:国知局

本发明涉及财务领域,特别涉及用于租户会计订单计费的系统。



背景技术:

按传统的方法,对租户会计订单计费,需要创建一张系统字典表并插入一条计费打折率等相关属性的数据或者在程序中直接写死,实现方式没有任何问题,但以上两种方式显得有些死板,不能有效满足对各租户管理的需求,当针对每个租户设置不同的打折率时,以上方式就不能很好满足要求,如果采用以上两种方式,后期针对计费功能的开发与修改将是个无休止的工作。

针对传统会计订单的计费方式存在诸多的问题,为了解决这些问题,给出一种可配置、高扩展性实现方式就变的犹为急促及重要。



技术实现要素:

本发明要解决的技术问题是:提供一种可配置、高扩展性的用于租户会计订单计费的系统,方便云中心管理员快速维护各租户打折率。

为解决上述问题,本发明采用的技术方案是:用于租户会计订单计费的系统,包括租户表、等级表、会计订单表、扫描件表、计费详情表、租户等级中间表、逻辑计费模块;

租户表用于存储租户信息,当租户用户注册成功后,会将租户信息维护于此表;

等级表用于配置每一个等级收费标准以及各级别之间的上下级关系;

会计订单表用于存储租户创建的订单信息;

扫描件表用于存储会计订单下的扫描件信息;

计费详情表用于存储租户下每一个扫描件的计费详情;

租户等级中间表用于将租户表与等级表关联起来;

逻辑计费模块,用于将待计费的扫描件量更新至租户表中,并判断租户下所有计费扫描件量是否已达到升级的最低要求,如果满足升级要求,则自动升级,并按照准确的折扣率与实际单价对每个扫描件进行计费,并往计费详情表中插数据;如果没达到升级标准,则按现有等级的折扣率与实际单价对每个扫描件进行计费。

进一步的,租户表的字段包括:租户主键id、租户编码、租户名称、租户状态、删除状态、当前扫描件量;

等级表的字段包括:等级主键id、折扣率、单价、真实单价、最低升级扫描件量、上下级关系。

会计订单表的字段包括:订单的主键id、订单编码、来源标识、引用租户表的主键id、创建订单的用户id、创建订单的具体时间、删除状态;

扫描件表的字段包括:扫描件的主键id、扫描件编码、扫描件名称、扫描件类型;

计费详情表的字段包括:计费详情的主键id、针对每个扫描件配置的单价、每个扫描件所用的折扣率、单价通过打折后对于每个扫描件真实的单价、引用扫描件表的主键id、引用订单表的主键id、计费时间点;

租户等级中间表的字段包括:租户等级中间表的主键id、引用租户表的主键id、引用等级表中的主键id。

本发明的有益效果是:本发明通过设置租户表、等级表、会计订单表、扫描件表、计费详情表、租户等级中间表、逻辑计费模块,用户可方便的向租户表、等级表、租户等级中间表配置数据,利用租户等级中间表将租户表、等级表串联起来,以及通过逻辑计费模块自动将待计费的扫描件量,将更新至租户表中,并判断此租户下所有计费扫描件量是否已达到升级的最低要求,如果满足升级要求,会自动升级,并按照准确的折扣率与实际单价对每个扫描件进行计费,并往计费详情表中插数据;如果没达到升级标准,那么按现有等级的折扣率与实际单价对每个扫描件进行计费,从而让所有租户自动完成计费,本发明具有高扩展性,能方便云中心管理员快速维护各租户打折率。

具体实施方式

实施例提供一种用于租户会计订单计费的系统,包括租户表、等级表、会计订单表、扫描件表、计费详情表、租户等级中间表、逻辑计费模块,其中的租户是一种概念,本发明中可将租户看作是一个集团公司下的管理员,在租户注册时,系统自动分配租户权限。以下对各个表进行详细说明。

1、租户表

租户表,用于存储租户信息,当租户用户注册成功后,会将租户信息维护于此表,主要字段包括:tenant_id(租户主键id)、code(租户编码)、name(租户中文名称)、state(用户状态,即租户有效或无效的状态)、del_state(删除状态,因每个租户下的主数据信息量比较大,加速删除效率,待系统空闲时再进行物理删除)、curr_scan_cnt(当前扫描件量,意思是提交一个会计订单,下面有n个扫描件,那么就在原有基础上加上n,当此扫描件量达到了升级下一级最低扫描件量时,将其清零)。

2.等级表

等级表,用于配置每一个等级收费标准,由管理中心配置的各级别之间的上下级关系,主要字段包括:grade_id(各等级主键id,每个等级对外的唯一标识)、discount_rate(配置的各等级所用的折扣率)、price(各等级针对每个扫描件配置的单价)、real_price(单价通过打折后对于每个扫描件真实的单价,不是通过实时计算的,这种方式,在对每个扫描件计费时不需要实时计算就可得到实际数据)、scan_upgrade_cnt(针对租户计费的最低升级扫描件量)、parent_id(各等级的上下级关系,在第一级此字段值默认为0,用这个字段来建右子树结构,用此字段让程序自动找到下一等级)。

3.会计订单表

会计订单表,用于存储租户创建的订单信息,当需要上传票据扫描件时,首先就创建此数据,主要字段包括:order_id(订单的主键id)、order_code(订单编码)、source(数据的来源标识,例如:从云账坊平台创建的订单或手机端创建的订单,有这么一标识)、tenant_id(引用租户表的主键id)、created_user_id(创建此订单的用户id)、created_time(创建此订单的具体时间)、del_state(存储此条数据的删除状态,有这样一种情况,当此条订单被删除时,为了租户用户能快速恢复数据而设置的)。

4.扫描件表

扫描件表,用于存储会计订单下的所有扫描件信息,主要字段包括:scan_id(扫描件的主键id)、code(扫描件编码)、name(扫描件名称)、type(扫描件类型标识,因在会计订单创建时,为了更利于后续工作的开展,同一张发票可能会有高清件或普清件,所以用类型来区分,这样就可不针对一个订单下所有扫描件进行计费)。

5.计费详情表

计费详情表,存储租户下每一个扫描件的计费详情,主要字段包括:id(存储计费详情的主键id)、price(存储的某等级针对每个扫描件配置的单价,从等级表中直接写过来的,防止某天等级项被删除或修改而引起不可预知的问题)、discount_rate(某等级所用的折扣率,从等级表中直接写过来的,防止某天等级项被删除或修改而引起不可预知的问题)、real_price(单价通过打折后对于每个扫描件真实的单价,从等级表中直接写过来的,防止某天等级项被删除或修改而引起不可预知的问题)、scan_id(引用扫描件表的主键id,也就说对每个扫描件计一次费)、order_id(引用订单表的主键id,这个字段对后期的统计有所帮助)、tenant_id(冗余于此表,为后期工作而预留)、fee_time(计费时间点)。

6.租户等级中间表

租户等级中间表比较重要,一方面将租户表与等级表关联起来,另一方面,把扫描件量也写到此表,主要字段包括:id(租户等级中间表的主键id)、order_id(引用订单表的主键id)、tenant_id(引用租户表的主键id)、grade_id(引用等级表中的主键id,当此扫描件量达到了升级下一级的最低扫描件量时,对租户表curr_scan_cnt字段清0并修改此字段为下一级的主键id)。

7.逻辑计费模块

逻辑计费模块用于将待计费的扫描件量更新至租户表中,并基于等级表中的scan_upgrade_cnt(最低升级扫描件量)判断租户下所有计费扫描件量是否已达到升级的最低要求,如果满足升级要求,则自动升级,并按照准确的折扣率与实际单价对每个扫描件进行计费,并往计费详情表中插数据;如果没达到升级标准,则按现有等级的折扣率与实际单价对每个扫描件进行计费。

实施例自动化计费过程如下:

首先为等级表、租户表、租户等级中间表中有配置数据,配置的数据包括:租户表下的租户主键id、租户编码、租户名称、租户状态、删除状态、当前扫描件量,等级表下的等级主键id、折扣率、单价、真实单价、最低升级扫描件量、上下级关系,租户等级中间表下的租户等级中间表的主键id、引用租户表的主键id、引用等级表中的主键id;

接着,租户用户在客户端中创建会计订单,在会计订单下挂上记账的票据,提交审单”,此时会触发计费事件,程序自动得到此会计定单下有待计费的扫描件量,将更新至租户表中,并判断此租户下所有计费扫描件量是否已达到升级的最低要求,如果满足升级要求,会自动升级,并按照准确的折扣率与实际单价对每个扫描件进行计费,并往计费详情表中插数据;如果没达到升级标准,那么按现有等级的折扣率与实际单价对每个扫描件进行计费。

以上描述了本发明的基本原理和主要的特征,说明书的描述只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。

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