/*
 * @Description  : 
 * @Version      : 1.0
 * @Author       : Shiming
 * @Date         : 2022-04-28 20:27:08
 * @LastEditors  : Shiming
 * @LastEditTime : 2022-04-29 14:40:29
 * @FilePath     : \\tms-obc-web\\src\\app\\routes\\ticket-management\\ticket-management-routing.module.ts
 * Copyright (C) 2022 huzhenhong. All rights reserved.
 */
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { BillingOrderComponent } from './components/billing-order/billing-order.component';
import { CancellationInvoiceComponent } from './components/cancellation-invoice/cancellation-invoice.component';
import { ETCBlacklistComponent } from './components/etc-blacklist/etc-blacklist.component';
import { ETCInvoicedListComponent } from './components/etc-invoiced-list/etc-invoiced-list.component';
import { ETCInvoicedLogsComponent } from './components/etc-invoiced-logs/etc-invoiced-logs.component';
import { ETCInvoicedRequestedComponent } from './components/etc-invoiced-requested/etc-invoiced-requested.component';
import { ExpressInfoComponent } from './components/express-info/express-info.component';
import { EditCollectionInvoiceComponent } from './components/input-invoice/edit-collection-invoice/edit-collection-invoice.component';
import { InputInvoiceDetailComponent } from './components/input-invoice/input-invoice-detail/input-invoice-detail.component';
import { InputInvoiceComponent } from './components/input-invoice/input-invoice.component';
import { InvoiceDetailComponent } from './components/invoice-detail/invoice-detail.component';
import { InvoiceRequestedDetailComponent } from './components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component';
import { InvoiceRequestedComponent } from './components/invoice-requested/invoice-requested.component';
import { InvoicedListComponent } from './components/invoiced-list/invoiced-list.component';

const routes: Routes = [
  { path: 'invoice-requested', component: InvoiceRequestedComponent, data: { guard: { ability: ['TICKET-INVOICE-REQUESTED-list'] } }  },
  { path: 'invoice-requested/detail/:id', component: InvoiceRequestedDetailComponent },
  { path: 'invoice-list', component: InvoicedListComponent , data: { guard: { ability: ['TICKET-INVOICE-LIST-list'] } }},
  { path: 'invoice-list/detail/:id', component: InvoiceDetailComponent },
  { path: 'cancellation-invoice', component: CancellationInvoiceComponent , data: { guard: { ability: ['TICKET-CANCELLATION-list'] } }},
  { path: 'cancellation-invoice/detail/:id', component: InvoiceDetailComponent },
  { path: 'etc-invoice-requested', component: ETCInvoicedRequestedComponent , data: { guard: { ability: ['TICKET-ETC-INVOICE-REQUESTED-list'] } } },
  { path: 'etc-invoice-list', component: ETCInvoicedListComponent, data: { guard: { ability: ['TICKET-ETC-INVOICE-LIST-list'] } } },
  { path: 'etc-invoiced-logs', component: ETCInvoicedLogsComponent , data: { guard: { ability: ['TICKET-ETC-INVOICE-LOGS-list'] } }},
  { path: 'etc-blacklist', component: ETCBlacklistComponent , data: { guard: { ability: ['TICKET-ETC-BLACK_LIST-freightList'] } }},
  { path: 'input-invoice', component: InputInvoiceComponent , data: { guard: { ability: ['TICKET-INPUT-INVOICE-list'] } }},
  { path: 'input-invoice/detail/:id', component: InputInvoiceDetailComponent },
  { path: 'input-invoice/edit/:id', component: EditCollectionInvoiceComponent },
  { path: 'express-info', component: ExpressInfoComponent , data: { guard: { ability: ['TICKET-EXPRESS-INFO-list'] } }},
  { path: 'billing-order', component: BillingOrderComponent, data: { guard: { ability: ['TICKET-BILLING-ORDER-search'] } } }
];

@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class TicketManagementRoutingModule {}
