finish add loader

merge-requests/259/head
Elham Rababah 5 years ago
parent bc8a90ef2c
commit 763d6bb49f

@ -15,6 +15,7 @@ import 'package:doctor_app_flutter/widgets/shared/app_buttons_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_text_form_field.dart'; import 'package:doctor_app_flutter/widgets/shared/app_text_form_field.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart';
import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
@ -162,87 +163,86 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
// TODO change it secondary button and add loading // TODO change it secondary button and add loading
AppButton( AppButton(
title: TranslationBase.of(context).search, title: TranslationBase.of(context).search,
onPressed: () { onPressed: () async{
searchMedicine(context, model); await searchMedicine(context, model);
}, },
), ),
], ],
), ),
), ),
NetworkBaseView( Column(
baseViewModel: model, children: [
child: Column( Container(
children: [ margin: EdgeInsets.only(
Container( left: SizeConfig.heightMultiplier * 2),
margin: EdgeInsets.only( child: Row(
left: SizeConfig.heightMultiplier * 2), crossAxisAlignment: CrossAxisAlignment.start,
child: Row( children: <Widget>[
crossAxisAlignment: CrossAxisAlignment.start, AppText(
children: <Widget>[ TranslationBase
AppText( .of(context)
.youCanFind +
model.pharmacyItemsList.length
.toString() +
" " +
TranslationBase TranslationBase
.of(context) .of(context)
.youCanFind + .itemsInSearch,
model.pharmacyItemsList.length fontWeight: FontWeight.bold,
.toString() +
" " +
TranslationBase
.of(context)
.itemsInSearch,
fontWeight: FontWeight.bold,
),
],
), ),
), ],
Container( ),
height: MediaQuery ),
.of(context) Container(
.size height: MediaQuery
.height * 0.35, .of(context)
child: Container( .size
child: ListView.builder( .height * 0.35,
scrollDirection: Axis.vertical, child: Container(
shrinkWrap: true, child: ListView.builder(
itemCount: scrollDirection: Axis.vertical,
model.pharmacyItemsList == shrinkWrap: true,
null itemCount:
? 0 model.pharmacyItemsList ==
: model null
.pharmacyItemsList.length, ? 0
itemBuilder: : model
(BuildContext context, int index) { .pharmacyItemsList.length,
return InkWell( itemBuilder:
child: MedicineItemWidget( (BuildContext context, int index) {
label: model return InkWell(
.pharmacyItemsList[index] child: MedicineItemWidget(
["ItemDescription"], label: model
url: model .pharmacyItemsList[index]
.pharmacyItemsList[index] ["ItemDescription"],
["ImageSRCUrl"], url: model
.pharmacyItemsList[index]
["ImageSRCUrl"],
),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
PharmaciesListScreen(
itemID: model
.pharmacyItemsList[
index]["ItemID"],
url: model
.pharmacyItemsList[
index]["ImageSRCUrl"]),
), ),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
PharmaciesListScreen(
itemID: model
.pharmacyItemsList[
index]["ItemID"],
url: model
.pharmacyItemsList[
index]["ImageSRCUrl"]),
),
);
},
); );
}, },
), );
), },
), ),
], ),
)), ),
],
),
], ],
), ),
), ),
@ -252,7 +252,7 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
),),); ),),);
} }
searchMedicine(context, MedicineViewModel model) { searchMedicine(context, MedicineViewModel model) async {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
if (myController.text.isNullOrEmpty()) { if (myController.text.isNullOrEmpty()) {
helpers.showErrorToast(TranslationBase helpers.showErrorToast(TranslationBase
@ -267,7 +267,12 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
.moreThan3Letter); .moreThan3Letter);
return; return;
} }
model.getMedicineItem(myController.text);
GifLoaderDialogUtils.showMyDialog(context);
await model.getMedicineItem(myController.text);
GifLoaderDialogUtils.hideDialog(context);
} }
startVoiceSearch() { startVoiceSearch() {

@ -317,8 +317,9 @@ class _PatientsScreenState extends State<PatientsScreen> {
}, },
builder: (_, model, w) => AppScaffold( builder: (_, model, w) => AppScaffold(
appBarTitle: patientTypeTitle, appBarTitle: patientTypeTitle,
isLoading: _isLoading,
body: _isLoading body: _isLoading
? DrAppCircularProgressIndeicator() ? Container()
: _isError : _isError
? DrAppEmbeddedError(error: error) ? DrAppEmbeddedError(error: error)
: lItems == null || lItems.length == 0 : lItems == null || lItems.length == 0

Loading…
Cancel
Save