Merge branch 'elham' into 'master'

Elham

See merge request Cloud_Solution/doctor_app_flutter!20
merge-requests/21/merge
Elham 5 years ago
commit 46c927b183

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -1,6 +1,4 @@
import 'package:doctor_app_flutter/screens/profile_screen.dart';
import './screens/QR_reader_screen.dart';
import './screens/auth/change_password_screen.dart';
import './screens/auth/login_screen.dart';
@ -14,8 +12,8 @@ import './screens/my_schedule_screen.dart';
import './screens/patients/patient_profile_screen.dart';
import './screens/patients/patient_search_screen.dart';
import './screens/patients/patients_screen.dart';
import './screens/settings/settings_screen.dart';
import './screens/profile_screen.dart';
import './screens/settings/settings_screen.dart';
const String INIT_ROUTE = LOGIN;
@ -50,5 +48,5 @@ var routes = {
CHANGE_PASSWORD: (_) => ChangePasswordScreen(),
VERIFY_ACCOUNT: (_) => VerifyAccountScreen(),
VERIFICATION_METHODS:(_)=> VerificationMethodsScreen(),
PATIENTS_PROFILE:(_)=> PatientProfile()
PATIENTS_PROFILE:(_)=> PatientProfileScreen()
};

@ -1,9 +1,9 @@
import 'package:doctor_app_flutter/widgets/patients/patinet_profile_widget.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/patinet_profile_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:flutter/material.dart';
class PatientProfile extends StatelessWidget {
const PatientProfile({Key key}) : super(key: key);
class PatientProfileScreen extends StatelessWidget {
const PatientProfileScreen({Key key}) : super(key: key);
@override
Widget build(BuildContext context) {

@ -1,10 +1,11 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/drawer_item_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/rounded_container_widget.dart';
import 'package:flutter/material.dart';
import '../config/size_config.dart';
import '../widgets/shared/app_scaffold_widget.dart';
import '../widgets/shared/drawer_item_widget.dart';
import '../widgets/shared/profile_image_widget.dart';
import '../widgets/shared/rounded_container_widget.dart';
class ProfileScreen extends StatefulWidget {
ProfileScreen({Key key, this.title}) : super(key: key);
@ -18,46 +19,52 @@ class _ProfileScreenState extends State<ProfileScreen> {
@override
Widget build(BuildContext context) {
return AppScaffold(
appBarTitle:'Profile',
body:ListView(
padding: EdgeInsets.zero,
children: <Widget>[
appBarTitle: 'Profile',
body: ListView(padding: EdgeInsets.zero, children: <Widget>[
Container(
height: SizeConfig.heightMultiplier * 30,
child: DrawerHeader(
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
CircleAvatar(
radius: SizeConfig.imageSizeMultiplier * 12,
backgroundImage: NetworkImage(
"https://p.kindpng.com/picc/s/404-4042774_profile-photo-circle-circle-profile-picture-png-transparent.png"),
backgroundColor: Colors.transparent,
),
Padding(
padding: EdgeInsets.only(top: 10),
child: AppText(
"Dr. Chris evans",
fontWeight: FontWeight.bold,
fontSize: SizeConfig.textMultiplier * 3,
)),
AppText("Director of medical records",)
],
child: ProfileImageWidget(
url:
"https://p.kindpng.com/picc/s/404-4042774_profile-photo-circle-circle-profile-picture-png-transparent.png",
name: "Dr. Chris evans",
des: "Director of medical records",
),
),
),
RoundedContainer(child: ListView(children: <Widget>[
DrawerItem("Gender", Icons.person_pin, color: Colors.black, subTitle: "Male",),
DrawerItem("Clinic", Icons.build, color: Colors.black, subTitle: "Neurology Clinic",),
DrawerItem("Hospital", Icons.local_hospital, color: Colors.black, subTitle: "Al-Takkassussi",),
DrawerItem("Speciality", Icons.crop_square, color: Colors.black, subTitle: "being great",),
],),
width: SizeConfig.screenWidth*0.70,
height: SizeConfig.screenHeight*0.40,
RoundedContainer(
child: ListView(
children: <Widget>[
DrawerItem(
"Gender",
Icons.person_pin,
color: Colors.black,
subTitle: "Male",
),
DrawerItem(
"Clinic",
Icons.build,
color: Colors.black,
subTitle: "Neurology Clinic",
),
DrawerItem(
"Hospital",
Icons.local_hospital,
color: Colors.black,
subTitle: "Al-Takkassussi",
),
DrawerItem(
"Speciality",
Icons.crop_square,
color: Colors.black,
subTitle: "being great",
),
],
),
width: SizeConfig.screenWidth * 0.70,
height: SizeConfig.screenHeight * 0.40,
),
]
));
]));
}
}
}

@ -257,7 +257,7 @@ class _VerifyAccountState extends State<VerifyAccount> {
Map model = {
"activationCode": activationCode,
"DoctorID": _loggedUser['DoctorID'],
// "LogInTokenID": _loggedUser['LogInTokenID'],
"LogInTokenID": _loggedUser['LogInTokenID'],
"ProjectID": 15,
"LanguageID": 2,
"stamp": "2020-02-26T14:48:27.221Z",
@ -270,7 +270,6 @@ class _VerifyAccountState extends State<VerifyAccount> {
"IsSilentLogIN": false
};
changeLoadingStata(true);
Navigator.of(context).pushNamed(HOME);
authProv.memberCheckActivationCodeNew(model).then((res) {
changeLoadingStata(false);

@ -180,11 +180,11 @@ class _VerificationMethodsState extends State<VerificationMethods> {
Map model = {
"LogInTokenID": _loggedUser['LogInTokenID'],
"Channel": 9,
"MobileNumber": 785228065, //_loggedUser['MobileNumber'],
"MobileNumber": _loggedUser['MobileNumber'],//785228065,
"IPAdress": "11.11.11.11",
"LanguageID": 2,
"ProjectID": 15, //TODO : this should become daynamci
"ZipCode": 962, //_loggedUser['ZipCode'],
"ZipCode": _loggedUser['ZipCode'],//962, //_loggedUser['ZipCode'],
"UserName": _loggedUser['List_MemberInformation'][0]['MemberID'],
"OTP_SendType": oTPSendType
};
@ -197,6 +197,7 @@ class _VerificationMethodsState extends State<VerificationMethods> {
if (res['MessageStatus'] == 1) {
Navigator.of(context).pushNamed(VERIFY_ACCOUNT);
} else {
print(res['ErrorEndUserMessage']);
helpers.showErrorToast(res['ErrorEndUserMessage']);
}
// Navigator.of(context).pushNamed(HOME);

@ -1,9 +0,0 @@
import 'package:flutter/material.dart';
class PatientProfileWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
child: Center(child: Text('Heeeer Must be Patient Profile'),),
);
}
}

@ -0,0 +1,34 @@
import 'package:flutter/material.dart';
import './profile_general_info_content_widget.dart';
import '../../../config/size_config.dart';
import '../../shared/rounded_container_widget.dart';
class ProfileGeneralInfoWidget extends StatelessWidget {
const ProfileGeneralInfoWidget({
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return RoundedContainer(
child: ListView(
children: <Widget>[
ProfileGeneralInfoContentWidget(
title: "Age",
info: '55 Yr',
),
ProfileGeneralInfoContentWidget(
title: "Contact Number",
info: '00 966 5000000000',
),
ProfileGeneralInfoContentWidget(
title: "Email",
info: 'Elham@yahoo.com',
),
],
),
width: SizeConfig.screenWidth * 0.70,
height: SizeConfig.screenHeight * 0.25,
);
}
}

@ -0,0 +1,35 @@
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
import './Profile_general_info_Widget.dart';
import './profile_medical_info_widget.dart';
import './profile_status_info_widget.dart';
import '../../../config/size_config.dart';
import '../../../widgets/shared/profile_image_widget.dart';
class PatientProfileWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ListView(padding: EdgeInsets.zero, children: <Widget>[
Container(
height: SizeConfig.heightMultiplier * 30,
child: ProfileImageWidget(
url:
"http://images4.fanpop.com/image/photos/16200000/David-Schwimmer-Ross-Geller-ross-geller-16258927-629-779.jpg",
name: "Fahad AlSlehm",
des: "324599",
height: SizeConfig.heightMultiplier * 17,
width: SizeConfig.heightMultiplier * 17,
color: Hexcolor('#58434F')),
),
ProfileGeneralInfoWidget(),
ProfileMedicalInfoWidget(),
ProfileStatusInfoWidget()
]);
}
}

@ -0,0 +1,36 @@
import '../../../config/size_config.dart';
import '../../shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
class ProfileGeneralInfoContentWidget extends StatelessWidget {
String title;
String info;
ProfileGeneralInfoContentWidget({this.title, this.info});
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 14),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
SizedBox(
height: 10,
),
AppText(
title,
fontSize: SizeConfig.textMultiplier * 3,
fontWeight: FontWeight.w700,
color: Hexcolor('#58434F'),
),
AppText(
info,
color: Hexcolor('#707070'),
fontSize: SizeConfig.textMultiplier * 2,
)
],
),
);
}
}

