Merge branch 'home_page' into 'diplomatic-quarter-live'

Home page

See merge request Cloud_Solution/diplomatic-quarter!85
merge-update-with-lab-changes
Mohammad Aljammal 5 years ago
commit dd361cd883

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 445 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 644 B

After

Width:  |  Height:  |  Size: 475 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 475 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

1
ios/.gitignore vendored

@ -32,3 +32,4 @@ Runner/GeneratedPluginRegistrant.*
!default.perspectivev3 !default.perspectivev3
/Runner.xcworkspace/contents.xcworkspacedata /Runner.xcworkspace/contents.xcworkspacedata
/Runner.xcodeproj/project.pbxproj /Runner.xcodeproj/project.pbxproj
/Flutter/.last_build_id

@ -1 +1 @@
8bbc713f808a1e4202d48e35ddf46f23 da98d9f0c1f407e541c636e84847ac81

@ -412,7 +412,7 @@ const Map<String, Map<String, String>> localizedValues = {
"locationa": {"en": "location:", "ar": "الموقع"}, "locationa": {"en": "location:", "ar": "الموقع"},
"ambulancerequest": {"en": "Ambulance :", "ar": "طلب نقل "}, "ambulancerequest": {"en": "Ambulance :", "ar": "طلب نقل "},
"requestA": {"en": "Request:", "ar": "اسعاف"}, "requestA": {"en": "Request:", "ar": "اسعاف"},
"MyAppointments": {"en": "My Appointments", "ar": "مواعيدي"}, "MyAppointments": {"en": "Appointments", "ar": "مواعيدي"},
"NoBookedAppointments": { "NoBookedAppointments": {
"en": "No Booked Appointments", "en": "No Booked Appointments",
"ar": "لا توجد مواعيد محجوزة" "ar": "لا توجد مواعيد محجوزة"

@ -30,4 +30,10 @@ class DQIcons {
static const IconData thermometer = IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData thermometer = IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData weight_scale = IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData weight_scale = IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData parking_icon = IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData parking_icon = IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData blood_type_icon = IconData(0xe809, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData height_icon = IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData online_payment_icon = IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData search_medicine_icon = IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData vital_sign_icon = IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData weight_icon = IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg);
} }

@ -74,13 +74,13 @@ class MyApp extends StatelessWidget {
backgroundColor: Color.fromRGBO(255, 255, 255, 1), backgroundColor: Color.fromRGBO(255, 255, 255, 1),
highlightColor: Colors.grey[100].withOpacity(0.4), highlightColor: Colors.grey[100].withOpacity(0.4),
splashColor: Colors.transparent, splashColor: Colors.transparent,
primaryColor: Colors.grey, primaryColor: Color(0xff40ACC9),
bottomSheetTheme: BottomSheetThemeData( bottomSheetTheme: BottomSheetThemeData(
backgroundColor: HexColor('#E0E0E0')), backgroundColor: HexColor('#E0E0E0')),
cursorColor: Colors.grey, cursorColor: Colors.grey,
iconTheme: IconThemeData(), iconTheme: IconThemeData(),
appBarTheme: AppBarTheme( appBarTheme: AppBarTheme(
color: Colors.grey[700], color: Color(0xff40ACC9),
brightness: Brightness.dark, brightness: Brightness.dark,
elevation: 10.0, elevation: 10.0,
actionsIconTheme: IconThemeData( actionsIconTheme: IconThemeData(

@ -235,7 +235,7 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
return children; return children;
}, },
), ),
onDaySelected: (date, events) { onDaySelected: (date, events,format) {
_onDaySelected(date, events); _onDaySelected(date, events);
_animationController.forward(from: 0.0); _animationController.forward(from: 0.0);
}, },

@ -348,7 +348,7 @@ class _CovidTimeSlotsState extends State<CovidTimeSlots>
return children; return children;
}, },
), ),
onDaySelected: (date, event) { onDaySelected: (date, event,format) {
_onDaySelected(date, event,); _onDaySelected(date, event,);
_animationController.forward(from: 0.0); _animationController.forward(from: 0.0);
}, },

