Edit some design issues in the 4th page

queuing_system_third_page
RoaaGhali98 4 years ago
parent 791b9299ec
commit 785554e5fa

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

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

@ -1,7 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.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/config.dart';
import 'package:queuing_system/core/config/size_config.dart'; import 'package:queuing_system/core/config/size_config.dart';
import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
@ -29,11 +27,11 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget {
children: [ children: [
AppText( AppText(
" Current Serving", " Current Serving",
letterSpacing: -2.48,
color: Colors.white, 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 +41,5 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget {
@override @override
Size get preferredSize => Size( Size get preferredSize => Size(
double.maxFinite, double.maxFinite,
280); SizeConfig.getHeightMultiplier()*10);
} }

@ -6,6 +6,7 @@ import 'package:queuing_system/header/app_header.dart';
import 'package:queuing_system/home/que_item.dart'; import 'package:queuing_system/home/que_item.dart';
import 'package:queuing_system/home/que_item_list.dart'; import 'package:queuing_system/home/que_item_list.dart';
import 'package:queuing_system/utils/signalR_utils.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'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class MyHomePage extends StatefulWidget { class MyHomePage extends StatefulWidget {
@ -30,34 +31,48 @@ class _MyHomePageState extends State<MyHomePage> {
body: Column( body: Column(
children: [ children: [
SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)), SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)),
widget.haveListOfPatient?Row( widget.haveListOfPatient?
Row(
children: [ children: [
FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), FirstColumn(
haveLessThan3Patient: widget.haveLessThan3Patient,
Container(width: 20,height:SizeConfig.getHeightMultiplier() *40,color: Colors.grey, margin: EdgeInsets.only(left: 30),), ),
QueItemList() const SizedBox(
width: 40,
),
Container(
width: 10,
height:SizeConfig.getHeightMultiplier()*40,
color: Colors.grey,
),
const SizedBox(
width: 40,
),
const QueItemList()
], ],
): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), ): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,),
], ],
), ),
bottomSheet: Container( bottomSheet: Container(
color: Colors.transparent, color: Colors.transparent,
height: 280, height: Utils.getHeight(),
width: double.infinity, width: double.infinity,
padding: const EdgeInsets.only(left: 50, right: 50, bottom: 10,),
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.center ,
children: [ children: [
AppText( Padding(
"Powered By", padding: const EdgeInsets.only(top: 30, left: 30),
letterSpacing: -2.48, child: AppText(
color: AppGlobal.appTextColor, "Powered By",
fontSize: SizeConfig.getWidthMultiplier() * 3, 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. ),// This trailing comma makes auto-formatting nicer for build methods.
@ -75,17 +90,17 @@ class FirstColumn extends StatelessWidget {
return Column( return Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[ children: <Widget>[
QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true,), const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,),
SizedBox(height: SizeConfig.getHeightMultiplier() * 5,), SizedBox(
height: SizeConfig.getHeightMultiplier() * 5,),
if(haveLessThan3Patient) if(haveLessThan3Patient)
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: const [
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true,), QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,),
QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false,), QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,),
], ],
), ),
], ],
); );
} }

@ -12,7 +12,7 @@ class QueItem extends StatelessWidget {
this.isInListLine = false, this.isInListLine = false,
this.queNo, this.queNo,
this.isNurseVisit = false, this.isNurseVisit = false,
this.idDoctorVisit = false, this.idDoctorVisit = false, this.haveListOfPatient
}) : super(key: key); }) : super(key: key);
final bool isFirstLine; final bool isFirstLine;
final bool isSecondLine; final bool isSecondLine;
@ -20,46 +20,100 @@ class QueItem extends StatelessWidget {
final bool isNurseVisit; final bool isNurseVisit;
final bool idDoctorVisit; final bool idDoctorVisit;
final String queNo; final String queNo;
final bool haveListOfPatient;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Column( return haveListOfPatient?
children: [ Padding(
AppText( padding: const EdgeInsets.all(30.0),
queNo, child: Column(
fontSize: SizeConfig.getWidthMultiplier() * crossAxisAlignment: CrossAxisAlignment.center,
(isFirstLine children: [
? 13 AppText(
queNo,
fontSize: SizeConfig.getWidthMultiplier() *
(isFirstLine
? 13
: isSecondLine
? 8.5
: 5.5),
letterSpacing: -5.00,
fontWeight: FontWeight.bold,
fontFamily: 'Poppins-Bold.ttf',
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SvgPicture.asset(
isNurseVisit
? "assets/images/nurseicon.svg"
: "assets/images/doctoricon.svg", height:(isFirstLine
? 40
: isSecondLine : isSecondLine
? 8.5 ? 40
: 5.5), : 40) ,),
letterSpacing: -9.32, const SizedBox(width: 8,),
fontWeight: FontWeight.bold, AppText(
isNurseVisit ? "Please visit Nurse" : "Please visit doctor",
color: isNurseVisit
? AppGlobal.appGreenColor
: AppGlobal.appRedColor,
fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine
? 3.3
: isSecondLine
? 3.3
: 3.3),
letterSpacing: -2.6,
fontWeight: FontWeight.w600,
fontFamily: 'Poppins-Bold.ttf',
),
],
)
],
),
)
: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( Row(
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
SvgPicture.asset(isNurseVisit SvgPicture.asset(
? "assets/images/nurseicon.svg" isNurseVisit
: "assets/images/doctoricon.svg", height:(isFirstLine ? "assets/images/nurseicon.svg"
? 120 : "assets/images/doctoricon.svg", height:(isFirstLine
? 40
: isSecondLine : isSecondLine
? 80 ? 40
: 70) ,), : 40) ,),
SizedBox(width: 10,), const SizedBox(width: 8,),
AppText( AppText(
isNurseVisit ? "Please visit Nurse" : "Please visit doctor", isNurseVisit ? " Please visit Nurse" : " Please visit doctor",
color: isNurseVisit color: AppGlobal.appLightGreyColor,
? AppGlobal.appGreenColor
: AppGlobal.appRedColor,
fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine
? 4 ? 3.3
: isSecondLine : isSecondLine
? 3 ? 3.3
: 3.2), : 3.3),
letterSpacing: -2.6, letterSpacing: -1.6,
fontWeight: FontWeight.w600, fontFamily: 'Poppins-Medium.ttf',
), ),
], ],
) )

