import 'package:auto_route/auto_route.dart';
import 'package:smart_hotel_app/routes/app_router.gr.dart'; 
import 'package:smart_hotel_app/views/report/rule/rule_management_view.dart';
import 'package:smart_hotel_app/views/report/device/device_list_view.dart';
import 'package:smart_hotel_app/views/home/inspection_topology/inspection_topology_view.dart';

@AutoRouterConfig(replaceInRouteName: 'View,Route')
class AppRouter extends $AppRouter {
  @override
  RouteType get defaultRouteType =>
      const RouteType.material(); //.cupertino, .adaptive ..etc

  @override
  List<AutoRoute> get routes => [
        // LoginRoute / LoginView（登录页）
        AutoRoute(page: LoginRoute.page, initial: true),
        // DefaultLayoutRoute / DefaultLayoutView（默认布局页/主框架）
        AutoRoute(
          page: DefaultLayoutRoute.page,
          children: [
            // HomeRoute / HomeView（首页）
            AutoRoute(page: HomeRoute.page, initial: true),
            // ServiceIndexRoute / ServiceIndexView（服务首页/客房服务看板）
            AutoRoute(page: ServiceIndexRoute.page),
            // ReportIndexRoute / ReportIndexView（报表首页）
            AutoRoute(page: ReportIndexRoute.page),
            // ProfileRoute / ProfileView（我的/个人中心）
            AutoRoute(page: ProfileRoute.page),
          ],
        ),
        // SearchRoute / SearchView（搜索页）
        AutoRoute(page: SearchRoute.page),
        // AbnormalDetailRoute / AbnormalDetailView（异常详情页）
        AutoRoute(page: AbnormalDetailRoute.page),
        // DeviceDetailRoute / DeviceDetailView（设备详情页）
        AutoRoute(page: DeviceDetailRoute.page),
        // ServiceRoomDetailRoute / ServiceRoomDetailView（服务-房间详情页）
        AutoRoute(page: ServiceRoomDetailRoute.page),
        // ReportEnergyDetailRoute / ReportEnergyDetailView（报表-能耗详情页）
        AutoRoute(page: ReportEnergyDetailRoute.page),
        // ReportRoomDetailRoute / ReportRoomDetailView（报表-房间详情页）
        AutoRoute(page: ReportRoomDetailRoute.page),
        // ServiceDeviceDetailRoute / ServiceDeviceDetailView（服务-设备详情页）
        AutoRoute(page: ServiceDeviceDetailRoute.page),
        // InspectionDetailRoute / InspectionDetailView（巡检详情页）
        AutoRoute(page: InspectionDetailRoute.page),
        // InspectionDeviceRoute / InspectionDeviceView（巡检设备页）
        AutoRoute(page: InspectionDeviceRoute.page),
        // InspectionHistoryRoute / InspectionHistoryView（巡检历史页）
        AutoRoute(page: InspectionHistoryRoute.page),
        // AbnormalListRoute / AbnormalListView（异常列表页）
        AutoRoute(page: AbnormalListRoute.page),
        // ReportRuleManagementRoute / ReportRuleManagementView（报表-联动规则管理页）
        AutoRoute(page: ReportRuleManagementRoute.page),
        // ReportDeviceListRoute / ReportDeviceListView（报表-设备列表页）
        AutoRoute(page: ReportDeviceListRoute.page),
        // InspectionTopologyRoute / InspectionTopologyView（巡检拓扑页）
        AutoRoute(page: InspectionTopologyRoute.page),
      ];
}
