From fc08f0a2d48e9add81823237f9a891fd18bd8921 Mon Sep 17 00:00:00 2001 From: venbaittech Date: Tue, 30 Sep 2025 10:50:05 +0530 Subject: [PATCH] Flow_Fix --- .flutter-plugins-dependencies | 2 +- assets/drawer/drawerImg1_light.png | Bin 0 -> 358 bytes assets/drawer/drawerImg2_light.png | Bin 0 -> 331 bytes lib/core/services/api_service.dart | 2 +- lib/data/services/auth_service.dart | 3 + lib/presentation/layouts/main_layout.dart | 6 + .../screens/Enquiry/enquiry/enquiry_tab.dart | 5 +- .../screens/Enquiry/enquiry/policy_tab.dart | 12 +- .../Enquiry/enquiry/quotation_tab.dart | 114 ++-- .../screens/Enquiry/enquiry/tabs.dart | 256 ++++++++- .../screens/Enquiry/enquiryList.dart | 218 ++++--- .../Enquiry/policy_claims_endros/claims.dart | 27 +- .../policy_claims_endros/endrosment.dart | 27 +- .../screens/dashboard/dashboard.dart | 533 ++++++++++-------- .../screens/login/login_screen.dart | 209 ++++--- .../screens/staff/Enquiry/enquiry_list.dart | 45 +- .../screens/staff/policy/policy.dart | 29 +- .../screens/staff/policy/policy_list.dart | 43 +- .../screens/staff/quotations/quotation.dart | 86 ++- .../themes/indicators/export_btn.dart | 94 ++- .../themes/indicators/text_field_theme.dart | 14 +- lib/presentation/widgets/drawer_menu.dart | 47 +- lib/presentation/widgets/mobile_tabs.dart | 48 +- lib/presentation/widgets/topbar.dart | 33 +- lib_29_sep.zip | Bin 0 -> 191526 bytes 25 files changed, 1278 insertions(+), 575 deletions(-) create mode 100644 assets/drawer/drawerImg1_light.png create mode 100644 assets/drawer/drawerImg2_light.png create mode 100644 lib_29_sep.zip diff --git a/.flutter-plugins-dependencies b/.flutter-plugins-dependencies index da172c1..02d4352 100644 --- a/.flutter-plugins-dependencies +++ b/.flutter-plugins-dependencies @@ -1 +1 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_secure_storage","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage-9.2.4/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_ios-6.1.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_darwin","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_darwin-1.6.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_ios-1.0.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.2/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_ios-6.3.4/","native_build":true,"dependencies":[],"dev_dependency":false}],"android":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_plugin_android_lifecycle","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.30/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage-9.2.4/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_android","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_android-7.0.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_android","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_android-1.0.52/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"],"dev_dependency":false},{"name":"open_file_android","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_android-1.0.6/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_android","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_android-2.2.18/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_android","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_android-2.4.12/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_android","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.20/","native_build":true,"dependencies":[],"dev_dependency":false}],"macos":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_secure_storage_macos","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_macos-3.1.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_ios-6.1.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_darwin","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_darwin-1.6.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_mac","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_mac-1.0.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.2/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_macos","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.3/","native_build":true,"dependencies":[],"dev_dependency":false}],"linux":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_linux-1.2.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_linux-0.0.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"path_provider_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_linux-2.4.1/","native_build":false,"dependencies":["path_provider_linux"],"dev_dependency":false},{"name":"url_launcher_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.1/","native_build":true,"dependencies":[],"dev_dependency":false}],"windows":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_windows-3.1.2/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_windows-1.0.11/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_windows-0.0.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"path_provider_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_windows-2.4.1/","native_build":false,"dependencies":["path_provider_windows"],"dev_dependency":false},{"name":"url_launcher_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.4/","native_build":true,"dependencies":[],"dev_dependency":false}],"web":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","dependencies":[],"dev_dependency":false},{"name":"firebase_app_check_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check_web-0.2.0+16/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"firebase_auth_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth_web-6.0.2/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"firebase_core_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core_web-3.1.0/","dependencies":[],"dev_dependency":false},{"name":"firebase_messaging_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging_web-4.0.1/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"flutter_secure_storage_web","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_web-1.2.1/","dependencies":[],"dev_dependency":false},{"name":"google_sign_in_web","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_web-1.0.0/","dependencies":[],"dev_dependency":false},{"name":"open_file_web","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_web-0.0.4/","dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","dependencies":[],"dev_dependency":false},{"name":"shared_preferences_web","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_web-2.4.3/","dependencies":[],"dev_dependency":false},{"name":"url_launcher_web","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.1/","dependencies":[],"dev_dependency":false}]},"dependencyGraph":[{"name":"connectivity_plus","dependencies":[]},{"name":"file_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"firebase_app_check","dependencies":["firebase_app_check_web","firebase_core"]},{"name":"firebase_app_check_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"firebase_auth","dependencies":["firebase_auth_web","firebase_core"]},{"name":"firebase_auth_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"firebase_core","dependencies":["firebase_core_web"]},{"name":"firebase_core_web","dependencies":[]},{"name":"firebase_messaging","dependencies":["firebase_core","firebase_messaging_web"]},{"name":"firebase_messaging_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"flutter_secure_storage","dependencies":["flutter_secure_storage_linux","flutter_secure_storage_macos","flutter_secure_storage_web","flutter_secure_storage_windows"]},{"name":"flutter_secure_storage_linux","dependencies":[]},{"name":"flutter_secure_storage_macos","dependencies":[]},{"name":"flutter_secure_storage_web","dependencies":[]},{"name":"flutter_secure_storage_windows","dependencies":["path_provider"]},{"name":"google_sign_in","dependencies":["google_sign_in_android","google_sign_in_ios","google_sign_in_web"]},{"name":"google_sign_in_android","dependencies":[]},{"name":"google_sign_in_ios","dependencies":[]},{"name":"google_sign_in_web","dependencies":[]},{"name":"local_auth","dependencies":["local_auth_android","local_auth_darwin","local_auth_windows"]},{"name":"local_auth_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"local_auth_darwin","dependencies":[]},{"name":"local_auth_windows","dependencies":[]},{"name":"open_file","dependencies":["open_file_android","open_file_web","open_file_ios","open_file_mac","open_file_windows","open_file_linux"]},{"name":"open_file_android","dependencies":[]},{"name":"open_file_ios","dependencies":[]},{"name":"open_file_linux","dependencies":[]},{"name":"open_file_mac","dependencies":[]},{"name":"open_file_web","dependencies":[]},{"name":"open_file_windows","dependencies":[]},{"name":"package_info_plus","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_android","shared_preferences_foundation","shared_preferences_linux","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_android","dependencies":[]},{"name":"shared_preferences_foundation","dependencies":[]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"url_launcher","dependencies":["url_launcher_android","url_launcher_ios","url_launcher_linux","url_launcher_macos","url_launcher_web","url_launcher_windows"]},{"name":"url_launcher_android","dependencies":[]},{"name":"url_launcher_ios","dependencies":[]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]}],"date_created":"2025-09-27 12:50:32.972743","version":"3.32.1","swift_package_manager_enabled":{"ios":false,"macos":false}} \ No newline at end of file +{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_secure_storage","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage-9.2.4/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_ios-6.1.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_darwin","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_darwin-1.6.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_ios-1.0.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.2/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_ios-6.3.4/","native_build":true,"dependencies":[],"dev_dependency":false}],"android":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_plugin_android_lifecycle","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.30/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage-9.2.4/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_android","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_android-7.0.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_android","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_android-1.0.52/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"],"dev_dependency":false},{"name":"open_file_android","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_android-1.0.6/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_android","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_android-2.2.18/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_android","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_android-2.4.12/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_android","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.20/","native_build":true,"dependencies":[],"dev_dependency":false}],"macos":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_app_check","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check-0.4.0+1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"firebase_messaging","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging-16.0.1/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"flutter_secure_storage_macos","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_macos-3.1.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"google_sign_in_ios","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_ios-6.1.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_darwin","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_darwin-1.6.0/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_mac","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_mac-1.0.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"path_provider_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.2/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_foundation","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false},{"name":"url_launcher_macos","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.3/","native_build":true,"dependencies":[],"dev_dependency":false}],"linux":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_linux-1.2.3/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_linux-0.0.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"path_provider_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_linux-2.4.1/","native_build":false,"dependencies":["path_provider_linux"],"dev_dependency":false},{"name":"url_launcher_linux","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.1/","native_build":true,"dependencies":[],"dev_dependency":false}],"windows":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"firebase_auth","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth-6.0.2/","native_build":true,"dependencies":["firebase_core"],"dev_dependency":false},{"name":"firebase_core","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core-4.1.0/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"flutter_secure_storage_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_windows-3.1.2/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"local_auth_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/local_auth_windows-1.0.11/","native_build":true,"dependencies":[],"dev_dependency":false},{"name":"open_file_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_windows-0.0.3/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"path_provider_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[],"dev_dependency":false},{"name":"shared_preferences_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_windows-2.4.1/","native_build":false,"dependencies":["path_provider_windows"],"dev_dependency":false},{"name":"url_launcher_windows","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.4/","native_build":true,"dependencies":[],"dev_dependency":false}],"web":[{"name":"connectivity_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.5/","dependencies":[],"dev_dependency":false},{"name":"file_picker","path":"/home/venba/.pub-cache/hosted/pub.dev/file_picker-10.3.3/","dependencies":[],"dev_dependency":false},{"name":"firebase_app_check_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_app_check_web-0.2.0+16/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"firebase_auth_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_auth_web-6.0.2/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"firebase_core_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_core_web-3.1.0/","dependencies":[],"dev_dependency":false},{"name":"firebase_messaging_web","path":"/home/venba/.pub-cache/hosted/pub.dev/firebase_messaging_web-4.0.1/","dependencies":["firebase_core_web"],"dev_dependency":false},{"name":"flutter_secure_storage_web","path":"/home/venba/.pub-cache/hosted/pub.dev/flutter_secure_storage_web-1.2.1/","dependencies":[],"dev_dependency":false},{"name":"google_sign_in_web","path":"/home/venba/.pub-cache/hosted/pub.dev/google_sign_in_web-1.0.0/","dependencies":[],"dev_dependency":false},{"name":"open_file_web","path":"/home/venba/.pub-cache/hosted/pub.dev/open_file_web-0.0.4/","dependencies":[],"dev_dependency":false},{"name":"package_info_plus","path":"/home/venba/.pub-cache/hosted/pub.dev/package_info_plus-8.3.1/","dependencies":[],"dev_dependency":false},{"name":"shared_preferences_web","path":"/home/venba/.pub-cache/hosted/pub.dev/shared_preferences_web-2.4.3/","dependencies":[],"dev_dependency":false},{"name":"url_launcher_web","path":"/home/venba/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.1/","dependencies":[],"dev_dependency":false}]},"dependencyGraph":[{"name":"connectivity_plus","dependencies":[]},{"name":"file_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"firebase_app_check","dependencies":["firebase_app_check_web","firebase_core"]},{"name":"firebase_app_check_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"firebase_auth","dependencies":["firebase_auth_web","firebase_core"]},{"name":"firebase_auth_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"firebase_core","dependencies":["firebase_core_web"]},{"name":"firebase_core_web","dependencies":[]},{"name":"firebase_messaging","dependencies":["firebase_core","firebase_messaging_web"]},{"name":"firebase_messaging_web","dependencies":["firebase_core","firebase_core_web"]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"flutter_secure_storage","dependencies":["flutter_secure_storage_linux","flutter_secure_storage_macos","flutter_secure_storage_web","flutter_secure_storage_windows"]},{"name":"flutter_secure_storage_linux","dependencies":[]},{"name":"flutter_secure_storage_macos","dependencies":[]},{"name":"flutter_secure_storage_web","dependencies":[]},{"name":"flutter_secure_storage_windows","dependencies":["path_provider"]},{"name":"google_sign_in","dependencies":["google_sign_in_android","google_sign_in_ios","google_sign_in_web"]},{"name":"google_sign_in_android","dependencies":[]},{"name":"google_sign_in_ios","dependencies":[]},{"name":"google_sign_in_web","dependencies":[]},{"name":"local_auth","dependencies":["local_auth_android","local_auth_darwin","local_auth_windows"]},{"name":"local_auth_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"local_auth_darwin","dependencies":[]},{"name":"local_auth_windows","dependencies":[]},{"name":"open_file","dependencies":["open_file_android","open_file_web","open_file_ios","open_file_mac","open_file_windows","open_file_linux"]},{"name":"open_file_android","dependencies":[]},{"name":"open_file_ios","dependencies":[]},{"name":"open_file_linux","dependencies":[]},{"name":"open_file_mac","dependencies":[]},{"name":"open_file_web","dependencies":[]},{"name":"open_file_windows","dependencies":[]},{"name":"package_info_plus","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_android","shared_preferences_foundation","shared_preferences_linux","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_android","dependencies":[]},{"name":"shared_preferences_foundation","dependencies":[]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"url_launcher","dependencies":["url_launcher_android","url_launcher_ios","url_launcher_linux","url_launcher_macos","url_launcher_web","url_launcher_windows"]},{"name":"url_launcher_android","dependencies":[]},{"name":"url_launcher_ios","dependencies":[]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]}],"date_created":"2025-09-30 10:13:26.383609","version":"3.32.1","swift_package_manager_enabled":{"ios":false,"macos":false}} \ No newline at end of file diff --git a/assets/drawer/drawerImg1_light.png b/assets/drawer/drawerImg1_light.png new file mode 100644 index 0000000000000000000000000000000000000000..c66d6fc34615b8033b3db56cebd6531eb65c98f1 GIT binary patch literal 358 zcmeAS@N?(olHy`uVBq!ia0vp^79h;Q1|(OsS<3+_&H|6fVg?2=RS;(M3{v?36l5$8 za(7}_cTVOdki(Mh=M%=$Z*v@*GXz!&K?TisS|`gmt) zS;s>D@Y^PQ92*+uzf)w(d?T2^Y5()VzNx!*_#O^h#W7?1v|C@kvlUM^+sPZXtk2-R z$(uly54nM*5&_n1SNa&YevW;ye8TBTWu-FF2}@KMmwLGz5}WJ!*h264^MBW)yBd6_ zrD{)ayc-vy=iYN5)d`|0+2Jivf8MtJ26F!`K65@h>mRpf%gd0CgU4(mt5z@NVM^gp q;Me|WW!~{nv2>dM8Zoe={pWEwT5Jznbwvvp3=E#GelF{r5}E)p=87x; literal 0 HcmV?d00001 diff --git a/assets/drawer/drawerImg2_light.png b/assets/drawer/drawerImg2_light.png new file mode 100644 index 0000000000000000000000000000000000000000..b26a0b5d882bd5b1aa802b5026c1a5e4b3941ac5 GIT binary patch literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^S|H591|*LjJ{b+9I14-?iy0WiR6&^0Gf3qFP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&eB{sT`J$B+ufx7WLQ4=D(+Jy^^gVV=;Emt>yd z{({Y_%Wpy61>QGoCCu&?{TE!8^dHffapS+Yp2<@oJqHB=Mur3GAwQaDdS`NVE)H5X z|Hb*GD^<3M^iSOAzj<$v%VGaC4Xrbl#ZtZYd16;Ke%@!gb0+W9DQ)qmS6o>A{jPV3 z$+aM clearToken() async { print('ClearToken'); + final prefs = await SharedPreferences.getInstance(); + prefs.clear(); await _storage.delete(key: _tokenKey); } diff --git a/lib/presentation/layouts/main_layout.dart b/lib/presentation/layouts/main_layout.dart index 50fe643..75639b8 100644 --- a/lib/presentation/layouts/main_layout.dart +++ b/lib/presentation/layouts/main_layout.dart @@ -33,6 +33,12 @@ class MainLayout extends StatelessWidget { onNotifications: () { debugPrint("Notifications tapped"); }, + + onLogout: () { + debugPrint("Logout tapped"); + AuthService.clearToken(); + context.go(AppRoutes.login); + }, ), drawer: const DrawerMenu(), body: body, diff --git a/lib/presentation/screens/Enquiry/enquiry/enquiry_tab.dart b/lib/presentation/screens/Enquiry/enquiry/enquiry_tab.dart index a9cfd0d..cd22dd8 100644 --- a/lib/presentation/screens/Enquiry/enquiry/enquiry_tab.dart +++ b/lib/presentation/screens/Enquiry/enquiry/enquiry_tab.dart @@ -699,7 +699,7 @@ class EnquiryTabState extends ConsumerState { label: "Vehicle Type *", field: Container( decoration: BoxDecoration( - color: Colors.white, + // color: Colors.white, borderRadius: BorderRadius.circular(10.0), ), width: ResponsiveLayout.isMobile(context) @@ -732,6 +732,7 @@ class EnquiryTabState extends ConsumerState { ), ), + popupProps: PopupProps.menu( fit: FlexFit.loose, constraints: BoxConstraints(maxHeight: 250), @@ -784,7 +785,7 @@ class EnquiryTabState extends ConsumerState { label: "Insurer *", field: Container( decoration: BoxDecoration( - color: Colors.white, + // color: Colors.white, borderRadius: BorderRadius.circular(10.0), ), width: ResponsiveLayout.isMobile(context) diff --git a/lib/presentation/screens/Enquiry/enquiry/policy_tab.dart b/lib/presentation/screens/Enquiry/enquiry/policy_tab.dart index 3f156f7..597cd75 100644 --- a/lib/presentation/screens/Enquiry/enquiry/policy_tab.dart +++ b/lib/presentation/screens/Enquiry/enquiry/policy_tab.dart @@ -105,7 +105,17 @@ class PolicyTabState extends ConsumerState { // final response = await apiService.fetchQuotationList(managerId); if (widget.data != null) { - final data = List>.from(widget.data as Iterable); + // final data = List>.from(widget.data as Iterable); + + List> data; + + if (widget.data is List) { + data = List>.from(widget.data as List); + } else if (widget.data is Map) { + data = [Map.from(widget.data as Map)]; + } else { + data = []; + } print('policyListData - ${widget.data}'); setState(() { diff --git a/lib/presentation/screens/Enquiry/enquiry/quotation_tab.dart b/lib/presentation/screens/Enquiry/enquiry/quotation_tab.dart index 356a2fa..a3995cb 100644 --- a/lib/presentation/screens/Enquiry/enquiry/quotation_tab.dart +++ b/lib/presentation/screens/Enquiry/enquiry/quotation_tab.dart @@ -6,6 +6,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:http/http.dart' as http; +import 'package:nhance_partner/presentation/screens/Enquiry/enquiry/tabs.dart'; import '../../../../core/config/env.dart'; import '../../../../core/services/api_service.dart'; import '../../../../data/services/auth_service.dart'; @@ -23,7 +24,8 @@ class QuotationTab extends ConsumerStatefulWidget { // final Map? data; final List>? data; String? id; - QuotationTab({super.key, this.data, this.id}); + final Future Function()? onRefresh; + QuotationTab({super.key, this.data, this.id, this.onRefresh}); @override ConsumerState createState() => QuotationTabState(); } @@ -41,6 +43,11 @@ class QuotationTabState extends ConsumerState { final GlobalKey>> dropDownKey = GlobalKey>>(); + final GlobalKey tabKey = + GlobalKey(); + + bool blockKey = false; + List tabHeader = [ 'regNum', 'insurer', @@ -110,7 +117,7 @@ class QuotationTabState extends ConsumerState { managerId = ref.watch(managerIdProvider); userId = ref.watch(userIdProvider); - getQuotationList(managerId); + getQuotationList(); }); } @@ -120,7 +127,7 @@ class QuotationTabState extends ConsumerState { } void refresh() { - getQuotationList(managerId); + getQuotationList(); } @override @@ -132,8 +139,8 @@ class QuotationTabState extends ConsumerState { super.dispose(); } - Future getQuotationList(managerId) async { - print('getClaimList called MagId - $managerId'); + Future getQuotationList() async { + print('getClaimList called MagId - '); setState(() { isLoading = true; }); @@ -143,38 +150,48 @@ class QuotationTabState extends ConsumerState { if (widget.data != null && widget.id != null) { final data = List>.from(widget.data as Iterable); - response = await apiService.findSingleQuotationData(widget.id); + // response = await apiService.findSingleQuotationData(widget.id); // print('quoationListData - ${widget.data}'); - // setState(() { - // getQuotationData = data; - // // getQuotationData = List>.from(response['data']); - // originalData = getQuotationData; - // filteredData = List.from(originalData); - // // print('originalData - $getClaimPolicies'); - // }); + setState(() { + getQuotationData = data; + // getQuotationData = List>.from(response['data']); + originalData = getQuotationData; + filteredData = List.from(originalData); + print('quoationListData - $getQuotationData'); - if (response['status'] == 'success') { - final rawData = response['data']; - print('quoationListData1 - ${response['data']}'); - setState(() { - if (rawData is List) { - // already a list - getQuotationData = List>.from(rawData); - } else if (rawData is Map) { - // single object, wrap into a list - getQuotationData = [Map.from(rawData)]; - } else { - getQuotationData = []; - } - // getQuotationData = List>.from(response['data']); - originalData = getQuotationData; - filteredData = List.from(originalData); - // print('originalData - $getClaimPolicies'); - }); - } else { - getQuotationData = []; - originalData = []; - } + blockKey = getQuotationData.any((item) => item['status'] == 'Accepted'); + print('blockKey- $blockKey'); + + + // blockKey = getQuotationData.any( + // (item) => (item['status']?.toString().toLowerCase() ?? '') == 'approved', + // ); + + // print('originalData - $getClaimPolicies'); + }); + + // if (response['status'] == 'success') { + // final rawData = response['data']; + // print('quoationListData1 - ${response['data']}'); + // setState(() { + // if (rawData is List) { + // // already a list + // getQuotationData = List>.from(rawData); + // } else if (rawData is Map) { + // // single object, wrap into a list + // getQuotationData = [Map.from(rawData)]; + // } else { + // getQuotationData = []; + // } + // // getQuotationData = List>.from(response['data']); + // originalData = getQuotationData; + // filteredData = List.from(originalData); + // // print('originalData - $getClaimPolicies'); + // }); + // } else { + // getQuotationData = []; + // originalData = []; + // } } } catch (e) { print('Exception occurred: $e'); @@ -263,7 +280,7 @@ class QuotationTabState extends ConsumerState { // data['id'] = selectedId; // Add plan_id for update // data['status'] = val; - print("data------- $data}"); + print("data------- $data"); try { final response = await http.post( @@ -280,11 +297,21 @@ class QuotationTabState extends ConsumerState { print("Response: ${response.body}"); ToastHelper.showSuccessToast(context, 'Status Updated'); - + print("tre1"); selectedId = null; // just update field isquotation = false; - refresh(); + print("tre11"); + // 🔄 Refresh parent + if (widget.onRefresh != null) { + await widget.onRefresh!(); + } + + + // refresh(); + // WidgetsBinding.instance.addPostFrameCallback((_) { + // tabKey.currentState?.loadQuotationTab(widget.id ?? ""); + // }); // context.go(AppRoutes.staffLst); } else { final responseBody = jsonDecode(response.body); @@ -368,6 +395,10 @@ class QuotationTabState extends ConsumerState { ToastHelper.showSuccessToast(context, 'Document Uploaded'); print("Response: ${response.body}"); + + if (widget.onRefresh != null) { + await widget.onRefresh!(); + } // context.go(AppRoutes.agentLst); } else { final responseBody = jsonDecode(response.body); @@ -383,6 +414,8 @@ class QuotationTabState extends ConsumerState { Color _getStatusColor(String? status) { switch (status) { + case 'Pending': + return Colors.yellow; case 'Accepted': return Colors.green; case 'Rejected': @@ -443,7 +476,7 @@ class QuotationTabState extends ConsumerState { const SizedBox(height: 20), - if (showAction) + if (!blockKey) Row( mainAxisAlignment: MainAxisAlignment.end, children: [ @@ -976,7 +1009,8 @@ class QuotationTabState extends ConsumerState { fontSize: 14, fontWeight: FontWeight.w400, - color: item['status'] == 'Accepted' ? Colors.green : Colors.red, + color: _getStatusColor(item['status']), + // color: item['status'] == 'Accepted' ? Colors.green : Colors.red, ), ), ), diff --git a/lib/presentation/screens/Enquiry/enquiry/tabs.dart b/lib/presentation/screens/Enquiry/enquiry/tabs.dart index a7c1ac2..814edf4 100644 --- a/lib/presentation/screens/Enquiry/enquiry/tabs.dart +++ b/lib/presentation/screens/Enquiry/enquiry/tabs.dart @@ -1,7 +1,9 @@ +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; import 'package:google_fonts/google_fonts.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import '../../../../core/routing/routes.dart'; import '../../../../core/services/api_service.dart'; @@ -26,11 +28,16 @@ class TabEnquiryListState extends ConsumerState { bool isLoading = true; late ApiService apiService; ScrollController _scrollController = ScrollController(); + @override void initState() { super.initState(); apiService = ApiService(); + if (kIsWeb) { + Future.microtask(() => _restoreId(ref)); + } + Future.microtask(() { final id = ref.read(enquiryIdProvider); @@ -49,7 +56,21 @@ class TabEnquiryListState extends ConsumerState { // fetch immediately } - Future _loadData(id) async { + Future _restoreId(WidgetRef ref) async { + final prefs = await SharedPreferences.getInstance(); + + final String? savedId = prefs.getString( + 'enqAgentDataId', + ); // already a string + if (savedId != null) { + ref.read(enquiryIdProvider.notifier).state = savedId; + print("savedenqStaffDataId ID restored: $savedId"); + + _loadData(savedId); + } + } + + Future _loadData1(id) async { print('Load Data'); setState(() => isLoading = true); final response = await apiService.findEnqQuotePolicyView(id); @@ -65,20 +86,37 @@ class TabEnquiryListState extends ConsumerState { TabItem( "Quotation", QuotationTab( - data: (enquiryData?["quotations"] as List?)! - .map((e) => Map.from(e as Map)) - .toList(), + data: + (enquiryData?["quotations"] as List?) + ?.map((e) => Map.from(e as Map)) + .toList() ?? + [], id: id ?? "", ), + // QuotationTab( + // data: (enquiryData?["quotations"] as List?)! + // .map((e) => Map.from(e as Map)) + // .toList(), + // id: id ?? "", + // ), ), TabItem( "Policy", + PolicyTab( - data: (enquiryData?["policies"] as List?)! - .map((e) => Map.from(e as Map)) - .toList(), + data: + (enquiryData?["policies"] as List?) + ?.map((e) => Map.from(e as Map)) + .toList() ?? + [], // fallback to empty list id: id ?? "", ), + // PolicyTab( + // data: (enquiryData?["policies"] as List?)! + // .map((e) => Map.from(e as Map)) + // .toList(), + // id: id ?? "", + // ), ), // TabItem("Quotation", QuotationTab(data: enquiryData?["quotations"])), @@ -87,6 +125,75 @@ class TabEnquiryListState extends ConsumerState { }); } + Future _loadData(id, {int? tabIndex}) async { + print('loadQuotationTab 2'); + setState(() => isLoading = true); + final response = await apiService.findEnqQuotePolicyView(id); + + setState(() { + enquiryData = response["data"]; + isLoading = false; + tabs = [ + TabItem( + "Enquiry", + EnquiryTab(data: enquiryData?["enquiry"], id: id ?? ""), + ), + TabItem( + "Quotation", + QuotationTab( + data: + (enquiryData?["quotations"] as List?) + ?.map((e) => Map.from(e as Map)) + .toList() ?? + [], + id: id ?? "", + onRefresh: () async { + await _loadData(id); // refresh parent data + }, + ), + ), + TabItem( + "Policy", + PolicyTab( + data: enquiryData?["policies"] is List + ? List>.from( + (enquiryData?["policies"] as List).map( + (e) => Map.from(e as Map), + ), + ) + : enquiryData?["policies"] is Map + ? [Map.from(enquiryData?["policies"] as Map)] + : [], + id: id ?? "", + ), + ), + + // TabItem( + // "Policy", + // PolicyTab( + // data: + // (enquiryData?["policies"] as List?) + // ?.map((e) => Map.from(e as Map)) + // .toList() ?? + // [], + // id: id ?? "", + // ), + // ), + ]; + + if (tabIndex != null) { + selectedIndex = tabIndex; + expandedIndex = tabIndex; + } + }); + } + + /// Public method to load data and select a tab + Future loadQuotationTab(String id) async { + print('loadQuotationTab 1'); + await _loadData(id, tabIndex: 2); // now _loadData will set the selected tab + } + @override Widget build(BuildContext context) { final bool isMobile = MediaQuery.of(context).size.width < 600; @@ -94,12 +201,12 @@ class TabEnquiryListState extends ConsumerState { print("TABUPDID- $id"); - // When provider changes, re-fetch - ref.listen(enquiryIdProvider, (prev, next) { - if (prev != next) { - _loadData(id); - } - }); + // // When provider changes, re-fetch + // ref.listen(enquiryIdProvider, (prev, next) { + // if (prev != next) { + // _loadData(id); + // } + // }); print('ENQID: $id'); @@ -110,14 +217,130 @@ class TabEnquiryListState extends ConsumerState { child: isLoading ? const Center(child: CircularProgressIndicator()) : isMobile - ? _buildMobileTabs() + ? SingleChildScrollView( + child: Column( + children: [ + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 6, + vertical: 2, + ), + child: GestureDetector( + onTap: () { + // context.go(AppRoutes.dashboard); + ref.read(enquiryIdProvider.notifier).state = null; + context.go(AppRoutes.enquiryLst); + }, + child: Row( + children: [ + const Icon( + Icons.arrow_left_sharp, + size: 25, + color: Color(0xFF425B5B), + ), + // const SizedBox(width: 8), + Text( + "Enquiry", + style: GoogleFonts.inter( + fontSize: 14, + fontWeight: FontWeight.w600, + color: Colors.black, + ), + ), + ], + ), + ), + ), + _buildMobileTabs( + shrinkWrap: true, + physics: NeverScrollableScrollPhysics(), + ), + ], + ), + ) : _buildDesktopTabs(), ), ); } - Widget _buildMobileTabs() { + Widget _buildMobileTabs({ + required bool shrinkWrap, + required ScrollPhysics physics, + }) { return ListView.builder( + shrinkWrap: shrinkWrap, + physics: physics, + itemCount: tabs.length, + padding: const EdgeInsets.all(16), + itemBuilder: (context, index) { + final isExpanded = expandedIndex == index; + + return Card( + margin: const EdgeInsets.only(bottom: 12), + color: isExpanded ? const Color(0xFFEDF6F5) : const Color(0xFF425B5B), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + side: const BorderSide(color: Color(0xFF425B5B), width: 1), + ), + child: Theme( + // ✅ removes top & bottom dividers inside ExpansionTile + data: Theme.of(context).copyWith(dividerColor: Colors.transparent), + child: ExpansionTile( + key: ValueKey(index), + collapsedIconColor: isExpanded ? Colors.black : Colors.white, + iconColor: isExpanded ? Colors.black : Colors.white, + initiallyExpanded: isExpanded, + tilePadding: const EdgeInsets.symmetric(horizontal: 16.0), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + collapsedShape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + onExpansionChanged: (expanded) { + setState(() { + expandedIndex = expanded ? index : null; + if (expanded) { + WidgetsBinding.instance.addPostFrameCallback((_) { + RenderBox box = context.findRenderObject() as RenderBox; + double yPos = box.localToGlobal(Offset.zero).dy; + _scrollController.animateTo( + _scrollController.offset + yPos - 100, + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + }); + } + }); + }, + title: Text( + tabs[index].title, + style: GoogleFonts.inter( + fontSize: 14, + color: isExpanded ? Colors.black : Colors.white, + fontWeight: FontWeight.w600, + ), + ), + children: [ + Container( + // padding: const EdgeInsets.all(12), + child: tabs[index].widget, + ), + ], + ), + ), + ); + }, + ); + } + + Widget _buildMobileTabs1({ + required bool shrinkWrap, + required NeverScrollableScrollPhysics physics, + }) { + return ListView.builder( + shrinkWrap: shrinkWrap, // ✅ Important + physics: physics, itemCount: tabs.length, padding: const EdgeInsets.all(16), itemBuilder: (context, index) { @@ -139,6 +362,7 @@ class TabEnquiryListState extends ConsumerState { collapsedIconColor: isExpanded ? Colors.black : Colors.white, iconColor: isExpanded ? Colors.black : Colors.white, initiallyExpanded: isExpanded, + onExpansionChanged: (expanded) { setState(() { if (expanded) { @@ -163,10 +387,12 @@ class TabEnquiryListState extends ConsumerState { title: Text( tabs[index].title, style: GoogleFonts.inter( + fontSize: 14, color: isExpanded ? Colors.black : Colors.white, fontWeight: FontWeight.w600, ), ), + children: [ Container( // padding: const EdgeInsets.all(12), diff --git a/lib/presentation/screens/Enquiry/enquiryList.dart b/lib/presentation/screens/Enquiry/enquiryList.dart index 5d22865..682dd70 100644 --- a/lib/presentation/screens/Enquiry/enquiryList.dart +++ b/lib/presentation/screens/Enquiry/enquiryList.dart @@ -2,9 +2,11 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; +import 'package:google_fonts/google_fonts.dart'; import 'package:http/http.dart'; import 'package:intl/intl.dart'; import 'package:nhance_partner/presentation/providers/userRoleProvider.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import '../../../../core/routing/routes.dart'; import '../../../../core/services/api_service.dart'; import '../../../../data/utils/Pagination.dart'; @@ -100,6 +102,29 @@ class EnquiryListState extends ConsumerState { return sortedData.sublist(startIndex, endIndex); } + Future handleEdit(item) async { + // Navigator.pop(context); + print('EDITStaff - ${item['id']}'); + // dynamic id = data['id']; + // context.go('/tabEnquiry/$id'); + + final prefs = await SharedPreferences.getInstance(); + + // ✅ Remove old value (if any) + await prefs.remove('enqAgentDataId'); + + // setState(() { + final id = item['id'].toString(); + // ✅ Save the new id + await prefs.setString('enqAgentDataId', id.toString()); + ref.read(enquiryIdProvider.notifier).state = id; + + // }); + // update provider + + context.go(AppRoutes.tabEnquiry); + } + void filterData(String query) { print("FilterDAta - $query"); setState(() { @@ -186,13 +211,13 @@ class EnquiryListState extends ConsumerState { children: [ Icon( Icons.arrow_left_sharp, - size: 35, + size: ResponsiveLayout.isMobile(context) ? 25 : 35, color: Color(0xFF425B5B), ), Text( "Enquiries", - style: TextStyle( - fontSize: 18, + style: GoogleFonts.inter( + fontSize: ResponsiveLayout.isMobile(context) ? 14 : 18, fontWeight: FontWeight.w600, ), ), @@ -201,7 +226,7 @@ class EnquiryListState extends ConsumerState { ), ), - SizedBox(height: 10), + SizedBox(height: ResponsiveLayout.isMobile(context) ? 5 : 10), Expanded( child: Container( @@ -250,8 +275,10 @@ class EnquiryListState extends ConsumerState { SizedBox(width: 10), GestureDetector( - onTap: () { - ref.read(enquiryIdProvider.notifier).state = null; + onTap: () async { + final prefs = await SharedPreferences.getInstance(); + + await prefs.remove('enqAgentDataId'); context.go(AppRoutes.tabEnquiry); // print('Export'); }, @@ -270,7 +297,7 @@ class EnquiryListState extends ConsumerState { SizedBox(width: 10), Text( 'Create New Enquiry', - style: TextStyle( + style: GoogleFonts.inter( color: Colors.white, fontWeight: FontWeight.w600, fontSize: 14, @@ -288,7 +315,7 @@ class EnquiryListState extends ConsumerState { // }, // child: Text( // 'Create New Enquiry', - // style: TextStyle( + // style: GoogleFonts.inter( // color: Colors.white, // fontWeight: FontWeight.w600, // fontSize: 14, @@ -315,7 +342,7 @@ class EnquiryListState extends ConsumerState { vertical: 12, horizontal: 16, ), - child: const Row( + child: Row( children: [ Expanded( flex: 1, @@ -341,7 +368,7 @@ class EnquiryListState extends ConsumerState { child: Text('Status', style: _headerStyle), ), Expanded( - flex: 1, + flex: 2, child: Text('Remarks', style: _headerStyle), ), Expanded( @@ -423,7 +450,7 @@ class EnquiryListState extends ConsumerState { Widget _buildDataRow(Map item, sno) { return Container( - padding: const EdgeInsets.symmetric(vertical: 6, horizontal: 16), + padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), // margin: const EdgeInsets.only(top: 10), decoration: BoxDecoration( color: Colors.white, @@ -462,7 +489,7 @@ class EnquiryListState extends ConsumerState { child: Text(item['status'] ?? '-', style: _dataBold), ), Expanded( - flex: 1, + flex: 2, child: Text( item['remarks'] ?? '-', style: _dataBold, @@ -473,36 +500,70 @@ class EnquiryListState extends ConsumerState { Expanded( flex: 1, - child: Row( - children: [ - PopupMenuButton( - color: Colors.white, - padding: EdgeInsets.zero, - offset: Offset(0, 30), - icon: Icon( - Icons.more_vert, - color: Color(0xFF475569), - size: 14, - ), - itemBuilder: (context) => [ - CustomPopupMenuEntry( - child: Container( - padding: EdgeInsets.symmetric( - horizontal: 8, - vertical: 8, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: _buildPopupMenuActions(context, item), - ), - ), + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Row( + children: [ + GestureDetector( + // onTap: () { + // Navigator.pop(context); + // print('EDITStaff - ${item['id']}'); + // // dynamic id = data['id']; + // // context.go('/tabEnquiry/$id'); + // setState(() { + // final id = item['id'].toString(); + // ref.read(enquiryIdProvider.notifier).state = id; + // }); + // // update provider + // + // context.go(AppRoutes.tabEnquiry); + // }, + onTap: () { + handleEdit(item); + }, + child: Image.asset( + "assets/miscellaneous/Edit.png", + height: 15, + width: 15, ), - ], - ), - ], + ), + ], + ), ), ), + + // Expanded( + // flex: 1, + // child: Row( + // children: [ + // PopupMenuButton( + // color: Colors.white, + // padding: EdgeInsets.zero, + // offset: Offset(0, 30), + // icon: Icon( + // Icons.more_vert, + // color: Color(0xFF475569), + // size: 14, + // ), + // itemBuilder: (context) => [ + // CustomPopupMenuEntry( + // child: Container( + // padding: EdgeInsets.symmetric( + // horizontal: 8, + // vertical: 8, + // ), + // child: Column( + // mainAxisSize: MainAxisSize.min, + // mainAxisAlignment: MainAxisAlignment.center, + // children: _buildPopupMenuActions(context, item), + // ), + // ), + // ), + // ], + // ), + // ], + // ), + // ), ], ), ); @@ -524,24 +585,47 @@ class EnquiryListState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Text(item['reg_no'] ?? '-', style: _headerStyle), - PopupMenuButton( - color: Colors.white, - padding: EdgeInsets.zero, - offset: Offset(0, 30), - icon: Icon(Icons.more_vert, color: Color(0xFF475569), size: 14), - itemBuilder: (context) => [ - CustomPopupMenuEntry( - child: Container( - padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: _buildPopupMenuActions(context, item), - ), - ), - ), - ], + GestureDetector( + // onTap: () { + // Navigator.pop(context); + // print('EDITStaff - ${item['id']}'); + // // dynamic id = data['id']; + // // context.go('/tabEnquiry/$id'); + // setState(() { + // final id = item['id'].toString(); + // ref.read(enquiryIdProvider.notifier).state = id; + // }); + // // update provider + // + // context.go(AppRoutes.tabEnquiry); + // }, + onTap: () { + handleEdit(item); + }, + child: Image.asset( + "assets/miscellaneous/Edit.png", + height: 15, + width: 15, + ), ), + // PopupMenuButton( + // color: Colors.white, + // padding: EdgeInsets.zero, + // offset: Offset(0, 30), + // icon: Icon(Icons.more_vert, color: Color(0xFF475569), size: 14), + // itemBuilder: (context) => [ + // CustomPopupMenuEntry( + // child: Container( + // padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), + // child: Column( + // mainAxisSize: MainAxisSize.min, + // mainAxisAlignment: MainAxisAlignment.center, + // children: _buildPopupMenuActions(context, item), + // ), + // ), + // ), + // ], + // ), ], ), const Divider(color: Color(0xffD9EBE8), thickness: 0.8), @@ -557,7 +641,7 @@ class EnquiryListState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.start, children: [ - const Text("Company", style: _cardheaderStyle), + Text("Company", style: _cardheaderStyle), Text( item['insurer_name'] ?? '-', style: _cardBodyStyle, @@ -573,7 +657,7 @@ class EnquiryListState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start, children: [ - const Text("Status", style: _cardheaderStyle), + Text("Status", style: _cardheaderStyle), Text( item['status'] ?? '-', style: _cardBodyStyle, @@ -595,7 +679,7 @@ class EnquiryListState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Received Date & Time", style: _cardheaderStyle), + Text("Received Date & Time", style: _cardheaderStyle), Text( _formatDate(item['created_on']) ?? '-', style: _cardBodyStyle, @@ -608,7 +692,7 @@ class EnquiryListState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Remarks", style: _cardheaderStyle), + Text("Remarks", style: _cardheaderStyle), Text( item['remarks'] ?? '-', style: _cardBodyStyle, @@ -625,30 +709,34 @@ class EnquiryListState extends ConsumerState { ); } - static final _dataBold = TextStyle( + static final _dataBold = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); - static final _dataSub = TextStyle( + static final _dataSub = GoogleFonts.inter( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); - static const _headerStyle = TextStyle( + // static const _headerStyle = GoogleFonts.inter( + // color: Colors.black, + // fontWeight: FontWeight.bold, + // ); + static final _headerStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.bold, ); - static const _cardheaderStyle = TextStyle( + static final _cardheaderStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 12, ); - static const _cardBodyStyle = TextStyle( + static final _cardBodyStyle = GoogleFonts.inter( color: Color(0xFF545454), fontWeight: FontWeight.w400, fontSize: 12, diff --git a/lib/presentation/screens/Enquiry/policy_claims_endros/claims.dart b/lib/presentation/screens/Enquiry/policy_claims_endros/claims.dart index 0e4be99..6cf08d6 100644 --- a/lib/presentation/screens/Enquiry/policy_claims_endros/claims.dart +++ b/lib/presentation/screens/Enquiry/policy_claims_endros/claims.dart @@ -2,6 +2,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; +import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; import 'package:nhance_partner/presentation/providers/userRoleProvider.dart'; import '../../../../core/routing/routes.dart'; @@ -188,7 +189,7 @@ class claimListState extends ConsumerState { ), Text( "Claims", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 18, fontWeight: FontWeight.w600, ), @@ -271,7 +272,7 @@ class claimListState extends ConsumerState { // }, // child: Text( // 'Create New Staff', - // style: TextStyle( + // style: GoogleFonts.inter( // color: Colors.white, // fontWeight: FontWeight.w600, // fontSize: 14, @@ -297,7 +298,7 @@ class claimListState extends ConsumerState { vertical: 12, horizontal: 16, ), - child: const Row( + child: Row( children: [ Expanded( flex: 2, @@ -556,7 +557,7 @@ class claimListState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.start, children: [ //company - const Text("Company", style: _cardheaderStyle), + Text("Company", style: _cardheaderStyle), Text( item['policy_end_date'] != null ? _formatDate(item['policy_end_date']) @@ -575,7 +576,7 @@ class claimListState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.start, children: [ //status - const Text("Claim Type", style: _cardheaderStyle), + Text("Claim Type", style: _cardheaderStyle), Text( item['claim_type_value'] ?? '-', style: _cardBodyStyle, @@ -598,7 +599,7 @@ class claimListState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, children: [ //date and time - const Text("policy Number", style: _cardheaderStyle), + Text("policy Number", style: _cardheaderStyle), Text(item['policy_no'] ?? '-', style: _cardBodyStyle), ], ), @@ -609,7 +610,7 @@ class claimListState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, children: [ //remarks - const Text("Claim Number", style: _cardheaderStyle), + Text("Claim Number", style: _cardheaderStyle), Text( item['claim_number'] ?? '-', style: _cardBodyStyle, @@ -626,31 +627,31 @@ class claimListState extends ConsumerState { ); } - static final _dataBold = TextStyle( + static final _dataBold = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); - static final _dataSub = TextStyle( + static final _dataSub = GoogleFonts.inter( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); - static const _headerStyle = TextStyle( + static final _headerStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.bold, ); - static const _cardheaderStyle = TextStyle( + static final _cardheaderStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 12, ); - static const _cardBodyStyle = TextStyle( - color: Color(0xFF545454), + static final _cardBodyStyle = GoogleFonts.inter( + color: const Color(0xFF545454), fontWeight: FontWeight.w400, fontSize: 12, ); diff --git a/lib/presentation/screens/Enquiry/policy_claims_endros/endrosment.dart b/lib/presentation/screens/Enquiry/policy_claims_endros/endrosment.dart index 3921832..8f5368f 100644 --- a/lib/presentation/screens/Enquiry/policy_claims_endros/endrosment.dart +++ b/lib/presentation/screens/Enquiry/policy_claims_endros/endrosment.dart @@ -2,6 +2,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; +import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; import 'package:nhance_partner/presentation/providers/userRoleProvider.dart'; import '../../../../core/routing/routes.dart'; @@ -185,7 +186,7 @@ class endosementState extends ConsumerState { ), Text( "Endorsement", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 18, fontWeight: FontWeight.w600, ), @@ -267,7 +268,7 @@ class endosementState extends ConsumerState { // }, // child: Text( // 'Create New Staff', - // style: TextStyle( + // style: GoogleFonts.inter( // color: Colors.white, // fontWeight: FontWeight.w600, // fontSize: 14, @@ -293,7 +294,7 @@ class endosementState extends ConsumerState { vertical: 12, horizontal: 16, ), - child: const Row( + child: Row( children: [ Expanded( flex: 2, @@ -535,7 +536,7 @@ class endosementState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.start, children: [ //company - const Text("Company", style: _cardheaderStyle), + Text("Company", style: _cardheaderStyle), Text( item['insurer_name'] ?? '-', style: _cardBodyStyle, @@ -552,7 +553,7 @@ class endosementState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.start, children: [ //status - const Text("Endorsement Type", style: _cardheaderStyle), + Text("Endorsement Type", style: _cardheaderStyle), Text( item['endorsement_type_value'] ?? '-', style: _cardBodyStyle, @@ -575,7 +576,7 @@ class endosementState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, children: [ //date and time - const Text("policy Number", style: _cardheaderStyle), + Text("policy Number", style: _cardheaderStyle), Text( _formatDate(item['policy_number']) ?? '-', style: _cardBodyStyle, @@ -589,7 +590,7 @@ class endosementState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, children: [ //remarks - const Text("Endorsement Number", style: _cardheaderStyle), + Text("Endorsement Number", style: _cardheaderStyle), Text( item['endorsement_no'] ?? '-', style: _cardBodyStyle, @@ -606,31 +607,31 @@ class endosementState extends ConsumerState { ); } - static final _dataBold = TextStyle( + static final _dataBold = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); - static final _dataSub = TextStyle( + static final _dataSub = GoogleFonts.inter( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); - static const _headerStyle = TextStyle( + static final _headerStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.bold, ); - static const _cardheaderStyle = TextStyle( + static final _cardheaderStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 12, ); - static const _cardBodyStyle = TextStyle( - color: Color(0xFF545454), + static final _cardBodyStyle = GoogleFonts.inter( + color: const Color(0xFF545454), fontWeight: FontWeight.w400, fontSize: 12, ); diff --git a/lib/presentation/screens/dashboard/dashboard.dart b/lib/presentation/screens/dashboard/dashboard.dart index af9c90d..1e33e2f 100644 --- a/lib/presentation/screens/dashboard/dashboard.dart +++ b/lib/presentation/screens/dashboard/dashboard.dart @@ -180,6 +180,7 @@ class _DashboardScreenState extends ConsumerState { ? Expanded( // ✅ take available space child: SingleChildScrollView( + scrollDirection: Axis.vertical, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -236,12 +237,16 @@ class _DashboardScreenState extends ConsumerState { color: const Color(0xFF425B5B), borderRadius: BorderRadius.circular(25), ), - padding: const EdgeInsets.all(8), + padding: const EdgeInsets.all(6), child: Row( children: [ - buildTab("Enquiries Pending", 0), + Expanded( + child: buildTab("Enquiries Pending", 0), + ), const SizedBox(width: 10), - buildTab("Quotation Pending", 1), + Expanded( + child: buildTab("Quotation Pending", 1), + ), ], ), ), @@ -302,108 +307,224 @@ class _DashboardScreenState extends ConsumerState { ), ), ) - : Expanded( - child: Column( - children: [ - if (role != 'staff') - Row( - children: [ - Expanded( - child: StatCard( - title: "Policies Issued", - today: policiesIssuedToday ?? '', - month: policiesIssuedMonth ?? '', - year: policiesIssuedYear ?? '', - imagePath: "assets/dashboard/Policy issue icon.png", - ), - ), - SizedBox(width: 16), - Expanded( - child: StatCard( - title: "Premium Value", - today: premiumValueToday ?? '', - month: premiumValueMonth ?? '', - year: premiumValueYear ?? '', - imagePath: "assets/dashboard/Premium value.png", - ), - ), - SizedBox(width: 16), - Expanded( - child: StatCard( - title: "Earnings", - today: earningsToday ?? '', - month: earningsMonth ?? '', - year: earningsYear ?? '', - imagePath: "assets/dashboard/Earnings.png", - ), - ), - ], - ), - if (role == 'manager') - Expanded( - child: Row( + : Container( + height: MediaQuery.of(context).size.height * 0.8, + child: SingleChildScrollView( + scrollDirection: Axis.vertical, + child: Column( + children: [ + if (role != 'staff') + Row( children: [ Expanded( - child: Performance( - title: "Top Agent Performance", - data: agentsPerformanceList, + child: StatCard( + title: "Policies Issued", + today: policiesIssuedToday ?? '', + month: policiesIssuedMonth ?? '', + year: policiesIssuedYear ?? '', + imagePath: + "assets/dashboard/Policy issue icon.png", ), ), SizedBox(width: 16), Expanded( - child: Performance( - title: "Bottom Non-Performing Agents", - data: nonAgentsPerformanceList, + child: StatCard( + title: "Premium Value", + today: premiumValueToday ?? '', + month: premiumValueMonth ?? '', + year: premiumValueYear ?? '', + imagePath: "assets/dashboard/Premium value.png", + ), + ), + SizedBox(width: 16), + Expanded( + child: StatCard( + title: "Earnings", + today: earningsToday ?? '', + month: earningsMonth ?? '', + year: earningsYear ?? '', + imagePath: "assets/dashboard/Earnings.png", ), ), ], ), - ), - const SizedBox(height: 10), - Expanded( - child: Row( - children: [ - Expanded( - child: (role == 'agent') - ? agentPendings( - title: - "Enquiries Pending (${policiesPendingList.length})", - data: policiesPendingList, - ) - : othersPendings( - title: - "Quotations Pending (${quotationsPendingList.length})", - data: quotationsPendingList, - stringFlag: "Quotation", - ), + if (role == 'manager') + SizedBox( + // ✅ replace Expanded + height: 350, // adjust height as needed + child: Row( + children: [ + Expanded( + child: Performance( + title: "Top Agent Performance", + data: agentsPerformanceList, + ), + ), + SizedBox(width: 16), + Expanded( + child: Performance( + title: "Bottom Non-Performing Agents", + data: nonAgentsPerformanceList, + ), + ), + ], ), - const SizedBox(width: 16), - Expanded( - child: (role == 'agent') - ? agentPendings( - title: - "Quotations Pending (${quotationsPendingList.length})", - data: quotationsPendingList, - ) - : othersPendings( - title: - "Policies Pending (${policiesPendingList.length})", - data: policiesPendingList, - stringFlag: "Policies", - ), - // child: - // quotationsPendingList.isEmpty ? Center(child: Text("Loading quotations...")) : - // agentPendings( - // title: "Quotations Pending (${quotationsPendingList.length})", - // data: quotationsPendingList, - // ), - ), - ], + ), + const SizedBox(height: 10), + SizedBox( + // ✅ replace Expanded + height: (role == 'agent') + ? MediaQuery.of(context).size.height * + 0.69 //400 + : MediaQuery.of(context).size.height * + 0.5, // 350 adjust height as needed + child: Row( + children: [ + Expanded( + child: (role == 'agent') + ? agentPendings( + title: + "Enquiries Pending (${policiesPendingList.length})", + data: policiesPendingList, + ) + : othersPendings( + title: + "Quotations Pending (${quotationsPendingList.length})", + data: quotationsPendingList, + stringFlag: "Quotation", + ), + ), + const SizedBox(width: 16), + Expanded( + child: (role == 'agent') + ? agentPendings( + title: + "Quotations Pending (${quotationsPendingList.length})", + data: quotationsPendingList, + ) + : othersPendings( + title: + "Policies Pending (${policiesPendingList.length})", + data: policiesPendingList, + stringFlag: "Policies", + ), + ), + ], + ), ), - ), - ], + ], + ), ), ), + + // Expanded( + // child: + // + // SingleChildScrollView( + // scrollDirection: Axis.vertical, + // child: Column( + // children: [ + // if (role != 'staff') + // Row( + // children: [ + // Expanded( + // child: StatCard( + // title: "Policies Issued", + // today: policiesIssuedToday ?? '', + // month: policiesIssuedMonth ?? '', + // year: policiesIssuedYear ?? '', + // imagePath: + // "assets/dashboard/Policy issue icon.png", + // ), + // ), + // SizedBox(width: 16), + // Expanded( + // child: StatCard( + // title: "Premium Value", + // today: premiumValueToday ?? '', + // month: premiumValueMonth ?? '', + // year: premiumValueYear ?? '', + // imagePath: "assets/dashboard/Premium value.png", + // ), + // ), + // SizedBox(width: 16), + // Expanded( + // child: StatCard( + // title: "Earnings", + // today: earningsToday ?? '', + // month: earningsMonth ?? '', + // year: earningsYear ?? '', + // imagePath: "assets/dashboard/Earnings.png", + // ), + // ), + // ], + // ), + // if (role == 'manager') + // Expanded( + // child: Row( + // children: [ + // Expanded( + // child: Performance( + // title: "Top Agent Performance", + // data: agentsPerformanceList, + // ), + // ), + // SizedBox(width: 16), + // Expanded( + // child: Performance( + // title: "Bottom Non-Performing Agents", + // data: nonAgentsPerformanceList, + // ), + // ), + // ], + // ), + // ), + // const SizedBox(height: 10), + // Expanded( + // child: Row( + // children: [ + // Expanded( + // child: (role == 'agent') + // ? agentPendings( + // title: + // "Enquiries Pending (${policiesPendingList.length})", + // data: policiesPendingList, + // ) + // : othersPendings( + // title: + // "Quotations Pending (${quotationsPendingList.length})", + // data: quotationsPendingList, + // stringFlag: "Quotation", + // ), + // ), + // const SizedBox(width: 16), + // Expanded( + // child: (role == 'agent') + // ? agentPendings( + // title: + // "Quotations Pending (${quotationsPendingList.length})", + // data: quotationsPendingList, + // ) + // : othersPendings( + // title: + // "Policies Pending (${policiesPendingList.length})", + // data: policiesPendingList, + // stringFlag: "Policies", + // ), + // // child: + // // quotationsPendingList.isEmpty ? Center(child: Text("Loading quotations...")) : + // // agentPendings( + // // title: "Quotations Pending (${quotationsPendingList.length})", + // // data: quotationsPendingList, + // // ), + // ), + // ], + // ), + // ), + // ], + // ), + // ), + // ), ); } @@ -422,22 +543,22 @@ class _DashboardScreenState extends ConsumerState { }, child: SizedBox( child: Container( - padding: EdgeInsets.only( - top: 9.0, - bottom: 9.0, - left: 20.0, - right: 20.0, - ), + padding: EdgeInsets.symmetric(vertical: 6, horizontal: 10), decoration: BoxDecoration( color: isSelected ? const Color(0xFFFFFFFF) : Colors.transparent, borderRadius: BorderRadius.circular(16), ), - child: Text( - title, - style: GoogleFonts.poppins( - fontSize: 12, - color: isSelected ? Colors.black : Colors.white, - fontWeight: FontWeight.w500, + child: Center( + child: Text( + title, + style: GoogleFonts.poppins( + fontSize: 12, + + color: isSelected ? Colors.black : Colors.white, + fontWeight: FontWeight.w500, + ), + maxLines: 2, + softWrap: true, ), ), ), @@ -483,7 +604,7 @@ class StatCard extends StatelessWidget { title, style: GoogleFonts.inter( fontSize: 16, - fontWeight: FontWeight.w600, + fontWeight: FontWeight.w700, color: Color(0xFF425B5B), ), ), @@ -533,21 +654,21 @@ class StatCard extends StatelessWidget { child: Text( "Today", textAlign: TextAlign.center, - style: GoogleFonts.inter(fontSize: 12), + style: topHeaderStyle, ), ), Expanded( child: Text( "This Month", textAlign: TextAlign.center, - style: GoogleFonts.inter(fontSize: 12), + style: topHeaderStyle, ), ), Expanded( child: Text( "This Year", textAlign: TextAlign.center, - style: GoogleFonts.inter(fontSize: 12), + style: topHeaderStyle, ), ), ], @@ -731,19 +852,12 @@ class agentPendings extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ // Title - Text( - title, - style: GoogleFonts.inter( - fontWeight: FontWeight.bold, - fontSize: 20, - color: const Color(0xff425B5B), - ), - ), - const SizedBox(height: 20), + Text(title, style: _title), + const SizedBox(height: 10), // Header row Container( - padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), decoration: BoxDecoration( color: const Color(0xFF3E5B56), borderRadius: BorderRadius.circular(10), @@ -754,33 +868,21 @@ class agentPendings extends StatelessWidget { child: Text( "Date & Time", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( child: Text( "Registration number", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( child: Text( "Insurer Company", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), ], @@ -827,20 +929,8 @@ class agentPendings extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text( - date, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), - ), - Text( - time, - style: GoogleFonts.inter( - fontSize: 10, - fontWeight: FontWeight.w400, - ), - ), + Text(date, style: _tableDataStyle), + Text(time, style: _tableDataStyle), ], ), ), @@ -850,10 +940,7 @@ class agentPendings extends StatelessWidget { child: Text( row['reg_no'] ?? "", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), @@ -862,10 +949,7 @@ class agentPendings extends StatelessWidget { child: Text( row['insurer_name'] ?? "", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), ], @@ -907,19 +991,12 @@ class othersPendings extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ // Title - Text( - title, - style: GoogleFonts.inter( - fontWeight: FontWeight.bold, - fontSize: 20, - color: const Color(0xff425B5B), - ), - ), - const SizedBox(height: 20), + Text(title, style: _title), + const SizedBox(height: 10), // Header row Container( - padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), decoration: BoxDecoration( color: const Color(0xFF3E5B56), borderRadius: BorderRadius.circular(10), @@ -927,48 +1004,36 @@ class othersPendings extends StatelessWidget { child: Row( children: [ Expanded( + flex: 1, child: Text( "S.No", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( + flex: 2, child: Text( "Staff Name", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( + flex: 2, child: Text( stringFlag + " Issued", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), (stringFlag == "Policies") ? Expanded( + flex: 2, child: Text( "Total Premium Value", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ) : const SizedBox.shrink(), @@ -1005,43 +1070,38 @@ class othersPendings extends StatelessWidget { child: Row( children: [ Expanded( + flex: 1, child: Text( (index + 1).toString(), textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), Expanded( + flex: 2, child: Text( row['staff_name'] ?? "", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), Expanded( + flex: 2, child: Text( issuedCount, textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), stringFlag == "Policies" ? Expanded( + flex: 2, child: Text( formatToCroresLakhsAndThousands(permiumValue), textAlign: TextAlign.center, style: GoogleFonts.inter( - fontSize: 16, + fontSize: 14, fontWeight: FontWeight.w500, ), ), @@ -1079,19 +1139,12 @@ class Performance extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ // Title - Text( - title, - style: GoogleFonts.inter( - fontWeight: FontWeight.bold, - fontSize: 20, - color: const Color(0xff425B5B), - ), - ), - const SizedBox(height: 20), + Text(title, style: _title), + const SizedBox(height: 10), // Header row Container( - padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), decoration: BoxDecoration( color: const Color(0xFF3E5B56), borderRadius: BorderRadius.circular(10), @@ -1102,33 +1155,21 @@ class Performance extends StatelessWidget { child: Text( "S.No", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( child: Text( "Agent Name", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( child: Text( "Policies Issued", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), Expanded( @@ -1137,11 +1178,7 @@ class Performance extends StatelessWidget { ? "Premium Value" : "Status", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontWeight: FontWeight.w600, - fontSize: 18, - color: Colors.white, - ), + style: _headerStyle, ), ), ], @@ -1157,6 +1194,7 @@ class Performance extends StatelessWidget { final row = data[index]; return Container( + // height: 5200, margin: const EdgeInsets.symmetric(vertical: 5), padding: const EdgeInsets.symmetric( vertical: 5, @@ -1172,10 +1210,7 @@ class Performance extends StatelessWidget { child: Text( (index + 1).toString(), // convert int to string textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), @@ -1183,10 +1218,7 @@ class Performance extends StatelessWidget { child: Text( row['agent_name'] ?? "", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), @@ -1194,10 +1226,7 @@ class Performance extends StatelessWidget { child: Text( row['total_policy_issued'] ?? "", textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - fontWeight: FontWeight.w500, - ), + style: _tableDataStyle, ), ), @@ -1210,7 +1239,7 @@ class Performance extends StatelessWidget { : (row['status']?.toString() ?? ""), textAlign: TextAlign.center, style: GoogleFonts.inter( - fontSize: 16, + fontSize: 14, fontWeight: FontWeight.w500, color: title == "Top Agent Performance" ? Colors.black @@ -1233,3 +1262,27 @@ class Performance extends StatelessWidget { ); } } + +final _headerStyle = GoogleFonts.inter( + fontWeight: FontWeight.w600, + fontSize: 14, + color: Colors.white, +); + +final _title = GoogleFonts.inter( + fontWeight: FontWeight.bold, + fontSize: 16, + // color: Colors.red, + color: const Color(0xff425B5B), +); + +final _tableDataStyle = GoogleFonts.inter( + fontSize: 14, + fontWeight: FontWeight.w500, +); + +final topHeaderStyle = GoogleFonts.inter( + fontSize: 12, + color: Colors.black, + fontWeight: FontWeight.w500, +); diff --git a/lib/presentation/screens/login/login_screen.dart b/lib/presentation/screens/login/login_screen.dart index 8e46963..1a30e42 100644 --- a/lib/presentation/screens/login/login_screen.dart +++ b/lib/presentation/screens/login/login_screen.dart @@ -2,6 +2,8 @@ import 'dart:convert'; import 'dart:io'; import 'package:firebase_auth/firebase_auth.dart'; +import 'package:firebase_messaging/firebase_messaging.dart'; +import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:go_router/go_router.dart'; @@ -46,6 +48,7 @@ class _LoginScreenState extends ConsumerState { bool enteredEmailOrMobile = false; dynamic clickedButtonName; dynamic token; + dynamic fCMToken; // Future _handleLogin() async { // if (!_formKey.currentState!.validate()) return; @@ -104,6 +107,20 @@ class _LoginScreenState extends ConsumerState { _countryController.text = "+91"; } + Future initNotification() async { + try { + // await _firebaseMessaging.requestPermission(); + fCMToken = await FirebaseMessaging.instance.getToken(); + print('Token : $fCMToken'); + + if (fCMToken != null) { + // await sendDeviceToken(fCMToken); + } + } catch (e) { + print("Error getting FCM Token: $e"); + } + } + Future _saveUserRole(String token) async { final prefs = await SharedPreferences.getInstance(); final decodedToken = Jwt.parseJwt(token); @@ -747,41 +764,41 @@ class _LoginScreenState extends ConsumerState { child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - const SizedBox(height: 30), + const SizedBox(height: 15), Image.asset( "assets/login/nhance-partner-logo.png", - height: 45, + height: 35, ), - const SizedBox(height: 30), + const SizedBox(height: 10), Text( "Welcome Back", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 24, fontWeight: FontWeight.w600, color: Color(0xFF425C5C), ), ), - const SizedBox(height: 20), - Image.asset("assets/login/login-content.png", height: 180), const SizedBox(height: 10), + Image.asset("assets/login/login-content.png", height: 120), + // const SizedBox(height: 10), Container( - padding: EdgeInsets.symmetric(vertical: 20, horizontal: 50), + padding: EdgeInsets.symmetric(vertical: 10, horizontal: 50), child: Text( - '${'"'}Manage vsdv your policies, track quotations, and grow your business all in one place.${'"'}', + '${'"'}Manage your policies, track quotations, and grow your business all in one place.${'"'}', textAlign: TextAlign.center, style: TextStyle( - fontSize: 11, + fontSize: 14, color: Color(0xFF000000), fontWeight: FontWeight.w500, ), ), ), - const SizedBox(height: 20), + const SizedBox(height: 10), Container( width: double.infinity, - height: MediaQuery.of( - context, - ).size.height, // full screen height + height: + MediaQuery.of(context).size.height * + 0.8, // full screen height padding: const EdgeInsets.all(20), decoration: const BoxDecoration( gradient: LinearGradient( @@ -816,7 +833,7 @@ class _LoginScreenState extends ConsumerState { Text( "Login to your account", style: TextStyle( - fontSize: ResponsiveLayout.isMobile(context) ? 28 : 35, + fontSize: ResponsiveLayout.isMobile(context) ? 20 : 35, fontWeight: FontWeight.w600, color: Colors.white, ), @@ -826,7 +843,7 @@ class _LoginScreenState extends ConsumerState { "Enter your email or mobile number to receive a one time password.", textAlign: TextAlign.center, style: TextStyle( - fontSize: ResponsiveLayout.isMobile(context) ? 14 : 18, + fontSize: ResponsiveLayout.isMobile(context) ? 12 : 18, color: Colors.white, fontWeight: FontWeight.w600, ), @@ -1129,19 +1146,22 @@ class _LoginScreenState extends ConsumerState { crossAxisAlignment: CrossAxisAlignment.start, children: [ Container( - child: Text( - 'OTP', - style: TextStyle( - fontSize: ResponsiveLayout.isMobile(context) - ? 14 - : 18, - fontWeight: FontWeight.w600, - color: Colors.white, + child: Center( + child: Text( + 'OTP', + style: TextStyle( + fontSize: ResponsiveLayout.isMobile(context) + ? 14 + : 18, + fontWeight: FontWeight.w600, + color: Colors.white, + ), ), ), ), const SizedBox(height: 10), Container( + alignment: Alignment.center, child: Pinput( length: 6, defaultPinTheme: defaultPinTheme, @@ -1191,49 +1211,104 @@ class _LoginScreenState extends ConsumerState { ), ), const SizedBox(height: 20), - SizedBox( - width: 400, - child: CommonButton( - text: "Continue", - backgroundColor: Color(0xFF436462), - onPressed: () async { - if (switcherStatus == 1) { - await verifyFirebaseMobileOTP(); - } else { - await verifyMobileOrMailOTP( - _otpController.text, - ); - } - }, + Container( + alignment: Alignment.center, // center the text + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + text: 'Didn’t Receive Code? ', // normal text + style: TextStyle( + fontSize: ResponsiveLayout.isMobile(context) + ? 12 + : 14, + fontWeight: FontWeight.normal, + color: Colors.white, + ), + children: [ + TextSpan( + text: 'Resend', // bold clickable part + style: TextStyle( + fontWeight: FontWeight.bold, + color: Colors.white, + decoration: TextDecoration + .underline, // optional + ), + recognizer: TapGestureRecognizer() + ..onTap = () { + print('Resend clicked'); + print(enteredEmailOrMobile); + print(clickedButtonName); + if (_PhoneNumberController + .text + .isNotEmpty) { + print('1224'); + _resendCode( + _PhoneNumberController.text, + _resendToken, + ); + } else if (_PhoneNumberController + .text + .isEmpty) { + print('1227'); + sendMobileOrEmailVerify( + clickedButtonName, + ); + } else { + print('data not found'); + } + }, + ), + ], + ), + ), + ), + const SizedBox(height: 20), + + Center( + child: SizedBox( + width: 400, + child: CommonButton( + text: "Continue", + backgroundColor: Color(0xFF436462), + onPressed: () async { + if (switcherStatus == 1) { + await verifyFirebaseMobileOTP(); + } else { + await verifyMobileOrMailOTP( + _otpController.text, + ); + } + }, + ), + // ElevatedButton( + // style: ElevatedButton.styleFrom( + // backgroundColor: const Color(0xFF436462), + // padding: const EdgeInsets.symmetric( + // vertical: 16, + // ), + // shape: RoundedRectangleBorder( + // borderRadius: BorderRadius.circular(8), + // ), + // ), + // onPressed: () { + // if (switcherStatus == 1) { + // verifyFirebaseMobileOTP(); + // } else { + // verifyMobileOrMailOTP(_otpController.text); + // } + // }, + // child: Text( + // 'Continue', + // style: TextStyle( + // fontSize: ResponsiveLayout.isMobile(context) + // ? 18 + // : 20, + // fontWeight: FontWeight.w600, + // color: Colors.white, + // ), + // ), + // ), ), - // ElevatedButton( - // style: ElevatedButton.styleFrom( - // backgroundColor: const Color(0xFF436462), - // padding: const EdgeInsets.symmetric( - // vertical: 16, - // ), - // shape: RoundedRectangleBorder( - // borderRadius: BorderRadius.circular(8), - // ), - // ), - // onPressed: () { - // if (switcherStatus == 1) { - // verifyFirebaseMobileOTP(); - // } else { - // verifyMobileOrMailOTP(_otpController.text); - // } - // }, - // child: Text( - // 'Continue', - // style: TextStyle( - // fontSize: ResponsiveLayout.isMobile(context) - // ? 18 - // : 20, - // fontWeight: FontWeight.w600, - // color: Colors.white, - // ), - // ), - // ), ), ], ) @@ -1258,12 +1333,16 @@ class _LoginScreenState extends ConsumerState { _PhoneNumberController.text = ''; _emailController.text = ''; _otpController.text = ''; + _PhoneNumberController.clear(); + _emailController.clear(); + _otpController.clear(); if (selectedIndex == 2) { switcherStatus = 0; } else { switcherStatus = 1; } }); + _formKey.currentState?.reset(); }, child: Container( padding: EdgeInsets.only( diff --git a/lib/presentation/screens/staff/Enquiry/enquiry_list.dart b/lib/presentation/screens/staff/Enquiry/enquiry_list.dart index 973f379..0f2a518 100644 --- a/lib/presentation/screens/staff/Enquiry/enquiry_list.dart +++ b/lib/presentation/screens/staff/Enquiry/enquiry_list.dart @@ -7,6 +7,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import '../../../../core/config/env.dart'; import '../../../../core/routing/routes.dart'; @@ -236,9 +237,23 @@ class EnquiryStaffState extends ConsumerState { Material( color: Colors.transparent, child: InkWell( - onTap: () { + onTap: () async { Navigator.pop(context); + final prefs = await SharedPreferences.getInstance(); + + // ✅ Remove old value (if any) + await prefs.remove('enqStaffDataId'); + + // ✅ Save the new id + await prefs.setString('enqStaffDataId', id.toString()); + + // Read it back if needed + // final dynamic? enqStaffDataId = prefs.getString('enqStaffDataId'); + + // ✅ Update provider too + // ref.read(quotationStaffIdProvider.notifier).state = enqStaffDataId; ref.read(quotationStaffIdProvider.notifier).state = id; + context.go(AppRoutes.quotation); }, hoverColor: Color(0xFFE3F1F0), @@ -271,8 +286,19 @@ class EnquiryStaffState extends ConsumerState { Material( color: Colors.transparent, child: InkWell( - onTap: () { + onTap: () async { Navigator.pop(context); + + final prefs = await SharedPreferences.getInstance(); + + // ✅ Remove old value (if any) + await prefs.remove('enqStaffDataId'); + + // ✅ Save the new id + await prefs.setString('enqStaffDataId', id.toString()); + + // ✅ Update provider too + ref.read(quotationStaffIdProvider.notifier).state = id; context.go(AppRoutes.policy); }, @@ -372,13 +398,14 @@ class EnquiryStaffState extends ConsumerState { Spacer(), ExportBtn( - sheetName: "Policy", - fileName: "Policy_list", + sheetName: "Enquiry", + fileName: "Enquiry_list", data: filteredData, txt: !ResponsiveLayout.isMobile(context) ? true : false, headers: [ + "updated_on", "reg_no", "agent_name", "assigned_to_name", @@ -386,7 +413,7 @@ class EnquiryStaffState extends ConsumerState { "insured_name", "premium_amount", "payment_mode", - "updated_on", + "policy_number", "status", ], ), @@ -446,7 +473,7 @@ class EnquiryStaffState extends ConsumerState { child: const Row( children: [ Expanded( - flex: 2, + flex: 3, child: Text('Date', style: _headerStyle), ), @@ -467,7 +494,7 @@ class EnquiryStaffState extends ConsumerState { child: Text('Insurer', style: _headerStyle), ), Expanded( - flex: 2, + flex: 3, child: Text('Insured Name', style: _headerStyle), ), Expanded( @@ -579,7 +606,7 @@ class EnquiryStaffState extends ConsumerState { child: Row( children: [ Expanded( - flex: 2, + flex: 3, child: Text( _formatDate(item['updated_on']) ?? '-', style: _dataBold, @@ -613,7 +640,7 @@ class EnquiryStaffState extends ConsumerState { ), ), Expanded( - flex: 2, + flex: 3, child: Text( item['insured_name'] ?? '-', style: _dataBold, diff --git a/lib/presentation/screens/staff/policy/policy.dart b/lib/presentation/screens/staff/policy/policy.dart index ecebd36..a24fa15 100644 --- a/lib/presentation/screens/staff/policy/policy.dart +++ b/lib/presentation/screens/staff/policy/policy.dart @@ -1,4 +1,5 @@ // import 'dart:io' as html; +import 'package:flutter/foundation.dart'; import 'package:http/http.dart' as http; import 'package:dropdown_search/dropdown_search.dart'; import 'package:flutter/cupertino.dart'; @@ -7,6 +8,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import '../../../../core/config/env.dart'; import '../../../../core/routing/routes.dart'; @@ -149,6 +151,10 @@ class PolicyScreenState extends ConsumerState { // getQuotationList(managerId); // }); + if (kIsWeb) { + Future.microtask(() => _restoreManagerId(ref)); + } + Future.microtask(() { managerId = ref.read(managerIdProvider); // ✅ use read userId = ref.read(userIdProvider); // ✅ use read @@ -162,6 +168,20 @@ class PolicyScreenState extends ConsumerState { }); } + Future _restoreManagerId(WidgetRef ref) async { + final prefs = await SharedPreferences.getInstance(); + + final String? savedId = prefs.getString( + 'enqStaffDataId', + ); // already a string + if (savedId != null) { + ref.read(quotationStaffIdProvider.notifier).state = savedId; + print("savedenqStaffDataId ID restored: $savedId"); + + _loadData(savedId); + } + } + @override void dispose() { // Dispose all TextEditingControllers @@ -510,7 +530,7 @@ class PolicyScreenState extends ConsumerState { width: MediaQuery.of(context).size.width, child: GestureDetector( onTap: () { - context.go(AppRoutes.policylist); + context.go(AppRoutes.enquiryForStaff); }, child: Row( crossAxisAlignment: CrossAxisAlignment.center, @@ -1215,12 +1235,13 @@ class PolicyScreenState extends ConsumerState { Widget buildUploadPolicyPdf(BuildContext context) { return Column( crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.start, children: [ Text('Upload Policy PDF * ', style: _textStyle), const SizedBox(height: 10), Column( - mainAxisAlignment: MainAxisAlignment.end, - crossAxisAlignment: CrossAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.start, children: [ ThemedUploadField( hintText: selectedPDFFileNames ?? "Upload Document", @@ -1241,6 +1262,7 @@ class PolicyScreenState extends ConsumerState { Container( // color: Colors.white, child: Row( + mainAxisSize: MainAxisSize.min, mainAxisAlignment: MainAxisAlignment.end, children: [ GestureDetector( @@ -1313,6 +1335,7 @@ class PolicyScreenState extends ConsumerState { Container( // color: Colors.white, child: Row( + mainAxisSize: MainAxisSize.min, mainAxisAlignment: MainAxisAlignment.end, children: [ GestureDetector( diff --git a/lib/presentation/screens/staff/policy/policy_list.dart b/lib/presentation/screens/staff/policy/policy_list.dart index 111b236..8f2cc5e 100644 --- a/lib/presentation/screens/staff/policy/policy_list.dart +++ b/lib/presentation/screens/staff/policy/policy_list.dart @@ -2,6 +2,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; +import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; import 'package:nhance_partner/presentation/providers/userRoleProvider.dart'; import 'package:nhance_partner/presentation/screens/staff/assignStaff.dart'; @@ -312,7 +313,7 @@ class policylistState extends ConsumerState { ), Text( "Policy", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 18, fontWeight: FontWeight.w600, ), @@ -398,7 +399,7 @@ class policylistState extends ConsumerState { // }, // child: Text( // 'Create New Staff', - // style: TextStyle( + // style: GoogleFonts.inter( // color: Colors.white, // fontWeight: FontWeight.w600, // fontSize: 14, @@ -424,10 +425,10 @@ class policylistState extends ConsumerState { vertical: 12, horizontal: 16, ), - child: const Row( + child: Row( children: [ Expanded( - flex: 2, + flex: 3, child: Text('Date', style: _headerStyle), ), Expanded( @@ -559,7 +560,7 @@ class policylistState extends ConsumerState { child: Row( children: [ Expanded( - flex: 2, + flex: 3, child: Text( _formatDate(item['updated_on']) ?? '-', style: _dataBold, @@ -726,7 +727,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Company", style: _cardheaderStyle), + Text("Company", style: _cardheaderStyle), Text(item['insurer_name'] ?? '-', style: _cardBodyStyle), ], ), @@ -736,7 +737,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Status", style: _cardheaderStyle), + Text("Status", style: _cardheaderStyle), Text(item['status'] ?? '-', style: _cardBodyStyle), ], ), @@ -752,7 +753,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Agent", style: _cardheaderStyle), + Text("Agent", style: _cardheaderStyle), Text(item['agent_name'] ?? '-', style: _cardBodyStyle), ], ), @@ -762,7 +763,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Assigned To", style: _cardheaderStyle), + Text("Assigned To", style: _cardheaderStyle), Text( item['assigned_to_name'] ?? '-', style: _cardBodyStyle, @@ -781,7 +782,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Insured Name", style: _cardheaderStyle), + Text("Insured Name", style: _cardheaderStyle), Text(item['insured_name'] ?? '-', style: _cardBodyStyle), ], ), @@ -791,7 +792,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Premium", style: _cardheaderStyle), + Text("Premium", style: _cardheaderStyle), Text(item['premium_amount'] ?? '-', style: _cardBodyStyle), ], ), @@ -807,7 +808,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Payment Mode", style: _cardheaderStyle), + Text("Payment Mode", style: _cardheaderStyle), Text(item['payment_mode'] ?? '-', style: _cardBodyStyle), ], ), @@ -817,7 +818,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Policy Number", style: _cardheaderStyle), + Text("Policy Number", style: _cardheaderStyle), Text(item['policy_number'] ?? '-', style: _cardBodyStyle), ], ), @@ -833,7 +834,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Date", style: _cardheaderStyle), + Text("Date", style: _cardheaderStyle), Text( _formatDate(item['updated_on']) ?? '-', style: _cardBodyStyle, @@ -846,7 +847,7 @@ class policylistState extends ConsumerState { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("Remarks", style: _cardheaderStyle), + Text("Remarks", style: _cardheaderStyle), Text( item['remarks'] ?? '-', style: _cardBodyStyle, @@ -862,31 +863,31 @@ class policylistState extends ConsumerState { ); } - static final _dataBold = TextStyle( + static final _dataBold = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); - static final _dataSub = TextStyle( + static final _dataSub = GoogleFonts.inter( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); - static const _headerStyle = TextStyle( + static final _headerStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.bold, ); - static const _cardheaderStyle = TextStyle( + static final _cardheaderStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 12, ); - static const _cardBodyStyle = TextStyle( - color: Color(0xFF545454), + static final _cardBodyStyle = GoogleFonts.inter( + color: const Color(0xFF545454), fontWeight: FontWeight.w400, fontSize: 12, ); diff --git a/lib/presentation/screens/staff/quotations/quotation.dart b/lib/presentation/screens/staff/quotations/quotation.dart index 69ff367..8a125b9 100644 --- a/lib/presentation/screens/staff/quotations/quotation.dart +++ b/lib/presentation/screens/staff/quotations/quotation.dart @@ -3,10 +3,12 @@ import 'dart:io' as html; import 'package:dropdown_search/dropdown_search.dart'; import 'package:file_picker/file_picker.dart'; import 'package:flutter/cupertino.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; import 'package:google_fonts/google_fonts.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import '../../../../core/routing/routes.dart'; import '../../../../core/services/api_service.dart'; @@ -32,6 +34,8 @@ class QuotationScreenState extends ConsumerState { int currentPage = 0; int itemsPerPage = 10; + bool blockKey = false; + List> dataVal = []; final TextEditingController _searchController = TextEditingController(); @@ -94,11 +98,29 @@ class QuotationScreenState extends ConsumerState { List> filteredData = []; // bool isLoading = false; + Future _restoreManagerId(WidgetRef ref) async { + final prefs = await SharedPreferences.getInstance(); + + final String? savedId = prefs.getString( + 'enqStaffDataId', + ); // already a string + if (savedId != null) { + ref.read(quotationStaffIdProvider.notifier).state = savedId; + print("savedenqStaffDataId ID restored: $savedId"); + + _loadData(savedId); + } + } + @override void initState() { super.initState(); apiService = ApiService(); + if (kIsWeb) { + Future.microtask(() => _restoreManagerId(ref)); + } + for (String field in tabHeader) { controllers[field] = TextEditingController(); } @@ -137,7 +159,7 @@ class QuotationScreenState extends ConsumerState { selectedEnquiryId = enquiryData['id']; print('selectedEnquiryId- $selectedEnquiryId'); controllers["regNum"]?.text = enquiryData['reg_no']; - controllers["insurer"]?.text = enquiryData['insurer_id']; + controllers["insurer"]?.text = enquiryData['insurer_name']; }); } @@ -171,6 +193,9 @@ class QuotationScreenState extends ConsumerState { ); originalData = getQuotationData; filteredData = List.from(originalData); + + blockKey = getQuotationData.any((item) => item['status'] == 'Accepted'); + print('blockKey- $blockKey'); // print('originalData - $getClaimPolicies'); }); } else { @@ -188,12 +213,12 @@ class QuotationScreenState extends ConsumerState { Color _getStatusColor(String? status) { switch (status) { + case 'Pending': + return Colors.yellow; case 'Accepted': return Colors.green; case 'Rejected': return Colors.red; - case 'Pending': - return Colors.yellow; default: return Colors.grey; } @@ -261,7 +286,7 @@ class QuotationScreenState extends ConsumerState { width: MediaQuery.of(context).size.width, child: GestureDetector( onTap: () { - context.go(AppRoutes.policylist); + context.go(AppRoutes.enquiryForStaff); }, child: Row( crossAxisAlignment: CrossAxisAlignment.center, @@ -274,7 +299,7 @@ class QuotationScreenState extends ConsumerState { ), Text( "Quotation", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 18, fontWeight: FontWeight.w600, ), @@ -360,6 +385,7 @@ class QuotationScreenState extends ConsumerState { ], const SizedBox(height: 20), + if(!blockKey)...[ Container( padding: EdgeInsets.only(right: 10), child: Row( @@ -368,6 +394,10 @@ class QuotationScreenState extends ConsumerState { GestureDetector( onTap: () { // print('Export'); + setState(() { + selectedQuotationFrmListId = null; + selectedQuotationFrmListData = null; + }); showDialog( context: context, @@ -420,7 +450,7 @@ class QuotationScreenState extends ConsumerState { ), ), - const SizedBox(height: 20), + const SizedBox(height: 20),], //3RD SECTION (TABLE) Container( @@ -503,11 +533,11 @@ class QuotationScreenState extends ConsumerState { child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - const Text( + Text( "Download RC", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 12, - fontWeight: FontWeight.w200, + fontWeight: FontWeight.w500, color: Colors.white, ), ), @@ -546,9 +576,9 @@ class QuotationScreenState extends ConsumerState { children: [ Text( "Download ID Proof", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 12, - fontWeight: FontWeight.w200, + fontWeight: FontWeight.w500, color: Colors.white, ), ), @@ -583,9 +613,9 @@ class QuotationScreenState extends ConsumerState { children: [ Text( "Download Previous Policy", - style: TextStyle( + style: GoogleFonts.inter( fontSize: 12, - fontWeight: FontWeight.w200, + fontWeight: FontWeight.w500, color: Colors.white, ), ), @@ -719,7 +749,7 @@ class QuotationScreenState extends ConsumerState { borderRadius: BorderRadius.circular(6), ), padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), - child: const Row( + child: Row( children: [ // Expanded(flex: 3, child: Text(' ', style: _headerStyle)), Expanded( @@ -779,7 +809,11 @@ class QuotationScreenState extends ConsumerState { flex: 2, child: Text( item['status'] ?? '-', - style: _dataBold.copyWith(color: _getStatusColor(item['status'])), + style: GoogleFonts.inter( + fontSize: 14, + fontWeight: FontWeight.w400, + color: _getStatusColor(item['status']), + ), ), ), @@ -905,7 +939,7 @@ class QuotationScreenState extends ConsumerState { children: [ TextSpan( text: 'Status : ', // key - style: TextStyle( + style: GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 11, @@ -913,7 +947,7 @@ class QuotationScreenState extends ConsumerState { ), TextSpan( text: '${item['status'] ?? '-'}', // value - style: TextStyle( + style: GoogleFonts.inter( color: _getStatusColor(item['status']), fontWeight: FontWeight.w600, fontSize: 11, @@ -937,49 +971,49 @@ class QuotationScreenState extends ConsumerState { ); } - static final _dataBold = TextStyle( + static final _dataBold = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); - static final _dataSub = TextStyle( + static final _dataSub = GoogleFonts.inter( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); - static const _headerStyle = TextStyle( + static final _headerStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.bold, ); - static const _textStyle = TextStyle( + static final _textStyle = GoogleFonts.inter( fontSize: 14, fontWeight: FontWeight.w600, ); - static const _cardheaderStyle = TextStyle( + static final _cardheaderStyle = GoogleFonts.inter( color: Colors.black, fontWeight: FontWeight.w600, fontSize: 12, ); - static const _cardBodyStyle = TextStyle( + static final _cardBodyStyle = GoogleFonts.inter( color: Color(0xFF545454), fontWeight: FontWeight.w400, fontSize: 12, ); - static const _cardRow1BodyStyle = TextStyle( + static final _cardRow1BodyStyle = GoogleFonts.inter( // color: Color(0xFF545454), color: Colors.black, fontWeight: FontWeight.w500, fontSize: 12, ); - static const _cardRow2BodyStyle = TextStyle( - color: Color(0xFF545454), + static final _cardRow2BodyStyle = GoogleFonts.inter( + color: const Color(0xFF545454), // color: Colors.black, fontWeight: FontWeight.w500, fontSize: 12, diff --git a/lib/presentation/themes/indicators/export_btn.dart b/lib/presentation/themes/indicators/export_btn.dart index 0754c1f..4891197 100644 --- a/lib/presentation/themes/indicators/export_btn.dart +++ b/lib/presentation/themes/indicators/export_btn.dart @@ -1,3 +1,4 @@ +import 'dart:convert'; import 'dart:io'; import 'package:excel/excel.dart'; import 'package:flutter/material.dart'; @@ -62,7 +63,12 @@ class ExportBtn extends HookWidget { ) : null, ?txt! ? SizedBox(width: 20) : null, - Icon(Icons.input_sharp, color: Colors.white), + Image.asset( + "assets/miscellaneous/export.png", + height: 25, + width: 25, + ), + // Icon(Icons.input_sharp, color: Colors.white), // Image.asset("assets/miscellaneous/export", height: 15, width: 15), ], ), @@ -71,6 +77,8 @@ class ExportBtn extends HookWidget { } } + + class ExcelExporter { static Future exportToExcel({ required String sheetName, @@ -79,14 +87,16 @@ class ExcelExporter { required String fileName, }) async { try { - // Create Excel and delete default sheet + // Create Excel var excel = Excel.createExcel(); + + // Rename default sheet if (excel.sheets.containsKey('Sheet1')) { - excel.delete('Sheet1'); + excel.rename('Sheet1', sheetName); } - // Create your sheet - Sheet sheetObject = excel[sheetName]; // now this is the only sheet + // Get the sheet + Sheet sheetObject = excel[sheetName]!; // Add headers sheetObject.appendRow(headers.map((h) => TextCellValue(h)).toList()); @@ -112,13 +122,12 @@ class ExcelExporter { var bytes = excel.encode()!; if (kIsWeb) { - // Web: download - final blob = html.Blob([bytes]); - final url = html.Url.createObjectUrlFromBlob(blob); - final anchor = html.AnchorElement(href: url) + // ✅ Web: base64 download instead of Blob + final base64Str = base64Encode(bytes); + final dataUri = "data:application/octet-stream;base64,$base64Str"; + final anchor = html.AnchorElement(href: dataUri) ..setAttribute("download", "$fileName.xlsx") ..click(); - html.Url.revokeObjectUrl(url); } else { // Mobile/Desktop: save file final dir = await getApplicationDocumentsDirectory(); @@ -132,6 +141,71 @@ class ExcelExporter { } } + +// class ExcelExporter { +// static Future exportToExcel({ +// required String sheetName, +// required List> data, +// required List headers, +// required String fileName, +// }) async { +// try { +// // Create Excel and delete default sheet +// var excel = Excel.createExcel(); +// if (excel.sheets.containsKey('Sheet1')) { +// excel.delete('Sheet1'); +// } +// +// // Create your sheet +// Sheet sheetObject = excel[sheetName]; // now this is the only sheet +// +// // Add headers +// sheetObject.appendRow(headers.map((h) => TextCellValue(h)).toList()); +// +// // Add data +// for (var rowData in data) { +// var row = []; +// for (var key in headers) { +// final value = rowData[key]; +// if (value == null) { +// row.add(TextCellValue('-')); +// } else if (value is int) { +// row.add(IntCellValue(value)); +// } else if (value is double) { +// row.add(DoubleCellValue(value)); +// } else { +// row.add(TextCellValue(value.toString())); +// } +// } +// sheetObject.appendRow(row); +// } +// +// var bytes = excel.encode()!; +// +// if (kIsWeb) { +// // Web: download +// final blob = html.Blob([bytes]); +// final url = html.Url.createObjectUrlFromBlob(blob); +// final anchor = html.AnchorElement(href: url) +// ..setAttribute("download", "$fileName.xlsx") +// ..click(); +// html.Url.revokeObjectUrl(url); +// } else { +// // Mobile/Desktop: save file +// final dir = await getApplicationDocumentsDirectory(); +// final file = File('${dir.path}/$fileName.xlsx'); +// await file.writeAsBytes(bytes); +// await OpenFile.open(file.path); +// } +// } catch (e) { +// print("Error exporting Excel: $e"); +// } +// } +// } + + +//--------------------------------------------------------------------------- + // class ExcelExporter { // static Future exportToExcel({ // required String sheetName, diff --git a/lib/presentation/themes/indicators/text_field_theme.dart b/lib/presentation/themes/indicators/text_field_theme.dart index 8417182..a761a42 100644 --- a/lib/presentation/themes/indicators/text_field_theme.dart +++ b/lib/presentation/themes/indicators/text_field_theme.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_hooks/flutter_hooks.dart'; +import 'package:google_fonts/google_fonts.dart'; // import 'package:uae_stat/config/my_theme.dart'; @@ -103,7 +104,13 @@ class ThemedFormField extends HookWidget { // ✅ dynamic hint color color: const Color(0xFFC3C6CB), ), - labelStyle: TextStyle(fontSize: 12), + // labelText: hintText, + // labelStyle: GoogleFonts.inter( + // fontSize: 10, + // // color: Colors.black, // customize here + // color: Colors.red, // customize here + // fontWeight: FontWeight.w400, + // ), prefixIconConstraints: const BoxConstraints( maxWidth: 25 + 16 + 10, maxHeight: 25 + (8 * 2), @@ -139,6 +146,11 @@ class ThemedFormField extends HookWidget { // ✅ allow multiline if user sets maxLines / minLines minLines: (keyboardType == TextInputType.multiline) ? 3 : 1, maxLines: (keyboardType == TextInputType.multiline) ? null : 1, + style: GoogleFonts.inter( + fontSize: 14, // 👈 Change this to your desired size + fontWeight: FontWeight.w400, // optional + color: Colors.black, // optional + ), ), ), ); diff --git a/lib/presentation/widgets/drawer_menu.dart b/lib/presentation/widgets/drawer_menu.dart index db65e2c..9e02419 100644 --- a/lib/presentation/widgets/drawer_menu.dart +++ b/lib/presentation/widgets/drawer_menu.dart @@ -219,29 +219,6 @@ class DrawerMenuState extends ConsumerState { ), DrawerLabel("Dashboard"), - Builder( - builder: (itemContext) { - return MouseRegion( - // onEnter: (_) => _showPopup(itemContext), - onEnter: (_) { - final renderBox = itemContext.findRenderObject() as RenderBox; - final offset = renderBox.localToGlobal(Offset.zero); - final size = renderBox.size; - final key = "Reports"; - _showPopup(context, offset, size, key); - }, - - child: DrawerContentWrapper( - child: Image.asset( - "assets/drawer/drawerImg2.png", - height: 25, - width: 25, - ), - ), - ); - }, - ), - DrawerLabel("Reports"), DrawerContentWrapper( child: Consumer( builder: (context, ref, _) { @@ -290,6 +267,30 @@ class DrawerMenuState extends ConsumerState { ), DrawerLabel("User"), ], + + Builder( + builder: (itemContext) { + return MouseRegion( + // onEnter: (_) => _showPopup(itemContext), + onEnter: (_) { + final renderBox = itemContext.findRenderObject() as RenderBox; + final offset = renderBox.localToGlobal(Offset.zero); + final size = renderBox.size; + final key = "Reports"; + _showPopup(context, offset, size, key); + }, + + child: DrawerContentWrapper( + child: Image.asset( + "assets/drawer/drawerImg2.png", + height: 25, + width: 25, + ), + ), + ); + }, + ), + DrawerLabel("Reports"), ], ), ); diff --git a/lib/presentation/widgets/mobile_tabs.dart b/lib/presentation/widgets/mobile_tabs.dart index ca0b4f4..1880d04 100644 --- a/lib/presentation/widgets/mobile_tabs.dart +++ b/lib/presentation/widgets/mobile_tabs.dart @@ -100,28 +100,48 @@ class _MobileBottomMenuState extends ConsumerState { }, items: [ BottomNavigationBarItem( - icon: Image.asset( - "assets/drawer/drawerImg1.png", - height: 20, - width: 20, - ), + icon: _currentIndex == 0 + ? Image.asset( + "assets/drawer/drawerImg1_light.png", + height: 20, + width: 20, + ) + : Image.asset( + "assets/drawer/drawerImg1.png", + height: 20, + width: 20, + ), label: "Dashboard", ), BottomNavigationBarItem( - icon: Image.asset( - "assets/drawer/drawerImg2.png", - height: 20, - width: 20, - ), + icon: _currentIndex == 1 + ? Image.asset( + "assets/drawer/drawerImg2_light.png", + height: 20, + width: 20, + ) + : Image.asset( + "assets/drawer/drawerImg2.png", + height: 20, + width: 20, + ), label: "Reports", ), - const BottomNavigationBarItem( - icon: Icon(Icons.list_alt_rounded, size: 24, color: Colors.black), + BottomNavigationBarItem( + icon: Icon( + Icons.list_alt_rounded, + size: 24, + color: _currentIndex == 2 ? Colors.white : Colors.black, + ), label: "Enquiry", ), - const BottomNavigationBarItem( - icon: Icon(Icons.person_add_alt, size: 24, color: Colors.black), + BottomNavigationBarItem( + icon: Icon( + Icons.person_add_alt, + size: 24, + color: _currentIndex == 3 ? Colors.white : Colors.black, + ), label: "User", ), ], diff --git a/lib/presentation/widgets/topbar.dart b/lib/presentation/widgets/topbar.dart index 316abef..8096849 100644 --- a/lib/presentation/widgets/topbar.dart +++ b/lib/presentation/widgets/topbar.dart @@ -39,6 +39,14 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { width: 120, ), if (isMobile) ...[ + Padding( + padding: const EdgeInsets.all(8.0), + child: Image.asset( + "assets/login/nhance-partner-logo.png", + height: 40, + width: 90, + ), + ), // IconButton( // icon: const Icon( // Icons.arrow_back_ios, @@ -47,17 +55,17 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { // ), // onPressed: onBack ?? () => Navigator.pop(context), // ), - SizedBox(width: 5), - Expanded( - child: Text( - title, - style: const TextStyle( - color: Colors.black87, - fontWeight: FontWeight.w500, - fontSize: 16, - ), - ), - ), + // SizedBox(width: 5), + // Expanded( + // child: Text( + // title, + // style: const TextStyle( + // color: Colors.black87, + // fontWeight: FontWeight.w500, + // fontSize: 16, + // ), + // ), + // ), ], Spacer(), @@ -98,6 +106,7 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { // icon: const Icon(Icons.person_outline, color: Colors.black87), // onPressed: onProfile, // ), + ], SizedBox(width: 10), Container( width: 40, @@ -111,7 +120,7 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { onPressed: onLogout, ), ), - ], + ], ), ); diff --git a/lib_29_sep.zip b/lib_29_sep.zip new file mode 100644 index 0000000000000000000000000000000000000000..db97910976a38bfaae161cfbd6ada66fed630065 GIT binary patch literal 191526 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

HF3b*B^(ufZhVeA@2-%Z0@r<2&({9oLgF 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 KnDPI_4*Y+Ef?FE^ literal 0 HcmV?d00001