# Generated by Django 5.1.4 on 2025-01-03 10:56

import django.db.models.deletion
import django.utils.timezone
from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('human_resource', '0001_initial'),
        ('procurement', '0001_initial'),
        ('sales_and_marketing', '0001_initial'),
        ('system_administration', '0001_initial'),
    ]

    operations = [
        migrations.CreateModel(
            name='CashBalanceFinancialYearOpening',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('financial_year', models.CharField(blank=True, default='', max_length=6)),
                ('cash_balance', models.CharField(blank=True, default='0', max_length=20)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='JournalAccountCredit',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('account_name', models.CharField(choices=[('accounts_payable', 'Accounts Payable'), ('accrued_expense', 'Accrued Expense'), ('accounts_receivable', 'Accounts Receivable'), ('cash', 'Cash'), ('m_pesa', 'M-PESA PAYBILL'), ('bank', 'Bank'), ('loans_payable', 'Loans Payable'), ('customer_overpayment', 'Customer Overpayment'), ('taxes_payable', 'Taxes Payable'), ('supplier_advances', 'Supplier Advances'), ('unearned_revenue', 'Unearned Revenue'), ('owners_equity', 'Owners Equity'), ('retained_earnings', 'Retained Earnings'), ('sales_revenue', 'Sales Revenue'), ('services_revenue', 'Services Revenue'), ('interest_income', 'Income Revenue'), ('miscellaneous_income', 'Miscellaneous Income'), ('vehicle_and_equipment_lease_revenue', 'Vehicle and Equipment Lease Revenue'), ('not_selected', 'Not Selected')], default='not_selected', max_length=100, unique=True)),
            ],
        ),
        migrations.CreateModel(
            name='JournalAccountDebit',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('account_name', models.CharField(choices=[('cash', 'Cash'), ('m_pesa', 'M-PESA PAYBILL'), ('bank', 'Bank'), ('accounts_receivable', 'Accounts Receivable'), ('inventory', 'Inventory'), ('loans_receivable', 'Loans Receivable'), ('loans_payable', 'Loans Payable'), ('rent_expense', 'Rent Expense'), ('operations_expense', 'Operations Expense'), ('refund_expense', 'Refund Expense'), ('fixed_assets', 'Fixed Assets'), ('accumulated_depreciation', 'Accumulated Depreciation'), ('salary_and_wages_expense', 'Salary and Wages Expense'), ('utility_expense', 'Utility Expense'), ('marketing_expense', 'Marketing Expense'), ('transportation_expense', 'Transportation Expense'), ('office_supply_expense', 'Office Supply Expense'), ('insurance_expense', 'Insurance Expense'), ('interest_expense', 'Interest Expense'), ('tax_and_license_expense', 'Tax and License Expense'), ('miscellaneous_expense', 'Miscellaneous Expense'), ('not_selected', 'Not Selected'), ('retained_earnings', 'Retained Earnings')], default='not_selected', max_length=100, unique=True)),
            ],
        ),
        migrations.CreateModel(
            name='RetainedEarningFinancialYearOpening',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('financial_year', models.CharField(blank=True, default='', max_length=6)),
                ('opening_quantity', models.CharField(blank=True, default='0', max_length=20)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Asset',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('asset_name', models.CharField(max_length=100)),
                ('asset_category', models.CharField(choices=[('office_equipment', 'Office Equipment'), ('machinery', 'Machinery'), ('vehicle', 'Vehicle'), ('property', 'Property'), ('not_selected', 'Not Selected')], default='not_selected', max_length=100)),
                ('serial_number', models.CharField(blank=True, default='', max_length=50)),
                ('purchase_date', models.DateField()),
                ('purchase_cost', models.CharField(default='0.00', max_length=10)),
                ('vendor_name', models.CharField(blank=True, default='', max_length=100)),
                ('invoice_number', models.CharField(blank=True, default='', max_length=100)),
                ('useful_life_years', models.CharField(default='1', max_length=5)),
                ('residual_value', models.CharField(blank=True, default='0.00', max_length=50)),
                ('depreciation_method', models.CharField(choices=[('straight_line', 'Straight Line'), ('declining_balance', 'Declining Balance')], default='not_selected', max_length=100)),
                ('depreciation_rate', models.CharField(blank=True, default='0.00', max_length=5)),
                ('status', models.CharField(choices=[('active', 'Active'), ('disposed', 'Disposed'), ('under_maintanenance', 'Under Maintenance'), ('not_selected', 'Not Selected')], default='not_selected', max_length=100)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='asset_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='asset_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='ChartOfAccount',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('account_name', models.CharField(max_length=100, unique=True)),
                ('account_number', models.CharField(max_length=50, unique=True)),
                ('account_descriptions', models.CharField(blank=True, default='', max_length=500)),
                ('running_balance', models.CharField(default='0.00', max_length=50)),
                ('banking_institution_name', models.CharField(blank=True, default='', max_length=100)),
                ('bank_branch_name', models.CharField(blank=True, default='', max_length=100)),
                ('bank_branch_code', models.CharField(blank=True, default='', max_length=100)),
                ('bank_swift_code', models.CharField(blank=True, default='', max_length=100)),
                ('bank_sort_code', models.CharField(blank=True, default='', max_length=100)),
                ('is_mpesa_account', models.BooleanField(default=False)),
                ('account_currency', models.CharField(choices=[('usd', 'USD'), ('gbp', 'GBP'), ('eur', 'EUR'), ('kes', 'KES'), ('not_selected', 'Not Selected')], default='kes', max_length=30)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('company_branch', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='branch_chart_of_accounts', to='system_administration.companybranch')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='financial_account_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='financial_account_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='CustomerOrderInvoice',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('invoice_number', models.CharField(default='', max_length=50, unique=True)),
                ('invoice_amount_due', models.CharField(default='0.00', max_length=50)),
                ('invoice_amount_paid', models.CharField(default='0.00', max_length=50)),
                ('invoice_currency', models.CharField(choices=[('usd', 'USD'), ('gbp', 'GBP'), ('eur', 'EUR'), ('kes', 'KES'), ('not_selected', 'Not Selected')], default='kes', max_length=30)),
                ('invoice_settled', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='customer_order_invoice_created_by', to='human_resource.staffprofile')),
                ('customer_order', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='customer_order_invoice', to='sales_and_marketing.customerorder')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='customer_order_invoice_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='CustomerOrderPayment',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('payment_number', models.CharField(default='', max_length=50, unique=True)),
                ('payment_amount', models.CharField(default='0.00', max_length=50)),
                ('payment_method', models.CharField(choices=[('m_pesa', 'M-Pesa'), ('cash', 'Cash'), ('bank_transfer', 'Bank Transfer'), ('bankers_cheque', 'Bankers Cheque'), ('not_selected', 'Not Selected')], default='not_selected', max_length=20)),
                ('payer_account_number', models.CharField(blank=True, default='', max_length=30)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('account_paid_to', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='account_order_payments', to='finance_and_accounting.chartofaccount')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='payment_created_by', to='human_resource.staffprofile')),
                ('customer_order', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='customer_order_payments', to='sales_and_marketing.customerorder')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='payment_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='Deposit',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('deposit_number', models.CharField(default='', max_length=50, unique=True)),
                ('deposit_source', models.CharField(choices=[('sales_revenue', 'Sales Revenue'), ('loans', 'Loans'), ('other', 'Other'), ('vehicle_and_equipment_lease_revenue', 'Vehicle and Equipment Lease Revenue'), ('share_capital', 'Share Capital'), ('not_selected', 'Not Selected')], default='not_selected', max_length=50)),
                ('deposit_amount', models.CharField(default='0.00', max_length=50)),
                ('order_payment_reference', models.CharField(blank=True, default='', max_length=50)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('company_branch', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='branch_deposits', to='system_administration.companybranch')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='deposit_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='deposit_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='Dividend',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('dividend_title', models.CharField(max_length=100)),
                ('financial_year', models.CharField(default='2024', max_length=5)),
                ('dividend_amount_paid', models.CharField(default='0.00', max_length=10)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('dividend_comment', models.CharField(blank=True, default='', max_length=500)),
                ('account', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='account_dividend_drawn_from', to='finance_and_accounting.chartofaccount')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='dividend_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='dividend_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='Journal_Entry',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('journal_entry_number', models.CharField(default='', max_length=50, unique=True)),
                ('journal_description', models.CharField(blank=True, default='', max_length=500)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('journal_reference', models.CharField(blank=True, default='', max_length=500)),
                ('journal_tag', models.CharField(blank=True, default='', max_length=500)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('company_branch', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='branch_journal_entries', to='system_administration.companybranch')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='journal_entry_created_by', to='human_resource.staffprofile')),
                ('customer_order_invoice', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='journal_entry_customer_order_invoices', to='finance_and_accounting.customerorderinvoice')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='journal_entry_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='CreditEntry',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('credit_amount', models.CharField(default='0.00', max_length=50)),
                ('journal_entry', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='journal_credit_entries', to='finance_and_accounting.journal_entry')),
                ('journal_account_credit', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='credit_entry_journal_account', to='finance_and_accounting.journalaccountcredit')),
            ],
        ),
        migrations.CreateModel(
            name='DebitEntry',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('debit_amount', models.CharField(default='0.00', max_length=50)),
                ('journal_entry', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='journal_debit_entries', to='finance_and_accounting.journal_entry')),
                ('journal_account_debit', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='debit_entry_journal_account', to='finance_and_accounting.journalaccountdebit')),
            ],
        ),
        migrations.CreateModel(
            name='JournalEntryDocs',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('saved_document_path', models.CharField(blank=True, default='not_selected', max_length=100)),
                ('journal_entry', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='journal_entry_documents', to='finance_and_accounting.journal_entry')),
            ],
        ),
        migrations.CreateModel(
            name='LoanPortfolio',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('loan_title', models.CharField(max_length=100)),
                ('loan_type', models.CharField(choices=[('term_loan', 'Term Loan'), ('line_of_credit', 'Line of Credit'), ('vehicle_loan', 'Vehicle Loan'), ('business_loan', 'Business Loan'), ('other', 'Other'), ('not_selected', 'Not Selected')], default='not_selected', max_length=20)),
                ('lender_name', models.CharField(max_length=100)),
                ('lender_phone', models.CharField(max_length=20)),
                ('lender_email', models.EmailField(default='', max_length=50)),
                ('loan_amount', models.CharField(max_length=15)),
                ('interest_rate', models.CharField(max_length=15)),
                ('repayment_period', models.CharField(default='0', max_length=15)),
                ('loan_currency', models.CharField(choices=[('kes', 'KES'), ('not_selected', 'Not Selected')], default='not_selected', max_length=30)),
                ('total_repayment_amount', models.CharField(default='0', max_length=15)),
                ('principal_paid', models.CharField(default='0', max_length=15)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('company_profile', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='company_loan_portfolio', to='system_administration.companyprofile')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='loan_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='loan_last_updated_by', to='human_resource.staffprofile')),
            ],
        ),
        migrations.CreateModel(
            name='Refund',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('refund_amount', models.CharField(default='0.00', max_length=50)),
                ('refund_approved', models.BooleanField(default=False)),
                ('refund_fullfilled', models.BooleanField(default=False)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='refund_created_by', to='human_resource.staffprofile')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='refund_last_updated_by', to='human_resource.staffprofile')),
                ('order_item_return', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='order_items_requesting_refunds', to='sales_and_marketing.orderitemreturn')),
                ('payment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='payment_refunds', to='finance_and_accounting.customerorderpayment')),
            ],
        ),
        migrations.CreateModel(
            name='Expense',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('expense_number', models.CharField(default='', max_length=50, unique=True)),
                ('expense_title', models.CharField(default='', max_length=100)),
                ('expense_description', models.CharField(blank=True, default='', max_length=500)),
                ('expense_type', models.CharField(choices=[('capital_expenditure', 'Purchase of Fixed Assets'), ('purchase_expense', 'Inventory Purchase Expense'), ('salary_expense', 'Salary Expense'), ('loan_repayment_expense', 'Loan Repayment Expense'), ('utility_expense', 'Utility Expense'), ('rent_expense', 'Rent Expense'), ('operations_expense', 'Operations Expense'), ('refund_expense', 'Refund Expense'), ('tax_and_license_expense', 'Tax and License Expense'), ('entertainment_and_private_expense', 'Entertainment and Private Expense'), ('other', 'Other'), ('not_selected', 'Not Selected')], default='not_selected', max_length=50)),
                ('expense_amount', models.CharField(default='0.00', max_length=50)),
                ('expense_approved', models.BooleanField(default=False)),
                ('expense_settled', models.BooleanField(default=False)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('company_branch', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='branch_expenses', to='system_administration.companybranch')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='expense_created_by', to='human_resource.staffprofile')),
                ('expense_approved_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='expense_approved_by', to='human_resource.staffprofile')),
                ('landed_cost_instance', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='expense_landed_cost', to='sales_and_marketing.landedcostinstance')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='expense_last_updated_by', to='human_resource.staffprofile')),
                ('payroll_sheet', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='payroll_sheet_expense', to='human_resource.payrollsheet')),
                ('product_purchase_instance', models.ManyToManyField(blank=True, related_name='product_purchase_expense', to='procurement.productpurchaseinstance')),
                ('refund', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='refund_expense', to='finance_and_accounting.refund')),
            ],
        ),
        migrations.CreateModel(
            name='Transaction',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('transaction_number', models.CharField(default='', max_length=50, unique=True)),
                ('transaction_mode', models.CharField(choices=[('inflow', 'Inflow'), ('outflow', 'Outflow'), ('not_selected', 'Not Selected')], default='not_selected', max_length=20)),
                ('transaction_amount', models.CharField(default='0.00', max_length=50)),
                ('transaction_currency', models.CharField(choices=[('usd', 'USD'), ('gbp', 'GBP'), ('eur', 'EUR'), ('kes', 'KES'), ('not_selected', 'Not Selected')], default='kes', max_length=30)),
                ('exchange_rate', models.CharField(blank=True, default='1.00', max_length=12)),
                ('transaction_reference', models.CharField(blank=True, default='', max_length=50)),
                ('recycle_bin', models.BooleanField(default=False)),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('last_updated_on', models.DateTimeField(auto_now=True)),
                ('timestamp', models.DateTimeField(default=django.utils.timezone.now)),
                ('account', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='account_transactions', to='finance_and_accounting.chartofaccount')),
                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='transaction_created_by', to='human_resource.staffprofile')),
                ('deposit', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='deposit_transaction', to='finance_and_accounting.deposit')),
                ('expense', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='expense_transaction', to='finance_and_accounting.expense')),
                ('last_updated_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='transaction_last_updated_by', to='human_resource.staffprofile')),
                ('loan_payment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='loan_payment_history', to='finance_and_accounting.loanportfolio')),
            ],
        ),
        migrations.AddField(
            model_name='journal_entry',
            name='transaction',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='transaction_journal_entries', to='finance_and_accounting.transaction'),
        ),
    ]
