pub struct EliminationGenerator { /* private fields */ }Expand description
Generator for consolidation elimination entries.
Implementations§
Source§impl EliminationGenerator
impl EliminationGenerator
Sourcepub fn new(
config: EliminationConfig,
ownership_structure: OwnershipStructure,
) -> Self
pub fn new( config: EliminationConfig, ownership_structure: OwnershipStructure, ) -> Self
Create a new elimination generator.
Sourcepub fn generate_eliminations(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
ic_balances: &[ICAggregatedBalance],
ic_transactions: &[ICMatchedPair],
investment_amounts: &HashMap<String, Decimal>,
equity_amounts: &HashMap<String, HashMap<String, Decimal>>,
) -> &ConsolidationJournal
pub fn generate_eliminations( &mut self, fiscal_period: &str, entry_date: NaiveDate, ic_balances: &[ICAggregatedBalance], ic_transactions: &[ICMatchedPair], investment_amounts: &HashMap<String, Decimal>, equity_amounts: &HashMap<String, HashMap<String, Decimal>>, ) -> &ConsolidationJournal
Generate all eliminations for a period.
Sourcepub fn generate_ic_balance_eliminations(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
balances: &[ICAggregatedBalance],
)
pub fn generate_ic_balance_eliminations( &mut self, fiscal_period: &str, entry_date: NaiveDate, balances: &[ICAggregatedBalance], )
Generate IC balance eliminations (receivables vs payables).
Sourcepub fn generate_ic_revenue_expense_eliminations(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
transactions: &[ICMatchedPair],
)
pub fn generate_ic_revenue_expense_eliminations( &mut self, fiscal_period: &str, entry_date: NaiveDate, transactions: &[ICMatchedPair], )
Generate IC revenue/expense eliminations.
Sourcepub fn generate_unrealized_profit_eliminations(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
transactions: &[ICMatchedPair],
)
pub fn generate_unrealized_profit_eliminations( &mut self, fiscal_period: &str, entry_date: NaiveDate, transactions: &[ICMatchedPair], )
Generate unrealized profit in inventory eliminations.
Sourcepub fn generate_investment_equity_eliminations(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
investment_amounts: &HashMap<String, Decimal>,
equity_amounts: &HashMap<String, HashMap<String, Decimal>>,
)
pub fn generate_investment_equity_eliminations( &mut self, fiscal_period: &str, entry_date: NaiveDate, investment_amounts: &HashMap<String, Decimal>, equity_amounts: &HashMap<String, HashMap<String, Decimal>>, )
Generate investment/equity eliminations.
Sourcepub fn generate_dividend_elimination(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
paying_company: &str,
receiving_company: &str,
dividend_amount: Decimal,
) -> EliminationEntry
pub fn generate_dividend_elimination( &mut self, fiscal_period: &str, entry_date: NaiveDate, paying_company: &str, receiving_company: &str, dividend_amount: Decimal, ) -> EliminationEntry
Generate dividend elimination entry.
Sourcepub fn generate_minority_interest_allocation(
&mut self,
fiscal_period: &str,
entry_date: NaiveDate,
subsidiary: &str,
net_income: Decimal,
minority_percentage: Decimal,
) -> Option<EliminationEntry>
pub fn generate_minority_interest_allocation( &mut self, fiscal_period: &str, entry_date: NaiveDate, subsidiary: &str, net_income: Decimal, minority_percentage: Decimal, ) -> Option<EliminationEntry>
Generate minority interest allocation for period profit/loss.
Sourcepub fn get_journal(&self, fiscal_period: &str) -> Option<&ConsolidationJournal>
pub fn get_journal(&self, fiscal_period: &str) -> Option<&ConsolidationJournal>
Get consolidation journal for a period.
Sourcepub fn get_all_journals(&self) -> &HashMap<String, ConsolidationJournal>
pub fn get_all_journals(&self) -> &HashMap<String, ConsolidationJournal>
Get all journals.
Sourcepub fn finalize_journal(
&mut self,
fiscal_period: &str,
approved_by: String,
) -> Option<&ConsolidationJournal>
pub fn finalize_journal( &mut self, fiscal_period: &str, approved_by: String, ) -> Option<&ConsolidationJournal>
Finalize and approve a journal.
Sourcepub fn post_journal(
&mut self,
fiscal_period: &str,
) -> Option<&ConsolidationJournal>
pub fn post_journal( &mut self, fiscal_period: &str, ) -> Option<&ConsolidationJournal>
Post a journal.
Sourcepub fn get_summary(
&self,
fiscal_period: &str,
) -> Option<EliminationSummaryReport>
pub fn get_summary( &self, fiscal_period: &str, ) -> Option<EliminationSummaryReport>
Get elimination summary for a period.
Auto Trait Implementations§
impl Freeze for EliminationGenerator
impl RefUnwindSafe for EliminationGenerator
impl Send for EliminationGenerator
impl Sync for EliminationGenerator
impl Unpin for EliminationGenerator
impl UnwindSafe for EliminationGenerator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more