@ -1,18 +1,29 @@
import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/EReferral/search_criteria_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/d_q_icons_icons.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart';
import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart'; import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart';
import 'package:diplomaticquarterapp/pages/Covid-DriveThru/covid-drivethru-location.dart'; import 'package:diplomaticquarterapp/pages/Covid-DriveThru/covid-drivethru-location.dart';
import 'package:diplomaticquarterapp/pages/ErService/ErOptions.dart'; import 'package:diplomaticquarterapp/pages/ErService/ErOptions.dart';
import 'package:diplomaticquarterapp/pages/MyAppointments/MyAppointments.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/insurance/insurance_card_screen.dart';
import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart'; import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart';
import 'package:diplomaticquarterapp/pages/medical/active_medications/ActiveMedicationsPage.dart';
import 'package:diplomaticquarterapp/pages/medical/doctor/doctor_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/labs/labs_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/vital_sign/vital_sign_details_screen.dart';
import 'package:diplomaticquarterapp/pages/paymentService/payment_service.dart'; import 'package:diplomaticquarterapp/pages/paymentService/payment_service.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/medicine_search_screen.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/medical_profile_item.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.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:diplomaticquarterapp/widgets/transitions/fade_page.dart';
@ -51,11 +62,11 @@ class _HomePageState extends State<HomePage> {
children: <Widget>[ children: <Widget>[
Container( Container(
width: double.infinity, width: double.infinity,
height: 210, height: 100,
decoration: BoxDecoration( decoration: BoxDecoration(
image: DecorationImage( image: DecorationImage(
image: ExactAssetImage( image: ExactAssetImage(
'assets/images/dashboard_top_bg.png'), 'assets/images/dq_home_page_bg_image.png'),
fit: BoxFit.cover), fit: BoxFit.cover),
), ),
child: Stack( child: Stack(
@ -65,155 +76,26 @@ class _HomePageState extends State<HomePage> {
left: 5, left: 5,
right: 5, right: 5,
child: Container( child: Container(
width: width: MediaQuery.of(context).size.width * 0.8,
MediaQuery.of(context).size.width * 0.8, child: Container(),
child: Row(
children: <Widget>[
Expanded(
child: Container(
height: 120,
padding: EdgeInsets.all(5),
margin: EdgeInsets.all(5),
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage(
"assets/images/new-design/covid_bg_transparent.png"),
fit: BoxFit.fill,
),
color:
Colors.white.withOpacity(0.3),
borderRadius: BorderRadius.all(
Radius.circular(5))),
child: Container(
margin: EdgeInsets.only(top: 10.0),
child: Column(
children: <Widget>[
Text("COVID-19 TEST",
style: TextStyle(
color: Colors.white,
fontWeight:
FontWeight.bold,
fontSize: 18.0)),
Row(
children: <Widget>[
Container(
margin: EdgeInsets.only(
top: 15.0, left: 3.5, right: 3.5),
child: SvgPicture.asset(
'assets/images/new-design/covid-19-car.svg',
width: 45.0,
height: 45.0),
),
Container(
margin: EdgeInsets.only(
left: 10.0,
top: 10.0),
child: Column(
children: <Widget>[
Text("Drive-Thru",
style: TextStyle(
color: Colors
.white,
fontWeight:
FontWeight
.bold,
fontSize:
16.0)),
ButtonTheme(
shape:
RoundedRectangleBorder(
borderRadius:
BorderRadius
.circular(
5.0),
),
minWidth: MediaQuery.of(
context)
.size
.width *
0.15,
height: 25.0,
child: RaisedButton(
color: Colors
.red[800],
textColor:
Colors.white,
disabledTextColor:
Colors.white,
disabledColor:
new Color(
0xFFbcc2c4),
onPressed: () {
//TODO remove it when all the loader cases ended This is just an example
// GifLoaderDialogUtils.showMyDialog(context);
navigateToCovidDriveThru();
},
child: Text(
"BOOK NOW",
style: TextStyle(
fontSize:
12.0)),
),
),
],
),
),
],
),
],
),
),
),
),
Expanded(
child: InkWell(
onTap: () => Navigator.push(context,
FadePage(page: LiveCareHome())),
child: Container(
height: 120,
padding: EdgeInsets.all(15),
margin: EdgeInsets.all(5),
decoration: BoxDecoration(
color: Colors.white
.withOpacity(0.3),
borderRadius: BorderRadius.all(
Radius.circular(5))),
child: SvgPicture.asset(
projectViewModel.isArabic
? 'assets/images/new-design/livecare_arabic_logo.svg'
: 'assets/images/new-design/liveCare_white_logo.svg',
),
),
),
),
],
),
), ),
) )
], ],
), ),
), ),
Container(width: double.infinity, height: 80) Container(width: double.infinity, height: 125),
], ],
), ),
Positioned( Positioned(
top: 155, top: 40,
left: MediaQuery.of(context).size.width * left: MediaQuery.of(context).size.width * (MediaQuery.of(context).orientation == Orientation.landscape ? 0.02 : 0.03),
(MediaQuery.of(context).orientation == right: MediaQuery.of(context).size.width * (MediaQuery.of(context).orientation == Orientation.landscape ? 0.02 : 0.03),
Orientation.landscape
? 0.02
: 0.03),
right: MediaQuery.of(context).size.width *
(MediaQuery.of(context).orientation ==
Orientation.landscape
? 0.02
: 0.03),
child: (!model.isLogin && projectViewModel.user == null) child: (!model.isLogin && projectViewModel.user == null)
? Container( ? Container(
width: double.infinity, width: double.infinity,
height: 125, height: 180,
decoration: BoxDecoration( decoration: BoxDecoration(
color: HexColor('#A59E9E'), color: Theme.of(context).primaryColor,
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, width: 0.5), color: Colors.transparent, width: 0.5),
@ -233,7 +115,7 @@ class _HomePageState extends State<HomePage> {
), ),
Texts( Texts(
TranslationBase.of(context).myMedicalFile, TranslationBase.of(context).myMedicalFile,
color: Colors.black87, color: Colors.white,
bold: true, bold: true,
fontSize: 23, fontSize: 23,
), ),
@ -243,7 +125,7 @@ class _HomePageState extends State<HomePage> {
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(context)
.myMedicalFileSubTitle, .myMedicalFileSubTitle,
color: Colors.black, color: Colors.white,
fontSize: 16, fontSize: 16,
), ),
Align( Align(
@ -256,10 +138,10 @@ class _HomePageState extends State<HomePage> {
}, },
child: Container( child: Container(
margin: EdgeInsets.all(2), margin: EdgeInsets.all(2),
width: 90, width: MediaQuery.of(context).size.width * 0.30,
height: 30, height: 30,
decoration: BoxDecoration( decoration: BoxDecoration(
color: HexColor('#D81A2E'), color: Colors.white,
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, color: Colors.transparent,
@ -271,7 +153,7 @@ class _HomePageState extends State<HomePage> {
child: Texts( child: Texts(
TranslationBase.of(context) TranslationBase.of(context)
.viewMore, .viewMore,
color: Colors.white, color: Theme.of(context).primaryColor,
fontSize: 12, fontSize: 12,
), ),
), ),
@ -284,9 +166,9 @@ class _HomePageState extends State<HomePage> {
) )
: Container( : Container(
width: double.infinity, width: double.infinity,
height: 130, height: projectViewModel.isArabic?180: 150,
decoration: BoxDecoration( decoration: BoxDecoration(
color: HexColor('#A59E9E'), color: Theme.of(context).primaryColor,
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, width: 0.5), color: Colors.transparent, width: 0.5),
@ -297,9 +179,12 @@ class _HomePageState extends State<HomePage> {
'assets/images/bg_graphic.png'), 'assets/images/bg_graphic.png'),
fit: BoxFit.cover), fit: BoxFit.cover),
), ),
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Container( child: Container(
margin: EdgeInsets.all(5), margin: EdgeInsets.all(5),
child: Column( child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
Row( Row(
children: <Widget>[ children: <Widget>[
@ -343,10 +228,10 @@ class _HomePageState extends State<HomePage> {
}, },
child: Container( child: Container(
margin: EdgeInsets.all(2), margin: EdgeInsets.all(2),
width: 90, width: MediaQuery.of(context).size.width * 0.30,
height: 30, height: 30,
decoration: BoxDecoration( decoration: BoxDecoration(
color: HexColor('#D81A2E'), color: Colors.white,
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, color: Colors.transparent,
@ -357,10 +242,10 @@ class _HomePageState extends State<HomePage> {
), ),
child: Center( child: Center(
child: Texts( child: Texts(
TranslationBase.of(context) TranslationBase.of(context).viewMore,
.viewMore, color: Theme.of(context).primaryColor,
color: Colors.white,
fontSize: 12, fontSize: 12,
bold: true,
), ),
), ),
), ),
@ -368,22 +253,32 @@ class _HomePageState extends State<HomePage> {
], ],
), ),
Row( Row(
//crossAxisAlignment: CrossAxisAlignment.center,
//mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[ children: <Widget>[
Expanded( Expanded(
child: Row( child: Row(
mainAxisAlignment: mainAxisAlignment: MainAxisAlignment.start,
MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Image.asset( Image.asset(
'assets/images/height_icon.png', 'assets/images/height_icon.png',
width: 35, width: 30,
height: 40, height: 55,
), ),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Texts( Texts(
"${model.heightCm}", "${model.heightCm}",
color: Colors.white, color: Colors.white,
bold: true,
),
Texts(
"Height",
color: Colors.white,
fontSize: 10,
),
],
) )
], ],
), ),
@ -393,17 +288,28 @@ class _HomePageState extends State<HomePage> {
), ),
Expanded( Expanded(
child: Row( child: Row(
mainAxisAlignment: mainAxisAlignment: MainAxisAlignment.start,
MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Image.asset( Image.asset(
'assets/images/weight_icon.png', 'assets/images/test-weight.png',
width: 25, width: 30,
height: 40, height: 55,
), ),
Column(
children: [
Texts( Texts(
'${model.weightKg}', '${model.weightKg}',
color: Colors.white, color: Colors.white,
bold: true,
),
Texts(
"Weight",
color: Colors.white,
fontSize: 10,
)
],
) )
], ],
), ),
@ -413,17 +319,26 @@ class _HomePageState extends State<HomePage> {
), ),
Expanded( Expanded(
child: Row( child: Row(
mainAxisAlignment: mainAxisAlignment: MainAxisAlignment.start,
MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Image.asset( Image.asset(
'assets/images/blood_icon.png', 'assets/images/blood-drop.png',
width: 35, width: 35,
height: 40, height: 40,
), ),
Column(
children: [
Texts( Texts(
'${model.bloadType}', '${model.bloadType}',
color: Colors.white, color: Colors.white,
),
Texts(
"Blood Type",
color: Colors.white,
fontSize: 10,
)
],
) )
], ],
), ),
@ -435,6 +350,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
), ),
),
], ],
), ),
Container( Container(
@ -442,12 +358,13 @@ class _HomePageState extends State<HomePage> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
DashboardItem( Expanded(
child: DashboardItem(
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
page: HomeHealthCareIndexPage(), page: VitalSignDetailsScreen(),
), ),
); );
}, },
@ -456,64 +373,92 @@ class _HomePageState extends State<HomePage> {
padding: const EdgeInsets.all(15.0), padding: const EdgeInsets.all(15.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Image.asset( SizedBox(height: 15,),
'assets/images/home_health_care_icon.png',
width: 50, Container(
height: 50, width: 60,
decoration: BoxDecoration(
color: Colors.white,
shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(12)
), ),
SizedBox( child: Center(child: Image.asset('assets/images/vital_sign_icon.png',
height: 3, width: 80,
height: 50,
fit: BoxFit.contain,)),
), ),
SizedBox(height: 20,),
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(context)
.homeHealthCareService, .vitalSigns,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
bold: true, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.7, fontSize: projectViewModel.isArabic? SizeConfig.textMultiplier * 1.5 :SizeConfig.textMultiplier * 1.7,
) )
], ],
), ),
), ),
), ),
height: MediaQuery.of(context).size.width * 0.4, margin: 4,
height: 170,
imageName: 'home_healthcare_service_bg.png', imageName: 'home_healthcare_service_bg.png',
opacity: 0.5, opacity: 1.0,
), ),
DashboardItem( ),
Expanded(
child: DashboardItem(
onTap: () {
Navigator.push(
context,
FadePage(
page: MedicineSearch(),
),
);
},
opacity: 1.0,
child: Center( child: Center(
child: Padding( child: Padding(
padding: const EdgeInsets.all(15.0), padding: const EdgeInsets.all(15.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Image.asset( SizedBox(height: 15,),
'assets/images/pharmacy_logo.png', Container(
width: 40, width: 50,
height: 40, decoration: BoxDecoration(
color: Colors.white,
shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(12)
), ),
SizedBox( child: Center(child: Image.asset('assets/images/search_medicine_icon.png',
height: 20, width: 50,
height: 50,
fit: BoxFit.contain,)),
), ),
SizedBox(height: 20,),
Texts( Texts(
TranslationBase.of(context).onlinePharmacy, TranslationBase.of(context).searchMedicine,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
bold: true, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.7, fontSize: projectViewModel.isArabic? SizeConfig.textMultiplier * 1.5 :SizeConfig.textMultiplier * 1.7,
) )
], ],
), ),
), ),
), ),
height: MediaQuery.of(context).size.width * 0.4, margin: 4,
height: 170,
imageName: 'al-habib_onlne_pharmacy_bg.png', imageName: 'al-habib_onlne_pharmacy_bg.png',
), ),
DashboardItem( ),
Expanded(
child: DashboardItem(opacity: 1.0,
onTap: (){ onTap: (){
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
page: CMCIndexPage(), page: PaymentService(),
), ),
); );
}, },
@ -522,28 +467,35 @@ class _HomePageState extends State<HomePage> {
padding: const EdgeInsets.all(15.0), padding: const EdgeInsets.all(15.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Image.asset( SizedBox(height: 15,),
'assets/images/comprehensive_medical_checkup_logo.png', Container(
width: 50, decoration: BoxDecoration(
height: 50, color: Colors.white,
shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(12)
), ),
SizedBox( child: Center(child: Image.asset('assets/images/online_payment_icon.png',
height: 3, width: 80,
height: 50,
fit: BoxFit.contain,)),
), ),
SizedBox(height: 15,),
Texts( Texts(
TranslationBase.of(context).emergencyService, TranslationBase.of(context).onlinePaymentService,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
bold: true, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.7, fontSize: projectViewModel.isArabic? SizeConfig.textMultiplier * 1.5 :SizeConfig.textMultiplier * 1.7,
) )
], ],
), ),
), ),
), ),
height: MediaQuery.of(context).size.width * 0.4, margin: 4,
color: HexColor("#747C80"), height: 170,
imageName: 'emergency_service_image.png', imageName: 'online_payments_bg.png',
),
), ),
], ],
), ),
@ -551,121 +503,123 @@ class _HomePageState extends State<HomePage> {
SizedBox( SizedBox(
height: 8, height: 8,
), ),
InkWell(
onTap: () =>
Navigator.push(context, FadePage(page: PaymentService())),
child: Container(
margin: EdgeInsets.only(left: 15, right: 15),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Container( Container(
width: MediaQuery.of(context).size.width * 0.29, margin: EdgeInsets.only(left: 10, right: 10),
child: Center(
child: Padding(
padding: const EdgeInsets.all(15.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Image.asset( Row(
'assets/images/al-habib_online_payment_service_icon.png', mainAxisAlignment: MainAxisAlignment.start,
height: 55, children: <Widget>[
Expanded(
//flex: 1,
child: InkWell(
onTap: () {
Navigator.push(
context,
FadePage(
page: MyAppointments(),
), ),
SizedBox( );
height: 5, },
child: MedicalProfileItem(
title: TranslationBase.of(context)
.myAppointments,
imagePath: 'my_appointment_icon.png',
subTitle: TranslationBase.of(context).myAppointmentsList,
), ),
Texts(
TranslationBase.of(context)
.onlinePaymentService,
textAlign: TextAlign.center,
color: Colors.black87,
bold: false,
fontSize: SizeConfig.textMultiplier * 1.7,
)
],
), ),
), ),
Expanded(
flex: 1,
child: InkWell(
onTap: () => Navigator.push(context,
FadePage(page: LabsHomePage())),
child: MedicalProfileItem(
title: TranslationBase.of(context).lab,
imagePath: 'lab_result_icon.png',
subTitle:
TranslationBase.of(context).lab,
), ),
height: MediaQuery.of(context).size.width * 0.4,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6.0),
color: Colors.white,
), ),
), ),
Container( Expanded(
child: Center( flex: 1,
child: Padding( child: InkWell(
padding: const EdgeInsets.all(15.0), onTap: () => Navigator.push(context,
child: Column( FadePage(page: RadiologyHomePage())),
children: <Widget>[ child: MedicalProfileItem(
Image.asset( title: TranslationBase.of(context)
'assets/images/ereferral_service_icon.png', .radiology,
width: 50, imagePath: 'radiology_icon.png',
height: 55, subTitle: TranslationBase.of(context)
.radiologySubtitle,
),
), ),
SizedBox(
height: 10,
), ),
Texts(
TranslationBase.of(context)
.offersAndPackages,
textAlign: TextAlign.center,
color: Colors.black87,
bold: false,
fontSize: SizeConfig.textMultiplier * 1.7,
)
], ],
), ),
Row(
children: <Widget>[
Expanded(
flex: 1,
child: InkWell(
onTap: () {
Navigator.push(
context,
FadePage(
page: HomePrescriptionsPage(),
), ),
);
},
child: MedicalProfileItem(
title: TranslationBase.of(context)
.medicines,
imagePath: 'prescription_icon.png',
subTitle: TranslationBase.of(context)
.medicinesSubtitle,
), ),
width: MediaQuery.of(context).size.width * 0.29, ),
height: MediaQuery.of(context).size.width * 0.4, ),
decoration: BoxDecoration( Expanded(
borderRadius: BorderRadius.circular(6.0), flex: 1,
color: Colors.white,
)),
Container(
width: MediaQuery.of(context).size.width * 0.29,
child: InkWell( child: InkWell(
onTap: () => Navigator.push( onTap: () {
Navigator.push(
context, context,
FadePage( FadePage(
page: ErOptions( page: DoctorHomePage(),
isAppbar: true,
))),
child: Center(
child: Padding(
padding: const EdgeInsets.all(15.0),
child: Column(
children: <Widget>[
Image.asset(
'assets/images/Dr_Schedule_report.png',
width: 50,
height: 50,
),
SizedBox(
height: 10,
), ),
Texts( );
TranslationBase.of(context) },
.emergencyServices, child: MedicalProfileItem(
textAlign: TextAlign.center, title: TranslationBase.of(context)
color: Colors.black87, .myDoctor,
bold: false, imagePath: 'doctor_icon.png',
fontSize: SizeConfig.textMultiplier * 1.7, subTitle: TranslationBase.of(context)
) .myDoctorSubtitle,
],
), ),
), ),
), ),
Expanded(
flex: 1,
child: InkWell(
onTap: () {
Navigator.push(context,
FadePage(page: InsuranceCard()));
},
child: MedicalProfileItem(
title: TranslationBase.of(context)
.insurance,
imagePath: 'insurance_card_icon.png',
subTitle: TranslationBase.of(context)
.insuranceSubtitle,
), ),
height: MediaQuery.of(context).size.width * 0.4,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6.0),
color: Colors.white,
), ),
), ),
], ],
), ),
],
), ),
), ),
SizedBox( SizedBox(
@ -677,6 +631,7 @@ class _HomePageState extends State<HomePage> {
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
DashboardItem( DashboardItem(
opacity:1.0,
child: Container( child: Container(
width: double.infinity, width: double.infinity,
padding: EdgeInsets.all(10), padding: EdgeInsets.all(10),
@ -707,14 +662,14 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
height: 100, height: 100,
imageName: 'contact_us_bg.png', imageName: 'ask_doctor_bg.png',
opacity: 0.5, //color: Colors.grey[700],
color: Colors.grey[700],
width: MediaQuery.of(context).size.width * 0.45, width: MediaQuery.of(context).size.width * 0.45,
onTap: () => Navigator.push( onTap: () => Navigator.push(
context, FadePage(page: AllHabibMedicalService())), context, FadePage(page: AllHabibMedicalService())),
), ),
DashboardItem( DashboardItem(
opacity:1.0,
onTap: () { onTap: () {
// Navigator.push( // Navigator.push(
// context, FadePage(page: FeedbackHomePage())); // context, FadePage(page: FeedbackHomePage()));
@ -750,8 +705,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
height: 100, height: 100,
imageName: 'contact_us_bg.png', imageName: 'rectangle.png',
opacity: 0.5,
color: Colors.grey[700], color: Colors.grey[700],
width: MediaQuery.of(context).size.width * 0.45, width: MediaQuery.of(context).size.width * 0.45,
), ),
@ -759,7 +713,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
SizedBox( SizedBox(
height: 80, height: 120,
) )
], ],
), ),
@ -785,7 +739,7 @@ class DashboardItem extends StatelessWidget {
this.width, this.width,
this.height, this.height,
this.color, this.color,
this.opacity = 0.4}) this.opacity = 1.0,this.icon,this.margin=0})
: super(key: key); : super(key: key);
final bool hasBorder; final bool hasBorder;
final String imageName; final String imageName;
@ -795,6 +749,8 @@ class DashboardItem extends StatelessWidget {
final double height; final double height;
final Color color; final Color color;
final double opacity; final double opacity;
final double margin;
final Widget icon;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -811,7 +767,7 @@ class DashboardItem extends StatelessWidget {
color: !hasBorder color: !hasBorder
? color != null ? color != null
? color ? color
: HexColor('#050705').withOpacity(opacity) : Colors.black.withOpacity(opacity)
: Colors.white, : Colors.white,
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
border: hasBorder border: hasBorder
@ -822,10 +778,11 @@ class DashboardItem extends StatelessWidget {
image: ExactAssetImage('assets/images/$imageName'), image: ExactAssetImage('assets/images/$imageName'),
fit: BoxFit.cover, fit: BoxFit.cover,
colorFilter: new ColorFilter.mode( colorFilter: new ColorFilter.mode(
Colors.black.withOpacity(0.2), BlendMode.dstIn), Colors.black.withOpacity(opacity), BlendMode.dstIn),
) )
: null, : icon,
), ),
margin: EdgeInsets.all(margin),
child: Center( child: Center(
child: child, child: child,
), ),

