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