NEW: complete provider mzansi wallet

This commit is contained in:
2025-10-21 10:22:20 +02:00
parent 15106d0a00
commit c79904d132
10 changed files with 295 additions and 302 deletions

View File

@@ -2,9 +2,9 @@ import 'package:go_router/go_router.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_action.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
import 'package:flutter/material.dart';
import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/package_tools/mih_card_favourites.dart';
@@ -13,10 +13,8 @@ import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_wallet_services.da
import 'package:provider/provider.dart';
class MihWallet extends StatefulWidget {
final WalletArguments arguments;
const MihWallet({
super.key,
required this.arguments,
});
@override
@@ -26,29 +24,25 @@ class MihWallet extends StatefulWidget {
class _MihWalletState extends State<MihWallet> {
bool isLoading = true;
void setPackageIndex() {
if (widget.arguments.index >= 0 && widget.arguments.index <= 3) {
context.read<MzansiWalletProvider>().setToolIndex(widget.arguments.index);
}
}
Future<void> setLoyaltyCards() async {
Future<void> setLoyaltyCards(
MzansiProfileProvider mzansiProfileProvider) async {
await MIHMzansiWalletApis.getLoyaltyCards(
widget.arguments.signedInUser.app_id, context);
mzansiProfileProvider.user!.app_id, context);
}
Future<void> setFavouritesCards() async {
Future<void> setFavouritesCards(
MzansiProfileProvider mzansiProfileProvider) async {
await MIHMzansiWalletApis.getFavouriteLoyaltyCards(
widget.arguments.signedInUser.app_id, context);
mzansiProfileProvider.user!.app_id, context);
}
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((_) async {
setPackageIndex();
await setLoyaltyCards();
await setFavouritesCards();
var mzansiProfileProvider = context.read<MzansiProfileProvider>();
await setLoyaltyCards(mzansiProfileProvider);
await setFavouritesCards(mzansiProfileProvider);
context.read<MihBannerAdProvider>().loadBannerAd();
setState(() {
isLoading = false;
@@ -104,12 +98,8 @@ class _MihWalletState extends State<MihWallet> {
List<Widget> getToolBody() {
List<Widget> toolBodies = [
MihCards(
signedInUser: widget.arguments.signedInUser,
),
MihCardFavourites(
signedInUser: widget.arguments.signedInUser,
),
MihCards(),
MihCardFavourites(),
];
if (isLoading) {
return [