, поэтому я пытаюсь установить связь между распределением и учетной записью главной книги, и это оказывается немного сложнее, чем я начинал думать, мне просто интересно, было ли еще больше Элегантный способНесколько has_one и has_many отношений
Таким образом, в основном распределение должно иметь кредитную и дебетовую учетную запись, обе из которых являются учетными записями основной книги, и я не могу использовать ИППП, потому что общая учетная запись может быть дебетовой учетной записью на некоторые суммы, но кредитная учетная запись на другие.
Теперь еще одна особенность, которую я хочу получить, - это запросить все дебетовые и кредитные счета на конкретной учетной записи Главной книги. Таким образом, общая учетная запись теперь должна иметь много кредитов и дебетовых транзакций. Это то, что у меня есть до сих пор:
class Allocation
belongs_to :journal_entry_item
belongs_to :allocatable, polymorphic: true
has_one :debit_allocation
has_one :credit_allocation
has_one :debit_account, through: :debit_allocation, source: :general_ledger_account
has_one :credit_account, through: :credit_allocation, source: :general_ledger_account
end
class DebitAllocation
belongs_to :allocation
belongs_to :general_ledger_account
end
class CreditAllocation
belongs_to :allocation
belongs_to :general_ledger_account
end
class GeneralLedgerAccount
belongs_to :company
has_many :debit_allocations
has_many :credit_allocations
has_many :debits, through: :debit_allocations, source: :allocation
has_many :credits, through: :credit_allocations, source: :allocation
end
Я чувствую, что должен быть более простой способ ... Может ли кто-нибудь весить? Заранее спасибо!
Распределение должно быть как дебетовой в кредит. В бухгалтерском учете должна быть учетная запись, в которой берется транзакция, и учетная запись, в которой происходит транзакция –