Merge branch 'development_haroon' into 'master'

chat privilege added

See merge request Cloud_Solution/mohemm-flutter-app!173
merge-requests/174/merge
haroon amjad 3 years ago
commit c1d89ae5e7

@ -17,6 +17,7 @@ import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart'; import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart';
import 'package:mohem_flutter_app/models/privilege_list_model.dart';
import 'package:mohem_flutter_app/provider/chat_provider_model.dart'; import 'package:mohem_flutter_app/provider/chat_provider_model.dart';
import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart'; import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart';
import 'package:mohem_flutter_app/ui/landing/widget/app_drawer.dart'; import 'package:mohem_flutter_app/ui/landing/widget/app_drawer.dart';
@ -62,7 +63,9 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
data = Provider.of<DashboardProviderModel>(context, listen: false); data = Provider.of<DashboardProviderModel>(context, listen: false);
marathonProvider = Provider.of<MarathonProvider>(context, listen: false); marathonProvider = Provider.of<MarathonProvider>(context, listen: false);
cProvider = Provider.of<ChatProviderModel>(context, listen: false); cProvider = Provider.of<ChatProviderModel>(context, listen: false);
_bHubCon(); if (checkIfPrivilegedForChat()) {
_bHubCon();
}
_onRefresh(true); _onRefresh(true);
}); });
} }
@ -166,15 +169,6 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
"masterId": val.result!.data!.notificationMasterId, "masterId": val.result!.data!.notificationMasterId,
"advertisement": value.mohemmItgResponseItem!.result!.data!.advertisement, "advertisement": value.mohemmItgResponseItem!.result!.data!.advertisement,
}); });
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (BuildContext context) => ITGAdsScreen(
// addMasterId: val.result!.data!.notificationMasterId!,
// advertisement: value.mohemmItgResponseItem!.result!.data!.advertisement!,
// ),
// ),
// );
} }
} }
}, },
@ -188,46 +182,6 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
key: _scaffoldState, key: _scaffoldState,
// appBar: AppBar(
// actions: [
// IconButton(
// onPressed: () {
// data.getITGNotification().then((val) {
// if (val!.result!.data != null) {
// print("-------------------- Survey ----------------------------");
// if (val.result!.data!.notificationType == "Survey") {
// Navigator.pushNamed(context, AppRoutes.survey, arguments: val.result!.data);
// } else {
// print("------------------------------------------- Ads --------------------");
// DashboardApiClient().getAdvertisementDetail(val.result!.data!.notificationMasterId ?? "").then(
// (value) {
// if (value!.mohemmItgResponseItem!.statusCode == 200) {
// if (value.mohemmItgResponseItem!.result!.data != null) {
// Navigator.pushNamed(context, AppRoutes.advertisement, arguments: {
// "masterId": val.result!.data!.notificationMasterId,
// "advertisement": value.mohemmItgResponseItem!.result!.data!.advertisement,
// });
//
// // Navigator.push(
// // context,
// // MaterialPageRoute(
// // builder: (BuildContext context) => ITGAdsScreen(
// // addMasterId: val.result!.data!.notificationMasterId!,
// // advertisement: value.mohemmItgResponseItem!.result!.data!.advertisement!,
// // ),
// // ),
// // );
// }
// }
// },
// );
// }
// }
// });
// },
// icon: Icon(Icons.add))
// ],
// ),
body: Column( body: Column(
children: [ children: [
Row( Row(
@ -614,24 +568,28 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
children: [ children: [
SvgPicture.asset( SvgPicture.asset(
"assets/icons/chat/chat.svg", "assets/icons/chat/chat.svg",
color: currentIndex == 4 color: !checkIfPrivilegedForChat()
? MyColors.grey3AColor ? MyColors.lightGreyE3Color
: cProvider.disbaleChatForThisUser : currentIndex == 4
? MyColors.lightGreyE3Color ? MyColors.grey3AColor
: MyColors.grey98Color, : cProvider.disbaleChatForThisUser
? MyColors.lightGreyE3Color
: MyColors.grey98Color,
).paddingAll(4), ).paddingAll(4),
Consumer<ChatProviderModel>( Consumer<ChatProviderModel>(
builder: (BuildContext cxt, ChatProviderModel data, Widget? child) { builder: (BuildContext cxt, ChatProviderModel data, Widget? child) {
return Positioned( return !checkIfPrivilegedForChat()
right: 0, ? const SizedBox()
top: 0, : Positioned(
child: Container( right: 0,
padding: const EdgeInsets.only(left: 4, right: 4), top: 0,
alignment: Alignment.center, child: Container(
decoration: BoxDecoration(color: cProvider.disbaleChatForThisUser ? MyColors.pinkDarkColor : MyColors.redColor, borderRadius: BorderRadius.circular(17)), padding: const EdgeInsets.only(left: 4, right: 4),
child: data.chatUConvCounter.toString().toText10(color: Colors.white), alignment: Alignment.center,
), decoration: BoxDecoration(color: cProvider.disbaleChatForThisUser ? MyColors.pinkDarkColor : MyColors.redColor, borderRadius: BorderRadius.circular(17)),
); child: data.chatUConvCounter.toString().toText10(color: Colors.white),
),
);
}, },
), ),
], ],
@ -655,7 +613,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
} else if (index == 3) { } else if (index == 3) {
Navigator.pushNamed(context, AppRoutes.itemsForSale); Navigator.pushNamed(context, AppRoutes.itemsForSale);
} else if (index == 4) { } else if (index == 4) {
if (!cProvider.disbaleChatForThisUser) { if (!cProvider.disbaleChatForThisUser && checkIfPrivilegedForChat()) {
Navigator.pushNamed(context, AppRoutes.chat); Navigator.pushNamed(context, AppRoutes.chat);
} }
} }
@ -680,7 +638,17 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb
} }
} }
}); });
Navigator.pushNamed(context, AppRoutes.offersAndDiscountsDetails, arguments: getOffersDetailList); Navigator.pushNamed(context, AppRoutes.offersAndDiscountsDetails, arguments: getOffersDetailList);
} }
bool checkIfPrivilegedForChat() {
for (PrivilegeListModel element in AppState().privilegeListModel!) {
if (element.serviceName?.toLowerCase() == "chat") {
if (element.previlege != null) {
return element.previlege!;
}
}
}
return false;
}
} }

Loading…
Cancel
Save