fix DA-201

merge-requests/268/head
Elham Rababah 5 years ago
parent 484c737836
commit cbf850da2f

@ -117,7 +117,7 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BaseView<MedicineViewModel>( return BaseView<MedicineViewModel>(
onModelReady: (model) async { onModelReady: (model) async {
if(model.allMedicationList.isNotEmpty) if(model.allMedicationList.length == 0)
await model.getMedicationList(); await model.getMedicationList();
}, },
builder: (_, model, w) => builder: (_, model, w) =>
@ -214,6 +214,8 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
.startsWith(input.toLowerCase()), .startsWith(input.toLowerCase()),
) )
: TextField( : TextField(
minLines: 2,
maxLines: 2,
decoration: textFieldSelectorDecoration( decoration: textFieldSelectorDecoration(
TranslationBase TranslationBase
.of(context) .of(context)
@ -245,72 +247,6 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
], ],
), ),
), ),
Column(
children: [
Container(
margin: EdgeInsets.only(
left: SizeConfig.heightMultiplier * 2),
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
AppText(
TranslationBase
.of(context)
.youCanFind +
model.pharmacyItemsList.length
.toString() +
" " +
TranslationBase
.of(context)
.itemsInSearch,
fontWeight: FontWeight.bold,
),
],
),
),
Container(
height: MediaQuery
.of(context)
.size
.height * 0.35,
child: Container(
child: ListView.builder(
scrollDirection: Axis.vertical,
shrinkWrap: true,
itemCount: model.pharmacyItemsList == null
? 0
: model.pharmacyItemsList.length,
itemBuilder: (BuildContext context,
int index) {
return InkWell(
child: MedicineItemWidget(
label: model.pharmacyItemsList[index]
["ItemDescription"],
url: model.pharmacyItemsList[index]
["ImageSRCUrl"],
),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
PharmaciesListScreen(
itemID:
model.pharmacyItemsList[
index]["ItemID"],
url: model
.pharmacyItemsList[
index]["ImageSRCUrl"]),
),
);
},
);
},
),
),
),
],
),
], ],
), ),
), ),
@ -337,10 +273,19 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
return; return;
} }
GifLoaderDialogUtils.showMyDialog(context); // GifLoaderDialogUtils.showMyDialog(context);
Navigator.push(
await model.getMedicineItem(_selectedMedication.description); context,
GifLoaderDialogUtils.hideDialog(context); MaterialPageRoute(
builder: (context) =>
PharmaciesListScreen(
itemID:_selectedMedication.itemId,
selectedMedication: _selectedMedication,
),
),
);
// await model.getMedicineItem(_selectedMedication.description);
// GifLoaderDialogUtils.hideDialog(context);
} }

@ -2,6 +2,7 @@ import 'dart:convert';
import 'dart:typed_data'; import 'dart:typed_data';
import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart';
import 'package:doctor_app_flutter/core/viewModel/medicine_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/medicine_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart';
@ -22,9 +23,11 @@ class PharmaciesListScreen extends StatefulWidget {
final int itemID; final int itemID;
final String url; final String url;
final GetMedicationResponseModel selectedMedication;
// In the constructor, require a item id. // In the constructor, require a item id.
PharmaciesListScreen({Key key, @required this.itemID, this.url}) PharmaciesListScreen(
{Key key, @required this.itemID, this.url, this.selectedMedication})
: super(key: key); : super(key: key);
@override @override
@ -49,17 +52,24 @@ class _PharmaciesListState extends State<PharmaciesListScreen> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
projectsProvider = Provider.of(context); projectsProvider = Provider.of(context);
return BaseView<MedicineViewModel>( return BaseView<MedicineViewModel>(
onModelReady: (model) => model.getPharmaciesList(widget.itemID), onModelReady: (model) async {
builder: (_, model, w) => AppScaffold( await model.getPharmaciesList(widget.selectedMedication.itemId);
baseViewModel: model, await model.getMedicineItem(widget.selectedMedication.description);
appBarTitle: TranslationBase.of(context).pharmaciesList,
body: Container( },
height: SizeConfig.screenHeight, builder: (_, model, w) =>
child: ListView( AppScaffold(
shrinkWrap: true, baseViewModel: model,
scrollDirection: Axis.vertical, appBarTitle: TranslationBase
physics: const AlwaysScrollableScrollPhysics(), .of(context)
children: <Widget>[ .pharmaciesList,
body: Container(
height: SizeConfig.screenHeight,
child: ListView(
shrinkWrap: true,
scrollDirection: Axis.vertical,
physics: const AlwaysScrollableScrollPhysics(),
children: <Widget>[
model.pharmaciesList.length > 0 model.pharmaciesList.length > 0
? RoundedContainer( ? RoundedContainer(
child: Row( child: Row(
@ -69,9 +79,10 @@ class _PharmaciesListState extends State<PharmaciesListScreen> {
child: ClipRRect( child: ClipRRect(
borderRadius: borderRadius:
BorderRadius.all(Radius.circular(7)), BorderRadius.all(Radius.circular(7)),
child: widget.url != null child: model.pharmacyItemsList[0]
["ImageSRCUrl"]!= null
? Image.network( ? Image.network(
widget.url, model.pharmacyItemsList[0]["ImageSRCUrl"],
height: height:
SizeConfig.imageSizeMultiplier * SizeConfig.imageSizeMultiplier *
21, 21,

Loading…
Cancel
Save