updates on tran flow
This commit is contained in:
@@ -82,6 +82,10 @@ class _MyAppState extends State<MyApp> {
|
|||||||
path: '/',
|
path: '/',
|
||||||
builder: (context, state) => const HomeScreen(),
|
builder: (context, state) => const HomeScreen(),
|
||||||
),
|
),
|
||||||
|
GoRoute(
|
||||||
|
path: '/home',
|
||||||
|
builder: (context, state) => const HomeScreen(),
|
||||||
|
),
|
||||||
GoRoute(
|
GoRoute(
|
||||||
path: '/make-payment',
|
path: '/make-payment',
|
||||||
builder: (context, state) => const PayScreen(),
|
builder: (context, state) => const PayScreen(),
|
||||||
@@ -153,7 +157,7 @@ class ScaffoldWithNavBar extends StatelessWidget {
|
|||||||
onDestinationSelected: (index) {
|
onDestinationSelected: (index) {
|
||||||
switch (index) {
|
switch (index) {
|
||||||
case 0:
|
case 0:
|
||||||
context.go('/');
|
context.go('/home');
|
||||||
break;
|
break;
|
||||||
// case 1:
|
// case 1:
|
||||||
// context.go('/recipients');
|
// context.go('/recipients');
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ class ConfirmController extends ChangeNotifier {
|
|||||||
);
|
);
|
||||||
|
|
||||||
dynamic response = await http.post(
|
dynamic response = await http.post(
|
||||||
'/public/transaction',
|
'/public/transaction/request',
|
||||||
transactionController.model.formData,
|
transactionController.model.formData,
|
||||||
);
|
);
|
||||||
logger.i(response.toString());
|
logger.i(response.toString());
|
||||||
|
|||||||
@@ -35,7 +35,6 @@ class HistoryController extends ChangeNotifier {
|
|||||||
notifyListeners();
|
notifyListeners();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
params['type'] = 'REQUEST';
|
|
||||||
Map<String, dynamic> response = await http.get(
|
Map<String, dynamic> response = await http.get(
|
||||||
'/public/transaction?${buildQueryParameters(params)}',
|
'/public/transaction?${buildQueryParameters(params)}',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -142,7 +142,7 @@ class HomeController extends ChangeNotifier {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
Map<String, dynamic> response = await http.get(
|
Map<String, dynamic> response = await http.get(
|
||||||
'/public/transaction?sort=createdAt,desc&size=3&page=0&userId=$userId&type=REQUEST',
|
'/public/transaction?sort=createdAt,desc&size=3&page=0&userId=$userId',
|
||||||
);
|
);
|
||||||
|
|
||||||
PageableModel pageableModel = PageableModel.fromJson(response);
|
PageableModel pageableModel = PageableModel.fromJson(response);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ class _HomeScreenState extends State<HomeScreen>
|
|||||||
late bool _loading = true;
|
late bool _loading = true;
|
||||||
late SharedPreferences prefs;
|
late SharedPreferences prefs;
|
||||||
late HomeController homeController;
|
late HomeController homeController;
|
||||||
|
late final router = GoRouter.of(context);
|
||||||
|
|
||||||
Timer? _loadingTimer;
|
Timer? _loadingTimer;
|
||||||
bool get _isLoggedIn => false;
|
bool get _isLoggedIn => false;
|
||||||
@@ -35,6 +36,7 @@ class _HomeScreenState extends State<HomeScreen>
|
|||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
router.routerDelegate.addListener(_onRouteChanged);
|
||||||
|
|
||||||
transactionController = Provider.of<TransactionController>(
|
transactionController = Provider.of<TransactionController>(
|
||||||
context,
|
context,
|
||||||
@@ -124,11 +126,19 @@ class _HomeScreenState extends State<HomeScreen>
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _onRouteChanged() {
|
||||||
|
final location = router.routerDelegate.currentConfiguration.uri.toString();
|
||||||
|
if (location.startsWith('/home')) {
|
||||||
|
setupDataAndTransitions();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void dispose() {
|
void dispose() {
|
||||||
_loadingTimer?.cancel();
|
_loadingTimer?.cancel();
|
||||||
_controller.dispose();
|
_controller.dispose();
|
||||||
homeController.dispose();
|
homeController.dispose();
|
||||||
|
router.routerDelegate.removeListener(_onRouteChanged);
|
||||||
super.dispose();
|
super.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -529,6 +539,8 @@ class _HomeScreenState extends State<HomeScreen>
|
|||||||
borderRadius: BorderRadius.circular(12),
|
borderRadius: BorderRadius.circular(12),
|
||||||
),
|
),
|
||||||
onTap: () {
|
onTap: () {
|
||||||
|
transactionController
|
||||||
|
.clearFormData(); // make sure we're starting fresh
|
||||||
homeController.updateSelectedProvider(e);
|
homeController.updateSelectedProvider(e);
|
||||||
transactionController.updateSelectedProvider(e);
|
transactionController.updateSelectedProvider(e);
|
||||||
context.push("/recipients");
|
context.push("/recipients");
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ class PayController extends ChangeNotifier {
|
|||||||
|
|
||||||
void updatePhone(String phone) {
|
void updatePhone(String phone) {
|
||||||
transactionController.model.formData = transactionController.model.formData
|
transactionController.model.formData = transactionController.model.formData
|
||||||
.copyWith(debitPhone: phone);
|
.copyWith(creditPhone: phone);
|
||||||
notifyListeners();
|
notifyListeners();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -114,4 +114,36 @@ class TransactionController extends ChangeNotifier {
|
|||||||
model.repeatFormData = data;
|
model.repeatFormData = data;
|
||||||
notifyListeners();
|
notifyListeners();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
clearFormData() {
|
||||||
|
model.formData = FormData(
|
||||||
|
id: '',
|
||||||
|
type: '',
|
||||||
|
billClientId: '',
|
||||||
|
debitRef: '',
|
||||||
|
debitCurrency: '',
|
||||||
|
amount: '',
|
||||||
|
debitPhone: '',
|
||||||
|
debitAccount: '',
|
||||||
|
creditAccount: '',
|
||||||
|
creditPhone: '',
|
||||||
|
creditName: '',
|
||||||
|
creditEmail: '',
|
||||||
|
billName: '',
|
||||||
|
errorMessage: '',
|
||||||
|
status: 'PENDING',
|
||||||
|
paymentProcessorLabel: '',
|
||||||
|
charge: '',
|
||||||
|
gatewayCharge: '',
|
||||||
|
tax: '',
|
||||||
|
totalAmount: '',
|
||||||
|
paymentProcessorName: '',
|
||||||
|
paymentProcessorImage: '',
|
||||||
|
providerImage: '',
|
||||||
|
userId: '',
|
||||||
|
providerLabel: '',
|
||||||
|
);
|
||||||
|
|
||||||
|
notifyListeners();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user