C# Class BudgetAnalyser.Engine.Ledger.SpentMonthlyLedger

A Ledger Bucket that does not allow funds to accumulate at the end of the month. Any excess funds if not spent, will be transfered to Surplus.
Inheritance: LedgerBucket
Show file Open project: Benrnz/BudgetAnalyser Class Usage Examples

Public Methods

Method Description
ApplyReconciliationBehaviour ( IList transactions, System.DateTime reconciliationDate, decimal openingBalance ) : void

Allows ledger bucket specific behaviour during reconciliation.

Protected Methods

Method Description
ValidateBucketSet ( BudgetBucket bucket ) : void

Validates the bucket provided is valid for use with this LedgerBucket. There is an explicit relationship between BudgetBuckets and LedgerBuckets.

Private Methods

Method Description
RemoveExcessToBudgetAmount ( decimal closingBalance, System.DateTime reconciliationDate, decimal budgetAmount ) : LedgerTransaction
RemoveExcessToOpeningBalance ( decimal closingBalance, System.DateTime reconciliationDate, decimal openingBalance ) : LedgerTransaction
SupplementToBudgetAmount ( decimal closingBalance, System.DateTime reconciliationDate, decimal budgetAmount ) : LedgerTransaction
SupplementToOpeningBalance ( decimal closingBalance, System.DateTime reconciliationDate, decimal openingBalance ) : LedgerTransaction
SupplementToZero ( decimal closingBalance, System.DateTime reconciliationDate ) : CreditLedgerTransaction

Method Details

ApplyReconciliationBehaviour() public method

Allows ledger bucket specific behaviour during reconciliation.
public ApplyReconciliationBehaviour ( IList transactions, System.DateTime reconciliationDate, decimal openingBalance ) : void
transactions IList
reconciliationDate System.DateTime
openingBalance decimal
return void

ValidateBucketSet() protected method

Validates the bucket provided is valid for use with this LedgerBucket. There is an explicit relationship between BudgetBuckets and LedgerBuckets.
/// Invalid budget bucket used, only Spent-Monthly-Expense-Bucket can be /// used with an instance of Spent-Monthly-Ledger. ///
protected ValidateBucketSet ( BudgetBucket bucket ) : void
bucket BudgetAnalyser.Engine.Budget.BudgetBucket
return void