@ -3,6 +3,7 @@ import 'dart:typed_data';
import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
import 'package:diplomaticquarterapp/models/Authentication/select_device_imei_res.dart'; import 'package:diplomaticquarterapp/models/Authentication/select_device_imei_res.dart';
@ -18,8 +19,11 @@ import 'package:diplomaticquarterapp/uitl/CalendarUtils.dart';
import 'package:diplomaticquarterapp/uitl/LocalNotification.dart'; import 'package:diplomaticquarterapp/uitl/LocalNotification.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/bottom_navigation/bottom_nav_bar.dart'; import 'package:diplomaticquarterapp/widgets/bottom_navigation/bottom_nav_bar.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/floatingActionButton.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/drawer/app_drawer_widget.dart'; import 'package:diplomaticquarterapp/widgets/drawer/app_drawer_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/slide_up_page.dart';
import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -29,6 +33,7 @@ import 'package:permission_handler/permission_handler.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:rxdart/rxdart.dart'; import 'package:rxdart/rxdart.dart';
import '../../locator.dart';
import 'home_page.dart'; import 'home_page.dart';
class LandingPage extends StatefulWidget { class LandingPage extends StatefulWidget {
@ -44,6 +49,9 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
int currentTab = 0; int currentTab = 0;
PageController pageController; PageController pageController;
ProjectViewModel projectProvider; ProjectViewModel projectProvider;
///inject the user data
AuthenticatedUserObject authenticatedUserObject = locator<AuthenticatedUserObject>();
final FirebaseMessaging _firebaseMessaging = FirebaseMessaging(); final FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
final authService = new AuthProvider(); final authService = new AuthProvider();
var event = RobotProvider(); var event = RobotProvider();
@ -332,8 +340,7 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
appBar: AppBar( appBar: AppBar(
elevation: 0, elevation: 0,
textTheme: TextTheme( textTheme: TextTheme(
headline6: headline6: TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
), ),
title: Text(getText(currentTab).toUpperCase()), title: Text(getText(currentTab).toUpperCase()),
leading: Builder( leading: Builder(
@ -363,21 +370,22 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
physics: NeverScrollableScrollPhysics(), physics: NeverScrollableScrollPhysics(),
controller: pageController, controller: pageController,
children: [ children: [
HomePage( HomePage(goToMyProfile: () {_changeCurrentTab(1);},),
goToMyProfile: () {
_changeCurrentTab(1);
},
),
MedicalProfilePage(), MedicalProfilePage(),
MyAdmissionsPage(), BookingOptions(),
Container(),
ToDo(), ToDo(),
BookingOptions()
], // Please do not remove the BookingOptions from this array ], // Please do not remove the BookingOptions from this array
), ),
bottomNavigationBar: BottomNavBar( bottomNavigationBar: BottomNavBar(changeIndex: _changeCurrentTab, index: currentTab,),
changeIndex: _changeCurrentTab, floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
index: currentTab, floatingActionButton: currentTab ==0? FloatingButton(
), elevation: true,
onTap: () {
_changeCurrentTab(2);
}):null
); );
} }
@ -392,11 +400,12 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
case 1: case 1:
return TranslationBase.of(context).medicalProfile; return TranslationBase.of(context).medicalProfile;
case 2: case 2:
return TranslationBase.of(context).mySchedule; return TranslationBase.of(context).bookAppo;
case 3: case 3:
return TranslationBase.of(context).services; return TranslationBase.of(context).mySchedule;
case 4: case 4:
return TranslationBase.of(context).bookAppo; return TranslationBase.of(context).services;
} }
} }

