50 lines
2.0 KiB
TypeScript
50 lines
2.0 KiB
TypeScript
import { MainManagerContentComponent } from './../../content/main-manager-content/main-manager-content.component';
|
|
import { NgModule } from '@angular/core';
|
|
import { RouterModule, Routes } from '@angular/router';
|
|
import { MainDashboardContentComponent } from '../../content/main-dashboard-content/main-dashboard-content.component';
|
|
import { MainReportComponent } from '../../component/main-report/main-report.component';
|
|
import { BudgetAproval } from '../../component/budget-aproval/budget-aproval';
|
|
import { MainLandingComponent } from '../../component/main-landing/main-landing.component';
|
|
import { MainProjectContent } from '../../content/main-project-content/main-project-content';
|
|
import { BudgetAprovalContent } from '../../content/budget-aproval-content/budget-aproval-content';
|
|
import { RoleGuard } from '../../services/role.guard.ts';
|
|
// import { MainReportComponent } from '../../component/main-report/main-report.component';
|
|
|
|
|
|
|
|
const routes: Routes = [
|
|
{ path: 'landing', component: MainLandingComponent },
|
|
{ path: 'dashboard', component: MainDashboardContentComponent },
|
|
{ path: 'report', component: MainReportComponent },
|
|
{
|
|
path: 'project',
|
|
canActivate: [RoleGuard],
|
|
data: { denyRole: 'D' },
|
|
component: MainProjectContent
|
|
},
|
|
{
|
|
path: 'project/:mode',
|
|
canActivate: [RoleGuard],
|
|
data: { denyRole: 'D' },
|
|
component: MainProjectContent
|
|
},
|
|
//manager route blocked for users with role "D" via RoleGuard
|
|
{
|
|
path: 'manager',
|
|
canActivate: [RoleGuard],
|
|
data: { denyRole: 'U' },
|
|
children: [
|
|
{ path: '', component: MainManagerContentComponent }, // รายการโครงการ
|
|
{ path: 'aproval', component: BudgetAprovalContent }, // จัดการงบประมาณ
|
|
]
|
|
},
|
|
{ path: '', redirectTo: 'landing', pathMatch: 'full' },
|
|
{ path: '**', redirectTo: 'landing' }
|
|
];
|
|
|
|
@NgModule({
|
|
imports: [RouterModule.forChild(routes)],
|
|
exports: [RouterModule]
|
|
})
|
|
export class MainControlRoutingModule { }
|