import 'package:cpt_uk/modules/attendance/device_list/device_list_page.dart';
import 'package:cpt_uk/modules/attendance/e_attendance_list/e_attendance_list_page.dart';
import 'package:cpt_uk/modules/attendance/security_registration/security_registration_page.dart';
import 'package:cpt_uk/modules/job/job_applied_staff_detail/applied_staff_detail_page.dart';
import 'package:cpt_uk/modules/job/job_applied_staff_reviews/applied_staff_reviews_page.dart';
import 'package:cpt_uk/modules/job/job_applied_workflow/applied_workflow_page.dart';
import 'package:cpt_uk/modules/job/job_category/job_category_page.dart';
import 'package:cpt_uk/modules/job/job_list/job_list_page.dart';
import 'package:cpt_uk/modules/job/job_list_detail/job_list_detail_page.dart';
import 'package:cpt_uk/modules/job/labour_request_add/labour_request_add_page.dart';
import 'package:cpt_uk/modules/job/labour_request_list/labour_request_list_page.dart';
import 'package:cpt_uk/modules/job/labour_request_workflow/labour_request_workflow_page.dart';
import 'package:cpt_uk/modules/job/template_add/template_add_page.dart';
import 'package:cpt_uk/modules/job/template_list/template_list_page.dart';
import 'package:cpt_uk/modules/main/main_page.dart';
import 'package:cpt_uk/modules/report/casual_payout_report/casual_payout_report_page.dart';
import 'package:cpt_uk/modules/report/casual_report/casual_report_page.dart';
import 'package:cpt_uk/modules/report/finance_report/report_finance_page.dart';
import 'package:cpt_uk/modules/report/labour_report/labour_report_page.dart';
import 'package:cpt_uk/modules/report/outlet_staff_report/outlet_staff_report_page.dart';
import 'package:cpt_uk/modules/report/report_list/report_list_page.dart';
import 'package:cpt_uk/modules/report/working_hours_report/working_hours_report_page.dart';
import 'package:get/get.dart';
import 'package:router/path/router_path.dart';

import '../modules/job/job_applied/job_applied_page.dart';
import '../modules/job/job_applied_edit/job_applied_edit_page.dart';
import '../modules/report/attendance_report/attendance_report_page.dart';
import '../modules/review/attendance_review_list/attendance_review_page.dart';
import '../modules/review/labour_review_edit/labour_review_edit_page.dart';
import '../modules/review/labour_review_list/labour_review_page.dart';
import '../modules/review/labour_review_workflow/labour_request_workflow_page.dart';

/// UK模块路由配置
class UKPageRouter {
  static final routes = <GetPage<dynamic>>[
    //首页
    GetPage(
      name: RouterPath.UKMain,
      page: () => UKMainPage(),
    ),

    //工作的子模块列表
    GetPage(
      name: RouterPath.UKJobCategory,
      page: () => JobCategoryPage(),
    ),

    //工作模板列表
    GetPage(
      name: RouterPath.UKTemplateList,
      page: () => UKTemplateListPage(),
    ),

    //工作模板列表添加与编辑
    GetPage(
      name: RouterPath.UKTemplateAdd,
      page: () => UKTemplateAddPage(),
    ),

    //工作用工请求列表
    GetPage(
      name: RouterPath.UKLabourList,
      page: () => UKLabourRequestListPage(),
    ),

    //工作用工请求的添加与编辑
    GetPage(
      name: RouterPath.UKLabourAdd,
      page: () => UKLabourRequestAddPage(),
    ),

    //工作用工请求的操作流
    GetPage(
      name: RouterPath.UKLabourWorlkflow,
      page: () => UKLabourRequestWorkflowPage(),
    ),

    //工作列表
    GetPage(
      name: RouterPath.UKJobList,
      page: () => UKJobListPage(),
    ),

    //工作列表详情
    GetPage(
      name: RouterPath.UKJobListDetail,
      page: () => UKJobListDetailPage(),
    ),

    //工作列表已申请列表
    GetPage(
      name: RouterPath.UKJobApplied,
      page: () => UKJobAppliedPage(),
    ),

    //工作列表已申请列表添加员工列表
    GetPage(
      name: RouterPath.UKJobAppliedEdit,
      page: () => UKJobAppliedEditPage(),
    ),

    //工作列表已申请列表员工详情
    GetPage(
      name: RouterPath.UKJobAppliedStaffDetail,
      page: () => UKAppliedStaffDetailPage(),
    ),

    //工作列表已申请列表员工评论列表
    GetPage(
      name: RouterPath.UKJobAppliedStaffReview,
      page: () => UKAppliedStaffReviewsPage(),
    ),

    //工作列表已申请操作流
    GetPage(
      name: RouterPath.UKJobAppliedWorkflow,
      page: () => UKAppliedWorkflowPage(),
    ),

    //工作列表用工请求审核
    GetPage(
      name: RouterPath.UKLabourReviewList,
      page: () => UKLabourReviewPage(),
    ),

    //工作列表用工请求审核编辑
    GetPage(
      name: RouterPath.UKLabourReviewEdit,
      page: () => UKLabourReviewEditPage(),
    ),

    //工作列表用工请求审核的操作流
    GetPage(
      name: RouterPath.UKLabourReviewWorkflow,
      page: () => UKLabourReviewWorkflowPage(),
    ),

    //考勤的审核列表
    GetPage(
      name: RouterPath.UKAttendanceReviewList,
      page: () => UKAttendanceReviewPage(),
    ),

    //设备列表
    GetPage(
      name: RouterPath.UKDeviceList,
      page: () => UKDeviceListPage(),
    ),

    //电子考勤列表
    GetPage(
      name: RouterPath.UKAttendanceList,
      page: () => UKEAttendanceListPage(),
    ),

    //门卫签到列表
    GetPage(
      name: RouterPath.UKSecurityRegistration,
      page: () => UKSecurityRegistrationPage(),
    ),

    //报表
    GetPage(
      name: RouterPath.UKReportList,
      page: () => UKReportListPage(),
    ),

    //报表 - Labour
    GetPage(
      name: RouterPath.UKReportLabour,
      page: () => UKLabourReportPage(),
    ),

    //报表 - 部门的员工的月度统计
    GetPage(
      name: RouterPath.UKReportOutlet,
      page: () => UKOutletStaffReportPage(),
    ),

    //报表 - 财务报表还是终极报表
    GetPage(
      name: RouterPath.UKReportfinance,
      page: () => UKReportFinancePage(),
    ),

    //报表 - 工作时长报告
    GetPage(
      name: RouterPath.UKReportWorkingHours,
      page: () => UKWorkingHoursReportPage(),
    ),

    //报表 - 电子考勤
    GetPage(
      name: RouterPath.UKReportAttendance,
      page: () => UKAttendanceReportPage(),
    ),

    //报表 - 临时工作付款统计
    GetPage(
      name: RouterPath.UKReportCasualPayout,
      page: () => UKCasualPayoutReportPage(),
    ),

    //报表 - 临时工月度报表
    GetPage(
      name: RouterPath.UKReportCasualMonthly,
      page: () => UKCasualReportPage(),
    ),

  ];
}
