prefix('accounting')->group(function () { Route::get('dashboard', [\Modules\Accounting\Http\Controllers\AccountingController::class, 'dashboard']); Route::get('accounts-dropdown', [\Modules\Accounting\Http\Controllers\AccountingController::class, 'AccountsDropdown'])->name('accounts-dropdown'); Route::get('get-account-sub-types', [\Modules\Accounting\Http\Controllers\CoaController::class, 'getAccountSubTypes']); Route::get('get-account-details-types', [\Modules\Accounting\Http\Controllers\CoaController::class, 'getAccountDetailsType']); Route::resource('chart-of-accounts', \Modules\Accounting\Http\Controllers\CoaController::class); Route::get('ledger/{id}', [\Modules\Accounting\Http\Controllers\CoaController::class, 'ledger'])->name('accounting.ledger'); Route::get('activate-deactivate/{id}', [\Modules\Accounting\Http\Controllers\CoaController::class, 'activateDeactivate']); Route::get('create-default-accounts', [\Modules\Accounting\Http\Controllers\CoaController::class, 'createDefaultAccounts'])->name('accounting.create-default-accounts'); Route::resource('journal-entry', \Modules\Accounting\Http\Controllers\JournalEntryController::class); Route::get('settings', [\Modules\Accounting\Http\Controllers\SettingsController::class, 'index']); Route::get('reset-data', [\Modules\Accounting\Http\Controllers\SettingsController::class, 'resetData']); Route::resource('account-type', \Modules\Accounting\Http\Controllers\AccountTypeController::class); Route::resource('transfer', \Modules\Accounting\Http\Controllers\TransferController::class)->except(['show']); Route::resource('budget', \Modules\Accounting\Http\Controllers\BudgetController::class)->except(['show', 'edit', 'update', 'destroy']); Route::get('reports', [\Modules\Accounting\Http\Controllers\ReportController::class, 'index']); Route::get('reports/trial-balance', [\Modules\Accounting\Http\Controllers\ReportController::class, 'trialBalance'])->name('accounting.trialBalance'); Route::get('reports/balance-sheet', [\Modules\Accounting\Http\Controllers\ReportController::class, 'balanceSheet'])->name('accounting.balanceSheet'); Route::get('reports/account-receivable-ageing-report', [\Modules\Accounting\Http\Controllers\ReportController::class, 'accountReceivableAgeingReport'])->name('accounting.account_receivable_ageing_report'); Route::get('reports/account-receivable-ageing-details', [\Modules\Accounting\Http\Controllers\ReportController::class, 'accountReceivableAgeingDetails'])->name('accounting.account_receivable_ageing_details'); Route::get('reports/account-payable-ageing-report', [\Modules\Accounting\Http\Controllers\ReportController::class, 'accountPayableAgeingReport'])->name('accounting.account_payable_ageing_report'); Route::get('reports/account-payable-ageing-details', [\Modules\Accounting\Http\Controllers\ReportController::class, 'accountPayableAgeingDetails'])->name('accounting.account_payable_ageing_details'); Route::get('reports/profit-and-loss', [\Modules\Accounting\Http\Controllers\ReportController::class, 'profitAndLoss'])->name('accounting.profitAndLoss'); Route::get('reports/cash-flow', [\Modules\Accounting\Http\Controllers\ReportController::class, 'cashFlow'])->name('accounting.cashFlow'); Route::get('reports/subsidiary-ledger', [\Modules\Accounting\Http\Controllers\ReportController::class, 'subsidiaryLedger'])->name('accounting.subsidiaryLedger'); Route::get('reports/gl-tax', [\Modules\Accounting\Http\Controllers\ReportController::class, 'glTaxReport'])->name('accounting.glTaxReport'); Route::get('journal-approvals', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'journalApprovals'])->name('accounting.journalApprovals'); Route::post('journal-approvals/{id}/approve', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'approveJournal'])->name('accounting.approveJournal'); Route::post('journal-approvals/{id}/reject', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'rejectJournal'])->name('accounting.rejectJournal'); Route::get('health', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'health'])->name('accounting.health'); Route::get('fiscal-periods', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'fiscalPeriods'])->name('accounting.fiscalPeriods'); Route::post('fiscal-periods', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeFiscalPeriod']); Route::post('fiscal-periods/{id}/close', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'closeFiscalPeriod'])->name('accounting.closeFiscalPeriod'); Route::get('cheques', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'cheques'])->name('accounting.cheques'); Route::post('cheques', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeCheque']); Route::post('cheques/{id}/transition', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'transitionCheque'])->name('accounting.transitionCheque'); Route::get('installments', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'installments'])->name('accounting.installments'); Route::post('installments', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeInstallmentPlan']); Route::post('installments/{id}/pay', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'payInstallment'])->name('accounting.payInstallment'); Route::post('installments/from-sell/{transactionId}', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'createInstallmentFromSell'])->name('accounting.createInstallmentFromSell'); Route::get('opening-balance', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'openingBalance'])->name('accounting.openingBalance'); Route::post('opening-balance', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeOpeningBalance']); Route::get('depreciation', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'depreciation'])->name('accounting.depreciation'); Route::post('depreciation', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeDepreciation']); Route::post('depreciation/batch', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'batchDepreciation'])->name('accounting.batchDepreciation'); Route::post('depreciation/{id}/post', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'postDepreciation'])->name('accounting.postDepreciation'); Route::get('reconciliations', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'reconciliations'])->name('accounting.reconciliations'); Route::post('reconciliations', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeReconciliation']); Route::post('reconciliations/{id}/complete', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'completeReconciliation'])->name('accounting.completeReconciliation'); Route::resource('reconcile', \Modules\Accounting\Http\Controllers\ReconcileController::class)->only(['index', 'create', 'store', 'show', 'edit', 'update', 'destroy']); Route::get('consolidation', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'consolidation'])->name('accounting.consolidation'); Route::post('consolidation', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'runConsolidation']); Route::post('consolidation/{id}/finalize', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'finalizeConsolidation'])->name('accounting.finalizeConsolidation'); Route::post('entity-tagging/sync', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'syncEntityTagging'])->name('accounting.syncEntityTagging'); Route::get('exchange-rates', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'exchangeRates'])->name('accounting.exchangeRates'); Route::post('exchange-rates', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeExchangeRate'])->name('accounting.storeExchangeRate'); Route::post('exchange-rates/sync', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'syncExchangeRates'])->name('accounting.syncExchangeRates'); Route::post('exchange-rates/settings', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'saveExchangeRateSettings'])->name('accounting.saveExchangeRateSettings'); Route::post('link-payment-account', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'linkPaymentAccount'])->name('accounting.linkPaymentAccount'); Route::post('link-payment-accounts/auto', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'autoLinkPaymentAccounts'])->name('accounting.autoLinkPaymentAccounts'); Route::post('posting-contract', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'postFinancialContract'])->name('accounting.postingContract'); Route::get('mapping-gaps', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'mappingGaps'])->name('accounting.mappingGaps'); Route::post('mapping-sync', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'syncLocationMappings'])->name('accounting.syncLocationMappings'); Route::get('analytical-dimensions', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'analyticalDimensions'])->name('accounting.analyticalDimensions'); Route::post('analytical-dimensions', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeAnalyticalDimension']); Route::get('bank-loans', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'bankLoans'])->name('accounting.bankLoans'); Route::post('bank-loans', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeBankLoan'])->name('accounting.storeBankLoan'); Route::post('bank-loans/{id}/pay', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'payBankLoan'])->name('accounting.payBankLoan'); Route::get('insurance', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'insurancePremiums'])->name('accounting.insurance'); Route::post('insurance', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storeInsurancePremium']); Route::post('insurance/{id}/pay', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'payInsurancePremium'])->name('accounting.payInsurancePremium'); Route::get('payroll-tax-table', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'payrollTaxTable'])->name('accounting.payrollTaxTable'); Route::post('payroll-tax-table', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'storePayrollTaxBracket'])->name('accounting.storePayrollTaxBracket'); Route::put('payroll-tax-table/{id}', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'updatePayrollTaxBracket'])->name('accounting.updatePayrollTaxBracket'); Route::get('deferred-documents', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'deferredDocuments'])->name('accounting.deferredDocuments'); Route::get('reports/cheques', [\Modules\Accounting\Http\Controllers\HoldingAccountingController::class, 'chequeReport'])->name('accounting.chequeReport'); Route::get('transactions', [\Modules\Accounting\Http\Controllers\TransactionController::class, 'index']); Route::get('transactions/map', [\Modules\Accounting\Http\Controllers\TransactionController::class, 'map']); Route::post('transactions/save-map', [\Modules\Accounting\Http\Controllers\TransactionController::class, 'saveMap']); Route::post('save-settings', [\Modules\Accounting\Http\Controllers\SettingsController::class, 'saveSettings']); Route::get('install', [\Modules\Accounting\Http\Controllers\InstallController::class, 'index']); Route::post('install', [\Modules\Accounting\Http\Controllers\InstallController::class, 'install']); Route::get('install/uninstall', [\Modules\Accounting\Http\Controllers\InstallController::class, 'uninstall']); Route::get('install/update', [\Modules\Accounting\Http\Controllers\InstallController::class, 'update']); });