health weather indicator

merge-requests/140/head
Sultan Khan 4 years ago
parent 19d6057f66
commit a9cb645833

@ -1,341 +0,0 @@
import 'package:diplomaticquarterapp/core/viewModels/er/near_hospital_view_model.dart';
import 'package:diplomaticquarterapp/pages/ErService/widgets/card_position.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/location_util.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class HealthWeather extends StatelessWidget {
static const String _url = "assets/images/";
@override
Widget build(BuildContext context) {
return BaseView<NearHospitalViewModel>(
onModelReady: (){},
builder: (_, mode, widget) => AppScaffold(
isShowAppBar: true,
appBarTitle: 'Nearest ER',
baseViewModel: mode,
body: mode.ProjectAvgERWaitingTimeModeList.length > 0
? Container(
child: ListView(
children: <Widget>[
Text(
"\nThis service Displays nearest branch\n among all the branches of All Habib \n medical Group based on your current Location",
textAlign: TextAlign.center,
style: TextStyle(
fontSize: 18.0,
letterSpacing: 1.0,
fontWeight: FontWeight.w900,
color: new Color(0xFF60686b))),
Container(
margin: EdgeInsets.fromLTRB(0.0, 10.0, 0.0, 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[0]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[0]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[0].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[0]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[0]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[0]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[0]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[0]
.projectName,
),
),
),
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[1]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[1]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[1].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[1]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[1]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[1]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[1]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[1]
.projectName,
),
),
)
],
),
Row(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[2]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[2]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[2].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[2]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[2]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[2]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[2]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[2]
.projectName,
),
),
),
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[3]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[3]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[3].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[3]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[3]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[3]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[3]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[3]
.projectName,
),
),
flex: 0,
)
],
),
Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[4]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[4]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[4].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[4]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[4]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[4]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[4]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[4]
.projectName,
),
),
),
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[5]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[5]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[5].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[5]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[5]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[5]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[5]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[5]
.projectName,
),
),
)
],
),
Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: Container(
child: CardPosition(
text: mode
.ProjectAvgERWaitingTimeModeList[6]
.projectName
.toString(),
image:
'assets/images/new-design/find_us_icon.png',
subText: mode
.ProjectAvgERWaitingTimeModeList[6]
.distanceInKilometers
.toString(),
type: mode
.ProjectAvgERWaitingTimeModeList[6].iD
.toString(),
telephone: mode
.ProjectAvgERWaitingTimeModeList[6]
.phoneNumber
.toString(),
networkImage: mode
.ProjectAvgERWaitingTimeModeList[6]
.projectImageURL
.toString(),
latitude: mode
.ProjectAvgERWaitingTimeModeList[6]
.latitude,
longitude: mode
.ProjectAvgERWaitingTimeModeList[6]
.longitude,
projectname: mode
.ProjectAvgERWaitingTimeModeList[6]
.projectName,
),
),
flex: 0,
),
],
),
],
)),
],
),
)
: Center(
child: Texts('No Data'),
),
),
);
}
}

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/%E2%80%8B%20hea
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/e_referral_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/e_referral_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/h2o/h2o_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health-weather/health-weather-indicator.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health_converter.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/my_web_view.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/parking_page.dart';
@ -98,7 +99,16 @@ class _AllHabibMedicalServiceState extends State<AllHabibMedicalService> {
],
),
Expanded(
child: Column(
child:InkWell(
onTap: (){
Navigator.push(
context,
FadePage(
page: HealthWeatherIndicator(),
),
);
},
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
Image.asset('assets/images/Weather_ico.png',width: 80,height: 80,),
@ -108,7 +118,7 @@ class _AllHabibMedicalServiceState extends State<AllHabibMedicalService> {
decoration: TextDecoration.underline,
),
],
),
)),
)
],
),

@ -0,0 +1,106 @@
import 'package:diplomaticquarterapp/core/model/contactus/get_hmg_locations.dart';
import 'package:diplomaticquarterapp/core/viewModels/contactus/findus_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/slider/slider.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_xlider/flutter_xlider.dart';
import 'package:giffy_dialog/giffy_dialog.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:maps_launcher/maps_launcher.dart';
class HealthWeatherIndicator extends StatefulWidget {
@override
_HospitalsPageState createState() => _HospitalsPageState();
}
class _HospitalsPageState extends State<HealthWeatherIndicator> {
LinearGradient gradient = LinearGradient(
colors: <Color> [
Colors.red,
Colors.orange,
Colors.yellow,
Colors.green,
Colors.blue,
Colors.blue[900],
Colors.purple
]
);
@override
Widget build(BuildContext context) {
return AppScaffold(
isShowDecPage: false,
appBarTitle: TranslationBase.of(context).healthWeatherIndicators,
isShowAppBar: true,
body: SingleChildScrollView(
child: Column(children: [
WeatherSlider(.4, LinearGradient(colors: [Colors.redAccent[100],Colors.redAccent ])),
WeatherSlider(.6, LinearGradient(colors: [Colors.greenAccent[100],Colors.greenAccent ])),
WeatherSlider(.8, LinearGradient(colors: [Colors.yellowAccent[100],Colors.yellowAccent ])),
])
),
);
}
}
class WeatherSlider extends StatelessWidget{
final width;
final LinearGradient color;
WeatherSlider(this.width, this.color);
@override
Widget build(BuildContext context) {
// TODO: implement build
return Column(
mainAxisAlignment: MainAxisAlignment.start,
children: [
AppText('Low', fontSize: 24,),
Padding(
padding: EdgeInsets.all(10),
child:
Stack(
children: [
Container(
decoration: BoxDecoration(gradient: LinearGradient(colors: [Colors.grey[100],Colors.grey[400] ]),
borderRadius: BorderRadius.circular(10)
),
height: 15, width: MediaQuery.of(context).size.width,
child:SizedBox(),
),
Positioned(
top:0,
child: Container(
decoration: BoxDecoration(gradient: color,
borderRadius: BorderRadius.circular(10)
),
height: 15,
width: MediaQuery.of(context).size.width * width,
padding: EdgeInsets.all(10),
child:SizedBox(),
)),
],
)),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
AppText('Low', fontSize: 12,),
AppText('Moderate', fontSize: 12,),
AppText('High', fontSize: 12,),
AppText('Very High', fontSize: 12,),
AppText('Extreme', fontSize: 12,),
],)
],);
}
}

@ -1,3 +1,4 @@
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health-weather/health-weather-indicator.dart';
import 'package:diplomaticquarterapp/pages/DrawerPages/family/add-family-member.dart';
import 'package:diplomaticquarterapp/pages/DrawerPages/family/add-family_type.dart';
import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart';
@ -54,5 +55,5 @@ var routes = {
SYMPTOM_CHECKER_INFO: (_) => SymptomInfo(),
SELECT_GENDER: (_) => SelectGender(),
SETTINGS: (_) => Settings(),
HEALTH_WEATHER: (_) HealthWeather()
HEALTH_WEATHER: (_)=> HealthWeatherIndicator()
};

Loading…
Cancel
Save