import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { ReportRouter } from './router/report-router';
import {SharedModule} from "../../shared/shared.module";
import {RouterModule, Routes} from "@angular/router";
import { ReportContainer } from './container/report/report.container';
import { ReportPreviewComponent } from './presenter/report-preview/report-preview.component';
import { ReportSearchComponent } from './presenter/report-search/report-search.component';
import { ReportCandidateComponent } from './presenter/report-search/report-candidate/report-candidate.component';
import { ReportCandidateRegisterByCenterComponent } from './presenter/report-search/report-candidate-register-by-center/report-candidate-register-by-center.component';
import { ReportCandidateRegisterBySubjectComponent } from './presenter/report-search/report-candidate-register-by-subject/report-candidate-register-by-subject.component';
import { ReportCandidateSubjectComponent } from './presenter/report-search/report-candidate-subject/report-candidate-subject.component';
import { ReportPaymentAndAppByCenterComponent } from './presenter/report-search/report-payment-and-app-by-center/report-payment-and-app-by-center.component';
import { ReportPaymentAndAppBySubjectComponent } from './presenter/report-search/report-payment-and-app-by-subject/report-payment-and-app-by-subject.component';
import { ReportReceiptComponent } from './presenter/report-search/report-receipt/report-receipt.component';
import { ReportRegisterByPaymentComponent } from './presenter/report-search/report-register-by-payment/report-register-by-payment.component';
import { ReportSettingTestingCenterComponent } from './presenter/report-search/report-setting-testing-center/report-setting-testing-center.component';
import { ReportSignatureExaminationComponent } from './presenter/report-search/report-signature-examination/report-signature-examination.component';
import { ReportSummaryCandidateComponent } from './presenter/report-search/report-summary-candidate/report-summary-candidate.component';
import { ReportTestingCenterInformationComponent } from './presenter/report-search/report-testing-center-information/report-testing-center-information.component';
import { ReportTestingRegistrationComponent } from './presenter/report-search/report-testing-registration/report-testing-registration.component';
import { ReportTestingSeatAndRoomComponent } from './presenter/report-search/report-testing-seat-and-room/report-testing-seat-and-room.component';
import { ReportSettingTestingRoomComponent } from './presenter/report-search/report-setting-testing-room/report-setting-testing-room.component';
import { ReportExamResultComponent } from './presenter/report-search/report-exam-result/report-exam-result.component';
import { ReportCandidateSummaryComponent } from './presenter/report-search/report-candidate-summary/report-candidate-summary.component';
import { ReportSeparatedByExamCenterComponent } from './presenter/report-search/report-separated-by-exam-center/report-separated-by-exam-center.component';
import { ReportExamTotalComponent } from './presenter/report-search/report-exam-total/report-exam-total.component';
import { ReportExamDetailComponent } from './presenter/report-search/report-exam-detail/report-exam-detail.component';
import { ReportExamSubjectComponent } from './presenter/report-search/report-exam-subject/report-exam-subject.component';

const routes: Routes = [
  {
    path: '',
    component: ReportRouter,
    children: [
      {
        path: '',
        component: ReportContainer
      },
    ]
  }
];

@NgModule({
  declarations: [
    ReportRouter,
    ReportContainer,
    ReportPreviewComponent,
    ReportSearchComponent,
    ReportCandidateComponent,
    ReportCandidateRegisterByCenterComponent,
    ReportCandidateRegisterBySubjectComponent,
    ReportCandidateSubjectComponent,
    ReportPaymentAndAppByCenterComponent,
    ReportPaymentAndAppBySubjectComponent,
    ReportReceiptComponent,
    ReportRegisterByPaymentComponent,
    ReportSettingTestingCenterComponent,
    ReportSignatureExaminationComponent,
    ReportSummaryCandidateComponent,
    ReportTestingCenterInformationComponent,
    ReportTestingRegistrationComponent,
    ReportTestingSeatAndRoomComponent,
    ReportSettingTestingRoomComponent,
    ReportExamResultComponent,
    ReportCandidateSummaryComponent,
    ReportSeparatedByExamCenterComponent,
    ReportExamTotalComponent,
    ReportExamDetailComponent,
    ReportExamSubjectComponent],
  imports: [
    CommonModule,
    SharedModule,
    RouterModule.forChild(routes),
  ]
})
export class ReportModule { }
