diff --git a/lib/api/services/beneficiary_service.dart b/lib/api/services/beneficiary_service.dart index dfd64f7..8c4b700 100644 --- a/lib/api/services/beneficiary_service.dart +++ b/lib/api/services/beneficiary_service.dart @@ -49,6 +49,54 @@ class BeneficiaryService { return null; } + ///Step 1: Validate beneficiary (returns refNo) + Future validateBeneficiary({ + required String accountNo, + required String ifscCode, + required String remitterName, + }) async { + + try { + final response = await _dio.post( + '/api/beneficiary/validate/outside_bank', + queryParameters: { + 'accountNo': accountNo, + 'ifscCode': ifscCode, + 'remitterName': remitterName, + }, + ); + + if (response.statusCode == 200) { + return response.data['refNo']; + } else { + return null; + } + } catch (e) { + print("Error validating beneficiary: $e"); + return null; + } + } + + /// Step 2: Check validation status (returns Beneficiary name if success) + Future checkValidationStatus(String refNo) async { + try { + final response = await _dio.get( + '/api/beneficiary/check', + queryParameters: { + 'refNo': refNo, + }, + ); + + if (response.statusCode == 200 && response.data != null) { + return Beneficiary.fromJson(response.data).name; + } else { + return null; + } + } catch (e) { + print("Error checking validation status: $e"); + return null; + } + } // Send Data for Validation Future sendForValidation(Beneficiary beneficiary) async { diff --git a/lib/data/models/beneficiary.dart b/lib/data/models/beneficiary.dart index b32f704..9fee201 100644 --- a/lib/data/models/beneficiary.dart +++ b/lib/data/models/beneficiary.dart @@ -1,5 +1,7 @@ +// ignore_for_file: non_constant_identifier_names + class Beneficiary { final String accountNo; final String accountType; @@ -18,8 +20,6 @@ class Beneficiary { }); factory Beneficiary.fromJson(Map json) { - print('=============================='); - print(json); return Beneficiary( accountNo: json['accountNo'] ?? '', accountType: json['accountType'] ?? '', @@ -29,7 +29,7 @@ class Beneficiary { branchName: json['branchName'] ?? '', ); } - + Map toJson() { return { 'accountNo': accountNo, diff --git a/lib/features/beneficiaries/screens/add_beneficiary_screen.dart b/lib/features/beneficiaries/screens/add_beneficiary_screen.dart index 6c0e818..c9dc8f1 100644 --- a/lib/features/beneficiaries/screens/add_beneficiary_screen.dart +++ b/lib/features/beneficiaries/screens/add_beneficiary_screen.dart @@ -1,3 +1,5 @@ +// ignore_for_file: prefer_final_fields, unused_field + import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; import 'package:kmobile/api/services/beneficiary_service.dart'; diff --git a/lib/features/beneficiaries/screens/manage_beneficiaries_screen.dart b/lib/features/beneficiaries/screens/manage_beneficiaries_screen.dart index d980e4b..2f64cd0 100644 --- a/lib/features/beneficiaries/screens/manage_beneficiaries_screen.dart +++ b/lib/features/beneficiaries/screens/manage_beneficiaries_screen.dart @@ -42,7 +42,7 @@ class _ManageBeneficiariesScreen extends State { baseColor: Colors.grey.shade300, highlightColor: Colors.grey.shade100, child: ListTile( - leading: CircleAvatar( + leading: const CircleAvatar( radius: 24, backgroundColor: Colors.white, ), diff --git a/lib/features/fund_transfer/screens/transaction_pin_screen.dart b/lib/features/fund_transfer/screens/transaction_pin_screen.dart index 695ddce..8a7b204 100644 --- a/lib/features/fund_transfer/screens/transaction_pin_screen.dart +++ b/lib/features/fund_transfer/screens/transaction_pin_screen.dart @@ -1,3 +1,5 @@ +// ignore_for_file: unused_field + import '../../../l10n/app_localizations.dart'; import 'package:flutter/material.dart'; diff --git a/lib/main.dart b/lib/main.dart index fe59125..2caa720 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,6 +1,5 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:shimmer/main.dart'; import 'di/injection.dart'; import 'app.dart';