update Mzansi Wallet nav
This commit is contained in:
@@ -1,7 +1,10 @@
|
||||
import 'package:flutter_speed_dial/flutter_speed_dial.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:mzansi_innovation_hub/main.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_wallet_services.dart';
|
||||
@@ -49,9 +52,9 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
final _formKey = GlobalKey<FormState>();
|
||||
|
||||
void openscanner() async {
|
||||
Navigator.of(context).pushNamed(
|
||||
'/scanner',
|
||||
arguments: _cardNumberController,
|
||||
context.pushNamed(
|
||||
"barcodeScanner",
|
||||
extra: _cardNumberController,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -136,18 +139,31 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
const SizedBox(height: 15),
|
||||
Center(
|
||||
child: MihButton(
|
||||
onPressed: () {
|
||||
onPressed: () async {
|
||||
if (_formKey.currentState!.validate()) {
|
||||
MIHMzansiWalletApis.updateLoyaltyCardAPICall(
|
||||
int statusCode = await MIHMzansiWalletApis
|
||||
.updateLoyaltyCardAPICall(
|
||||
widget.signedInUser,
|
||||
widget.cardList[index].idloyalty_cards,
|
||||
widget.cardList[index].favourite,
|
||||
widget.cardList[index].priority_index,
|
||||
_nicknameController.text,
|
||||
_cardNumberController.text,
|
||||
0,
|
||||
ctxt,
|
||||
);
|
||||
if (statusCode == 200) {
|
||||
context.pop();
|
||||
context.pop();
|
||||
context.goNamed(
|
||||
"mzansiWallet",
|
||||
extra: WalletArguments(
|
||||
widget.signedInUser,
|
||||
0,
|
||||
),
|
||||
);
|
||||
} else {
|
||||
internetConnectionPopUp();
|
||||
}
|
||||
} else {
|
||||
MihAlertServices().formNotFilledCompletely(context);
|
||||
}
|
||||
@@ -184,13 +200,23 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
builder: (context) {
|
||||
return MIHDeleteMessage(
|
||||
deleteType: "Loyalty Card",
|
||||
onTap: () {
|
||||
MIHMzansiWalletApis.deleteLoyaltyCardAPICall(
|
||||
onTap: () async {
|
||||
int statusCode =
|
||||
await MIHMzansiWalletApis.deleteLoyaltyCardAPICall(
|
||||
widget.signedInUser,
|
||||
widget.cardList[index].idloyalty_cards,
|
||||
widget.navIndex,
|
||||
context,
|
||||
);
|
||||
if (statusCode == 200) {
|
||||
setState(() {
|
||||
widget.cardList.removeAt(index);
|
||||
});
|
||||
context.pop();
|
||||
context.pop();
|
||||
} else {
|
||||
context.pop();
|
||||
internetConnectionPopUp();
|
||||
}
|
||||
});
|
||||
},
|
||||
);
|
||||
@@ -225,17 +251,30 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
height: 15,
|
||||
),
|
||||
MihButton(
|
||||
onPressed: () {
|
||||
MIHMzansiWalletApis.updateLoyaltyCardAPICall(
|
||||
onPressed: () async {
|
||||
int statusCode =
|
||||
await MIHMzansiWalletApis.updateLoyaltyCardAPICall(
|
||||
widget.signedInUser,
|
||||
widget.cardList[index].idloyalty_cards,
|
||||
"Yes",
|
||||
_noFavourites,
|
||||
widget.cardList[index].nickname,
|
||||
widget.cardList[index].card_number,
|
||||
1,
|
||||
ctxt,
|
||||
);
|
||||
if (statusCode == 200) {
|
||||
context.pop();
|
||||
context.pop();
|
||||
context.goNamed(
|
||||
"mzansiWallet",
|
||||
extra: WalletArguments(
|
||||
widget.signedInUser,
|
||||
1,
|
||||
),
|
||||
);
|
||||
} else {
|
||||
internetConnectionPopUp();
|
||||
}
|
||||
},
|
||||
buttonColor: MihColors.getGreenColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
@@ -257,6 +296,17 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
);
|
||||
}
|
||||
|
||||
void internetConnectionPopUp() {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (context) {
|
||||
return const MIHErrorMessage(
|
||||
errorType: "Internet Connection",
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
void removeFromFavCardWindow(BuildContext ctxt, int index) {
|
||||
showDialog(
|
||||
context: context,
|
||||
@@ -286,17 +336,30 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
||||
height: 15,
|
||||
),
|
||||
MihButton(
|
||||
onPressed: () {
|
||||
MIHMzansiWalletApis.updateLoyaltyCardAPICall(
|
||||
onPressed: () async {
|
||||
int statusCode =
|
||||
await MIHMzansiWalletApis.updateLoyaltyCardAPICall(
|
||||
widget.signedInUser,
|
||||
widget.cardList[index].idloyalty_cards,
|
||||
"",
|
||||
0,
|
||||
widget.cardList[index].nickname,
|
||||
widget.cardList[index].card_number,
|
||||
0,
|
||||
ctxt,
|
||||
);
|
||||
if (statusCode == 200) {
|
||||
context.pop();
|
||||
context.pop();
|
||||
context.goNamed(
|
||||
"mzansiWallet",
|
||||
extra: WalletArguments(
|
||||
widget.signedInUser,
|
||||
0,
|
||||
),
|
||||
);
|
||||
} else {
|
||||
internetConnectionPopUp();
|
||||
}
|
||||
},
|
||||
buttonColor: MihColors.getRedColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'dart:async';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:mobile_scanner/mobile_scanner.dart';
|
||||
import 'package:mzansi_innovation_hub/main.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_button.dart';
|
||||
@@ -36,7 +37,7 @@ class _MihBarcodeScannerState extends State<MihBarcodeScanner>
|
||||
});
|
||||
print(bcode.barcodes.first.rawValue);
|
||||
_scannerController.stop();
|
||||
Navigator.of(context).pop();
|
||||
context.pop();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,7 +124,7 @@ class _MihBarcodeScannerState extends State<MihBarcodeScanner>
|
||||
child: MihButton(
|
||||
onPressed: () {
|
||||
_scannerController.stop();
|
||||
Navigator.of(context).pop();
|
||||
context.pop();
|
||||
},
|
||||
buttonColor: MihColors.getRedColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode ==
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
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';
|
||||
@@ -52,7 +53,13 @@ class _MihWalletState extends State<MihWallet> {
|
||||
icon: const Icon(Icons.arrow_back),
|
||||
iconSize: 35,
|
||||
onTap: () {
|
||||
Navigator.of(context).pop();
|
||||
context.goNamed(
|
||||
'home',
|
||||
extra: AuthArguments(
|
||||
true,
|
||||
false,
|
||||
),
|
||||
);
|
||||
FocusScope.of(context).unfocus();
|
||||
},
|
||||
);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:mzansi_innovation_hub/main.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tile.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
|
||||
@@ -25,10 +26,14 @@ class _MihWalletTileState extends State<MihWalletTile> {
|
||||
Widget build(BuildContext context) {
|
||||
return MihPackageTile(
|
||||
onTap: () {
|
||||
Navigator.of(context).pushNamed(
|
||||
'/mzansi-wallet',
|
||||
arguments: WalletArguments(widget.signedInUser, 0),
|
||||
context.goNamed(
|
||||
'mzansiWallet',
|
||||
extra: WalletArguments(widget.signedInUser, 0),
|
||||
);
|
||||
// Navigator.of(context).pushNamed(
|
||||
// '/mzansi-wallet',
|
||||
// arguments: WalletArguments(widget.signedInUser, 0),
|
||||
// );
|
||||
},
|
||||
appName: "Mzansi Wallet",
|
||||
appIcon: Icon(
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import 'package:flutter_speed_dial/flutter_speed_dial.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:mzansi_innovation_hub/main.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_alert.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_wallet_services.dart';
|
||||
@@ -73,9 +75,9 @@ class _MihCardsState extends State<MihCards> {
|
||||
}
|
||||
|
||||
void openscanner() async {
|
||||
Navigator.of(context).pushNamed(
|
||||
'/scanner',
|
||||
arguments: cardNumberController,
|
||||
context.pushNamed(
|
||||
"barcodeScanner",
|
||||
extra: cardNumberController,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -87,6 +89,71 @@ class _MihCardsState extends State<MihCards> {
|
||||
}
|
||||
}
|
||||
|
||||
void successPopUp(String title, String message, int packageIndex) {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (context) {
|
||||
return MihPackageAlert(
|
||||
alertIcon: Icon(
|
||||
Icons.check_circle_outline_rounded,
|
||||
size: 150,
|
||||
color: MihColors.getGreenColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
),
|
||||
alertTitle: title,
|
||||
alertBody: Column(
|
||||
children: [
|
||||
Text(
|
||||
message,
|
||||
style: TextStyle(
|
||||
color: MihColors.getSecondaryColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
fontSize: 15,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 25),
|
||||
Center(
|
||||
child: MihButton(
|
||||
onPressed: () {
|
||||
context.pop();
|
||||
},
|
||||
buttonColor: MihColors.getGreenColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
elevation: 10,
|
||||
width: 300,
|
||||
child: Text(
|
||||
"Dismiss",
|
||||
style: TextStyle(
|
||||
color: MihColors.getPrimaryColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode ==
|
||||
"Dark"),
|
||||
fontSize: 20,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
],
|
||||
),
|
||||
alertColour: MihColors.getGreenColor(
|
||||
MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
void internetConnectionPopUp() {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (context) {
|
||||
return const MIHErrorMessage(
|
||||
errorType: "Internet Connection",
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
void addCardWindow(BuildContext ctxt, double width) {
|
||||
showDialog(
|
||||
context: context,
|
||||
@@ -246,7 +313,7 @@ class _MihCardsState extends State<MihCards> {
|
||||
const SizedBox(height: 15),
|
||||
Center(
|
||||
child: MihButton(
|
||||
onPressed: () {
|
||||
onPressed: () async {
|
||||
if (_formKey.currentState!.validate()) {
|
||||
if (shopController.text == "") {
|
||||
showDialog(
|
||||
@@ -257,7 +324,8 @@ class _MihCardsState extends State<MihCards> {
|
||||
},
|
||||
);
|
||||
} else {
|
||||
MIHMzansiWalletApis.addLoyaltyCardAPICall(
|
||||
int statusCode =
|
||||
await MIHMzansiWalletApis.addLoyaltyCardAPICall(
|
||||
widget.signedInUser,
|
||||
widget.signedInUser.app_id,
|
||||
shopController.text,
|
||||
@@ -265,9 +333,22 @@ class _MihCardsState extends State<MihCards> {
|
||||
"",
|
||||
0,
|
||||
_nicknameController.text,
|
||||
0,
|
||||
context,
|
||||
);
|
||||
if (statusCode == 201) {
|
||||
setState(() {
|
||||
cardList = MIHMzansiWalletApis.getLoyaltyCards(
|
||||
widget.signedInUser.app_id);
|
||||
});
|
||||
context.pop();
|
||||
successPopUp(
|
||||
"Successfully Added Card",
|
||||
"The loyalty card has been added to your favourites.",
|
||||
0,
|
||||
);
|
||||
} else {
|
||||
internetConnectionPopUp();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
MihAlertServices().formNotFilledCompletely(context);
|
||||
|
||||
Reference in New Issue
Block a user