Merge branch 'queuing_system_third_page' into 'development'

Queuing system third page

See merge request Cloud_Solution/queuing_system!2
dev_faiz
Elham Ali 4 years ago
commit 761687fe75

@ -1,11 +1,8 @@
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:queuing_system/core/base/project_view_model.dart';
import 'package:queuing_system/widget/app_loader_widget.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
import 'base_view_model.dart';
import 'network_base_view.dart';

@ -18,5 +18,7 @@ class AppGlobal {
static Color appTextColor = const Color(0xFF2B353E);
static Color scheduleTextColor = const Color(0xFF2E303A);
static Color inProgressColor = const Color(0xFFCC9B14);
static Color appGreyColor = const Color(0xFF575757);
static Color appLightGreyColor = const Color(0xFFE6E6E6);
}

@ -0,0 +1,6 @@
enum FontType {
Poppins_Bold,
poppins_Medium,
poppins_Regular,
poppins_SemiBold,
}

@ -1,7 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:provider/provider.dart';
import 'package:queuing_system/core/base/project_view_model.dart';
import 'package:queuing_system/core/config/config.dart';
import 'package:queuing_system/core/config/size_config.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
@ -21,19 +19,18 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget {
,
border: const Border(bottom: BorderSide(color: Color(0xFFEFEFEF)))),
child: Container(
padding: const EdgeInsets.only(left: 30, right: 50, bottom: 10,),
margin: EdgeInsets.only(top: SizeConfig.isHeightVeryShort ? 30 : 50),
padding: const EdgeInsets.only(left: 30, right: 50, bottom: 0,),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
AppText(
" Current Serving",
letterSpacing: -2.48,
color: Colors.white,
fontFamily: 'Poppins-SemiBold.ttf',
),
SvgPicture.asset( "assets/images/hmglogo.svg", height: 120,),
SvgPicture.asset( "assets/images/hmglogo.svg", height: 60,),
],
),
),
@ -43,5 +40,5 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget {
@override
Size get preferredSize => Size(
double.maxFinite,
280);
SizeConfig.getHeightMultiplier()*8);
}

@ -3,17 +3,17 @@ import 'package:queuing_system/core/base/app_scaffold_widget.dart';
import 'package:queuing_system/core/config/config.dart';
import 'package:queuing_system/core/config/size_config.dart';
import 'package:queuing_system/header/app_header.dart';
import 'package:queuing_system/home/que_item.dart';
import 'package:queuing_system/home/que_item/que_item.dart';
import 'package:queuing_system/home/que_item_list.dart';
import 'package:queuing_system/utils/signalR_utils.dart';
import 'package:queuing_system/utils/utils.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class MyHomePage extends StatefulWidget {
String title ="MyHomePage";
bool haveOnePatient = false;
bool haveLessThan3Patient = true;
bool haveOnePatient = true;
bool have3Patient = false;
bool haveListOfPatient = true;
@ -29,35 +29,52 @@ class _MyHomePageState extends State<MyHomePage> {
appBar: AppHeader(),
body: Column(
children: [
SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)),
widget.haveListOfPatient?Row(
SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 2)),
widget.haveListOfPatient?
Row(
children: [
FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,),
Container(width: 20,height:SizeConfig.getHeightMultiplier() *40,color: Colors.grey, margin: EdgeInsets.only(left: 30),),
QueItemList()
FirstColumn(
have3Patient: widget.have3Patient,
),
const SizedBox(
width: 40,
),
if(widget.haveListOfPatient)
Container(
width: 10,
height:SizeConfig.getHeightMultiplier()*40,
color: AppGlobal.appLightGreyColor,
),
if(widget.haveListOfPatient)
const SizedBox(
width: 40,
),
if(widget.haveListOfPatient)
const QueItemList()
],
): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,),
): FirstColumn(have3Patient: widget.have3Patient,),
],
),
bottomSheet: Container(
color: Colors.transparent,
height: 280,
height: Utils.getHeight()* 0.9,
width: double.infinity,
padding: const EdgeInsets.only(left: 50, right: 50, bottom: 10,),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.center ,
children: [
AppText(
"Powered By",
letterSpacing: -2.48,
color: AppGlobal.appTextColor,
fontSize: SizeConfig.getWidthMultiplier() * 3,
Padding(
padding: const EdgeInsets.only(top: 30, left: 30),
child: AppText(
"Powered By",
letterSpacing: -1.1,
color: AppGlobal.appTextColor,
fontSize: SizeConfig.getWidthMultiplier() * 2.5,
fontFamily: 'Poppins-Medium.ttf',
),
),
Padding(
padding: const EdgeInsets.only(top: 40, left: 18),
child: Image.asset( "assets/images/cloud_logo.png", height: SizeConfig.getHeightMultiplier()*5,),
),
const SizedBox(width: 40,),
Image.asset( "assets/images/cloud_logo.png",),
],
),
),// This trailing comma makes auto-formatting nicer for build methods.
@ -66,26 +83,26 @@ class _MyHomePageState extends State<MyHomePage> {
}
class FirstColumn extends StatelessWidget {
final bool haveLessThan3Patient;
final bool have3Patient;
const FirstColumn({Key key, this.haveLessThan3Patient = false}) : super(key: key);
const FirstColumn({Key key, this.have3Patient = false}) : super(key: key);
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true,),
SizedBox(height: SizeConfig.getHeightMultiplier() * 5,),
if(haveLessThan3Patient)
const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,),
SizedBox(
height: SizeConfig.getHeightMultiplier() * 5,),
if(have3Patient)
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true,),
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false,),
children: const [
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,),
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,),
],
),
],
);
}