@ -0,0 +1,115 @@
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
import '../../../config/size_config.dart';
import '../../shared/app_texts_widget.dart';
import '../../shared/rounded_container_widget.dart';
class ProfileMedicalInfoWidget extends StatelessWidget {
const ProfileMedicalInfoWidget({
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
String url = "assets/images/";
final double contWidth = SizeConfig.screenWidth * 0.70;
final double contHeight = SizeConfig.screenHeight * 0.30;
return RoundedContainer(
child: ListView(
children: <Widget>[
Padding(
padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 14),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
AppText(
'Patient Medical Information ',
fontSize: SizeConfig.textMultiplier * 3,
fontWeight: FontWeight.w700,
color: Hexcolor('#58434F'),
),
SizedBox(
height: 20,
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[
CircleAvatarWidget(
des: 'Vital Sign',
url: url + 'heartbeat.png',
width: (contWidth) / 3.5,
height: (contWidth) / 3.5,
),
CircleAvatarWidget(
des: 'Lab Result',
url: url + 'lab.png',
width: (contWidth) / 3.5,
height: (contWidth) / 3.5,
),
CircleAvatarWidget(
des: 'Prescription',
url: url + 'note.png',
width: (contWidth) / 3.5,
height: (contWidth) / 3.5,
),
CircleAvatarWidget(
des: 'Radiology',
url: url + 'radiology-1.png',
width: (contWidth) / 3.5,
height: (contWidth) / 3.5,
),
],
)
],
),
),
],
),
width: contWidth,
height: contHeight,
);
}
}
class CircleAvatarWidget extends StatelessWidget {
const CircleAvatarWidget(
{Key key,
@required this.url,
@required this.des,
this.height,
this.width})
: super(key: key);
final String url;
final String des;
final double height;
final double width;
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Container(
height: height,
width: width,
decoration: new BoxDecoration(
// color: Colors.green, // border color
shape: BoxShape.circle,
border: Border.all(color: Hexcolor('#B7831A'),width: 1.5)),
child: CircleAvatar(
radius: SizeConfig.imageSizeMultiplier * 12,
child: Image.asset(url),
backgroundColor: Colors.transparent,
),
),
SizedBox(
height: 10,
),
AppText(des)
],
);
}
}

