136 lines
5.2 KiB
TypeScript
136 lines
5.2 KiB
TypeScript
/** Angular Imports */
|
|
import { NgModule } from '@angular/core';
|
|
import { Routes, RouterModule } from '@angular/router';
|
|
|
|
/** Translation Imports */
|
|
import { extract } from '../core/i18n/i18n.service';
|
|
|
|
/** Custom Components */
|
|
import { AddLoanChargeComponent } from './add-loan-charge/add-loan-charge.component';
|
|
import { LoansViewComponent } from './loans-view/loans-view.component';
|
|
import { GeneralTabComponent } from './loans-view/general-tab/general-tab.component';
|
|
import { AccountDetailsComponent } from './loans-view/account-details/account-details.component';
|
|
import { NotesTabComponent } from './loans-view/notes-tab/notes-tab.component';
|
|
|
|
/** Custom Resolvers */
|
|
import { LoanChargeTemplateResolver } from './common-resolvers/loan-charge-template.resolver';
|
|
import { LoanDetailsResolver } from './common-resolvers/loan-details.resolver';
|
|
import { LoanDetailsGeneralResolver } from './common-resolvers/loan-details-general.resolver';
|
|
import { LoanNotesResolver } from './common-resolvers/loan-notes-resolver';
|
|
import { ChargesTabComponent } from './loans-view/charges-tab/charges-tab.component';
|
|
import { LoanDetailsChargesResolver } from './common-resolvers/loan-details-charges.resolver';
|
|
import { OverdueChargesTabComponent } from './loans-view/overdue-charges-tab/overdue-charges-tab.component';
|
|
import { OriginalScheduleTabComponent } from './loans-view/original-schedule-tab/original-schedule-tab.component';
|
|
import { RepaymentScheduleTabComponent } from './loans-view/repayment-schedule-tab/repayment-schedule-tab.component';
|
|
import { TransactiosTabComponent } from './loans-view/transactios-tab/transactios-tab.component';
|
|
import { LoanAccountActionsComponent } from './loans-view/loan-account-actions/loan-account-actions.component';
|
|
|
|
const routes: Routes = [
|
|
{
|
|
path: '',
|
|
// Component to View All existing Loans Comes Here
|
|
children: [{
|
|
path: ':loanId',
|
|
data: { title: extract('Loan View'), routeParamBreadcrumb: 'loanId' },
|
|
component: LoansViewComponent,
|
|
resolve: {
|
|
loanDetailsData: LoanDetailsResolver
|
|
},
|
|
// Component For Loan View Comes Here
|
|
children: [
|
|
{
|
|
path: 'general',
|
|
component: GeneralTabComponent,
|
|
data: { title: extract('General'), breadcrumb: 'General', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsData: LoanDetailsGeneralResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'accountdetail',
|
|
component: AccountDetailsComponent,
|
|
data: { title: extract('Account Detail'), breadcrumb: 'Account Detail', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsData: LoanDetailsGeneralResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'original-schedule',
|
|
component: OriginalScheduleTabComponent,
|
|
data: { title: extract('Original Schedule'), breadcrumb: 'Original Schedule', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsAssociationData: LoanDetailsChargesResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'repayment-schedule',
|
|
component: RepaymentScheduleTabComponent,
|
|
data: { title: extract('Repayment Schedule'), breadcrumb: 'Repayment Schedule', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsAssociationData: LoanDetailsChargesResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'transactions',
|
|
component: TransactiosTabComponent,
|
|
data: { title: extract('Transactions'), breadcrumb: 'Transactions', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsAssociationData: LoanDetailsChargesResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'overdue-charges',
|
|
component: OverdueChargesTabComponent,
|
|
data: { title: extract('Overdue Charges'), breadcrumb: 'Overdue Charges', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsData: LoanDetailsGeneralResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'charges',
|
|
component: ChargesTabComponent,
|
|
data: { title: extract('Charges'), breadcrumb: 'Charges', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanDetailsAssociationData: LoanDetailsChargesResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'notes',
|
|
component: NotesTabComponent,
|
|
data: { title: extract('Notes'), breadcrumb: 'Notes', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanNotes: LoanNotesResolver
|
|
},
|
|
},
|
|
{
|
|
path: 'add-loan-charge',
|
|
component: AddLoanChargeComponent,
|
|
data: { title: extract('Add Loan Charge'), breadcrumb: 'Add Loan Charge', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
loanChargeTemplate: LoanChargeTemplateResolver
|
|
}
|
|
},
|
|
{
|
|
path: ':action',
|
|
component: LoanAccountActionsComponent,
|
|
data: { title: extract('Loan Account Actions'), routeParamBreadcrumb: 'action' },
|
|
},
|
|
]
|
|
}]
|
|
}
|
|
];
|
|
@NgModule({
|
|
imports: [RouterModule.forChild(routes)],
|
|
exports: [RouterModule],
|
|
declarations: [],
|
|
providers: [
|
|
LoanChargeTemplateResolver,
|
|
LoanDetailsGeneralResolver,
|
|
LoanDetailsResolver,
|
|
LoanNotesResolver,
|
|
LoanDetailsChargesResolver
|
|
]
|
|
})
|
|
|
|
export class LoansRoutingModule { }
|