Merge branch 'haroon-new-design' into 'development_new_design_2.0'

Haroon new design

See merge request Cloud_Solution/diplomatic-quarter!525
merge-update-with-lab-changes
haroon amjad 4 years ago
commit 975fe6ca7b

@ -1,12 +1,18 @@
import 'dart:collection';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/models/Appointments/DoctorListResponse.dart';
import 'package:diplomaticquarterapp/models/Appointments/laser_body_parts.dart'; import 'package:diplomaticquarterapp/models/Appointments/laser_body_parts.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/SearchResults.dart';
import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsList.dart'; import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsList.dart';
import 'package:diplomaticquarterapp/theme/colors.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/laser_body_parts_data.dart'; import 'package:diplomaticquarterapp/uitl/laser_body_parts_data.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -129,11 +135,13 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
labelStyle: TextStyle( labelStyle: TextStyle(
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
fontFamily: projectViewModel.isArabic ? 'Cairo' : 'Poppins',
letterSpacing: -0.48, letterSpacing: -0.48,
), ),
unselectedLabelStyle: TextStyle( unselectedLabelStyle: TextStyle(
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
fontFamily: projectViewModel.isArabic ? 'Cairo' : 'Poppins',
letterSpacing: -0.48, letterSpacing: -0.48,
), ),
tabs: [Text(TranslationBase.of(context).male), Text(TranslationBase.of(context).female)], tabs: [Text(TranslationBase.of(context).male), Text(TranslationBase.of(context).female)],
@ -176,8 +184,11 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
Expanded( Expanded(
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).continues, TranslationBase.of(context).continues,
() {}, getDuration() != 0 ? () {
color: Color(0xff359846), callDoctorsSearchAPI();
} : null,
color: CustomColors.green,
disabledColor: CustomColors.grey2,
), ),
), ),
], ],
@ -187,6 +198,65 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
); );
} }
callDoctorsSearchAPI() {
GifLoaderDialogUtils.showMyDialog(context);
List<DoctorList> doctorsList = [];
List<String> arr = [];
List<String> arrDistance = [];
List<String> result;
int numAll;
List<PatientDoctorAppointmentList> _patientDoctorAppointmentListHospital = List();
DoctorsListService service = new DoctorsListService();
service.getDoctorsList(253, 0, false, context).then((res) {
GifLoaderDialogUtils.hideDialog(context);
if (res['MessageStatus'] == 1) {
setState(() {
if (res['DoctorList'].length != 0) {
doctorsList.clear();
res['DoctorList'].forEach((v) {
doctorsList.add(new DoctorList.fromJson(v));
});
doctorsList.forEach((element) {
List<PatientDoctorAppointmentList> doctorByHospital = _patientDoctorAppointmentListHospital
.where(
(elementClinic) => elementClinic.filterName == element.projectName,
)
.toList();
if (doctorByHospital.length != 0) {
_patientDoctorAppointmentListHospital[_patientDoctorAppointmentListHospital.indexOf(doctorByHospital[0])].patientDoctorAppointmentList.add(element);
} else {
_patientDoctorAppointmentListHospital
.add(PatientDoctorAppointmentList(filterName: element.projectName, distanceInKMs: element.projectDistanceInKiloMeters.toString(), patientDoctorAppointment: element));
}
});
} else {}
});
result = LinkedHashSet<String>.from(arr).toList();
numAll = result.length;
navigateToSearchResults(context, doctorsList, _patientDoctorAppointmentListHospital);
} else {
AppToast.showErrorToast(message: res['ErrorEndUserMessage']);
}
}).catchError((err) {
GifLoaderDialogUtils.hideDialog(context);
print(err);
AppToast.showErrorToast(message: err);
});
}
Future navigateToSearchResults(context, List<DoctorList> docList, List<PatientDoctorAppointmentList> patientDoctorAppointmentListHospital) async {
Navigator.push(context, FadePage(page: SearchResults(isLiveCareAppointment: false, doctorsList: docList, patientDoctorAppointmentListHospital: patientDoctorAppointmentListHospital)))
.then((value) {
setState(() {
// dropdownValue = null;
});
// getProjectsList();
});
}
int getDuration() { int getDuration() {
int duration = 0; int duration = 0;
if (_isFullBody) { if (_isFullBody) {
@ -255,7 +325,7 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
color: _selectedCategoryIndex == index ? Colors.transparent : Color(0xffEAEAEA), color: _selectedCategoryIndex == index ? Colors.transparent : Color(0xffEAEAEA),
), ),
), ),
padding: EdgeInsets.symmetric(vertical: 11, horizontal: 26), padding: EdgeInsets.symmetric(vertical: 8, horizontal: 26),
child: Text( child: Text(
list[index].title, list[index].title,
style: TextStyle( style: TextStyle(
@ -404,6 +474,7 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
color: Color(0xff2B353E), color: Color(0xff2B353E),
letterSpacing: -0.48, letterSpacing: -0.48,
), ),
maxLines: 1,
), ),
), ),
], ],