@ -96,7 +96,7 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
children: <Widget>[ children: <Widget>[
Container( Container(
width: double.infinity, width: double.infinity,
height: 30, height: 55,
), ),
Row( Row(
children: <Widget>[ children: <Widget>[
@ -492,6 +492,7 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
child: Container(), child: Container(),
), ),
]), ]),
SizedBox(height: MediaQuery.of(context).size.height * 0.12,)
], ],
), ),
) )
@ -499,14 +500,14 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
), ),
if (model.user != null) if (model.user != null)
Positioned( Positioned(
top: 175, top: 185,
left: 20, left: 20,
right: 20, right: 20,
child: Container( child: Container(
width: double.infinity, width: double.infinity,
height: 70, height: 80,
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.grey[600], color: Theme.of(context).primaryColor,
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, width: 0.5), color: Colors.transparent, width: 0.5),
@ -518,6 +519,7 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
fit: BoxFit.cover)), fit: BoxFit.cover)),
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[ children: <Widget>[
SizedBox( SizedBox(
height: 8, height: 8,
@ -528,9 +530,7 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
model.user.lastName, model.user.lastName,
color: Colors.white, color: Colors.white,
), ),
SizedBox(
height: 8,
),
Texts( Texts(
'${model.user.patientID}', '${model.user.patientID}',
color: Colors.white, color: Colors.white,

@ -51,26 +51,26 @@ class _BottomNavBarState extends State<BottomNavBar> {
currentIndex: 1, currentIndex: 1,
name: TranslationBase.of(context).medicalProfile, name: TranslationBase.of(context).medicalProfile,
), ),
// Expanded( if(widget.index == 0)
// child: SizedBox( Expanded(
// height: 50, child: SizedBox(
// child: Column( height: 50,
// mainAxisSize: MainAxisSize.min, child: Column(
// mainAxisAlignment: MainAxisAlignment.center, mainAxisSize: MainAxisSize.min,
// children: <Widget>[ mainAxisAlignment: MainAxisAlignment.center,
// SizedBox(height: 22), children: <Widget>[
// ], SizedBox(height: 22),
// ), ],
// ), ),
// ), ),
),
// Added Calendar Icon to access book appointment flow if(widget.index != 0)
BottomNavigationItem( BottomNavigationItem(
icon: EvaIcons.calendar, icon: EvaIcons.calendar,
activeIcon: EvaIcons.calendarOutline, activeIcon: EvaIcons.calendarOutline,
changeIndex: _changeIndex, changeIndex: _changeIndex,
index: _index, index: _index,
currentIndex: 4, currentIndex: 2,
name: TranslationBase.of(context).bookAppo, name: TranslationBase.of(context).bookAppo,
), ),
@ -79,7 +79,7 @@ class _BottomNavBarState extends State<BottomNavBar> {
activeIcon: EvaIcons.person, activeIcon: EvaIcons.person,
changeIndex: _changeIndex, changeIndex: _changeIndex,
index: widget.index, index: widget.index,
currentIndex: 2, currentIndex: 3,
name: TranslationBase.of(context).mySchedule, name: TranslationBase.of(context).mySchedule,
), ),
BottomNavigationItem( BottomNavigationItem(
@ -87,7 +87,7 @@ class _BottomNavBarState extends State<BottomNavBar> {
activeIcon: EvaIcons.calendar, activeIcon: EvaIcons.calendar,
changeIndex: _changeIndex, changeIndex: _changeIndex,
index: widget.index, index: widget.index,
currentIndex: 3, currentIndex: 4,
name: TranslationBase.of(context).todoList, name: TranslationBase.of(context).todoList,
) )
], ],