@ -0,0 +1,90 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:queuing_system/core/config/config.dart';
import 'package:queuing_system/core/config/size_config.dart';
import 'package:queuing_system/home/que_item/que_item_widget.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class QueItem extends StatelessWidget {
const QueItem({
Key key,
this.isFirstLine = false,
this.isSecondLine = false,
this.isInListLine = false,
this.queNo,
this.isNurseVisit = false,
this.idDoctorVisit = false, this.haveListOfPatient
}) : super(key: key);
final bool isFirstLine;
final bool isSecondLine;
final bool isInListLine;
final bool isNurseVisit;
final bool idDoctorVisit;
final String queNo;
final bool haveListOfPatient;
@override
Widget build(BuildContext context) {
return haveListOfPatient?
Padding(
padding: const EdgeInsets.all(45.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
QueItemWidget(
isFirstLine: isFirstLine,
isNurseVisit: isNurseVisit,
isSecondLine: isSecondLine,
queNo: queNo,
),
],
),
)
:Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Padding(
padding: const EdgeInsets.only(right: 20.0, left: 20.0),
child: AppText(
queNo,
fontSize: SizeConfig.getWidthMultiplier() *
(isFirstLine
? 13
: isSecondLine
? 8.5
: 5.5),
letterSpacing: -2.6,
fontWeight: FontWeight.bold,
fontFamily: 'Poppins',
),
),
Row(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SvgPicture.asset(
isNurseVisit
? "assets/images/nurseicon.svg"
: "assets/images/doctoricon.svg", height:(isFirstLine
? SizeConfig.getHeightMultiplier()*3
: isSecondLine
? SizeConfig.getHeightMultiplier()*3
: SizeConfig.getHeightMultiplier()*3) ,),
const SizedBox(width: 8,),
AppText(
isNurseVisit ? " Please visit Nurse" : " Please visit doctor",
color: AppGlobal.appGreyColor,
fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine
? 3.3
: isSecondLine
? 3.3
: 3.3),
letterSpacing: -1.6,
fontFamily: 'Poppins-Medium.ttf',
),
],
)
],
);
}
}

@ -4,26 +4,23 @@ import 'package:queuing_system/core/config/config.dart';
import 'package:queuing_system/core/config/size_config.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class QueItem extends StatelessWidget {
const QueItem({
class QueItemWidget extends StatelessWidget {
const QueItemWidget({
Key key,
this.isFirstLine = false,
this.isSecondLine = false,
this.isInListLine = false,
this.queNo,
this.isNurseVisit = false,
this.idDoctorVisit = false,
}) : super(key: key);
final bool isFirstLine;
final bool isSecondLine;
final bool isInListLine;
final bool isNurseVisit;
final bool idDoctorVisit;
final String queNo;
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
AppText(
queNo,
@ -31,38 +28,42 @@ class QueItem extends StatelessWidget {
(isFirstLine
? 13
: isSecondLine
? 8.5
: 5.5),
letterSpacing: -9.32,
? 7.5
: 5.5),
letterSpacing: -5.00,
fontWeight: FontWeight.bold,
fontFamily: 'Poppins-Bold.ttf',
),
Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.center,
children: [
SvgPicture.asset(isNurseVisit
? "assets/images/nurseicon.svg"
: "assets/images/doctoricon.svg", height:(isFirstLine
? 120
SvgPicture.asset(
isNurseVisit
? "assets/images/nurseicon.svg"
: "assets/images/doctoricon.svg", height:(isFirstLine
? SizeConfig.getHeightMultiplier()*3
: isSecondLine
? 80
: 70) ,),
SizedBox(width: 10,),
? SizeConfig.getHeightMultiplier()*3
: SizeConfig.getHeightMultiplier()*3) ,),
const SizedBox(width: 8,),
AppText(
isNurseVisit ? "Please visit Nurse" : "Please visit doctor",
color: isNurseVisit
? AppGlobal.appGreenColor
: AppGlobal.appRedColor,
fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine
? 4
? 3.3
: isSecondLine
? 3
: 3.2),
? 3.3
: 3.3),
letterSpacing: -2.6,
fontWeight: FontWeight.w600,
fontFamily: 'Poppins-Bold.ttf',
),
],
)
),
],
);
}

@ -1,18 +1,26 @@
import 'package:flutter/material.dart';
import 'package:queuing_system/home/que_item.dart';
import 'package:queuing_system/home/que_item/que_item.dart';
class QueItemList extends StatelessWidget {
const QueItemList({Key key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Column(children: [
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,),
return SizedBox(
child: Expanded(
child: Column(
children: const [
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
],);
],),
),
);
}
}

@ -1,8 +1,5 @@
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:queuing_system/utils/signalR_utils.dart';
import 'core/base/app_scaffold_widget.dart';
import 'core/base/project_view_model.dart';
import 'core/config/size_config.dart';
import 'home/home_screen.dart';

@ -176,4 +176,8 @@ class Utils {
// Join/Merge all words back to one String
return capitalizedWords.join(' ');
}
static getHeight() {
return SizeConfig.getHeightMultiplier()*10;
}
}

@ -300,7 +300,7 @@ class _AppTextState extends State<AppText> {
case "date":
return 24.0;
default:
return SizeConfig.textMultiplier * 2.5;
return SizeConfig.textMultiplier * 2.8;
}
}

@ -177,6 +177,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.12.11"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.2"
meta:
dependency: transitive
description:
@ -300,7 +307,7 @@ packages:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.3"
version: "0.4.8"
tuple:
dependency: transitive
description:

Loading…
Cancel
Save