Offer And Packages (View Only)

merge-update-with-lab-changes
Zohaib Iqbal Kambrani 4 years ago
parent 8d988ba994
commit 94a99a911e

@ -284,13 +284,14 @@ class _HomePageFragment2State extends State<HomePageFragment2> {
} }
Widget offersButton() { Widget offersButton() {
final bypassPrivilageCheck = false;
return Expanded( return Expanded(
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () { onTap: () {
projectViewModel.analytics.offerPackages.log(); projectViewModel.analytics.offerPackages.log();
AuthenticatedUser user = projectViewModel.user; AuthenticatedUser user = projectViewModel.user;
if(projectViewModel.havePrivilege(82)) if(projectViewModel.havePrivilege(82) || bypassPrivilageCheck)
Navigator.of(context).push(MaterialPageRoute(builder: (context) => PackagesOfferTabPage(user))); Navigator.of(context).push(MaterialPageRoute(builder: (context) => PackagesOfferTabPage(user)));
}, },
child: Stack( child: Stack(
@ -438,7 +439,7 @@ class _HomePageFragment2State extends State<HomePageFragment2> {
], ],
), ),
), ),
projectViewModel.havePrivilege(82) projectViewModel.havePrivilege(82) || bypassPrivilageCheck
? Container() ? Container()
: Container( : Container(
width: double.infinity, width: double.infinity,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/core/model/packages_offers/requests/AddProd
import 'package:diplomaticquarterapp/core/model/packages_offers/responses/PackagesResponseModel.dart'; import 'package:diplomaticquarterapp/core/model/packages_offers/responses/PackagesResponseModel.dart';
import 'package:diplomaticquarterapp/core/viewModels/packages_offers/PackagesOffersViewModel.dart'; import 'package:diplomaticquarterapp/core/viewModels/packages_offers/PackagesOffersViewModel.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/packages_offers/packages_offers_tab_pager.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart' as utils; import 'package:diplomaticquarterapp/uitl/utils.dart' as utils;
import 'package:diplomaticquarterapp/widgets/offers_packages/PackagesOfferCard.dart'; import 'package:diplomaticquarterapp/widgets/offers_packages/PackagesOfferCard.dart';
@ -81,7 +82,7 @@ class _ClinicPackagesPageState extends State<ClinicPackagesPage> with AfterLayou
child: PackagesItemCard( child: PackagesItemCard(
itemContentPadding: 10, itemContentPadding: 10,
itemModel: _products[index], itemModel: _products[index],
onCartClick: onProductCartClick, onCartClick: OFFERS_VIEW_ONLY ? onProductCartClick : null,
)), )),
staggeredTileBuilder: (int index) => StaggeredTile.fit(2), staggeredTileBuilder: (int index) => StaggeredTile.fit(2),
mainAxisSpacing: 20, mainAxisSpacing: 20,

@ -14,6 +14,7 @@ import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/h2o/h20_setting
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/packages_offers/ClinicOfferAndPackagesPage.dart'; import 'package:diplomaticquarterapp/pages/packages_offers/ClinicOfferAndPackagesPage.dart';
import 'package:diplomaticquarterapp/pages/packages_offers/OfferAndPackagesCartPage.dart'; import 'package:diplomaticquarterapp/pages/packages_offers/OfferAndPackagesCartPage.dart';
import 'package:diplomaticquarterapp/pages/packages_offers/packages_offers_tab_pager.dart';
import 'package:diplomaticquarterapp/pages/packages_offers/packages_orders_history.dart'; import 'package:diplomaticquarterapp/pages/packages_offers/packages_orders_history.dart';
import 'package:diplomaticquarterapp/routes.dart'; import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart' as auth; import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart' as auth;
@ -102,7 +103,8 @@ class _PackagesHomePageState extends State<PackagesHomePage> {
padding: EdgeInsets.only(top: 21, bottom: 21), padding: EdgeInsets.only(top: 21, bottom: 21),
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
children: [ children: [
inputWidget(TranslationBase.of(context).search, "", _searchTextController, isInputTypeNum: false), if(OFFERS_VIEW_ONLY)
inputWidget(TranslationBase.of(context).search, "", _searchTextController, isInputTypeNum: false),
SizedBox(height: 12), SizedBox(height: 12),
Padding( Padding(
padding: const EdgeInsets.only(left: 21, right: 21), padding: const EdgeInsets.only(left: 21, right: 21),
@ -125,7 +127,7 @@ class _PackagesHomePageState extends State<PackagesHomePage> {
itemBuilder: (BuildContext context, int index) { itemBuilder: (BuildContext context, int index) {
return PackagesItemCard( return PackagesItemCard(
itemModel: viewModel.bestSellerList[index], itemModel: viewModel.bestSellerList[index],
onCartClick: onProductCartClick, onCartClick: OFFERS_VIEW_ONLY ? onProductCartClick : null,
); );
}, },
), ),
@ -146,7 +148,7 @@ class _PackagesHomePageState extends State<PackagesHomePage> {
itemBuilder: (BuildContext context, int index) { itemBuilder: (BuildContext context, int index) {
return PackagesItemCard( return PackagesItemCard(
itemModel: viewModel.latestOffersList[index], itemModel: viewModel.latestOffersList[index],
onCartClick: onProductCartClick, onCartClick: OFFERS_VIEW_ONLY ? onProductCartClick : null,
); );
}, },
), ),
@ -155,13 +157,14 @@ class _PackagesHomePageState extends State<PackagesHomePage> {
), ),
), ),
DefaultButton( if(OFFERS_VIEW_ONLY)
TranslationBase.of(context).myCart, DefaultButton(
onCartClick, TranslationBase.of(context).myCart,
svgIcon: "assets/images/new/cart.svg", onCartClick,
isTextExpanded: false, svgIcon: "assets/images/new/cart.svg",
count: viewModel?.service?.customer?.shoppingCartItems?.length ?? 0, isTextExpanded: false,
).insideContainer count: viewModel?.service?.customer?.shoppingCartItems?.length ?? 0,
).insideContainer
], ],
); );
}, },

