diff --git a/lib/config/routes.dart b/lib/config/routes.dart index 9285671..61cf8aa 100644 --- a/lib/config/routes.dart +++ b/lib/config/routes.dart @@ -13,7 +13,7 @@ import 'package:mohem_flutter_app/ui/login/verify_login_screen.dart'; import 'package:mohem_flutter_app/ui/misc/request_submit_screen.dart'; import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_input_screen.dart'; import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_listview_screen.dart'; -import 'package:mohem_flutter_app/ui/my_attendance/my_attendance_screen.dart'; +import 'package:mohem_flutter_app/ui/my_attendance/services_menu_list_screen.dart'; import 'package:mohem_flutter_app/ui/payslip/monthly_pay_slip_screen.dart'; import 'package:mohem_flutter_app/ui/profile/add_update_family_member.dart'; import 'package:mohem_flutter_app/ui/profile/basic_details.dart'; @@ -61,7 +61,7 @@ class AppRoutes { static const String itgDetail = "/itgDetail"; static const String itemHistory = "/itemHistory"; - static const String myAttendance = "/myAttendance"; + static const String servicesMenuListScreen = "/servicesMenuListScreen"; static const String dynamicScreen = "/dynamicScreen"; static const String addDynamicInput = "/addDynamicInput"; static const String requestSubmitScreen = "/requestSubmitScreen"; @@ -124,7 +124,7 @@ class AppRoutes { itgDetail: (context) => ItgDetailScreen(), itemHistory: (context) => ItemHistoryScreen(), - myAttendance: (context) => MyAttendanceScreen(), + servicesMenuListScreen: (context) => ServicesMenuListScreen(), // workFromHome: (context) => WorkFromHomeScreen(), // addWorkFromHome: (context) => AddWorkFromHomeScreen(), profile: (context) => ProfileScreen(), diff --git a/lib/ui/landing/widget/services_widget.dart b/lib/ui/landing/widget/services_widget.dart index e99205b..868ca5e 100644 --- a/lib/ui/landing/widget/services_widget.dart +++ b/lib/ui/landing/widget/services_widget.dart @@ -9,6 +9,7 @@ import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart'; import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart'; import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_listview_screen.dart'; +import 'package:mohem_flutter_app/ui/my_attendance/services_menu_list_screen.dart'; import 'package:mohem_flutter_app/widgets/shimmer/dashboard_shimmer_widget.dart'; import 'package:provider/provider.dart'; @@ -126,7 +127,7 @@ class ServicesWidget extends StatelessWidget { Navigator.pushNamed(context, AppRoutes.monthlyPaySlip); } } else { - Navigator.pushNamed(context, AppRoutes.myAttendance, arguments: menuList); + Navigator.pushNamed(context, AppRoutes.servicesMenuListScreen, arguments: ServicesMenuListScreenParams(menuEntry.prompt!, menuList)); } return; } diff --git a/lib/ui/my_attendance/my_attendance_screen.dart b/lib/ui/my_attendance/services_menu_list_screen.dart similarity index 67% rename from lib/ui/my_attendance/my_attendance_screen.dart rename to lib/ui/my_attendance/services_menu_list_screen.dart index 207e2c7..fdf6e4f 100644 --- a/lib/ui/my_attendance/my_attendance_screen.dart +++ b/lib/ui/my_attendance/services_menu_list_screen.dart @@ -1,4 +1,3 @@ -import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:mohem_flutter_app/classes/colors.dart'; @@ -7,37 +6,44 @@ import 'package:mohem_flutter_app/config/routes.dart'; import 'package:mohem_flutter_app/extensions/int_extensions.dart'; import 'package:mohem_flutter_app/extensions/string_extensions.dart'; import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; -import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart'; import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_listview_screen.dart'; import 'package:mohem_flutter_app/widgets/app_bar_widget.dart'; -class MyAttendanceScreen extends StatelessWidget { - List list; +class ServicesMenuListScreenParams { + final String title; + final List list; - MyAttendanceScreen({Key? key, this.list = const []}) : super(key: key); + ServicesMenuListScreenParams(this.title, this.list); +} + +class ServicesMenuListScreen extends StatelessWidget { + late ServicesMenuListScreenParams servicesMenuData; + + ServicesMenuListScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - list = ModalRoute.of(context)!.settings.arguments as List; + servicesMenuData = ModalRoute.of(context)!.settings.arguments as ServicesMenuListScreenParams; + return Scaffold( backgroundColor: Colors.white, appBar: AppBarWidget( context, - title: LocaleKeys.myAttendance.tr(), + title: servicesMenuData.title, ), body: SizedBox( width: double.infinity, height: double.infinity, - child: list.isEmpty + child: servicesMenuData.list.isEmpty ? Utils.getNoDataWidget(context) : ListView.separated( padding: const EdgeInsets.all(21), - itemBuilder: (cxt, index) => itemView("assets/images/pdf.svg", list[index].prompt!).onPress(() { - Navigator.pushNamed(context, AppRoutes.dynamicScreen, arguments: DynamicListViewParams(list[index].prompt!, list[index].functionName!)); + itemBuilder: (cxt, index) => itemView("assets/images/pdf.svg", servicesMenuData.list[index].prompt!).onPress(() { + Navigator.pushNamed(context, AppRoutes.dynamicScreen, arguments: DynamicListViewParams(servicesMenuData.list[index].prompt!, servicesMenuData.list[index].functionName!)); }), separatorBuilder: (cxt, index) => 12.height, - itemCount: list.length), + itemCount: servicesMenuData.list.length), ), ); }