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 UnsafeUnpin 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