@ -10,6 +10,7 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
bool OFFERS_VIEW_ONLY = false;
class PackagesOfferTabPage extends StatefulWidget{ class PackagesOfferTabPage extends StatefulWidget{
AuthenticatedUser user; AuthenticatedUser user;
@ -47,30 +48,33 @@ class PackagesOfferTabPageState extends State<PackagesOfferTabPage> with SingleT
showNewAppBarTitle: true, showNewAppBarTitle: true,
body: Column( body: Column(
children: <Widget>[ children: <Widget>[
TabBar( SizedBox(
controller: _tabController, height: OFFERS_VIEW_ONLY ? null : 0,
indicatorWeight: 3.0, child: TabBar(
indicatorSize: TabBarIndicatorSize.tab, controller: _tabController,
labelColor: Color(0xff2B353E), indicatorWeight: 3.0,
unselectedLabelColor: Color(0xff575757), indicatorSize: TabBarIndicatorSize.tab,
labelPadding: EdgeInsets.only(top: 15, bottom: 13, left: 20, right: 20), labelColor: Color(0xff2B353E),
labelStyle: TextStyle( unselectedLabelColor: Color(0xff575757),
fontFamily: _projectViewModel.isArabic ? 'Cairo' : 'Poppins', labelPadding: EdgeInsets.only(top: 15, bottom: 13, left: 20, right: 20),
fontSize: 16, labelStyle: TextStyle(
fontWeight: FontWeight.w600, fontFamily: _projectViewModel.isArabic ? 'Cairo' : 'Poppins',
letterSpacing: -0.48, fontSize: 16,
), fontWeight: FontWeight.w600,
unselectedLabelStyle: TextStyle( letterSpacing: -0.48,
fontFamily: _projectViewModel.isArabic ? 'Cairo' : 'Poppins', ),
fontSize: 16, unselectedLabelStyle: TextStyle(
fontWeight: FontWeight.w600, fontFamily: _projectViewModel.isArabic ? 'Cairo' : 'Poppins',
letterSpacing: -0.48, fontSize: 16,
fontWeight: FontWeight.w600,
letterSpacing: -0.48,
),
tabs: [Text(TranslationBase.of(context).offerAndPackages), Text(TranslationBase.of(context).orderLog)],
), ),
tabs: [Text(TranslationBase.of(context).offerAndPackages), Text(TranslationBase.of(context).orderLog)],
), ),
Expanded( Expanded(
child: TabBarView( child: TabBarView(
physics: BouncingScrollPhysics(), physics: OFFERS_VIEW_ONLY ? BouncingScrollPhysics() : NeverScrollableScrollPhysics(),
controller: _tabController, controller: _tabController,
children: <Widget>[ children: <Widget>[
PackagesHomePage(widget.user), PackagesHomePage(widget.user),

@ -111,12 +111,13 @@ class PackagesItemCardState extends State<PackagesItemCard> {
), ),
], ],
), ),
InkWell( if(widget.onCartClick != null)
child: SvgPicture.asset("assets/images/new/add_to_cart.svg"), InkWell(
onTap: () { child: SvgPicture.asset("assets/images/new/add_to_cart.svg"),
widget.onCartClick(widget.itemModel); onTap: () {
}, widget.onCartClick(widget.itemModel);
), },
),
], ],
), ),
), ),

Loading…
Cancel
Save