学校管理软件的计费模块(费用)

时间:2012-02-18 05:30:55

标签: database-design architecture database-schema billing accounting

我正在研究学校管理软件,其中包括学生计费模块,即学生收费。

费用按月收取(每年12次),月费总额为各种费用的组合,按班级和月份固定。部分费用包括学费,巴士费,印刷费或其他费用。从日期开始,每月还会收取固定数额的滞纳金,每月可能会有所不同。巴士费按特定学生的巴士类别收取。 还有部分付款的规定。

我目前的做法是这样的:

存储费用设置的主表格,包括月份和费用。课程和费用设置。

feeMaster
    fid  -> Primary key
    month_year -> Stores Month Year
    stu_class -> Class of Student
    tuition_fee -> Tuition fee for that class
    tuition_fee_percent -> Percentage of Tuition fee to take, defaults to 100%
    bus_fee_percent -> Percentage of bus fee
    late_fee_start -> Day of month from which to charge late fee
    late_fee -> fixed late fee on per month basis
    printing_charge -> Printing charge if any
    other_fee -> Other fee if any
    other_fee_reference -> Other fee reference

每次学生支付他/她的费用时,都会进行计算并在系统中进行交易。交易的细节存储在两个表中。

交易主表用于存储交易

transMaster
    tid -> Primary key
    purpose -> purpose of transaction, monthly fee
    amount -> amount of transaction
    type -> transaction mode / cash / cheque / dd
    created -> date

此交易的详细信息存储在另一个表中

studentFeeDetails
    sfid -> unique id
    tid -> transaction id from transMaster table
    fid -> fee id from fee settings table feeMaster
    tuition_fee -> calculated tuition_fee
    bus_fee -> calculated bus_fee
    printing_charge -> calculated printing_charge
    other_fee -> calculated other_fee
    late_fee -> calculated late_fee
    total_fee -> total fee calculated
    discount -> discount if given any
    amount_payable -> net amount payable
    amount_paid -> paid amount
    balance -> balance - if paid amount is greater or lesser than the original one, 
               it is stored here
    status -> status - true if partial fee else false
    created -> date of creation

这是该模块的当前架构。没有涉及会计实务,因此会计部门会产生很多问题。

  • 每次报告一个月的应付总费用,系统会对所有学生运行计算算法,并提出数字。
  • 要查找课程的待处理费用,系统会再次首先检查该课程的应收费用,并删除studentFeeDetails表中的条目以生成待处理的报告。
  • 在此系统下,没有适当的费用隔离。

现在需要将当前系统转换为适当的会计系统,以跟踪预付款和余额。

我正在考虑一个系统,每个月的发布过程都会记入每个学生的帐户,并且该费用是在该月份和每个延迟费用开始日期,如果费用仍在等待,则另一个过程将延迟费用记入学生的帐户。

这种方法可以检查应收账款,待处理费和收款费。

请帮助,如果方法是正确的,以及如何使用它。我坚持使用db模式部分及其实现。

2 个答案:

答案 0 :(得分:1)

电信领域的最佳做法是将其细分为不同的部分:

  • 计费事件中介:从下游业务逻辑生成计费事件并将其存储在数据存储器中,例如,存储在数据存储器中。每个期间,人员和事件的评级表。在您的情况下,这将每月执行一次。

  • 评分:计算每个事件的费率。在您的情况下,这似乎是事件类型表中的查找。

  • 结算:每期累计评分事件。在你的情况下,这将是一个账单运行,每月执行一次。

  • 会计:将结算结果转移到每个人的帐户,持有余额,同时考虑以前的帐单运行和现金收款。

  • 帐单结算:根据帐户数据生成投放到相应分配流程中的发票。

  • 收款:确保您收到款项并相应调整帐​​户。这取决于您的付款方式。

  • 可选:催款:强制执行现金收款。

这里的关键是使整个过程在生产中透明和可调试。使用输入和可跟踪输出使每个步骤成为单独的步骤。这是关于金钱的,如果遇到问题,你不能没有答案。

答案 1 :(得分:0)

您的规格中几乎没有含糊的要求。学生可以部分支付吗?我的意思是支付一半的费用?您将需要来自处理会计实施精确解决方案的人的输入。

据我所知,到目前为止,您需要在您的会计科目表中为所有类型的费用和存款会计负责人创建单独的会计主管。把这些放在收入头下。为每个学生创建单独的帐户(分类帐),其帐号与入场号码相匹配,或者为每个学生提供独特的其他内容。当学生支付费用时,您将创建一个具有交易ID的日记帐分录(总帐)。此日记帐条目需要获得批准。对于现金收款,这可以在现金账簿结束的那天结束时发生,对于支票/ dd,这将发生在银行转账金额时(银行对账单的重新调整)。

日记帐分录一经批准,即会过帐。期刊应自动发布到每个学生分类帐下的所有帐户头。任何已支付的访问金额都应归入"存款"走进学生的分类帐。

要计算到期费用,您只需添加每个分类帐的余额,如果总和是负数,则需要支付费用,如果是正数,则手头有超额金额。

现在您的要求未处理的问题是,当学生支付低于规定金额时会发生什么?哪种类型的费用应标记为部分支付或以会计方式支付,根据该支出,我们应在其中添加负余额。其次,这些各种费用会发生什么变化?他们转移到其他一些帐户?简而言之,您需要了解费用如何映射到收入以及将哪些费用映射到哪些费用,以实施进一步的会计。

BTW我没有看到任何税款。学校免税吗?