From fc765282068012e1290479d5f9cbf25692cb0da1 Mon Sep 17 00:00:00 2001 From: Nilanjan Chakrabarti Date: Wed, 20 Aug 2025 12:46:28 +0530 Subject: [PATCH] Branch Locator static Screen --- assets/images/boi_logo.png | Bin 0 -> 7567 bytes .../screens/branch_locator_screen.dart | 43 +++++++++++++++ .../service/screens/service_screen.dart | 10 +++- lib/l10n/app_en.arb | 5 +- lib/l10n/app_hi.arb | 5 +- lib/l10n/app_localizations.dart | 50 +++++++++++------- lib/l10n/app_localizations_en.dart | 36 ++++++------- lib/l10n/app_localizations_hi.dart | 39 +++++++------- lib/widgets/bank_logos.dart | 10 +++- pubspec.yaml | 1 + 10 files changed, 139 insertions(+), 60 deletions(-) create mode 100644 assets/images/boi_logo.png create mode 100644 lib/features/service/screens/branch_locator_screen.dart diff --git a/assets/images/boi_logo.png b/assets/images/boi_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..78cd49953f69f76b46635c31ff4e9337a442da5b GIT binary patch literal 7567 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 { ServiceManagementTile( icon: Symbols.missing_controller, label: AppLocalizations.of(context).branchLocator, - onTap: () {}, + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => const BranchLocatorScreen()) + ); + }, ), const Divider(height: 1), ], diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index a4a8d6e..f0b46c4 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -246,6 +246,9 @@ "proceed": "Proceed", "plsValidateBeneficiary": "Please validate beneficiary details first", "accno7to20": "Account number must be between 7 and 20 digits", - "validateBeneficiaryproceeding": "Please validate beneficiary before proceeding" + "validateBeneficiaryproceeding": "Please validate beneficiary before proceeding", + "findnearbybranched": "Find nearby branches", + "searchbranch": "Search Branch", + "branchsearchsoon": "Branch search coming soon..." } diff --git a/lib/l10n/app_hi.arb b/lib/l10n/app_hi.arb index e25ae27..e084093 100644 --- a/lib/l10n/app_hi.arb +++ b/lib/l10n/app_hi.arb @@ -246,5 +246,8 @@ "proceed": "आगे बढ़ना", "plsValidateBeneficiary": "कृपया पहले लाभार्थी विवरण सत्यापित करें", "accno7to20": "खाता संख्या सात से बीस अंकों के बीच होनी चाहिए", - "validateBeneficiaryproceeding": "कृपया आगे बढ़ने से पहले लाभार्थी को पट्टे पर मान्य करें" + "validateBeneficiaryproceeding": "कृपया आगे बढ़ने से पहले लाभार्थी को पट्टे पर मान्य करें", + "findnearbybranched": "आस-पास की शाखाएँ खोजें", + "searchbranch": "शाखा खोजें", + "branchsearchsoon": "शाखा खोज सुविधा जल्द ही आ रही है..." } diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index 3ed7425..763f13a 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -62,8 +62,7 @@ import 'app_localizations_hi.dart'; /// be consistent with the languages listed in the AppLocalizations.supportedLocales /// property. abstract class AppLocalizations { - AppLocalizations(String locale) - : localeName = intl.Intl.canonicalizedLocale(locale.toString()); + AppLocalizations(String locale) : localeName = intl.Intl.canonicalizedLocale(locale.toString()); final String localeName; @@ -71,8 +70,7 @@ abstract class AppLocalizations { return Localizations.of(context, AppLocalizations)!; } - static const LocalizationsDelegate delegate = - _AppLocalizationsDelegate(); + static const LocalizationsDelegate delegate = _AppLocalizationsDelegate(); /// A list of this localizations delegate along with the default localizations /// delegates. @@ -84,8 +82,7 @@ abstract class AppLocalizations { /// Additional delegates can be added by appending to this list in /// MaterialApp. This list does not have to be used at all if a custom list /// of delegates is preferred or required. - static const List> localizationsDelegates = - >[ + static const List> localizationsDelegates = >[ delegate, GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate, @@ -1507,10 +1504,27 @@ abstract class AppLocalizations { /// In en, this message translates to: /// **'Please validate beneficiary before proceeding'** String get validateBeneficiaryproceeding; + + /// No description provided for @findnearbybranched. + /// + /// In en, this message translates to: + /// **'Find nearby branches'** + String get findnearbybranched; + + /// No description provided for @searchbranch. + /// + /// In en, this message translates to: + /// **'Search Branch'** + String get searchbranch; + + /// No description provided for @branchsearchsoon. + /// + /// In en, this message translates to: + /// **'Branch search coming soon...'** + String get branchsearchsoon; } -class _AppLocalizationsDelegate - extends LocalizationsDelegate { +class _AppLocalizationsDelegate extends LocalizationsDelegate { const _AppLocalizationsDelegate(); @override @@ -1519,25 +1533,25 @@ class _AppLocalizationsDelegate } @override - bool isSupported(Locale locale) => - ['en', 'hi'].contains(locale.languageCode); + bool isSupported(Locale locale) => ['en', 'hi'].contains(locale.languageCode); @override bool shouldReload(_AppLocalizationsDelegate old) => false; } AppLocalizations lookupAppLocalizations(Locale locale) { + + // Lookup logic when only language code is specified. switch (locale.languageCode) { - case 'en': - return AppLocalizationsEn(); - case 'hi': - return AppLocalizationsHi(); + case 'en': return AppLocalizationsEn(); + case 'hi': return AppLocalizationsHi(); } throw FlutterError( - 'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely ' - 'an issue with the localizations generation tool. Please file an issue ' - 'on GitHub with a reproducible sample app and the gen-l10n configuration ' - 'that was used.'); + 'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely ' + 'an issue with the localizations generation tool. Please file an issue ' + 'on GitHub with a reproducible sample app and the gen-l10n configuration ' + 'that was used.' + ); } diff --git a/lib/l10n/app_localizations_en.dart b/lib/l10n/app_localizations_en.dart index 83d8401..ceba208 100644 --- a/lib/l10n/app_localizations_en.dart +++ b/lib/l10n/app_localizations_en.dart @@ -486,8 +486,7 @@ class AppLocalizationsEn extends AppLocalizations { String get otpVerification => 'OTP Verification'; @override - String get otpSentMessage => - 'Enter the 4-digit OTP sent to your mobile number'; + String get otpSentMessage => 'Enter the 4-digit OTP sent to your mobile number'; @override String get verifyOtp => 'Verify OTP'; @@ -505,15 +504,13 @@ class AppLocalizationsEn extends AppLocalizations { String get tpinRequired => 'TPIN Required'; @override - String get tpinRequiredMessage => - 'You need to set your TPIN to continue with secure transactions'; + String get tpinRequiredMessage => 'You need to set your TPIN to continue with secure transactions'; @override String get setTpinTitle => 'Set TPIN'; @override - String get tpinInfo => - 'Your TPIN is a 6-digit code used to authorize transactions. Keep it safe and do not share it with anyone.'; + String get tpinInfo => 'Your TPIN is a 6-digit code used to authorize transactions. Keep it safe and do not share it with anyone.'; @override String get tpinFailed => 'Failed to set TPIN. Please try again.'; @@ -567,8 +564,7 @@ class AppLocalizationsEn extends AppLocalizations { String get enableFingerprintLogin => 'Enable Fingerprint Login?'; @override - String get enableFingerprintMessage => - 'Would you like to enable fingerprint authentication for faster login?'; + String get enableFingerprintMessage => 'Would you like to enable fingerprint authentication for faster login?'; @override String get no => 'No'; @@ -589,8 +585,7 @@ class AppLocalizationsEn extends AppLocalizations { String get loading => 'Loading......'; @override - String get enableFingerprintQuick => - 'Enable fingerprint authentication for quick login?'; + String get enableFingerprintQuick => 'Enable fingerprint authentication for quick login?'; @override String get kccb => 'KCCB'; @@ -692,15 +687,13 @@ class AppLocalizationsEn extends AppLocalizations { String get invalidRtgs => 'Invalid Amount for RTGS'; @override - String get invalidRtgsPopUp => - 'RTGS transactions require a minimum amount of 200,000. Please enter a higher amount or select NEFT as the transaction mode.'; + String get invalidRtgsPopUp => 'RTGS transactions require a minimum amount of 200,000. Please enter a higher amount or select NEFT as the transaction mode.'; @override String get correctTpin => 'Please Enter the correct TPIN'; @override - String get insufficientFund => - 'Your account does not have sufficient balance'; + String get insufficientFund => 'Your account does not have sufficient balance'; @override String get creditedTo => 'Credited To'; @@ -712,13 +705,20 @@ class AppLocalizationsEn extends AppLocalizations { String get proceed => 'Proceed'; @override - String get plsValidateBeneficiary => - 'Please validate beneficiary details first'; + String get plsValidateBeneficiary => 'Please validate beneficiary details first'; @override String get accno7to20 => 'Account number must be between 7 and 20 digits'; @override - String get validateBeneficiaryproceeding => - 'Please validate beneficiary before proceeding'; + String get validateBeneficiaryproceeding => 'Please validate beneficiary before proceeding'; + + @override + String get findnearbybranched => 'Find nearby branches'; + + @override + String get searchbranch => 'Search Branch'; + + @override + String get branchsearchsoon => 'Branch search coming soon...'; } diff --git a/lib/l10n/app_localizations_hi.dart b/lib/l10n/app_localizations_hi.dart index cf78143..75a9f5e 100644 --- a/lib/l10n/app_localizations_hi.dart +++ b/lib/l10n/app_localizations_hi.dart @@ -52,8 +52,7 @@ class AppLocalizationsHi extends AppLocalizations { String get enableBiometric => 'बायोमेट्रिक प्रमाणीकरण सक्षम करें'; @override - String get useBiometricPrompt => - 'तेज़ लॉगिन के लिए फिंगरप्रिंट/फेस आईडी का उपयोग करें?'; + String get useBiometricPrompt => 'तेज़ लॉगिन के लिए फिंगरप्रिंट/फेस आईडी का उपयोग करें?'; @override String get later => 'बाद में'; @@ -487,8 +486,7 @@ class AppLocalizationsHi extends AppLocalizations { String get otpVerification => 'ओटीपी सत्यापन'; @override - String get otpSentMessage => - 'अपने मोबाइल नंबर पर भेजा गया 4-अंकों का ओटीपी दर्ज करें'; + String get otpSentMessage => 'अपने मोबाइल नंबर पर भेजा गया 4-अंकों का ओटीपी दर्ज करें'; @override String get verifyOtp => 'ओटीपी सत्यापित करें'; @@ -506,15 +504,13 @@ class AppLocalizationsHi extends AppLocalizations { String get tpinRequired => 'टी-पिन आवश्यक है'; @override - String get tpinRequiredMessage => - 'सुरक्षित लेनदेन के लिए टी-पिन सेट करना आवश्यक है'; + String get tpinRequiredMessage => 'सुरक्षित लेनदेन के लिए टी-पिन सेट करना आवश्यक है'; @override String get setTpinTitle => 'टी-पिन सेट करें'; @override - String get tpinInfo => - 'आपका टी-पिन 6 अंकों का कोड है जिसका उपयोग लेन-देन को प्रमाणित करने के लिए किया जाता है। इसे सुरक्षित रखें और किसी से साझा न करें।'; + String get tpinInfo => 'आपका टी-पिन 6 अंकों का कोड है जिसका उपयोग लेन-देन को प्रमाणित करने के लिए किया जाता है। इसे सुरक्षित रखें और किसी से साझा न करें।'; @override String get tpinFailed => 'टी-पिन सेट करने में विफल। कृपया पुनः प्रयास करें।'; @@ -568,8 +564,7 @@ class AppLocalizationsHi extends AppLocalizations { String get enableFingerprintLogin => 'फिंगरप्रिंट लॉगिन सक्षम करें?'; @override - String get enableFingerprintMessage => - 'क्या आप तेज लॉगिन के लिए फिंगरप्रिंट प्रमाणीकरण सक्षम करना चाहेंगे?'; + String get enableFingerprintMessage => 'क्या आप तेज लॉगिन के लिए फिंगरप्रिंट प्रमाणीकरण सक्षम करना चाहेंगे?'; @override String get no => 'नहीं'; @@ -578,8 +573,7 @@ class AppLocalizationsHi extends AppLocalizations { String get yes => 'हाँ'; @override - String get authenticateToEnable => - 'फिंगरप्रिंट लॉगिन सक्षम करने के लिए प्रमाणीकरण करें'; + String get authenticateToEnable => 'फिंगरप्रिंट लॉगिन सक्षम करने के लिए प्रमाणीकरण करें'; @override String get exitApp => 'ऐप बंद करें'; @@ -591,8 +585,7 @@ class AppLocalizationsHi extends AppLocalizations { String get loading => 'लोड हो रहा है......'; @override - String get enableFingerprintQuick => - 'तेज़ लॉगिन के लिए फिंगरप्रिंट प्रमाणीकरण सक्षम करें?'; + String get enableFingerprintQuick => 'तेज़ लॉगिन के लिए फिंगरप्रिंट प्रमाणीकरण सक्षम करें?'; @override String get kccb => 'केसीसीबी'; @@ -694,8 +687,7 @@ class AppLocalizationsHi extends AppLocalizations { String get invalidRtgs => 'RTGS के लिए अमान्य राशि'; @override - String get invalidRtgsPopUp => - 'RTGS लेनदेन के लिए न्यूनतम 2,00,000 रुपये की राशि की आवश्यकता होती है। कृपया अधिक राशि दर्ज करें या लेनदेन मोड के रूप में NEFT चुनें'; + String get invalidRtgsPopUp => 'RTGS लेनदेन के लिए न्यूनतम 2,00,000 रुपये की राशि की आवश्यकता होती है। कृपया अधिक राशि दर्ज करें या लेनदेन मोड के रूप में NEFT चुनें'; @override String get correctTpin => 'कृपया सही टी-पिन दर्ज करें'; @@ -713,13 +705,20 @@ class AppLocalizationsHi extends AppLocalizations { String get proceed => 'आगे बढ़ना'; @override - String get plsValidateBeneficiary => - 'कृपया पहले लाभार्थी विवरण सत्यापित करें'; + String get plsValidateBeneficiary => 'कृपया पहले लाभार्थी विवरण सत्यापित करें'; @override String get accno7to20 => 'खाता संख्या सात से बीस अंकों के बीच होनी चाहिए'; @override - String get validateBeneficiaryproceeding => - 'कृपया आगे बढ़ने से पहले लाभार्थी को पट्टे पर मान्य करें'; + String get validateBeneficiaryproceeding => 'कृपया आगे बढ़ने से पहले लाभार्थी को पट्टे पर मान्य करें'; + + @override + String get findnearbybranched => 'आस-पास की शाखाएँ खोजें'; + + @override + String get searchbranch => 'शाखा खोजें'; + + @override + String get branchsearchsoon => 'शाखा खोज सुविधा जल्द ही आ रही है...'; } diff --git a/lib/widgets/bank_logos.dart b/lib/widgets/bank_logos.dart index 8c99a17..91e602c 100644 --- a/lib/widgets/bank_logos.dart +++ b/lib/widgets/bank_logos.dart @@ -64,7 +64,15 @@ Widget getBankLogo(String? bankName) { width: 40, height: 40, ); - } else { + } + if (bankName != null && bankName.toLowerCase().contains('bank of india')) { + return Image.asset( + 'assets/images/boi_logo.png', + width: 40, + height: 40, + ); + } + else { return const Icon( Icons.account_balance, size: 40, diff --git a/pubspec.yaml b/pubspec.yaml index a39f1ba..4979312 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -96,6 +96,7 @@ flutter: - assets/images/BankofBaroda_logo.png - assets/images/canaraBank_logo.png - assets/images/kotak_logo.png + - assets/images/boi_logo.png - assets/images/kmobile_splash.jpg - assets/images/kmobile_splash2.png - assets/images/icon.svg