@ -0,0 +1,43 @@
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
import '../../../config/size_config.dart';
import '../../shared/rounded_container_widget.dart';
class ProfileStatusInfoWidget extends StatelessWidget {
const ProfileStatusInfoWidget({
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return RoundedContainer(
child: ListView(
children: <Widget>[
Padding(
padding: const EdgeInsets.symmetric(horizontal: 14),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
AppText(
'Insurance approval',
fontSize: SizeConfig.textMultiplier * 3,
fontWeight: FontWeight.w700,
color: Hexcolor('#58434F'),
),
AppText(
'Approved',
color: Hexcolor('#707070'),
fontSize: SizeConfig.textMultiplier * 2.5,
)
],
),
),
],
),
width: SizeConfig.screenWidth * 0.70,
height: SizeConfig.screenHeight * 0.12,
);
}
}

@ -1,7 +1,6 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import '../../util/extenstions.dart';
// OWNER : Ibrahim albitar

@ -0,0 +1,50 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
class ProfileImageWidget extends StatelessWidget {
String url;
String name;
String des;
double height;
double width;
Color color;
ProfileImageWidget(
{this.url,
this.name,
this.des,
this.height,
this.width,
this.color = Colors.black});
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
height: height,
width: width,
child: CircleAvatar(
radius: SizeConfig.imageSizeMultiplier * 12,
backgroundImage: NetworkImage(url),
backgroundColor: Colors.transparent,
),
),
Padding(
padding: EdgeInsets.only(top: 10),
child: AppText(
name,
fontWeight: FontWeight.bold,
fontSize: SizeConfig.textMultiplier * 4,
color: color,
)),
AppText(
des,
fontSize: SizeConfig.textMultiplier * 2.5,
)
],
);
}
}

@ -76,6 +76,11 @@ flutter:
- assets/images/close_icon.png
- assets/images/welcome_login_icon.png
- assets/images/verified_icon.png
- assets/images/heartbeat.png
- assets/images/lab.png
- assets/images/note.png
- assets/images/radiology-1.png
# - images/a_dot_ham.jpeg
# An image asset can refer to one or more resolution-specific "variants", see

Loading…
Cancel
Save