@ -76,7 +76,7 @@ class _LandingPagePharmacyState extends State<LandingPagePharmacy> {
children: [ children: [
PharmacyPage(), PharmacyPage(),
PharmacyCategorisePage(), PharmacyCategorisePage(),
PharmacyProfilePage(), PharmacyProfilePage(moveToOrder: false),
CartOrderPage(changeTab: changeCurrentTab), CartOrderPage(changeTab: changeCurrentTab),
], ],
), ),

@ -25,8 +25,7 @@ class OrderPage extends StatefulWidget {
_OrderPageState createState() => _OrderPageState(); _OrderPageState createState() => _OrderPageState();
} }
class _OrderPageState extends State<OrderPage> class _OrderPageState extends State<OrderPage> with SingleTickerProviderStateMixin {
with SingleTickerProviderStateMixin {
String pageID = "1"; String pageID = "1";
String customerId = ""; String customerId = "";
String order = ""; String order = "";
@ -54,8 +53,6 @@ class _OrderPageState extends State<OrderPage>
_tabController = new TabController( _tabController = new TabController(
length: 4, length: 4,
vsync: this, vsync: this,
// initialIndex: 1
); );
} }
@ -1171,14 +1168,7 @@ class _OrderPageState extends State<OrderPage>
orderModel: orderModel:
cancelledOrderList[ cancelledOrderList[
index]))) index])))
.then((value) { ;
model
.getOrder(widget.customerID,
widget.customerGUID, pageID)
.then((value) {
getCancelledOrder(model);
});
});
}, },
child: Row( child: Row(
mainAxisAlignment: mainAxisAlignment:

@ -29,6 +29,10 @@ import 'package:flutter_svg/flutter_svg.dart';
dynamic languageID; dynamic languageID;
class PharmacyProfilePage extends StatefulWidget { class PharmacyProfilePage extends StatefulWidget {
final bool moveToOrder;
PharmacyProfilePage({@required this.moveToOrder});
@override @override
_ProfilePageState createState() => _ProfilePageState(); _ProfilePageState createState() => _ProfilePageState();
} }
@ -89,17 +93,20 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
getLanguageID(); getLanguageID();
super.initState(); super.initState();
getUser(); getUser();
if (widget.moveToOrder) {
Navigator.push(context, FadePage(page: OrderPage(customerID: customerId, customerGUID: customerGUID)));
}
} }
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BaseView<OrderModelViewModel>( return BaseView<OrderModelViewModel>(
onModelReady: (model) async { onModelReady: (model) async {
var customerId = await sharedPref.getString(PHARMACY_CUSTOMER_ID); // var customerId = await sharedPref.getString(PHARMACY_CUSTOMER_ID);
var customerGUID = await sharedPref.getObject(PHARMACY_CUSTOMER_GUID); // var customerGUID = await sharedPref.getObject(PHARMACY_CUSTOMER_GUID);
GifLoaderDialogUtils.showMyDialog(context); // GifLoaderDialogUtils.showMyDialog(context);
model.getOrder(customerId, customerGUID, page_id); // model.getOrder(customerId, customerGUID, page_id);
GifLoaderDialogUtils.hideDialog(context); // GifLoaderDialogUtils.hideDialog(context);
}, },
builder: (_, model, wi) => AppScaffold( builder: (_, model, wi) => AppScaffold(
appBarTitle: TranslationBase.of(context).myAccount, appBarTitle: TranslationBase.of(context).myAccount,
@ -220,9 +227,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
Text( Text(
TranslationBase.of(context).lakum, TranslationBase.of(context).lakum,
style: TextStyle( style: TextStyle(fontSize: 13.0, fontWeight: FontWeight.bold),
fontSize: 13.0,
fontWeight: FontWeight.bold),
), ),
], ],
), ),
@ -231,8 +236,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
Expanded( Expanded(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(context, FadePage(page: WishlistPage()));
FadePage(page: WishlistPage()));
}, },
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -258,8 +262,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
Expanded( Expanded(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(context, FadePage(page: MyReviewsPage()));
FadePage(page: MyReviewsPage()));
}, },
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -304,9 +307,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
children: <Widget>[ children: <Widget>[
Text( Text(
TranslationBase.of(context).myAccount, TranslationBase.of(context).myAccount,
style: TextStyle( style: TextStyle(fontSize: 16.0, fontWeight: FontWeight.bold),
fontSize: 16.0,
fontWeight: FontWeight.bold),
), ),
SizedBox( SizedBox(
height: 10, height: 10,
@ -317,10 +318,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: HomePrescriptionsPage()));
context,
FadePage(
page: HomePrescriptionsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -333,8 +331,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 15, width: 15,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).myPrescription,
.myPrescription,
style: TextStyle( style: TextStyle(
fontSize: 13.0, fontSize: 13.0,
), ),
@ -351,15 +348,11 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(context, FadePage(page: ComparePage()));
FadePage(page: ComparePage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
Image.asset( Image.asset('assets/images/pharmacy/compare.png', width: 35, height: 35),
'assets/images/pharmacy/compare.png',
width: 35,
height: 35),
SizedBox( SizedBox(
width: 15, width: 15,
), ),
@ -381,10 +374,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: HomePrescriptionsPage()));
context,
FadePage(
page: HomePrescriptionsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -397,8 +387,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 20, width: 20,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).medicationsRefill,
.medicationsRefill,
style: TextStyle( style: TextStyle(
fontSize: 13.0, fontSize: 13.0,
), ),
@ -415,8 +404,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: MyFamily()));
context, FadePage(page: MyFamily()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -446,10 +434,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: PharmacyAddressesPage()));
context,
FadePage(
page: PharmacyAddressesPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -462,8 +447,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 20, width: 20,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).shippingAddresses,
.shippingAddresses,
style: TextStyle( style: TextStyle(
fontSize: 13.0, fontSize: 13.0,
), ),
@ -480,10 +464,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: PharmacyTermsConditions()));
context,
FadePage(
page: PharmacyTermsConditions()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -496,8 +477,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 10, width: 10,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).conditionsHMG,
.conditionsHMG,
style: TextStyle( style: TextStyle(
fontSize: 13.0, fontSize: 13.0,
), ),
@ -514,15 +494,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context, FadePage(page: LakumTermsConditions(this.identificationNo, this.firstName, this.lastName, this.mobileNo, this.languageId)));
context,
FadePage(
page: LakumTermsConditions(
this.identificationNo,
this.firstName,
this.lastName,
this.mobileNo,
this.languageId)));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -537,8 +509,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 10, width: 10,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).conditions,
.conditions,
style: TextStyle( style: TextStyle(
fontSize: 13.0, fontSize: 13.0,
), ),
@ -569,9 +540,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
children: <Widget>[ children: <Widget>[
Text( Text(
TranslationBase.of(context).reachUs, TranslationBase.of(context).reachUs,
style: TextStyle( style: TextStyle(fontSize: 16.0, fontWeight: FontWeight.bold),
fontSize: 16.0,
fontWeight: FontWeight.bold),
), ),
SizedBox( SizedBox(
height: 5, height: 5,
@ -582,8 +551,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(context, FadePage(page: LiveChatPage()));
FadePage(page: LiveChatPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -611,8 +579,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(context, FadePage(page: FindUsPage()));
FadePage(page: FindUsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -625,8 +592,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
width: 20, width: 20,
), ),
Text( Text(
TranslationBase.of(context) TranslationBase.of(context).ourLocations,
.ourLocations,
style: TextStyle(fontSize: 13.0), style: TextStyle(fontSize: 13.0),
), ),
], ],

@ -58,8 +58,8 @@ class ProductDetailService extends BaseService {
_stockAvailability = response['products'][0]['stock_availability']; _stockAvailability = response['products'][0]['stock_availability'];
_stockAvailabilityn = response['products'][0]['stock_availabilityn']; _stockAvailabilityn = response['products'][0]['stock_availabilityn'];
// _isStockAvailable = response['products'][0]['IsStockAvailable']; _isStockAvailable = response['products'][0]['IsStockAvailable'];
_isStockAvailable = _stockAvailability == "In stock" ? true : false; // _isStockAvailable = _stockAvailability == "In stock" ? true : false;
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {
hasError = true; hasError = true;
super.error = error; super.error = error;

Loading…
Cancel
Save