@ -6,13 +6,21 @@ class QueItemList extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Column(children: [ return SizedBox(
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,), child: Expanded(
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,), child: Column(
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,), children: const [
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,), QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,),
QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true,), 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:flutter/material.dart';
import 'package:provider/provider.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/base/project_view_model.dart';
import 'core/config/size_config.dart'; import 'core/config/size_config.dart';
import 'home/home_screen.dart'; import 'home/home_screen.dart';

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

@ -1,341 +0,0 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
async:
dependency: transitive
description:
name: async
url: "https://pub.dartlang.org"
source: hosted
version: "2.8.2"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.0"
characters:
dependency: transitive
description:
name: characters
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
charcode:
dependency: transitive
description:
name: charcode
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.1"
clock:
dependency: transitive
description:
name: clock
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
collection:
dependency: transitive
description:
name: collection
url: "https://pub.dartlang.org"
source: hosted
version: "1.15.0"
connectivity:
dependency: "direct main"
description:
name: connectivity
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.6"
connectivity_for_web:
dependency: transitive
description:
name: connectivity_for_web
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.0+1"
connectivity_macos:
dependency: transitive
description:
name: connectivity_macos
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.1+2"
connectivity_platform_interface:
dependency: transitive
description:
name: connectivity_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.1"
crypto:
dependency: transitive
description:
name: crypto
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.1"
equatable:
dependency: transitive
description:
name: equatable
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.3"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_gifimage:
dependency: "direct main"
description:
name: flutter_gifimage
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.4"
flutter_svg:
dependency: "direct main"
description:
name: flutter_svg
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.3"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
flutter_web_plugins:
dependency: transitive
description: flutter
source: sdk
version: "0.0.0"
get_it:
dependency: "direct main"
description:
name: get_it
url: "https://pub.dartlang.org"
source: hosted
version: "7.2.0"
http:
dependency: "direct main"
description:
name: http
url: "https://pub.dartlang.org"
source: hosted
version: "0.13.4"
http_parser:
dependency: transitive
description:
name: http_parser
url: "https://pub.dartlang.org"
source: hosted
version: "4.0.0"
js:
dependency: transitive
description:
name: js
url: "https://pub.dartlang.org"
source: hosted
version: "0.6.3"
lints:
dependency: transitive
description:
name: lints
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
logging:
dependency: transitive
description:
name: logging
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.2"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.dartlang.org"
source: hosted
version: "0.12.11"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.dartlang.org"
source: hosted
version: "1.7.0"
nested:
dependency: transitive
description:
name: nested
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
path:
dependency: transitive
description:
name: path
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.0"
path_drawing:
dependency: transitive
description:
name: path_drawing
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
path_parsing:
dependency: transitive
description:
name: path_parsing
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
petitparser:
dependency: transitive
description:
name: petitparser
url: "https://pub.dartlang.org"
source: hosted
version: "4.4.0"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.2"
provider:
dependency: "direct main"
description:
name: provider
url: "https://pub.dartlang.org"
source: hosted
version: "6.0.2"
quiver:
dependency: transitive
description:
name: quiver
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.1+1"
signalr_core:
dependency: "direct main"
description:
name: signalr_core
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.1"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
source_span:
dependency: transitive
description:
name: source_span
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.1"
sse_client:
dependency: transitive
description:
name: sse_client
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.0"
stack_trace:
dependency: transitive
description:
name: stack_trace
url: "https://pub.dartlang.org"
source: hosted
version: "1.10.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
test_api:
dependency: transitive
description:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.3"
tuple:
dependency: transitive
description:
name: tuple
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
typed_data:
dependency: transitive
description:
name: typed_data
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.1"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.0"
xml:
dependency: transitive
description:
name: xml
url: "https://pub.dartlang.org"
source: hosted
version: "5.3.1"
sdks:
dart: ">=2.14.0 <3.0.0"
flutter: ">=2.4.0-0.0.pre"
Loading…
Cancel
Save