app_router.dart 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. import 'package:go_router/go_router.dart';
  2. import '../../features/home/home_page.dart';
  3. import '../../features/expense/expense_list_page.dart';
  4. import '../../features/expense/expense_apply_page.dart';
  5. import '../../features/expense/expense_detail_page.dart';
  6. import '../../features/overtime/overtime_list_page.dart';
  7. import '../../features/overtime/overtime_apply_page.dart';
  8. import '../../features/overtime/overtime_detail_page.dart';
  9. import '../../features/vehicle/vehicle_list_page.dart';
  10. import '../../features/vehicle/vehicle_apply_page.dart';
  11. import '../../features/vehicle/vehicle_detail_page.dart';
  12. import '../../features/outing_log/outing_log_list_page.dart';
  13. import '../../features/outing_log/outing_log_create_page.dart';
  14. import '../../features/outing_log/outing_log_detail_page.dart';
  15. import '../../features/announcement/announcement_list_page.dart';
  16. import '../../features/announcement/announcement_detail_page.dart';
  17. import '../../features/expense_application/expense_application_list_page.dart';
  18. import '../../features/expense_application/expense_application_detail_page.dart';
  19. import '../../features/expense_application/expense_application_apply_page.dart';
  20. import '../../features/report/expense_detail_report_page.dart';
  21. import '../../features/report/overtime_detail_report_page.dart';
  22. import '../../features/report/vehicle_detail_report_page.dart';
  23. import '../../features/report/expense_apply_detail_report_page.dart';
  24. GoRouter createAppRouter() {
  25. return GoRouter(
  26. initialLocation: '/',
  27. routes: [
  28. GoRoute(path: '/', builder: (_, __) => const HomePage()),
  29. GoRoute(
  30. path: '/expense/list',
  31. builder: (_, __) => const ExpenseListPage(),
  32. ),
  33. GoRoute(
  34. path: '/expense/apply',
  35. builder: (_, state) =>
  36. ExpenseApplyPage(editId: state.uri.queryParameters['id']),
  37. ),
  38. GoRoute(
  39. path: '/expense/detail/:id',
  40. builder: (_, state) =>
  41. ExpenseDetailPage(id: state.pathParameters['id']!),
  42. ),
  43. GoRoute(
  44. path: '/overtime/list',
  45. builder: (_, __) => const OvertimeListPage(),
  46. ),
  47. GoRoute(
  48. path: '/overtime/apply',
  49. builder: (_, state) =>
  50. OvertimeApplyPage(editId: state.uri.queryParameters['id']),
  51. ),
  52. GoRoute(
  53. path: '/overtime/detail/:id',
  54. builder: (_, state) =>
  55. OvertimeDetailPage(id: state.pathParameters['id']!),
  56. ),
  57. GoRoute(
  58. path: '/vehicle/list',
  59. builder: (_, __) => const VehicleListPage(),
  60. ),
  61. GoRoute(
  62. path: '/vehicle/apply',
  63. builder: (_, state) =>
  64. VehicleApplyPage(editId: state.uri.queryParameters['id']),
  65. ),
  66. GoRoute(
  67. path: '/vehicle/detail/:id',
  68. builder: (_, state) =>
  69. VehicleDetailPage(id: state.pathParameters['id']!),
  70. ),
  71. GoRoute(
  72. path: '/outing-log/list',
  73. builder: (_, __) => const OutingLogListPage(),
  74. ),
  75. GoRoute(
  76. path: '/outing-log/create',
  77. builder: (_, __) => const OutingLogCreatePage(),
  78. ),
  79. GoRoute(
  80. path: '/outing-log/detail/:id',
  81. builder: (_, state) =>
  82. OutingLogDetailPage(id: state.pathParameters['id']!),
  83. ),
  84. GoRoute(
  85. path: '/announcement/list',
  86. builder: (_, __) => const AnnouncementListPage(),
  87. ),
  88. GoRoute(
  89. path: '/announcement/detail/:id',
  90. builder: (_, state) =>
  91. AnnouncementDetailPage(id: state.pathParameters['id']!),
  92. ),
  93. GoRoute(
  94. path: '/expense-apply/list',
  95. builder: (_, _) => const ExpenseApplicationListPage(),
  96. ),
  97. GoRoute(
  98. path: '/expense-apply/detail/:id',
  99. builder: (_, state) => ExpenseApplicationDetailPage(
  100. id: state.pathParameters['id']!),
  101. ),
  102. GoRoute(
  103. path: '/expense-apply/apply',
  104. builder: (_, state) => ExpenseApplicationApplyPage(
  105. id: state.uri.queryParameters['id']),
  106. ),
  107. GoRoute(
  108. path: '/report/expense-detail',
  109. builder: (_, _) => const ExpenseDetailReportPage(),
  110. ),
  111. GoRoute(
  112. path: '/report/expense-apply-detail',
  113. builder: (_, _) => const ExpenseApplyDetailReportPage(),
  114. ),
  115. GoRoute(
  116. path: '/report/overtime-detail',
  117. builder: (_, _) => const OvertimeDetailReportPage(),
  118. ),
  119. GoRoute(
  120. path: '/report/vehicle-detail',
  121. builder: (_, _) => const VehicleDetailReportPage(),
  122. ),
  123. ],
  124. );
  125. }