@ -105,7 +105,7 @@ class _ButtonState extends State<Button> with TickerProviderStateMixin {
: 19), : 19),
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(10.0)), borderRadius: BorderRadius.all(Radius.circular(10.0)),
color: widget.backgroundColor ?? HexColor('#515b5d'), color: widget.backgroundColor ?? Theme.of(context).primaryColor,
boxShadow: [ boxShadow: [
BoxShadow( BoxShadow(
color: Color.fromRGBO( color: Color.fromRGBO(

@ -0,0 +1,117 @@
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
/// Button widget
/// [label] button label
/// [icon] button icon its optional
/// [onTap] button function
/// [loading] show the progress indicator
/// [elevation] color elevation value
class FloatingButton extends StatefulWidget {
FloatingButton(
{Key key,
this.onTap,
this.elevation: true})
: super(key: key);
final VoidCallback onTap;
final bool elevation;
@override
_FloatingButtonState createState() => _FloatingButtonState();
}
class _FloatingButtonState extends State<FloatingButton>
with TickerProviderStateMixin {
double _buttonSize = 1.0;
AnimationController _animationController;
Animation _animation;
@override
void initState() {
_animationController = AnimationController(
vsync: this,
lowerBound: 0.7,
upperBound: 1.0,
duration: Duration(milliseconds: 120));
_animation = CurvedAnimation(
parent: _animationController,
curve: Curves.easeOutQuad,
reverseCurve: Curves.easeOutQuad);
_animation.addListener(() {
setState(() {
_buttonSize = _animation.value;
});
});
super.initState();
}
@override
void dispose() {
_animationController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return (GestureDetector(
onTapDown: (TapDownDetails tap) {
_animationController.reverse(from: 1.0);
},
onTapUp: (TapUpDetails tap) {
_animationController.forward();
},
onTapCancel: () {
_animationController.forward();
},
onTap: Feedback.wrapForTap(widget.onTap, context),
behavior: HitTestBehavior.opaque,
child: Transform.scale(
scale: _buttonSize,
child: AnimatedContainer(
duration: Duration(milliseconds: 150),
margin: EdgeInsets.only(bottom: 4),
padding: EdgeInsets.symmetric(vertical: 22, horizontal: 22),
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(45.0)),
color: Theme.of(context).primaryColor,
boxShadow: [
BoxShadow(
color: Color.fromRGBO(
120, 71, 80, widget.elevation ? 0.28 : 0.0),
spreadRadius:
_buttonSize < 1.0 ? -(1 - _buttonSize) * 50 : 0.0,
offset: Offset(0, 7.0),
blurRadius: 55.0)
]),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Container(
child: Center(
child: Column(
children: [
//TODO change the icon
Image.asset("assets/images/blood-drop.png", fit: BoxFit.cover),
Texts('BOOK',bold: true,color: Colors.white,),
Texts('APPPINTEMNT',color: Colors.white,fontSize: 7,),
],
),
),
width: 50,
height: 50,
decoration: BoxDecoration(
shape: BoxShape.circle,
),
)
],
),
)),
));
}
}

@ -3,6 +3,8 @@ import 'package:diplomaticquarterapp/widgets/others/rounded_container_widget.dar
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart'; import 'package:hexcolor/hexcolor.dart';
import '../text.dart';
class MedicalProfileItem extends StatelessWidget { class MedicalProfileItem extends StatelessWidget {
MedicalProfileItem({ MedicalProfileItem({
@required this.imagePath, @required this.imagePath,
@ -17,19 +19,23 @@ class MedicalProfileItem extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return RoundedContainer( return RoundedContainer(
showBorder: true,
borderWidth: 0,
margin: 4,
height:120,// MediaQuery.of(context).size.height * 0.12,
child: Container( child: Container(
padding: EdgeInsets.all(5), //width: MediaQuery.of(context).size.width * 0.25,
// width: MediaQuery.of(context).size.width* 0.40,
padding: EdgeInsets.all(10),
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Text( Texts(title,
title,
style: TextStyle(
fontSize: 1.5 * SizeConfig.textMultiplier, fontSize: 1.5 * SizeConfig.textMultiplier,
color: HexColor('#B8382C'), color: Theme.of(context).primaryColor,
fontWeight: FontWeight.bold), fontWeight: FontWeight.bold),
),
RichText( RichText(
text: TextSpan( text: TextSpan(
style: TextStyle(color: Colors.black), style: TextStyle(color: Colors.black),

@ -31,7 +31,7 @@ class TimeLineWidget extends StatelessWidget {
), ),
if (isUp) if (isUp)
Positioned( Positioned(
top: 20, top: 15,
child: Container( child: Container(
margin: EdgeInsets.only(left: 2, right: 2), margin: EdgeInsets.only(left: 2, right: 2),
child: Column( child: Column(
@ -90,7 +90,7 @@ class TimeLineWidget extends StatelessWidget {
) )
else else
Positioned( Positioned(
top: 70, top: 65,
child: Container( child: Container(
margin: EdgeInsets.only(left: 2, right: 2), margin: EdgeInsets.only(left: 2, right: 2),
child: Column( child: Column(

@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/landing/landing_page.dart'; import 'package:diplomaticquarterapp/pages/landing/landing_page.dart';
import 'package:diplomaticquarterapp/routes.dart'; import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/bottom_bar.dart'; import 'package:diplomaticquarterapp/widgets/others/bottom_bar.dart';
import 'package:diplomaticquarterapp/widgets/progress_indicator/app_loader_widget.dart'; import 'package:diplomaticquarterapp/widgets/progress_indicator/app_loader_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
@ -67,9 +68,9 @@ class AppScaffold extends StatelessWidget {
headline6: headline6:
TextStyle(color: Colors.white, fontWeight: FontWeight.bold), TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
), ),
title: Text(authenticatedUserObject.isLogin title: Texts(authenticatedUserObject.isLogin || !isShowDecPage
? appBarTitle.toUpperCase() ? appBarTitle.toUpperCase()
: TranslationBase.of(context).serviceInformationTitle), : TranslationBase.of(context).serviceInformationTitle,color: Colors.white,),
leading: Builder( leading: Builder(
builder: (BuildContext context) { builder: (BuildContext context) {
return ArrowBack(); return ArrowBack();
@ -115,6 +116,6 @@ class AppScaffold extends StatelessWidget {
buildBodyWidget() { buildBodyWidget() {
// return body; //Stack(children: <Widget>[body, buildAppLoaderWidget(isLoading)]); // return body; //Stack(children: <Widget>[body, buildAppLoaderWidget(isLoading)]);
return Stack(children: <Widget>[body, FloatingSearchButton()]); return Stack(children: <Widget>[body, /*FloatingSearchButton()*/]);
} }
} }

Loading…
Cancel
Save