Merge branch 'development_new_design_2.0' into Fatima-New-Design

merge-update-with-lab-changes
Fatimah Alshammari 4 years ago
commit cd37941109

@ -543,7 +543,7 @@ const GET_CUSTOMERS_ADDRESSES = "Customers/";
const SUBSCRIBE_PRODUCT = "subscribe?"; const SUBSCRIBE_PRODUCT = "subscribe?";
const GET_ORDER = "orders?"; const GET_ORDER = "orders?";
const GET_ORDER_DETAILS = "orders/"; const GET_ORDER_DETAILS = "orders/";
const ADD_CUSTOMER_ADDRESS = "epharmacy/api/addcustomeraddress"; const ADD_CUSTOMER_ADDRESS = "addcustomeraddress";
const EDIT_CUSTOMER_ADDRESS = "epharmacy/api/editcustomeraddress"; const EDIT_CUSTOMER_ADDRESS = "epharmacy/api/editcustomeraddress";
const DELETE_CUSTOMER_ADDRESS = "epharmacy/api/deletecustomeraddress"; const DELETE_CUSTOMER_ADDRESS = "epharmacy/api/deletecustomeraddress";
const GET_ADDRESS = "Customers/"; const GET_ADDRESS = "Customers/";

@ -68,25 +68,26 @@ class OrderPreviewViewModel extends BaseViewModel {
} }
Future<ShoppingCartResponse> changeProductQuantity(ShoppingCart product) async { Future<ShoppingCartResponse> changeProductQuantity(ShoppingCart product) async {
setState(ViewState.Busy); setState(ViewState.BusyLocal);
var resp = await _orderService.changeProductQuantity(product.id, product); var resp = await _orderService.changeProductQuantity(product.id, product);
var object = _handleGetShoppingCartResponse(resp);
if (_orderService.hasError) { if (_orderService.hasError) {
error = _orderService.error; error = _orderService.error;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else { } else {
var object = _handleGetShoppingCartResponse(resp);
setState(ViewState.Idle); setState(ViewState.Idle);
} }
return object; // return object;
} }
Future<ShoppingCartResponse> deleteProduct(ShoppingCart product) async { Future<ShoppingCartResponse> deleteProduct(ShoppingCart product) async {
setState(ViewState.Busy); setState(ViewState.BusyLocal);
var resp = await _orderService.deleteProduct(product.id); var resp = await _orderService.deleteProduct(product.id);
var object = _handleGetShoppingCartResponse(resp); var object = _handleGetShoppingCartResponse(resp);
if (_orderService.hasError) { if (_orderService.hasError) {
error = _orderService.error; error = _orderService.error;
setState(ViewState.Error); setState(ViewState.ErrorLocal);
} else { } else {
setState(ViewState.Idle); setState(ViewState.Idle);
} }

@ -5,6 +5,8 @@ import 'package:diplomaticquarterapp/core/model/pharmacy/pharmacy_categorise.dar
import 'package:diplomaticquarterapp/core/model/pharmacy/scan_qr_model.dart'; import 'package:diplomaticquarterapp/core/model/pharmacy/scan_qr_model.dart';
import 'package:diplomaticquarterapp/core/service/pharmacy_categorise_service.dart'; import 'package:diplomaticquarterapp/core/service/pharmacy_categorise_service.dart';
import 'package:diplomaticquarterapp/locator.dart'; import 'package:diplomaticquarterapp/locator.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:flutter/cupertino.dart';
import 'base_view_model.dart'; import 'base_view_model.dart';
@ -97,23 +99,29 @@ class PharmacyCategoriseViewModel extends BaseViewModel {
setState(ViewState.Idle); setState(ViewState.Idle);
} }
Future getCategoriseParent({String i, int pageIndex, bool isLoading}) async { Future getCategoriseParent(
{String i, int pageIndex, bool isLoading, BuildContext context}) async {
hasError = false; hasError = false;
// _insuranceCardService.clearInsuranceCard(); // _insuranceCardService.clearInsuranceCard();
setState(ViewState.Busy); setState(ViewState.Busy);
// GifLoaderDialogUtils.showMyDialog(context);
await _pharmacyCategoriseService.getCategoriseParent(id: i); await _pharmacyCategoriseService.getCategoriseParent(id: i);
if (_pharmacyCategoriseService.hasError) { if (_pharmacyCategoriseService.hasError) {
error = _pharmacyCategoriseService.error; error = _pharmacyCategoriseService.error;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else } else
await getBrands(id: i); await getBrands(id: i);
await getParentProducts(i: i, pageIndex: pageIndex, isLoading: isLoading); await getParentProducts(
i: i, pageIndex: pageIndex, isLoading: isLoading, context: context);
// GifLoaderDialogUtils.showMyDialog(context);
} }
Future getParentProducts({String i, int pageIndex, bool isLoading}) async { Future getParentProducts(
{String i, int pageIndex, bool isLoading, BuildContext context}) async {
hasError = false; hasError = false;
// _insuranceCardService.clearInsuranceCard(); // _insuranceCardService.clearInsuranceCard();
setState(ViewState.BusyLocal); setState(ViewState.BusyLocal);
//GifLoaderDialogUtils.showMyDialog(context);
await _pharmacyCategoriseService.getParentProducts( await _pharmacyCategoriseService.getParentProducts(
id: i, pageNumber: pageIndex, isLoading: isLoading); id: i, pageNumber: pageIndex, isLoading: isLoading);
if (_pharmacyCategoriseService.hasError) { if (_pharmacyCategoriseService.hasError) {
@ -121,6 +129,7 @@ class PharmacyCategoriseViewModel extends BaseViewModel {
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else } else
setState(ViewState.Idle); setState(ViewState.Idle);
//GifLoaderDialogUtils.hideDialog(context);
} }
Future getSubCategorise({String i}) async { Future getSubCategorise({String i}) async {

File diff suppressed because it is too large Load Diff

@ -9,6 +9,7 @@ import 'package:diplomaticquarterapp/pages/pharmacies/widgets/ProductOrderItem.d
import 'package:diplomaticquarterapp/pages/pharmacy/pharmacyAddresses/PharmacyAddresses.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/pharmacyAddresses/PharmacyAddresses.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/navigation_service.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/buttons/GestureIconButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/GestureIconButton.dart';
@ -20,6 +21,7 @@ import 'package:flutter/material.dart';
import 'package:http/http.dart'; import 'package:http/http.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import '../../../../locator.dart';
import 'cart-order-preview.dart'; import 'cart-order-preview.dart';
class CartOrderPage extends StatefulWidget { class CartOrderPage extends StatefulWidget {
@ -55,6 +57,9 @@ class _CartOrderPageState extends State<CartOrderPage> {
isMainPharmacyPages: true, isMainPharmacyPages: true,
showPharmacyCart: false, showPharmacyCart: false,
baseViewModel: model, baseViewModel: model,
backButtonTab: () {
widget.changeTab(0);
},
backgroundColor: Colors.white, backgroundColor: Colors.white,
body: NetworkBaseView( body: NetworkBaseView(
isLoading: isLoading, isLoading: isLoading,
@ -94,32 +99,34 @@ class _CartOrderPageState extends State<CartOrderPage> {
: 0, : 0,
(index) => ProductOrderItem( (index) => ProductOrderItem(
model.cartResponse model.cartResponse
.shoppingCarts[index], () { .shoppingCarts[index], () async {
print(model.cartResponse GifLoaderDialogUtils.showMyDialog(
.shoppingCarts[index].quantity); context);
model await model.changeProductQuantity(model
.changeProductQuantity(model .cartResponse.shoppingCarts[index]);
.cartResponse if (model.state != ViewState.Error) {
// appScaffold.appBar.badgeUpdater(
// '${value.quantityCount ?? 0}');
}
if (model.state ==
ViewState.ErrorLocal) {
Utils.showErrorToast(model.error);
}
GifLoaderDialogUtils.hideDialog(
context);
}, () async {
GifLoaderDialogUtils.showMyDialog(
context);
await model
.deleteProduct(model.cartResponse
.shoppingCarts[index]) .shoppingCarts[index])
.then((value) { .then((value) {
if (model.state != ViewState.Error) {
// appScaffold.appBar.badgeUpdater(
// '${value.quantityCount ?? 0}');
}
if (model.state == if (model.state ==
ViewState.ErrorLocal) { ViewState.ErrorLocal) {
Utils.showErrorToast(model.error); Utils.showErrorToast(model.error);
} }
}); GifLoaderDialogUtils.hideDialog(
}, () { context);
model
.deleteProduct(model.cartResponse
.shoppingCarts[index])
.then((value) {
if (model.state != ViewState.Error) {
// appScaffold.appBar.badgeUpdater(
// '${value.quantityCount ?? 0}');
}
}); });
})) }))
], ],
@ -249,7 +256,7 @@ class _CartOrderPageState extends State<CartOrderPage> {
? height * 0.15 ? height * 0.15
: 0, : 0,
color: Colors.white, color: Colors.white,
child: OrderBottomWidget(model.addresses, height, model), child: OrderBottomWidget(model.addresses, height, model, isLoading),
), ),
); );
} }
@ -267,8 +274,9 @@ class OrderBottomWidget extends StatefulWidget {
final List<Addresses> addresses; final List<Addresses> addresses;
final double height; final double height;
final OrderPreviewViewModel model; final OrderPreviewViewModel model;
final bool isLoading;
OrderBottomWidget(this.addresses, this.height, this.model); OrderBottomWidget(this.addresses, this.height, this.model, this.isLoading);
@override @override
_OrderBottomWidgetState createState() => _OrderBottomWidgetState(); _OrderBottomWidgetState createState() => _OrderBottomWidgetState();
@ -281,7 +289,7 @@ class _OrderBottomWidgetState extends State<OrderBottomWidget> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
ProjectViewModel projectProvider = Provider.of(context); ProjectViewModel projectProvider = Provider.of(context);
return !(widget.model.cartResponse.shoppingCarts == null || return ! widget.isLoading && !(widget.model.cartResponse.shoppingCarts == null ||
widget.model.cartResponse.shoppingCarts.length == 0) widget.model.cartResponse.shoppingCarts.length == 0)
? Column( ? Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,

File diff suppressed because it is too large Load Diff

@ -43,7 +43,7 @@ dependencies:
flutter_html: ^1.2.0 flutter_html: ^1.2.0
# Pagnation # Pagnation
pull_to_refresh: ^1.6.2 pull_to_refresh: 1.6.2
# Native # Native
flutter_device_type: ^0.2.0 flutter_device_type: ^0.2.0

Loading…
Cancel
Save