我正在學校管理軟件,其中包括學生計費模塊,即從學生收費。學校管理軟件的計費模塊(費用)
費用按月收取(每年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
表中找到的條目以生成待處理報告。 - 在這個系統下沒有適當的費用分類。
現在系統需要轉換成適當的會計系統,可以跟蹤預付款和餘額。
我在考慮一個系統,每個月的發佈過程都會爲每個學生的帳戶記入當月的費用以及每個滯納金開始日期,如果費用仍在處理中,另一個過程會將滯納金記入學生帳戶。
此方法可以對應收賬款,待處理和收到的費用進行檢查。
請幫助,如果方法是正確的,如何去與它。我堅持數據庫模式部分及其實施。
複雜的話題,我覺得這對於SO來說太廣泛了。 Neverthess,有一件事情對我來說似乎很明顯,我將'feeMaster'表格歸一化。你的列'otherFee'已經指出了這一點,我會創建一個表,比如'line_item'引用某個'fee_type'。 – home 2012-02-18 10:21:22
我曾經與這類問題合作過。我願意再次與你分享數據庫。 – 2012-02-20 17:56:41