diff --git a/assets/icons/cloudy.svg b/assets/icons/cloudy.svg
index b1f6b7e..56a61b4 100644
--- a/assets/icons/cloudy.svg
+++ b/assets/icons/cloudy.svg
@@ -1 +1,33 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/cold.svg b/assets/icons/cold.svg
index 06b4b0b..83e9fa7 100644
--- a/assets/icons/cold.svg
+++ b/assets/icons/cold.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/hot.svg b/assets/icons/hot.svg
index 1fedcc1..1d0ac71 100644
--- a/assets/icons/hot.svg
+++ b/assets/icons/hot.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/mosque.svg b/assets/icons/mosque.svg
index 2eded13..3f66f4c 100644
--- a/assets/icons/mosque.svg
+++ b/assets/icons/mosque.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/rainy.svg b/assets/icons/rainy.svg
index c3ce867..6f1146d 100644
--- a/assets/icons/rainy.svg
+++ b/assets/icons/rainy.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/sunny.svg b/assets/icons/sunny.svg
index a84bc71..3409534 100644
--- a/assets/icons/sunny.svg
+++ b/assets/icons/sunny.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/weather.svg b/assets/icons/weather.svg
index 8c0ac78..a0f43ce 100644
--- a/assets/icons/weather.svg
+++ b/assets/icons/weather.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/windy.svg b/assets/icons/windy.svg
index 9e12431..586ab91 100644
--- a/assets/icons/windy.svg
+++ b/assets/icons/windy.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/lib/core/api.dart b/lib/core/api.dart
index 8df4e3b..a8b346b 100644
--- a/lib/core/api.dart
+++ b/lib/core/api.dart
@@ -26,7 +26,7 @@ class API {
static getCallRequestInfoByClinicInfo(String deviceIp,
{required Function(List, List, CallConfig callConfig) onSuccess, required Function(dynamic) onFailure}) async {
final body = {"ipAdress": deviceIp, "apiKey": apiKey};
- bool isDevMode = false;
+ bool isDevMode = true;
if (isDevMode) {
var callPatients = PatientTicketModel.testCallPatients;
CallConfig callConfig = CallConfig.testCallConfig;
diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart
index 9018879..0501049 100644
--- a/lib/core/config/config.dart
+++ b/lib/core/config/config.dart
@@ -19,6 +19,7 @@ class AppGlobal {
// static Color appRedColor = const Color(0xFFD02127);
// static Color appGreenColor = const Color(0xFF359846);
static Color appTextColor = const Color(0xFF2B353E);
+ static Color appRssFeed = const Color(0x3A1E2326);
//TextColors
static Color nebulizationColor = const Color(0xFF3C86D0);
@@ -46,4 +47,23 @@ class AppGlobal {
static String rainIcon = "assets/icons/rainy.svg";
static String sunnyIcon = "assets/icons/sunny.svg";
static String windIcon = "assets/icons/windy.svg";
+
+ //Decoartion
+
+ static BoxDecoration configWidgetDecoration = BoxDecoration(
+ color: Colors.white,
+ borderRadius: BorderRadius.circular(12),
+ boxShadow: [
+ BoxShadow(
+ color: Colors.grey.withOpacity(0.2),
+ blurRadius: 4,
+ offset: const Offset(4, 4), // Shadow position
+ ),
+ BoxShadow(
+ color: Colors.grey.withOpacity(0.2),
+ blurRadius: 4,
+ offset: const Offset(-4, -4), // Shadow position
+ ),
+ ],
+ );
}
diff --git a/lib/core/response_models/call_config_model.dart b/lib/core/response_models/call_config_model.dart
index 946d55e..4e8768c 100644
--- a/lib/core/response_models/call_config_model.dart
+++ b/lib/core/response_models/call_config_model.dart
@@ -38,6 +38,7 @@ class CallConfig {
late String callForText;
late String currentServeText;
late String nextPrayerText;
+ late String weatherText;
late String minText;
late String maxText;
late String fajrText;
@@ -78,6 +79,7 @@ class CallConfig {
this.callForText = "",
this.currentServeText = "Current Serving",
this.nextPrayerText = "Next Prayer",
+ this.weatherText = "Weather",
this.minText = "Min",
this.maxText = "Max",
this.fajrText = "Fajar",
@@ -117,10 +119,12 @@ class CallConfig {
queueNoText = json['queueNoText'];
callForText = json['callForText'];
nextPrayerText = json['nextPrayerText'];
+ weatherText = json['weatherText'] ?? "Weather";
maxText = json['maxText'];
- fajrText = json['fajrText'];
+ minText = json['minText'];
+ fajrText = json['fajarText'];
dhuhrText = json['dhuhrText'];
- asrText = json['asrText'];
+ asrText = json['asarText'];
maghribText = json['maghribText'];
ishaText = json['ishaText'];
currentServeText = json['currentServeText'];
@@ -137,9 +141,9 @@ class CallConfig {
"id": 1,
"globalClinicPrefixReq": true,
"clinicPrefixReq": true,
- "concurrentCallDelaySec": 2,
- "voiceType": 2,
- "voiceTypeText": "Female",
+ "concurrentCallDelaySec": 1,
+ "voiceType": 1,
+ "voiceTypeText": "Male",
"screenLanguage": 1,
"screenLanguageText": "English",
"voiceLanguage": 1,
@@ -149,27 +153,33 @@ class CallConfig {
"prioritySMS": 2,
"priorityWhatsApp": 3,
"priorityEmail": 1,
- "textDirection": 2,
- "vitalSignText": "Call For VitalSign",
- "doctorText": "دعوة للحصول على علامة حيوية",
- // "doctorText": "Call For Doctor",
- "procedureText": "Call For Procedure",
- "vaccinationText": "Call For Vaccination",
- "nebulizationText": "Call For Nebulization",
- "roomText": "غرفة",
- // "roomText": "Room",
- "queueNoText": "رقم الانتظار",
- "callForText": "يدعو إلى",
+ "textDirection": 1,
+ "vitalSignText": "VitalSign",
+ "doctorText": "Doctor",
+ "procedureText": "Procedure",
+ "vaccinationText": "Vaccination",
+ "nebulizationText": "Nebulization",
+ "callForVitalSignText": "Call For VitalSign",
+ "callForDoctorText": "Call For Doctor",
+ "callForProcedureText": "Call For Procedure",
+ "callForVaccinationText": "Call For Vaccination",
+ "callForNebulizationText": "Call For Nebulization",
+ "roomText": "Room",
+ "queueNoText": "Queue No",
+ "callForText": "Call For",
"currentServeText": "Current Serving",
- "callTypeVitalSignText": "علامة حيوية",
- "callTypeDoctorText": "طبيب",
- "callTypeProcedureText": "إجراء",
- "callTypeVaccinationText": "تلقيح",
- "callTypeNebulizationText": "الإرذاذ",
+ "maxText": "Max",
+ "minText": "Min",
+ "nextPrayerText": "Next Prayer",
+ "fajarText": "Fajar",
+ "dhuhrText": "Dhuhr",
+ "asarText": "Asar",
+ "maghribText": "Maghrib",
+ "ishaText": "Isha",
"createdBy": 101,
"createdOn": "2023-08-08T00:00:00",
"editedBy": 101,
- "editedOn": "2023-09-26T16:30:41.92"
+ "editedOn": "2023-10-08T10:07:12.5"
};
static CallConfig testCallConfig = CallConfig.fromJson(data);
diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart
index f204c41..cff0392 100644
--- a/lib/header/app_header.dart
+++ b/lib/header/app_header.dart
@@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
+import 'package:marquee/marquee.dart';
import 'package:provider/provider.dart';
import 'package:queuing_system/core/config/config.dart';
import 'package:queuing_system/core/config/size_config.dart';
@@ -10,104 +11,96 @@ import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class AppHeader extends StatelessWidget with PreferredSizeWidget {
const AppHeader({Key? key}) : super(key: key);
- getWeatherIcon() {}
+ //
+ // Widget getWeatherWidget() {
+ // return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
+ // if (appProvider.currentWeathersWidgetModel.maxTemp == null || appProvider.currentWeathersWidgetModel.minTemp == null || appProvider.currentWeathersWidgetModel.iconPhrase == null) {
+ // return const SizedBox.shrink();
+ // }
+ // return Directionality(
+ // textDirection: appProvider.patientCallConfigurations.textDirection,
+ // child: Row(
+ // children: [
+ // SvgPicture.asset(
+ // appProvider.currentWeathersWidgetModel.weatherIconPath ?? AppGlobal.weatherIcon,
+ // height: SizeConfig.getHeightMultiplier() * 2.5,
+ // color: Colors.white,
+ // ),
+ // const SizedBox(width: 10),
+ // Padding(
+ // padding: const EdgeInsets.only(top: 15),
+ // child: AppText(
+ // "${appProvider.patientCallConfigurations.maxText}: ${appProvider.currentWeathersWidgetModel.maxTemp}°C , ${appProvider.patientCallConfigurations.minText}: ${appProvider.currentWeathersWidgetModel.minTemp}°C",
+ // color: Colors.white,
+ // fontSize: SizeConfig.getHeightMultiplier() * 1.3,
+ // ),
+ // ),
+ // ],
+ // ),
+ // );
+ // });
+ // }
+ //
+ // Widget getPrayerWidget() {
+ // return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
+ // if (appProvider.nextPrayerToShowWithTime.isEmpty) {
+ // return const SizedBox.shrink();
+ // }
+ // return Directionality(
+ // textDirection: appProvider.patientCallConfigurations.textDirection,
+ // // textDirection: appProvider.patientCallConfigurations.textDirection,
+ // child: Row(
+ // children: [
+ // SvgPicture.asset(
+ // AppGlobal.mosqueIcon,
+ // height: SizeConfig.getHeightMultiplier() * 2.5,
+ // color: Colors.white,
+ // ),
+ // const SizedBox(width: 10),
+ // Padding(
+ // padding: const EdgeInsets.only(top: 15),
+ // child: AppText(
+ // "${appProvider.patientCallConfigurations.nextPrayerText}: ${appProvider.nextPrayerToShowWithTime}",
+ // color: Colors.white,
+ // fontSize: SizeConfig.getHeightMultiplier() * 1.3,
+ // ),
+ // ),
+ // ],
+ // ),
+ // );
+ // });
+ // }
- Widget getWeatherWidget() {
- return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
- if (appProvider.currentWeathersWidgetModel.maxTemp == null || appProvider.currentWeathersWidgetModel.minTemp == null || appProvider.currentWeathersWidgetModel.iconPhrase == null) {
- return const SizedBox.shrink();
- }
- return Directionality(
+
+ @override
+ Widget build(BuildContext context) {
+ AppProvider appProvider = context.read();
+ // return SizedBox();
+ return Container(
+ height: 100,
+ padding: const EdgeInsets.only(left: 20, right: 20),
+ decoration: BoxDecoration(color: AppGlobal.vitalSignColor),
+ child: Directionality(
textDirection: appProvider.patientCallConfigurations.textDirection,
child: Row(
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ crossAxisAlignment: CrossAxisAlignment.center,
children: [
- SvgPicture.asset(
- appProvider.currentWeathersWidgetModel.weatherIconPath ?? AppGlobal.weatherIcon,
- height: SizeConfig.getHeightMultiplier() * 2.5,
- color: Colors.white,
- ),
- const SizedBox(width: 10),
- Padding(
- padding: const EdgeInsets.only(top: 15),
+ InkWell(
+ onTap: () {},
child: AppText(
- "${appProvider.patientCallConfigurations.maxText}: ${appProvider.currentWeathersWidgetModel.maxTemp}°C , ${appProvider.patientCallConfigurations.minText}: ${appProvider.currentWeathersWidgetModel.minTemp}°C",
+ appProvider.patientCallConfigurations.currentServeText,
color: Colors.white,
- fontSize: SizeConfig.getHeightMultiplier() * 1.3,
),
),
- ],
- ),
- );
- });
- }
-
- Widget getPrayerWidget() {
- return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
- if (appProvider.nextPrayerToShowWithTime.isEmpty) {
- return const SizedBox.shrink();
- }
- return Directionality(
- textDirection: appProvider.patientCallConfigurations.textDirection,
- child: Row(
- children: [
+ // getPrayerWidget(),
+ // getWeatherWidget(),
SvgPicture.asset(
- AppGlobal.mosqueIcon,
- height: SizeConfig.getHeightMultiplier() * 2.5,
- color: Colors.white,
- ),
- const SizedBox(width: 10),
- Padding(
- padding: const EdgeInsets.only(top: 15),
- child: AppText(
- "Next Prayer: ${appProvider.nextPrayerToShowWithTime}",
- color: Colors.white,
- fontSize: SizeConfig.getHeightMultiplier() * 1.3,
- ),
+ "assets/images/hmglogo.svg",
+ height: Utils.getHeight() * 0.5,
),
],
),
- );
- });
- }
-
- @override
- Widget build(BuildContext context) {
- AppProvider appProvider = context.read();
- return Container(
- padding: const EdgeInsets.only(
- left: 0,
- right: 5,
- ),
- decoration: BoxDecoration(color: AppGlobal.vitalSignColor, border: const Border(bottom: BorderSide(color: Color(0xFFEFEFEF)))),
- child: Container(
- height: 100,
- padding: const EdgeInsets.only(
- left: 20,
- right: 20,
- bottom: 0,
- ),
- child: Directionality(
- textDirection: appProvider.patientCallConfigurations.textDirection,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.center,
- children: [
- InkWell(
- onTap: () {},
- child: AppText(
- appProvider.patientCallConfigurations.currentServeText,
- color: Colors.white,
- ),
- ),
- getPrayerWidget(),
- getWeatherWidget(),
- SvgPicture.asset(
- "assets/images/hmglogo.svg",
- height: Utils.getHeight() * 0.5,
- ),
- ],
- ),
- ),
),
);
}
diff --git a/lib/home/app_provider.dart b/lib/home/app_provider.dart
index c52e6ae..e4dbe4a 100644
--- a/lib/home/app_provider.dart
+++ b/lib/home/app_provider.dart
@@ -107,31 +107,31 @@ class AppProvider extends ChangeNotifier {
final current = DateTime.now();
if (DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.fajr!).isAfter(current)) {
final namazTime = DateFormat('hh:mm a').format(DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.fajr!));
- nextPrayerToShowWithTime = "${patientCallConfigurations.fajrText} ($namazTime)";
+ nextPrayerToShowWithTime = "${patientCallConfigurations.fajrText} at $namazTime";
notifyListeners();
return;
}
if (DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.dhuhr!).isAfter(current)) {
final namazTime = DateFormat('hh:mm a').format(DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.dhuhr!));
- nextPrayerToShowWithTime = "${patientCallConfigurations.dhuhrText} ($namazTime)";
+ nextPrayerToShowWithTime = "${patientCallConfigurations.dhuhrText} at $namazTime";
notifyListeners();
return;
}
if (DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.asr!).isAfter(current)) {
final namazTime = DateFormat('hh:mm a').format(DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.asr!));
- nextPrayerToShowWithTime = "${patientCallConfigurations.asrText} ($namazTime)";
+ nextPrayerToShowWithTime = "${patientCallConfigurations.asrText} at $namazTime";
notifyListeners();
return;
}
if (DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.maghrib!).isAfter(current)) {
final namazTime = DateFormat('hh:mm a').format(DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.maghrib!));
- nextPrayerToShowWithTime = "${patientCallConfigurations.maghribText} ($namazTime)";
+ nextPrayerToShowWithTime = "${patientCallConfigurations.maghribText} at $namazTime";
notifyListeners();
return;
}
if (DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.isha!).isAfter(current)) {
final namazTime = DateFormat('hh:mm a').format(DateTime.fromMillisecondsSinceEpoch(currentPrayersWidgetModel.isha!));
- nextPrayerToShowWithTime = "${patientCallConfigurations.ishaText} ($namazTime)";
+ nextPrayerToShowWithTime = "${patientCallConfigurations.ishaText} at $namazTime";
notifyListeners();
return;
}
diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart
index 4c9c825..d8653b2 100644
--- a/lib/home/home_screen.dart
+++ b/lib/home/home_screen.dart
@@ -1,6 +1,9 @@
import 'package:flutter/material.dart';
+import 'package:flutter_svg/flutter_svg.dart';
+import 'package:marquee/marquee.dart';
import 'package:provider/provider.dart';
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/app_provider.dart';
@@ -11,6 +14,144 @@ import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
class MyHomePage extends StatelessWidget {
const MyHomePage({Key? key}) : super(key: key);
+ getWeatherWidget() {
+ return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
+ if (appProvider.currentWeathersWidgetModel.maxTemp == null || appProvider.currentWeathersWidgetModel.minTemp == null || appProvider.currentWeathersWidgetModel.iconPhrase == null) {
+ return const SizedBox.shrink();
+ }
+ return Container(
+ constraints: BoxConstraints(
+ minWidth: SizeConfig.getWidthMultiplier() * 30,
+ minHeight: SizeConfig.getHeightMultiplier() * 5.5,
+ ),
+ padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 10),
+ decoration: AppGlobal.configWidgetDecoration,
+ child: Directionality(
+ textDirection: appProvider.patientCallConfigurations.textDirection,
+ child: Row(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ AppText(
+ appProvider.patientCallConfigurations.weatherText,
+ color: Colors.grey,
+ fontSize: SizeConfig.getWidthMultiplier() * 1.5,
+ ),
+ AppText(
+ // "Max: 40C , Min: 38C",
+ "${appProvider.patientCallConfigurations.maxText}: ${appProvider.currentWeathersWidgetModel.maxTemp}°C , ${appProvider.patientCallConfigurations.minText}: ${appProvider.currentWeathersWidgetModel.minTemp}°C",
+ fontSize: SizeConfig.getHeightMultiplier() * 1.3,
+ fontHeight: 1,
+ ),
+ ],
+ ),
+ const SizedBox(width: 15),
+ SvgPicture.asset(
+ appProvider.currentWeathersWidgetModel.weatherIconPath ?? AppGlobal.weatherIcon,
+ height: SizeConfig.getHeightMultiplier() * 3,
+ ),
+ ],
+ ),
+ ),
+ );
+ });
+ }
+
+ getPrayerWidget() {
+ return Consumer(builder: (BuildContext context, AppProvider appProvider, Widget? child) {
+ if (appProvider.nextPrayerToShowWithTime.isEmpty) {
+ return const SizedBox.shrink();
+ }
+ return Container(
+ constraints: BoxConstraints(
+ minWidth: SizeConfig.getWidthMultiplier() * 25,
+ minHeight: SizeConfig.getHeightMultiplier() * 5,
+ ),
+ padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 10),
+ decoration: AppGlobal.configWidgetDecoration,
+ child: Directionality(
+ textDirection: appProvider.patientCallConfigurations.textDirection,
+ child: Row(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ AppText(
+ appProvider.patientCallConfigurations.nextPrayerText,
+ color: Colors.grey,
+ fontSize: SizeConfig.getWidthMultiplier() * 1.5,
+ ),
+ AppText(
+ appProvider.nextPrayerToShowWithTime,
+ fontSize: SizeConfig.getHeightMultiplier() * 1.3,
+ fontHeight: 1,
+ ),
+ ],
+ ),
+ const SizedBox(width: 15),
+ SvgPicture.asset(
+ AppGlobal.mosqueIcon,
+ height: SizeConfig.getHeightMultiplier() * 3,
+ ),
+ ],
+ ),
+ ),
+ );
+ });
+ }
+
+ getBody(AppProvider appProvider) {
+ return Column(
+ children: [
+ const SizedBox(height: 12),
+ Expanded(
+ flex: 1,
+ child: Padding(
+ padding: const EdgeInsets.symmetric(horizontal: 40),
+ child: Row(
+ children: [
+ getWeatherWidget(),
+ const SizedBox(width: 35),
+ getPrayerWidget(),
+ ],
+ ),
+ )),
+ const SizedBox(height: 20),
+ Expanded(
+ flex: 9,
+ child: dataContent(appProvider: appProvider),
+ ),
+ ],
+ );
+ }
+
+ Widget getRSSFeedWidget() {
+ return Container(
+ // height: 35,
+ // decoration: const BoxDecoration(
+ // color: Color(0x3A1E2326),
+ // ),
+ padding: const EdgeInsets.symmetric(horizontal: 10),
+ child: Marquee(
+ text: 'Nullam porta dui nec lectus rhoncus sagittis. Cras vitae elit quam. Donec pretium tortor urna, sed fermentum dolor scelerisque vel. Vivamus pretium ut leo eget fermentum.',
+ style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getHeightMultiplier() * 2),
+ scrollAxis: Axis.horizontal,
+ crossAxisAlignment: CrossAxisAlignment.center,
+ blankSpace: 20.0,
+ velocity: 100.0,
+ pauseAfterRound: const Duration(seconds: 1),
+ startPadding: 10.0,
+ accelerationDuration: const Duration(seconds: 1),
+ accelerationCurve: Curves.linear,
+ decelerationDuration: const Duration(milliseconds: 500),
+ decelerationCurve: Curves.easeOut,
+ ),
+ );
+ }
+
@override
Widget build(BuildContext context) {
final appProvider = context.watch();
@@ -18,49 +159,51 @@ class MyHomePage extends StatelessWidget {
return AppScaffold(
appProvider: appProvider,
appBar: const AppHeader(),
- body: dataContent(appProvider: appProvider),
+ body: getBody(appProvider),
bottomNavigationBar: Container(
- color: Colors.grey.withOpacity(0.1),
- height: Utils.getHeight(),
- width: double.infinity,
- child: Row(
- crossAxisAlignment: CrossAxisAlignment.center,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- children: [
- Row(
- children: [
- const SizedBox(width: 20),
- Column(
- mainAxisAlignment: MainAxisAlignment.center,
- children: [
- InkWell(
- onTap: () async {
- // await context.read().callPatientsAPI();
- },
- child: AppText(
- "Powered By",
- fontSize: SizeConfig.getWidthMultiplier() * 2.6,
- fontFamily: 'Poppins-Medium.ttf',
+ color: Colors.grey.withOpacity(0.1),
+ height: Utils.getHeight() * 0.8,
+ width: double.infinity,
+ child: Row(
+ crossAxisAlignment: CrossAxisAlignment.center,
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ children: [
+ Row(
+ children: [
+ const SizedBox(width: 20),
+ Column(
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ InkWell(
+ onTap: () async {
+ await context.read().callPatientsAPI();
+ },
+ child: AppText(
+ "Powered By",
+ fontSize: SizeConfig.getWidthMultiplier() * 2.6,
+ fontFamily: 'Poppins-Medium.ttf',
+ ),
),
- ),
- Text(appProvider.currentDeviceIp, style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 2.2)),
- ],
- ),
- const SizedBox(width: 10),
- Image.asset(
- "assets/images/cloud_logo.png",
- height: SizeConfig.getHeightMultiplier() * 4,
- ),
- ],
- ),
- ],
- ),
- ),
+ Text(appProvider.currentDeviceIp, style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 2.2)),
+ ],
+ ),
+ const SizedBox(width: 10),
+ Image.asset(
+ "assets/images/cloud_logo.png",
+ height: SizeConfig.getHeightMultiplier() * 4,
+ ),
+ ],
+ ),
+ Expanded(child: getRSSFeedWidget())
+ ],
+ )),
);
}
Widget dataContent({required AppProvider appProvider}) {
- // appProvider.voiceCallPatientTicket(appProvider.patientTickets.first);
+ // if (true) {
+ // return qamarsBirthdayWidget();
+ // }
if (appProvider.patientTickets.isEmpty) {
// No Patient in Queue
return noPatientInQueue();
diff --git a/lib/home/priority_calls_components.dart b/lib/home/priority_calls_components.dart
index cee5eba..296d6ec 100644
--- a/lib/home/priority_calls_components.dart
+++ b/lib/home/priority_calls_components.dart
@@ -159,6 +159,18 @@ Widget noPatientInQueue() {
);
}
+Widget qamarsBirthdayWidget() {
+ return Column(
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ AppText("Happy Birthday", fontFamily: 'Poppins-SemiBold.ttf', fontSize: SizeConfig.getWidthMultiplier() * 15),
+ Center(
+ child: AppText("Syed Qamar 🎉", fontFamily: 'Poppins-SemiBold.ttf', fontSize: SizeConfig.getWidthMultiplier() * 11),
+ ),
+ ],
+ );
+}
+
Widget priorityTicketsWithSideList({required List tickets, required CallConfig callConfig}) {
final priorityTickets = tickets.sublist(0, 3);
final otherTickets = tickets.sublist(3, tickets.length);
diff --git a/lib/main.dart b/lib/main.dart
index c601b79..eaea716 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -45,7 +45,7 @@ class MyApp extends StatelessWidget {
dividerColor: Colors.grey[350],
colorScheme: ColorScheme.fromSwatch(primarySwatch: Colors.grey).copyWith(background: const Color.fromRGBO(255, 255, 255, 1)),
),
- home: const MyHomePage(),
+ home: MyHomePage(),
debugShowCheckedModeBanner: false,
));
});
diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart
index 5e87e9f..46a7b76 100644
--- a/lib/utils/signalR_utils.dart
+++ b/lib/utils/signalR_utils.dart
@@ -23,7 +23,6 @@ class SignalRHelper {
// String hubBaseURL = "https://vcallapi.hmg.com/PatientCallingHub?IPAddress=10.10.14.20";
// "https://VCallApi.hmg.com/WebRTCHub?source=mobile&username=2001273";
- String msg = "Awaiting Patients Arrival";
HubConnection? connection;
startSignalRConnection(String deviceIp,
diff --git a/pubspec.lock b/pubspec.lock
index ffbeefe..17d4c9f 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -105,6 +105,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.5"
+ fading_edge_scrollview:
+ dependency: transitive
+ description:
+ name: fading_edge_scrollview
+ sha256: c25c2231652ce774cc31824d0112f11f653881f43d7f5302c05af11942052031
+ url: "https://pub.dev"
+ source: hosted
+ version: "3.0.0"
fake_async:
dependency: transitive
description:
@@ -256,6 +264,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.2.0"
+ marquee:
+ dependency: "direct main"
+ description:
+ name: marquee
+ sha256: "4b5243d2804373bdc25fc93d42c3b402d6ec1f4ee8d0bb72276edd04ae7addb8"
+ url: "https://pub.dev"
+ source: hosted
+ version: "2.2.3"
matcher:
dependency: transitive
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index a7e65a1..e3636e9 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -46,6 +46,7 @@ dependencies:
#signalr core
signalr_core: ^1.1.1
intl: ^0.18.1
+ marquee: ^2.2.3