From d553e757c294b78566ef6ba4d79637eeec759742 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Thu, 17 Mar 2022 11:08:18 +0300 Subject: [PATCH 01/26] first step form home screen --- assets/images/cloud_logo.png | Bin 0 -> 11123 bytes assets/images/doctoricon.svg | 6 + assets/images/hmglogo.svg | 18 + assets/images/nurseicon.svg | 5 + lib/core/config/config.dart | 451 +----------------- lib/header/app_header.dart | 47 ++ lib/home/home_screen.dart | 13 +- lib/home/que_item.dart | 61 +++ lib/utils/signalR_utils.dart | 2 +- lib/widget/data_display/app_texts_widget.dart | 2 +- pubspec.yaml | 48 +- 11 files changed, 170 insertions(+), 483 deletions(-) create mode 100644 assets/images/cloud_logo.png create mode 100644 assets/images/doctoricon.svg create mode 100644 assets/images/hmglogo.svg create mode 100644 assets/images/nurseicon.svg diff --git a/assets/images/cloud_logo.png b/assets/images/cloud_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..650532522842eb21097e6681107501e380c381bd GIT binary patch literal 11123 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 FV1nwjdYu3O literal 0 HcmV?d00001 diff --git a/assets/images/doctoricon.svg b/assets/images/doctoricon.svg new file mode 100644 index 0000000..a8dd640 --- /dev/null +++ b/assets/images/doctoricon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/assets/images/hmglogo.svg b/assets/images/hmglogo.svg new file mode 100644 index 0000000..d2b7d58 --- /dev/null +++ b/assets/images/hmglogo.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/assets/images/nurseicon.svg b/assets/images/nurseicon.svg new file mode 100644 index 0000000..55de01f --- /dev/null +++ b/assets/images/nurseicon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart index 12ec7ca..130d644 100644 --- a/lib/core/config/config.dart +++ b/lib/core/config/config.dart @@ -5,446 +5,7 @@ const ONLY_NUMBERS = "[0-9]"; const ONLY_LETTERS = "[a-zA-Z &'\"]"; const ONLY_DATE = "[0-9/]"; const BASE_URL_LIVE_CARE = 'https://livecare.hmg.com/'; -// const BASE_URL = 'https://hmgwebservices.com/'; -const BASE_URL = 'https://uat.hmgwebservices.com/'; -const PHARMACY_ITEMS_URL = "Services/Lists.svc/REST/GetPharmcyItems_Region_enh"; -const PHARMACY_LIST_URL = "Services/Patients.svc/REST/GetPharmcyList"; -const PATIENT_PROGRESS_NOTE_URL = - "Services/DoctorApplication.svc/REST/GetProgressNoteForInPatient"; -const PATIENT_INSURANCE_APPROVALS_URL = - "Services/DoctorApplication.svc/REST/GetApprovalStatusForInpatient"; -const PATIENT_REFER_TO_DOCTOR_URL = - "Services/DoctorApplication.svc/REST/ReferToDoctor"; -const PATIENT_GET_DOCTOR_BY_CLINIC_URL = - "Services/DoctorApplication.svc/REST/GetDoctorsByClinicID"; - -const PATIENT_GET_DOCTOR_BY_CLINIC_Hospital = - "Services/Doctors.svc/REST/SearchDoctorsByTime"; - -const GET_CLINICS_FOR_DOCTOR = - 'Services/DoctorApplication.svc/REST/GetClinicsForDoctor'; -const PATIENT_GET_LIST_REFERAL_URL = - "Services/Lists.svc/REST/GetList_STPReferralFrequency"; -const PATIENT_GET_CLINIC_BY_PROJECT_URL = - "Services/DoctorApplication.svc/REST/GetClinicsByProjectID"; -const PROJECT_GET_INFO = "Services/DoctorApplication.svc/REST/GetProjectInfo"; -const GET_CLINICS = "Services/DoctorApplication.svc/REST/GetClinics"; - -const GET_REFERRAL_FACILITIES = - 'Services/DoctorApplication.svc/REST/GetReferralFacilities'; - -const GET_PROJECTS = 'Services/DoctorApplication.svc/REST/GetProjectInfo'; - -const GET_PATIENT_VITAL_SIGN = - 'Services/Doctors.svc/REST/Doctor_GetPatientVitalSign'; -const GET_PATIENT_VITAL_SIGN_DATA = - 'Services/DoctorApplication.svc/REST/GetVitalSigns'; -const GET_PATIENT_LAB_OREDERS = - 'Services/DoctorApplication.svc/REST/GetPatientLabOreders'; -const GET_PRESCRIPTION = 'Services/Patients.svc/REST/GetPrescriptionApptList'; - -const GET_LIVECARE_PENDINGLIST = - 'Services/DoctorApplication.svc/REST/GetPendingPatientER'; -const START_LIVE_CARE_CALL = 'LiveCareApi/DoctorApp/CallPatient'; -const LIVE_CARE_STATISTICS_FOR_CERTAIN_DOCTOR_URL = - "Lists.svc/REST/DashBoard_GetLiveCareDoctorsStatsticsForCertainDoctor"; - -const GET_PRESCRIPTION_REPORT = - 'Services/Patients.svc/REST/GetPrescriptionReport'; - -const GT_MY_PATIENT_QUESTION = - 'Services/DoctorApplication.svc/REST/GtMyPatientsQuestions'; - -const PRM_SEARCH_PATIENT = - 'Services/Patients.svc/REST/GetPatientInformation_PRM'; - -const GET_PATIENT = 'Services/DoctorApplication.svc/REST/'; - -const GET_PRESCRIPTION_REPORT_FOR_IN_PATIENT = - 'Services/DoctorApplication.svc/REST/GetPrescriptionReportForInPatient'; - -const GET_MY_REFERRAL_PATIENT = - 'Services/DoctorApplication.svc/REST/GtMyReferralPatient'; - -const REFER_TO_DOCTOR = 'Services/DoctorApplication.svc/REST/ReferToDoctor'; - -const ADD_REFERRED_DOCTOR_REMARKS = - 'Services/DoctorApplication.svc/REST/AddReferredDoctorRemarks'; - -const GET_MY_REFERRED_PATIENT = - 'Services/DoctorApplication.svc/REST/GtMyReferredPatient'; - -const GET_MY_REFERRED_OUT_PATIENT = - 'Services/DoctorApplication.svc/REST/GtMyReferredOutPatient'; - -const GET_PENDING_REFERRAL_PATIENT = - 'Services/DoctorApplication.svc/REST/PendingReferrals'; - -const CREATE_REFERRAL_PATIENT = - 'Services/DoctorApplication.svc/REST/CreateReferral'; - -const RESPONSE_PENDING_REFERRAL_PATIENT = - 'Services/DoctorApplication.svc/REST/RespondReferral'; - -const GET_PATIENT_REFERRAL = 'Services/DoctorApplication.svc/REST/GetRefferal'; - -const POST_UCAF = 'Services/DoctorApplication.svc/REST/PostUCAF'; - -const GET_DOCTOR_WORKING_HOURS_TABLE = - 'Services/Doctors.svc/REST/GetDoctorWorkingHoursTable'; - -const GET_PATIENT_LAB_RESULTS = - 'Services/DoctorApplication.svc/REST/GetPatientLabResults'; -const LOGIN_URL = 'Services/Sentry.svc/REST/MemberLogIN_New'; -const INSERT_DEVICE_IMEI = - 'Services/DoctorApplication.svc/REST/DoctorApp_InsertOrUpdateDeviceDetails'; -// 'Services/Sentry.svc/REST/DoctorApplication_INSERTDeviceIMEI'; -// const SELECT_DEVICE_IMEI = -// 'Services/Sentry.svc/REST/DoctorApplication_SELECTDeviceIMEIbyIMEI'; - -const SELECT_DEVICE_IMEI = - 'Services/DoctorApplication.svc/REST/DoctorApp_GetDeviceDetailsByIMEI'; - -const SEND_ACTIVATION_CODE_BY_OTP_NOTIFICATION_TYPE = - 'Services/Sentry.svc/REST/DoctorApplication_SendActivationCodebyOTPNotificationType'; - -const SEND_ACTIVATION_CODE_FOR_DOCTOR_APP = - 'Services/DoctorApplication.svc/REST/SendActivationCodeForDoctorApp'; - -const SEND_ACTIVATION_CODE_FOR_VERIFICATION_SCREEN = - 'Services/DoctorApplication.svc/REST/SendVerificationCode'; -const MEMBER_CHECK_ACTIVATION_CODE_NEW = - 'Services/Sentry.svc/REST/MemberCheckActivationCode_New'; - -const CHECK_ACTIVATION_CODE_FOR_DOCTOR_APP = - 'Services/DoctorApplication.svc/REST/CheckActivationCodeForDoctorApp'; - -const GET_DOC_PROFILES = 'Services/Doctors.svc/REST/GetDocProfiles'; -const TRANSFERT_TO_ADMIN = 'LiveCareApi/DoctorApp/TransferToAdmin'; -const SEND_SMS_INSTRUCTIONS = 'LiveCareApi/DoctorApp/SendSMSInstruction'; -const GET_ALTERNATIVE_SERVICE = 'LiveCareApi/DoctorApp/GetAlternativeServices'; -const END_CALL = 'LiveCareApi/DoctorApp/EndCall'; -const END_CALL_WITH_CHARGE = 'LiveCareApi/DoctorApp/CompleteCallWithCharge'; -const GET_DASHBOARD = - 'Services/DoctorApplication.svc/REST/GetDoctorDashboardKPI'; -const GET_SICKLEAVE_STATISTIC = - 'Services/DoctorApplication.svc/REST/PreSickLeaveStatistics'; -const ARRIVED_PATIENT_URL = - 'Services/DoctorApplication.svc/REST/PatientArrivalList'; -const ADD_SICK_LEAVE = 'Services/DoctorApplication.svc/REST/PostSickLeave'; -const GET_SICK_LEAVE = 'Services/Patients.svc/REST/GetPatientSickLeave'; -const EXTEND_SICK_LEAVE = 'Services/DoctorApplication.svc/REST/ExtendSickLeave'; - -const GET_MASTER_LOOKUP_LIST = 'Services/DoctorApplication.svc/REST/GetMasterLookUpList'; -const GET_COVERING_DOCTORS = - 'Services/DoctorApplication.svc/REST/GetCoveringDoctor'; -const ADD_RESCHDEULE = 'Services/DoctorApplication.svc/REST/PostRequisition'; -const UPDATE_RESCHDEULE = - 'Services/DoctorApplication.svc/REST/PatchRequisition'; -const GET_RESCHEDULE_LEAVE = - 'Services/DoctorApplication.svc/REST/GetRequisition'; -const GET_PRESCRIPTION_LIST = - 'Services/DoctorApplication.svc/REST/GetPrescription'; - -const POST_PRESCRIPTION_LIST = - 'Services/DoctorApplication.svc/REST/PostPrescription'; -const GET_PROCEDURE_LIST = - 'Services/DoctorApplication.svc/REST/GetOrderedProcedure'; -const POST_PROCEDURE_LIST = 'Services/DoctorApplication.svc/REST/PostProcedure'; - - -const GET_PATIENT_IN_PATIENT_LIST = - 'Services/DoctorApplication.svc/REST/GetMyInPatient'; - -const Verify_Referral_Doctor_Remarks = - 'Services/DoctorApplication.svc/REST/VerifyReferralDoctorRemarks'; - -///Lab Order -const GET_Patient_LAB_ORDERS = 'Services/Patients.svc/REST/GetPatientLabOrders'; -const GET_Patient_LAB_SPECIAL_RESULT = - 'Services/Patients.svc/REST/GetPatientLabSpecialResults'; -const SEND_LAB_RESULT_EMAIL = - 'Services/Notifications.svc/REST/SendLabReportEmail'; -const GET_Patient_LAB_RESULT = - 'Services/Patients.svc/REST/GetPatientLabResults'; -const GET_Patient_LAB_ORDERS_RESULT = - 'Services/Patients.svc/REST/GetPatientLabOrdersResults'; -const GET_PATIENT_LAB_ORDERS_RESULT_HISTORY_BY_DESCRIPTION = - 'Services/Patients.svc/REST/GetPatientLabOrdersResultsHistoryByDescription'; - -// SOAP - -const GET_ALLERGIES = 'Services/DoctorApplication.svc/REST/GetAllergies'; - -const POST_EPISODE = 'Services/DoctorApplication.svc/REST/PostEpisode'; -const POST_EPISODE_FOR_IN_PATIENT = - 'Services/DoctorApplication.svc/REST/PostEpisodeForInpatient'; - -const POST_ALLERGY = 'Services/DoctorApplication.svc/REST/PostAllergies'; -const POST_HISTORY = 'Services/DoctorApplication.svc/REST/PostHistory'; -const POST_CHIEF_COMPLAINT = - 'Services/DoctorApplication.svc/REST/PostChiefcomplaint'; -const POST_PHYSICAL_EXAM = - 'Services/DoctorApplication.svc/REST/PostPhysicalExam'; -const POST_PROGRESS_NOTE = - '/Services/DoctorApplication.svc/REST/PostProgressNote'; -const POST_ASSESSMENT = 'Services/DoctorApplication.svc/REST/PostAssessment'; - -const PATCH_ALLERGY = 'Services/DoctorApplication.svc/REST/PatchAllergies'; -const PATCH_HISTORY = 'Services/DoctorApplication.svc/REST/PatchHistory'; -const PATCH_CHIEF_COMPLAINT = - 'Services/DoctorApplication.svc/REST/PatchChiefcomplaint'; - -const PATCH_PHYSICAL_EXAM = - 'Services/DoctorApplication.svc/REST/PatchPhysicalExam'; -const PATCH_PROGRESS_NOTE = - 'Services/DoctorApplication.svc/REST/PatchProgressNote'; -const PATCH_ASSESSMENT = 'Services/DoctorApplication.svc/REST/PatchAssessment'; - -const GET_HISTORY = 'Services/DoctorApplication.svc/REST/GetHistory'; -const GET_CHIEF_COMPLAINT = - 'Services/DoctorApplication.svc/REST/GetChiefcomplaint'; -const GET_PHYSICAL_EXAM = 'Services/DoctorApplication.svc/REST/GetPhysicalExam'; -const GET_PROGRESS_NOTE = 'Services/DoctorApplication.svc/REST/GetProgressNote'; -const GET_ASSESSMENT = 'Services/DoctorApplication.svc/REST/GetAssessment'; - - -const GET_LIST_CATEGORISE = - 'Services/DoctorApplication.svc/REST/GetProcedureCategories'; - -const GET_CATEGORISE_PROCEDURE = - 'Services/DoctorApplication.svc/REST/GetProcedure'; -const UPDATE_PROCEDURE = 'Services/DoctorApplication.svc/REST/PatchProcedure'; -const UPDATE_PRESCRIPTION = - 'Services/DoctorApplication.svc/REST/PatchPrescription'; -const SEARCH_DRUG = 'Services/DoctorApplication.svc/REST/GetMedicationList'; -const DRUG_TO_DRUG = - 'Services/DoctorApplication.svc/REST/DrugToDrugInteraction'; -const GET_MEDICAL_FILE = 'Services/DoctorApplication.svc/REST/GetMedicalFile'; -const GET_FLOORS = 'Services/DoctorApplication.svc/REST/GetFloors'; -const GET_WARDS = 'Services/DoctorApplication.svc/REST/GetWards'; -const GET_ROOM_CATEGORIES = - 'Services/DoctorApplication.svc/REST/GetRoomCategories'; -const GET_DIAGNOSIS_TYPES = - 'Services/DoctorApplication.svc/REST/DiagnosisTypes'; -const GET_DIET_TYPES = 'Services/DoctorApplication.svc/REST/DietTypes'; -const GET_ICD_CODES = 'Services/DoctorApplication.svc/REST/GetICDCodes'; -const POST_ADMISSION_REQUEST = - 'Services/DoctorApplication.svc/REST/PostAdmissionRequest'; -const GET_ITEM_BY_MEDICINE = - 'Services/DoctorApplication.svc/REST/GetItemByMedicineCode'; - -const GET_PROCEDURE_VALIDATION = - 'Services/DoctorApplication.svc/REST/ValidateProcedures'; -const GET_BOX_QUANTITY = - 'Services/DoctorApplication.svc/REST/CalculateBoxQuantity'; - -///GET ECG -const GET_ECG = "Services/Patients.svc/REST/HIS_GetPatientMuseResults"; - -const GET_MY_REFERRAL_INPATIENT = - "Services/DoctorApplication.svc/REST/GtMyReferralPatient"; - -const GET_MY_REFERRAL_OUT_PATIENT = - "Services/DoctorApplication.svc/REST/GtMyReferralForOutPatient"; - -const GET_MY_DISCHARGE_PATIENT = - "Services/DoctorApplication.svc/REST/GtMyDischargeReferralPatient"; -const GET_DISCHARGE_PATIENT = - "Services/DoctorApplication.svc/REST/GtMyDischargePatient"; - -const GET_PAtIENTS_INSURANCE_APPROVALS = - "Services/Patients.svc/REST/GetApprovalStatus"; - -const GET_RAD_IMAGE_URL = 'Services/Patients.svc/Rest/GetRadImageURL'; -const GET_PATIENT_ORDERS = 'Services/Patients.svc/REST/GetPatientRadOrders'; -const GET_IN_PATIENT_ORDERS = - 'Services/DoctorApplication.svc/REST/GetPatientRadResult'; - -///Prescriptions -const GET_PRESCRIPTIONS_ALL_ORDERS = - 'Services/Patients.svc/REST/PatientER_GetPatientAllPresOrders'; -const GET_PRESCRIPTION_REPORT_NEW = - 'Services/Patients.svc/REST/INP_GetPrescriptionReport'; -const SEND_PRESCRIPTION_EMAIL = - 'Services/Notifications.svc/REST/SendPrescriptionEmail'; -const GET_PRESCRIPTION_REPORT_ENH = - 'Services/Patients.svc/REST/GetPrescriptionReport_enh'; -const UPDATE_PROGRESS_NOTE_FOR_INPATIENT = - "Services/DoctorApplication.svc/REST/UpdateProgressNoteForInPatient"; -const CREATE_PROGRESS_NOTE_FOR_INPATIENT = - "Services/DoctorApplication.svc/REST/CreateProgressNoteForInPatient"; - -const GET_SICK_LEAVE_PATIENT = "Services/Patients.svc/REST/GetPatientSickLeave"; -const GET_MY_OUT_PATIENT = - "Services/DoctorApplication.svc/REST/GetMyOutPatient"; - -const PATIENT_MEDICAL_REPORT_GET_LIST = - "Services/Patients.svc/REST/DAPP_ListMedicalReport"; -const PATIENT_MEDICAL_REPORT_GET_TEMPLATE = - "Services/Patients.svc/REST/DAPP_GetTemplateByID"; -const PATIENT_MEDICAL_REPORT_INSERT = - "Services/Patients.svc/REST/DAPP_InsertMedicalReport"; -const PATIENT_MEDICAL_REPORT_VERIFIED = - "Services/Patients.svc/REST/DAPP_VerifiedMedicalReport"; - -const GET_PROCEDURE_TEMPLETE = - 'Services/Doctors.svc/REST/DAPP_ProcedureTemplateGet'; - -const GET_TEMPLETE_LIST = 'Services/Doctors.svc/REST/DAPP_TemplateGet'; - -const GET_PROCEDURE_TEMPLETE_DETAILS = - "Services/Doctors.svc/REST/DAPP_ProcedureTemplateDetailsGet"; -const GET_PENDING_PATIENT_ER_FOR_DOCTOR_APP = - 'Services/DoctorApplication.svc/REST/GetPendingPatientERForDoctorApp'; - -const DOCTOR_CHECK_HAS_LIVE_CARE = - "Services/DoctorApplication.svc/REST/CheckDoctorHasLiveCare"; - -const LIVE_CARE_IS_LOGIN = "LiveCareApi/DoctorApp/UseIsLogin"; -const ADD_REFERRED_REMARKS_NEW = - "Services/DoctorApplication.svc/REST/AddReferredDoctorRemarks_New"; -const GET_SPECIAL_CLINICAL_CARE_LIST = - "Services/DoctorApplication.svc/REST/GetSpecialClinicalCareList"; -const GET_SPECIAL_CLINICAL_CARE_MAPPING_LIST = - "Services/DoctorApplication.svc/REST/GetSpecialClinicalCareMappingList"; - -const INSERT_MEDICAL_REPORT = - "Services/Patients.svc/REST/DAPP_InsertMedicalReport_New"; - -const UPDATE_MEDICAL_REPORT = - "Services/Patients.svc/REST/DAPP_UpdateMedicalReport"; -const GET_SICK_LEAVE_DOCTOR_APP = - "Services/DoctorApplication.svc/REST/GetAllSickLeaves"; -const ADD_PATIENT_TO_DOCTOR = "LiveCareApi/DoctorApp/AssignPatientToDoctor"; -const REMOVE_PATIENT_FROM_DOCTOR = "LiveCareApi/DoctorApp/BackPatientToQueue"; -const CREATE_DOCTOR_RESPONSE = - "Services/DoctorApplication.svc/REST/CreateDoctorResponse"; -const GET_DOCTOR_NOT_REPLIED_COUNTS = - "Services/DoctorApplication.svc/REST/DoctorApp_GetDoctorNotRepliedCounts"; -const ALL_SPECIAL_LAB_RESULT = - "services/Patients.svc/REST/GetPatientLabSpecialResultsALL"; -const GET_MEDICATION_FOR_IN_PATIENT = - "Services/DoctorApplication.svc/REST/Doctor_GetMedicationForInpatient"; -const GET_EPISODE_FOR_INPATIENT = - "/Services/DoctorApplication.svc/REST/DoctorApp_GetEpisodeForInpatient"; - -///Operation Details Services - -const GET_RESERVATIONS = - "Services/DoctorApplication.svc/REST/DoctorApp_GetReservationDetails"; -const GET_OPERATION_DETAILS = - "Services/DoctorApplication.svc/REST/DoctorApp_GetOperationDetails"; -const UPDATE_OPERATION_REPORT = - "Services/DoctorApplication.svc/REST/DoctorApp_CreateUpdateOperationReport"; - -const NURSING_PROGRESS_NOTE = - "Services/DoctorApplication.svc/REST/DoctorApp_GetNursingProgressNote"; -const GET_DIAGNOSIS_FOR_IN_PATIENT = - "Services/DoctorApplication.svc/REST/DoctorApp_GetDiagnosisForInPatient"; - -const GET_DIABETIC_CHART_VALUES = - "Services/DoctorApplication.svc/REST/DoctorApp_GetDiabeticChartValues"; - -const GET_PENDING_ORDERS = - "Services/DoctorApplication.svc/REST/DoctorApp_GetPendingOrdersForInPatient"; - -const GET_ADMISSION_ORDERS = - "/Services/DoctorApplication.svc/REST/DoctorApp_GetAdmissionOrders"; - -///Patient Registration Services -const CHECK_PATIENT_FOR_REGISTRATION = - "Services/Authentication.svc/REST/CheckPatientForRegisteration"; -const SEND_ACTIVATION_CODE_BY_OTP_NOT_TYPE_FOR_REGISTRATION = - "Services/Authentication.svc/REST/SendActivationCodebyOTPNotificationTypeForRegistration"; -const CHECK_ACTIVATION_CODE_FOR_PATIENT = - "Services/Authentication.svc/REST/CheckActivationCode"; -const PATIENT_REGISTRATION = - "Services/Authentication.svc/REST/PatientRegistration"; -const GET_PATIENT_INFO = "Services/NHIC.svc/REST/GetPatientInfo"; - -/// Discharge Summary -const GET_PENDING_DISCHARGE_SUMMARY = - "Services/DoctorApplication.svc/REST/DoctorApp_GetPendingDischargeSummary"; -const GET_ALL_DISCHARGE_SUMMARY = - "Services/DoctorApplication.svc/REST/DoctorApp_GetDischargeSummary"; - -const VTE_ASSESSMENT = - "Services/Patients.svc/REST/INP_GetVTEHistoryByTransactionNo"; - -const GET_INTERVENTION_MEDICATION = - "Services/DoctorApplication.svc/REST/DoctorApp_GetInterventionMedications"; - -const GET_INTERVENTION_MEDICATION_HISTORY = - "Services/DoctorApplication.svc/REST/DoctorApp_GetInterventionHistory"; - -const SET_ACCEPTED_OR_REJECTED = - "Services/DoctorApplication.svc/REST/DoctorApp_AcceptOrRejectIntervention"; - -const GET_STP_MASTER_LIST = - "Services/DoctorApplication.svc/REST/DoctorApp_GetSTPMasterList"; - -var selectedPatientType = 1; - -//*********change value to decode json from Dropdown ************ -var SERVICES_PATIANT = [ - "GetMyOutPatient", - "GetMyInPatient", - "GtMyDischargePatient", - "GtMyReferredPatient", - "GtMyDischargeReferralPatient", - "GtMyTomorrowPatient", - "GtMyReferralPatient", - "PatientArrivalList" -]; -var SERVICES_PATIANT2 = [ - "List_MyOutPatient", - "List_MyInPatient", - "List_MyDischargePatient", - "List_MyReferredPatient", - "List_MyDischargeReferralPatient", - "List_MyTomorrowPatient", - "List_MyReferralPatient", - "patientArrivalList" -]; -var SERVICES_PATIANT_HEADER = [ - "My OutPatient", - "My InPatient", - "Discharge", - "Referred", - "Referral Discharge", - "Tomorrow", - "Referral", - "Arrival Patient" -]; -var SERVICES_PATIANT_HEADER_AR = [ - "المريض الخارجي", - "المريض المنوم", - "المريض المعافى", - "المريض المحول الي", - "المريض المحال المعافى", - "مريض الغد", - "المريض المحول مني", - "المريض الواصل" -]; - -const PRIMARY_COLOR = 0xff515B5D; - -const TRANSACTION_NO = 0; -const LANGUAGE_ID = 2; -const STAMP = '2020-04-27T12:17:17.721Z'; -const IP_ADDRESS = '9.9.9.9'; -const VERSION_ID = 6.7; -const CHANNEL = 9; -const SESSION_ID = 'BlUSkYymTt'; -const IS_LOGIN_FOR_DOCTOR_APP = true; -const PATIENT_OUT_SA = false; -const IS_DENTAL_ALLOWED_BACKEND = false; -const PATIENT_OUT_SA_PATIENT_REQ = 0; -const SETUP_ID = '91877'; -const GENERAL_ID = 'Cs2020@2016\$2958'; -const PATIENT_TYPE = 1; -const PATIENT_TYPE_ID = 1; +const BASE_URL = 'https://hmgwebservices.com/'; /// Timer Info @@ -452,10 +13,10 @@ const TIMER_MIN = 10; class AppGlobal { static var CONTEX; - static Color appRedColor = Color(0xFFD02127); - static Color appGreenColor = Color(0xFF359846); - static Color appTextColor = Color(0xFF2B353E); - static Color scheduleTextColor = Color(0xFF2E303A); - static Color inProgressColor = Color(0xFFCC9B14); + static Color appRedColor = const Color(0xFFD02127); + static Color appGreenColor = const Color(0xFF359846); + static Color appTextColor = const Color(0xFF2B353E); + static Color scheduleTextColor = const Color(0xFF2E303A); + static Color inProgressColor = const Color(0xFFCC9B14); } diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index e69de29..480dd39 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -0,0 +1,47 @@ +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'; + +class AppHeader extends StatelessWidget with PreferredSizeWidget { + @override + Widget build(BuildContext context) { + + return Container( + padding: const EdgeInsets.only( + left: 0, + right: 5, + bottom: 5, + ), + decoration: BoxDecoration( + color: AppGlobal.appRedColor + , + 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), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + AppText( + " Current Serving", + letterSpacing: -2.48, + color: Colors.white, + + ), + SvgPicture.asset( "assets/images/hmglogo.svg", height: 120,), + ], + ), + ), + ); + } + + @override + Size get preferredSize => Size( + double.maxFinite, + 280); +} diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 3cc43af..2e171be 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,6 +1,9 @@ import 'package:flutter/material.dart'; import 'package:queuing_system/core/base/app_scaffold_widget.dart'; +import 'package:queuing_system/header/app_header.dart'; +import 'package:queuing_system/home/que_item.dart'; import 'package:queuing_system/utils/signalR_utils.dart'; +import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; class MyHomePage extends StatefulWidget { @@ -16,16 +19,12 @@ class _MyHomePageState extends State { Widget build(BuildContext context) { SignalRHelper signalRHelper= SignalRHelper(); return AppScaffold( - appBar: AppBar( - title: Text(widget.title), - ), + appBar: AppHeader(), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - signalRHelper.msg, - ), + children: const [ + QueItem(queNo: "OBG-T45", isFirstLine: true,), ], ), ), // This trailing comma makes auto-formatting nicer for build methods. diff --git a/lib/home/que_item.dart b/lib/home/que_item.dart index e69de29..8f8634c 100644 --- a/lib/home/que_item.dart +++ b/lib/home/que_item.dart @@ -0,0 +1,61 @@ +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/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, + }) : 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( + children: [ + AppText( + queNo, + fontSize: SizeConfig.getWidthMultiplier() * + (isFirstLine + ? 8 + : isSecondLine + ? 3.5 + : 3.2), + letterSpacing: -9.32, + fontWeight: FontWeight.bold, + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SvgPicture.asset(isNurseVisit + ? "assets/images/nurseicon.svg" + : "assets/images/doctoricon.svg", height:80 ,), + SizedBox(width: 10,), + AppText( + isNurseVisit ? "Please visit Nurse" : "Please visit doctor", + color: isNurseVisit + ? AppGlobal.appGreenColor + : AppGlobal.appRedColor, + fontSize: SizeConfig.getWidthMultiplier() * (2.5), + letterSpacing: -2.6, + fontWeight: FontWeight.w600, + ), + ], + ) + ], + ); + } +} diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart index 7c10276..31e4f03 100644 --- a/lib/utils/signalR_utils.dart +++ b/lib/utils/signalR_utils.dart @@ -4,7 +4,7 @@ import 'package:signalr_core/signalr_core.dart'; class SignalRHelper{ String hubBaseURL =""; - String msg ="Elham"; + String msg ="Awaiting Patients Arrival"; HubConnection connection; SignalRHelper(){ connection = HubConnectionBuilder() diff --git a/lib/widget/data_display/app_texts_widget.dart b/lib/widget/data_display/app_texts_widget.dart index 90e5986..9708e36 100644 --- a/lib/widget/data_display/app_texts_widget.dart +++ b/lib/widget/data_display/app_texts_widget.dart @@ -300,7 +300,7 @@ class _AppTextState extends State { case "date": return 24.0; default: - return SizeConfig.textMultiplier * 2; + return SizeConfig.textMultiplier * 2.5; } } diff --git a/pubspec.yaml b/pubspec.yaml index f2656a8..446205c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -69,32 +69,22 @@ flutter: uses-material-design: true # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg - - # An image asset can refer to one or more resolution-specific "variants", see - # https://flutter.dev/assets-and-images/#resolution-aware. - - # For details regarding adding assets from package dependencies, see - # https://flutter.dev/assets-and-images/#from-packages - - # To add custom fonts to your application, add a fonts section here, - # in this "flutter" section. Each entry in this list should have a - # "family" key with the font family name, and a "fonts" key with a - # list giving the asset and other descriptors for the font. For - # example: - # fonts: - # - family: Schyler - # fonts: - # - asset: fonts/Schyler-Regular.ttf - # - asset: fonts/Schyler-Italic.ttf - # style: italic - # - family: Trajan Pro - # fonts: - # - asset: fonts/TrajanPro.ttf - # - asset: fonts/TrajanPro_Bold.ttf - # weight: 700 - # - # For details regarding fonts from package dependencies, - # see https://flutter.dev/custom-fonts/#from-packages + assets: + - assets/images/ + + + fonts: + - family: Poppins + fonts: + - asset: assets/fonts/Poppins/Poppins-Regular.ttf + weight: 400 + - asset: assets/fonts/Poppins/Poppins-Medium.ttf + weight: 500 + - asset: assets/fonts/Poppins/Poppins-SemiBold.ttf + weight: 600 + - asset: assets/fonts/Poppins/Poppins-Bold.ttf + weight: 700 + - asset: assets/fonts/Poppins/Poppins-Bold.ttf + weight: 800 + - asset: assets/fonts/Poppins/Poppins-Bold.ttf + weight: 900 From dd3ce7cff75d3159e5ed675a07e9a60dfaec9d58 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 20 Mar 2022 08:39:52 +0300 Subject: [PATCH 02/26] small fix --- lib/home/home_screen.dart | 73 +++++++++++++++++++++++++++++++++++---- lib/home/que_item.dart | 18 +++++++--- 2 files changed, 80 insertions(+), 11 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 2e171be..759ab4b 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,5 +1,7 @@ import 'package:flutter/material.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/que_item.dart'; import 'package:queuing_system/utils/signalR_utils.dart'; @@ -9,6 +11,10 @@ class MyHomePage extends StatefulWidget { String title ="MyHomePage"; + bool haveOnePatient = false; + bool haveLessThan3Patient = false; + bool haveListOfPatient = true; + @override State createState() => _MyHomePageState(); @@ -20,14 +26,69 @@ class _MyHomePageState extends State { SignalRHelper signalRHelper= SignalRHelper(); return AppScaffold( appBar: AppHeader(), - body: Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - QueItem(queNo: "OBG-T45", isFirstLine: true,), + body: Column( + children: [ + SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)), + widget.haveListOfPatient?Row( + children: [ + FirstColumn(), + + Container(width: 20,height:SizeConfig.getHeightMultiplier() *40,color: Colors.grey, margin: EdgeInsets.only(left: 30),), + 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,), + + ],) + ], + ): FirstColumn(), + ], + ), + bottomSheet: Container( + color: Colors.transparent, + height: 280, + 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, + + ), + const SizedBox(width: 40,), + Image.asset( "assets/images/cloud_logo.png",), + ], + ), + ),// This trailing comma makes auto-formatting nicer for build methods. + ); + } +} + +class FirstColumn extends StatelessWidget { + + @override + Widget build(BuildContext context) { + return Column( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true,), + SizedBox(height: SizeConfig.getHeightMultiplier() * 5,), + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true,), + QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false,), ], ), - ), // This trailing comma makes auto-formatting nicer for build methods. + + ], ); } } diff --git a/lib/home/que_item.dart b/lib/home/que_item.dart index 8f8634c..da9d30e 100644 --- a/lib/home/que_item.dart +++ b/lib/home/que_item.dart @@ -29,10 +29,10 @@ class QueItem extends StatelessWidget { queNo, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine - ? 8 + ? 13 : isSecondLine - ? 3.5 - : 3.2), + ? 8.5 + : 5.5), letterSpacing: -9.32, fontWeight: FontWeight.bold, ), @@ -42,14 +42,22 @@ class QueItem extends StatelessWidget { children: [ SvgPicture.asset(isNurseVisit ? "assets/images/nurseicon.svg" - : "assets/images/doctoricon.svg", height:80 ,), + : "assets/images/doctoricon.svg", height:(isFirstLine + ? 120 + : isSecondLine + ? 80 + : 70) ,), SizedBox(width: 10,), AppText( isNurseVisit ? "Please visit Nurse" : "Please visit doctor", color: isNurseVisit ? AppGlobal.appGreenColor : AppGlobal.appRedColor, - fontSize: SizeConfig.getWidthMultiplier() * (2.5), + fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine + ? 4 + : isSecondLine + ? 3 + : 3.2), letterSpacing: -2.6, fontWeight: FontWeight.w600, ), From 6231b7781082fa19ff3138303808213d4706491e Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 20 Mar 2022 09:07:48 +0300 Subject: [PATCH 03/26] separate the item list to widget --- lib/home/home_screen.dart | 20 +++++++++----------- lib/home/que_item_list.dart | 18 ++++++++++++++++++ 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 759ab4b..7039cde 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -4,6 +4,7 @@ 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_list.dart'; import 'package:queuing_system/utils/signalR_utils.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; @@ -12,7 +13,7 @@ class MyHomePage extends StatefulWidget { String title ="MyHomePage"; bool haveOnePatient = false; - bool haveLessThan3Patient = false; + bool haveLessThan3Patient = true; bool haveListOfPatient = true; @@ -31,19 +32,12 @@ class _MyHomePageState extends State { SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)), widget.haveListOfPatient?Row( children: [ - FirstColumn(), + FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), Container(width: 20,height:SizeConfig.getHeightMultiplier() *40,color: Colors.grey, margin: EdgeInsets.only(left: 30),), - 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,), - - ],) + QueItemList() ], - ): FirstColumn(), + ): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), ], ), bottomSheet: Container( @@ -72,6 +66,9 @@ class _MyHomePageState extends State { } class FirstColumn extends StatelessWidget { + final bool haveLessThan3Patient; + + const FirstColumn({Key key, this.haveLessThan3Patient = false}) : super(key: key); @override Widget build(BuildContext context) { @@ -80,6 +77,7 @@ class FirstColumn extends StatelessWidget { children: [ QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true,), SizedBox(height: SizeConfig.getHeightMultiplier() * 5,), + if(haveLessThan3Patient) Row( mainAxisAlignment: MainAxisAlignment.spaceAround, children: [ diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index e69de29..7f2a5d0 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -0,0 +1,18 @@ +import 'package:flutter/material.dart'; +import 'package:queuing_system/home/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,), + + ],); + } +} From 791b9299ecb2695d438143064e9fbc21b1248dfa Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 20 Mar 2022 10:42:13 +0300 Subject: [PATCH 04/26] add the fonts assets --- assets/fonts/Poppins/Poppins-Bold.ttf | Bin 0 -> 153900 bytes assets/fonts/Poppins/Poppins-Medium.ttf | Bin 0 -> 156480 bytes assets/fonts/Poppins/Poppins-Regular.ttf | Bin 0 -> 158192 bytes assets/fonts/Poppins/Poppins-SemiBold.ttf | Bin 0 -> 279164 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/fonts/Poppins/Poppins-Bold.ttf create mode 100644 assets/fonts/Poppins/Poppins-Medium.ttf create mode 100644 assets/fonts/Poppins/Poppins-Regular.ttf create mode 100644 assets/fonts/Poppins/Poppins-SemiBold.ttf diff --git a/assets/fonts/Poppins/Poppins-Bold.ttf b/assets/fonts/Poppins/Poppins-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b94d47f3af31505f3cfcba533da52b881b6a1b33 GIT binary patch literal 153900 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 G$NfLB&PKNY literal 0 HcmV?d00001 diff --git a/assets/fonts/Poppins/Poppins-Medium.ttf b/assets/fonts/Poppins/Poppins-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e90e87ed69a7ebb8d965ec248fb86286423f103f GIT binary patch literal 156480 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%0ADRs4C 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 Ckeh!1 literal 0 HcmV?d00001 diff --git a/assets/fonts/Poppins/Poppins-SemiBold.ttf b/assets/fonts/Poppins/Poppins-SemiBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8987d800613f02363aa9fe6b59596642e25bca7d GIT binary patch literal 279164 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�aY*)+EL+d(5-i&M=NaN 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 z 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 Date: Mon, 21 Mar 2022 11:24:08 +0300 Subject: [PATCH 05/26] Edit some design issues in the 4th page --- lib/core/base/app_scaffold_widget.dart | 3 - lib/core/config/config.dart | 1 + lib/header/app_header.dart | 8 +- lib/home/home_screen.dart | 61 +++-- lib/home/que_item.dart | 112 +++++--- lib/home/que_item_list.dart | 22 +- lib/main.dart | 3 - lib/utils/utils.dart | 4 + pubspec.lock | 341 ------------------------- 9 files changed, 144 insertions(+), 411 deletions(-) delete mode 100644 pubspec.lock diff --git a/lib/core/base/app_scaffold_widget.dart b/lib/core/base/app_scaffold_widget.dart index 6d457ee..3443537 100644 --- a/lib/core/base/app_scaffold_widget.dart +++ b/lib/core/base/app_scaffold_widget.dart @@ -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'; diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart index 130d644..31b19f0 100644 --- a/lib/core/config/config.dart +++ b/lib/core/config/config.dart @@ -18,5 +18,6 @@ class AppGlobal { static Color appTextColor = const Color(0xFF2B353E); static Color scheduleTextColor = const Color(0xFF2E303A); static Color inProgressColor = const Color(0xFFCC9B14); + static Color appLightGreyColor = const Color(0xFF575757); } diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index 480dd39..8863be1 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -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'; @@ -29,11 +27,11 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { 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 +41,5 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { @override Size get preferredSize => Size( double.maxFinite, - 280); + SizeConfig.getHeightMultiplier()*10); } diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 7039cde..7f3f277 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -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_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 { @@ -30,34 +31,48 @@ class _MyHomePageState extends State { body: Column( children: [ SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)), - widget.haveListOfPatient?Row( + 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( + haveLessThan3Patient: widget.haveLessThan3Patient, + ), + const SizedBox( + width: 40, + ), + Container( + width: 10, + height:SizeConfig.getHeightMultiplier()*40, + color: Colors.grey, + ), + const SizedBox( + width: 40, + ), + const QueItemList() ], ): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), ], ), bottomSheet: Container( color: Colors.transparent, - height: 280, + height: Utils.getHeight(), 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. @@ -75,17 +90,17 @@ class FirstColumn extends StatelessWidget { return Column( mainAxisAlignment: MainAxisAlignment.start, children: [ - QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true,), - SizedBox(height: SizeConfig.getHeightMultiplier() * 5,), + const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), + SizedBox( + height: SizeConfig.getHeightMultiplier() * 5,), if(haveLessThan3Patient) 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,), ], ), - ], ); } diff --git a/lib/home/que_item.dart b/lib/home/que_item.dart index da9d30e..6ddf07c 100644 --- a/lib/home/que_item.dart +++ b/lib/home/que_item.dart @@ -12,7 +12,7 @@ class QueItem extends StatelessWidget { this.isInListLine = false, this.queNo, this.isNurseVisit = false, - this.idDoctorVisit = false, + this.idDoctorVisit = false, this.haveListOfPatient }) : super(key: key); final bool isFirstLine; final bool isSecondLine; @@ -20,46 +20,100 @@ class QueItem extends StatelessWidget { final bool isNurseVisit; final bool idDoctorVisit; final String queNo; + final bool haveListOfPatient; @override Widget build(BuildContext context) { - return Column( - children: [ - AppText( - queNo, - fontSize: SizeConfig.getWidthMultiplier() * - (isFirstLine - ? 13 + return haveListOfPatient? + Padding( + padding: const EdgeInsets.all(30.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + 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 - ? 8.5 - : 5.5), - letterSpacing: -9.32, - fontWeight: FontWeight.bold, + ? 40 + : 40) ,), + const SizedBox(width: 8,), + 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( - mainAxisAlignment: MainAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, 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 + ? 40 : isSecondLine - ? 80 - : 70) ,), - SizedBox(width: 10,), + ? 40 + : 40) ,), + const SizedBox(width: 8,), AppText( - isNurseVisit ? "Please visit Nurse" : "Please visit doctor", - color: isNurseVisit - ? AppGlobal.appGreenColor - : AppGlobal.appRedColor, + isNurseVisit ? " Please visit Nurse" : " Please visit doctor", + color: AppGlobal.appLightGreyColor, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine - ? 4 + ? 3.3 : isSecondLine - ? 3 - : 3.2), - letterSpacing: -2.6, - fontWeight: FontWeight.w600, + ? 3.3 + : 3.3), + letterSpacing: -1.6, + fontFamily: 'Poppins-Medium.ttf', ), ], ) diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index 7f2a5d0..359d88e 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -6,13 +6,21 @@ class QueItemList extends StatelessWidget { @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,), - ],); + ],), + ), + ); } } diff --git a/lib/main.dart b/lib/main.dart index ffcdf1f..ed701d3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -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'; diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index c585496..73ac5f3 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -176,4 +176,8 @@ class Utils { // Join/Merge all words back to one String return capitalizedWords.join(' '); } + + static getHeight() { + return SizeConfig.getHeightMultiplier()*10; + } } diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index b88033d..0000000 --- a/pubspec.lock +++ /dev/null @@ -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" From d304493b4b276cad6e9517bb4c81f83b8c4fd5e8 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 21 Mar 2022 11:42:37 +0300 Subject: [PATCH 06/26] add the fonts enum --- lib/core/enum/font_enum.dart | 0 lib/header/app_header.dart | 5 ++--- lib/home/home_screen.dart | 2 +- lib/widget/data_display/app_texts_widget.dart | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) create mode 100644 lib/core/enum/font_enum.dart diff --git a/lib/core/enum/font_enum.dart b/lib/core/enum/font_enum.dart new file mode 100644 index 0000000..e69de29 diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index 8863be1..5b1697e 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -19,8 +19,7 @@ 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, @@ -41,5 +40,5 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { @override Size get preferredSize => Size( double.maxFinite, - SizeConfig.getHeightMultiplier()*10); + SizeConfig.getHeightMultiplier()*8); } diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 7f3f277..7841de3 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -30,7 +30,7 @@ class _MyHomePageState extends State { appBar: AppHeader(), body: Column( children: [ - SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 5)), + SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 3)), widget.haveListOfPatient? Row( children: [ diff --git a/lib/widget/data_display/app_texts_widget.dart b/lib/widget/data_display/app_texts_widget.dart index 9708e36..9fe77a2 100644 --- a/lib/widget/data_display/app_texts_widget.dart +++ b/lib/widget/data_display/app_texts_widget.dart @@ -300,7 +300,7 @@ class _AppTextState extends State { case "date": return 24.0; default: - return SizeConfig.textMultiplier * 2.5; + return SizeConfig.textMultiplier * 2.8; } } From f75291d6021ca11643903bb7c74b798861426cb7 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 21 Mar 2022 12:21:32 +0300 Subject: [PATCH 07/26] fix issue --- lib/home/home_screen.dart | 2 +- lib/home/{ => que_item}/que_item.dart | 0 lib/home/que_item_list.dart | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename lib/home/{ => que_item}/que_item.dart (100%) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 7841de3..ed77e22 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -3,7 +3,7 @@ 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'; diff --git a/lib/home/que_item.dart b/lib/home/que_item/que_item.dart similarity index 100% rename from lib/home/que_item.dart rename to lib/home/que_item/que_item.dart diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index 359d88e..4dea15c 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -1,5 +1,5 @@ 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); From 449b0f30149f7e6c400410193949ca8dc7e1874e Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 21 Mar 2022 12:29:39 +0300 Subject: [PATCH 08/26] fix the row option --- lib/home/home_screen.dart | 17 ++++++++++------- lib/home/que_item/que_item.dart | 1 + 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index ed77e22..17e6afb 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -14,8 +14,8 @@ class MyHomePage extends StatefulWidget { String title ="MyHomePage"; bool haveOnePatient = false; - bool haveLessThan3Patient = true; - bool haveListOfPatient = true; + bool have3Patient = true; + bool haveListOfPatient = false; @override @@ -35,22 +35,25 @@ class _MyHomePageState extends State { Row( children: [ FirstColumn( - haveLessThan3Patient: widget.haveLessThan3Patient, + have3Patient: widget.have3Patient, ), const SizedBox( width: 40, ), + if(widget.haveListOfPatient) Container( width: 10, height:SizeConfig.getHeightMultiplier()*40, color: Colors.grey, ), + if(widget.haveListOfPatient) const SizedBox( width: 40, ), + if(widget.haveListOfPatient) const QueItemList() ], - ): FirstColumn(haveLessThan3Patient: widget.haveLessThan3Patient,), + ): FirstColumn(have3Patient: widget.have3Patient,), ], ), bottomSheet: Container( @@ -81,9 +84,9 @@ class _MyHomePageState extends State { } 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) { @@ -93,7 +96,7 @@ class FirstColumn extends StatelessWidget { const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), SizedBox( height: SizeConfig.getHeightMultiplier() * 5,), - if(haveLessThan3Patient) + if(have3Patient) Row( mainAxisAlignment: MainAxisAlignment.spaceAround, children: const [ diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index 6ddf07c..c7b38d7 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -44,6 +44,7 @@ class QueItem extends StatelessWidget { ), Row( crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, children: [ SvgPicture.asset( isNurseVisit From d0f67e88d96cdf615f1d3ee4b8bf105d30d85ca8 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 21 Mar 2022 12:56:17 +0300 Subject: [PATCH 09/26] add timer --- lib/home/home_screen.dart | 138 +++++++++++++++++++++++++++----------- 1 file changed, 97 insertions(+), 41 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 17e6afb..587e833 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -10,50 +10,87 @@ 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"; + String title = "MyHomePage"; bool haveOnePatient = false; bool have3Patient = true; bool haveListOfPatient = false; - @override State createState() => _MyHomePageState(); } class _MyHomePageState extends State { + int remainingTime = 600; + + startTimer() { + this.remainingTime--; + if (remainingTime > 400) { + setState(() { + widget.haveOnePatient = true; + widget.have3Patient = false; + widget.haveListOfPatient = false; + }); + } else if (remainingTime > 200) { + setState(() { + widget.haveOnePatient = false; + widget.have3Patient = true; + widget.haveListOfPatient = false; + }); + } else { + setState(() { + widget.haveOnePatient = false; + widget.have3Patient = true; + widget.haveListOfPatient = true; + }); + } + + + Future.delayed(Duration(seconds: 1), () { + if (this.remainingTime > 0) { + startTimer(); + } else { + + } + + }); + } + @override Widget build(BuildContext context) { - SignalRHelper signalRHelper= SignalRHelper(); + SignalRHelper signalRHelper = SignalRHelper(); + startTimer(); return AppScaffold( appBar: AppHeader(), body: Column( children: [ - SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 3)), - widget.haveListOfPatient? - Row( - children: [ - FirstColumn( - have3Patient: widget.have3Patient, - ), - const SizedBox( - width: 40, - ), - if(widget.haveListOfPatient) - Container( - width: 10, - height:SizeConfig.getHeightMultiplier()*40, - color: Colors.grey, - ), - if(widget.haveListOfPatient) - const SizedBox( - width: 40, - ), - if(widget.haveListOfPatient) - const QueItemList() - ], - ): FirstColumn(have3Patient: widget.have3Patient,), + SizedBox( + height: SizeConfig.getHeightMultiplier() * + (widget.haveOnePatient ? 20 : 3)), + widget.haveListOfPatient + ? Row( + children: [ + FirstColumn( + have3Patient: widget.have3Patient, + ), + const SizedBox( + width: 40, + ), + if (widget.haveListOfPatient) + Container( + width: 10, + height: SizeConfig.getHeightMultiplier() * 40, + color: Colors.grey, + ), + if (widget.haveListOfPatient) + const SizedBox( + width: 40, + ), + if (widget.haveListOfPatient) const QueItemList() + ], + ) + : FirstColumn( + have3Patient: widget.have3Patient, + ), ], ), bottomSheet: Container( @@ -74,11 +111,14 @@ class _MyHomePageState extends State { ), Padding( padding: const EdgeInsets.only(top: 40, left: 18), - child: Image.asset( "assets/images/cloud_logo.png", height: SizeConfig.getHeightMultiplier()*5,), + child: Image.asset( + "assets/images/cloud_logo.png", + height: SizeConfig.getHeightMultiplier() * 5, + ), ), ], ), - ),// This trailing comma makes auto-formatting nicer for build methods. + ), // This trailing comma makes auto-formatting nicer for build methods. ); } } @@ -92,18 +132,34 @@ class FirstColumn extends StatelessWidget { Widget build(BuildContext context) { return Column( mainAxisAlignment: MainAxisAlignment.start, - children: [ - const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), + children: [ + const QueItem( + queNo: "OBG-T45", + isFirstLine: true, + isNurseVisit: true, + haveListOfPatient: true, + ), SizedBox( - height: SizeConfig.getHeightMultiplier() * 5,), - if(have3Patient) - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: const [ - QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,), - QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,), - ], + height: SizeConfig.getHeightMultiplier() * 5, ), + if (have3Patient) + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: const [ + QueItem( + queNo: "OBG-T45", + isSecondLine: true, + isNurseVisit: true, + haveListOfPatient: true, + ), + QueItem( + queNo: "OBG-T45", + isSecondLine: true, + isNurseVisit: false, + haveListOfPatient: true, + ), + ], + ), ], ); } From e1b39df1533d250301f8447e784bb3a221a52a63 Mon Sep 17 00:00:00 2001 From: RoaaGhali98 Date: Sun, 27 Mar 2022 12:41:46 +0300 Subject: [PATCH 10/26] Edit some design issues --- lib/core/config/config.dart | 3 +- lib/core/enum/font_enum.dart | 6 ++++ lib/home/home_screen.dart | 13 ++++---- lib/home/que_item/que_item.dart | 56 +++++++-------------------------- 4 files changed, 25 insertions(+), 53 deletions(-) diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart index 31b19f0..7221b93 100644 --- a/lib/core/config/config.dart +++ b/lib/core/config/config.dart @@ -18,6 +18,7 @@ class AppGlobal { static Color appTextColor = const Color(0xFF2B353E); static Color scheduleTextColor = const Color(0xFF2E303A); static Color inProgressColor = const Color(0xFFCC9B14); - static Color appLightGreyColor = const Color(0xFF575757); + static Color appGreyColor = const Color(0xFF575757); + static Color appLightGreyColor = const Color(0xFFE6E6E6); } diff --git a/lib/core/enum/font_enum.dart b/lib/core/enum/font_enum.dart index e69de29..8852b2e 100644 --- a/lib/core/enum/font_enum.dart +++ b/lib/core/enum/font_enum.dart @@ -0,0 +1,6 @@ +enum FontType { + Poppins_Bold, + poppins_Medium, + poppins_Regular, + poppins_SemiBold, +} \ No newline at end of file diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 17e6afb..101a14d 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -11,11 +11,10 @@ import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; class MyHomePage extends StatefulWidget { - String title ="MyHomePage"; - bool haveOnePatient = false; - bool have3Patient = true; - bool haveListOfPatient = false; + bool haveOnePatient = true; + bool have3Patient = false; + bool haveListOfPatient = true; @override @@ -30,7 +29,7 @@ class _MyHomePageState extends State { appBar: AppHeader(), body: Column( children: [ - SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 3)), + SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 2)), widget.haveListOfPatient? Row( children: [ @@ -44,7 +43,7 @@ class _MyHomePageState extends State { Container( width: 10, height:SizeConfig.getHeightMultiplier()*40, - color: Colors.grey, + color: AppGlobal.appLightGreyColor, ), if(widget.haveListOfPatient) const SizedBox( @@ -58,7 +57,7 @@ class _MyHomePageState extends State { ), bottomSheet: Container( color: Colors.transparent, - height: Utils.getHeight(), + height: Utils.getHeight()* 0.9, width: double.infinity, child: Row( children: [ diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index c7b38d7..94020d5 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -2,6 +2,7 @@ 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 { @@ -26,51 +27,16 @@ class QueItem extends StatelessWidget { Widget build(BuildContext context) { return haveListOfPatient? Padding( - padding: const EdgeInsets.all(30.0), + padding: const EdgeInsets.all(45.0), child: Column( crossAxisAlignment: CrossAxisAlignment.center, children: [ - AppText( - queNo, - fontSize: SizeConfig.getWidthMultiplier() * - (isFirstLine - ? 13 - : isSecondLine - ? 8.5 - : 5.5), - letterSpacing: -5.00, - fontWeight: FontWeight.bold, - fontFamily: 'Poppins-Bold.ttf', + QueItemWidget( + isFirstLine: isFirstLine, + isNurseVisit: isNurseVisit, + isSecondLine: isSecondLine, + queNo: queNo, ), - Row( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - isNurseVisit - ? "assets/images/nurseicon.svg" - : "assets/images/doctoricon.svg", height:(isFirstLine - ? 40 - : isSecondLine - ? 40 - : 40) ,), - const SizedBox(width: 8,), - 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', - ), - ], - ) ], ), ) @@ -100,14 +66,14 @@ class QueItem extends StatelessWidget { isNurseVisit ? "assets/images/nurseicon.svg" : "assets/images/doctoricon.svg", height:(isFirstLine - ? 40 + ? SizeConfig.getHeightMultiplier()*3 : isSecondLine - ? 40 - : 40) ,), + ? SizeConfig.getHeightMultiplier()*3 + : SizeConfig.getHeightMultiplier()*3) ,), const SizedBox(width: 8,), AppText( isNurseVisit ? " Please visit Nurse" : " Please visit doctor", - color: AppGlobal.appLightGreyColor, + color: AppGlobal.appGreyColor, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine ? 3.3 : isSecondLine From c83423bbc1ee3a74d7c571a7959e9baa23875e4d Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 3 Apr 2022 13:17:04 +0300 Subject: [PATCH 11/26] Fix the timer --- lib/home/first_column.dart | 32 +++++++ lib/home/home_screen.dart | 186 ++++++++++++++++++++++++------------ lib/home/que_item_list.dart | 24 +++-- pubspec.lock | 9 +- 4 files changed, 171 insertions(+), 80 deletions(-) create mode 100644 lib/home/first_column.dart diff --git a/lib/home/first_column.dart b/lib/home/first_column.dart new file mode 100644 index 0000000..23d24df --- /dev/null +++ b/lib/home/first_column.dart @@ -0,0 +1,32 @@ +import 'package:flutter/material.dart'; +import 'package:queuing_system/core/config/size_config.dart'; +import 'package:queuing_system/home/que_item/que_item.dart'; + +class FirstColumn extends StatelessWidget { + final bool have3Patient; + final bool have2Patient; + + const FirstColumn({Key key, this.have3Patient = false, this.have2Patient = false}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), + SizedBox( + height: SizeConfig.getHeightMultiplier() * 5,), + if(have3Patient ||have2Patient ) + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + if(have2Patient || have3Patient) + const QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,), + if(have3Patient) + const QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,), + ], + ), + ], + ); + } +} diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 101a14d..566c383 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:flutter/material.dart'; import 'package:queuing_system/core/base/app_scaffold_widget.dart'; import 'package:queuing_system/core/config/config.dart'; @@ -9,55 +11,144 @@ 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 { +import 'first_column.dart'; - String title ="MyHomePage"; - bool haveOnePatient = true; +class MyHomePage extends StatefulWidget { + String title = "MyHomePage"; + bool have0Patient = true; + bool have1Patient = false; + bool have2Patient = false; bool have3Patient = false; - bool haveListOfPatient = true; - + bool haveListOfPatient = false; @override State createState() => _MyHomePageState(); } class _MyHomePageState extends State { + Timer _timer; + int remainingTime = 30; + + @override + void dispose() { + _timer.cancel(); + super.dispose(); + } + + startTimer() { + Timer.periodic(Duration(seconds: 1), (timer) { + if (remainingTime == 0) { + setState(() { + remainingTime = 30; + }); + } else { + setState(() { + remainingTime--; + if (remainingTime > 25) { + widget.have0Patient = true; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 20) { + widget.have0Patient = false; + widget.have1Patient = true; + widget.have2Patient = false; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 15) { + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = true; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 10) { + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = true; + widget.haveListOfPatient = false; + } else if (remainingTime > 5) { + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = true; + widget.haveListOfPatient = false; + } else { + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = true; + widget.haveListOfPatient = true; + } + }); + } + }); + } + + @override + void initState() { + startTimer(); + super.initState(); + } + @override Widget build(BuildContext context) { - SignalRHelper signalRHelper= SignalRHelper(); + SignalRHelper signalRHelper = SignalRHelper(); return AppScaffold( appBar: AppHeader(), body: Column( children: [ - SizedBox(height: SizeConfig.getHeightMultiplier() * (widget.haveOnePatient?20: 2)), - widget.haveListOfPatient? - Row( - children: [ - 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(have3Patient: widget.have3Patient,), + SizedBox( + height: SizeConfig.getHeightMultiplier() * + (widget.haveListOfPatient + ? 2 + : widget.have1Patient || widget.have0Patient + ? 20 + : 10)), + widget.have0Patient + ? Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: AppText("Awaiting Patients Arrival", + fontFamily: 'Poppins-SemiBold.ttf', + fontSize: SizeConfig.getWidthMultiplier() * 9), + ), + ], + ) + : widget.haveListOfPatient + ? Row( + children: [ + FirstColumn( + have3Patient: widget.have3Patient, + have2Patient: widget.have2Patient, + ), + 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( + have3Patient: widget.have3Patient, + have2Patient: widget.have2Patient, + ), ], ), bottomSheet: Container( color: Colors.transparent, - height: Utils.getHeight()* 0.9, + height: Utils.getHeight() * 0.9, width: double.infinity, child: Row( children: [ @@ -73,37 +164,14 @@ class _MyHomePageState extends State { ), Padding( padding: const EdgeInsets.only(top: 40, left: 18), - child: Image.asset( "assets/images/cloud_logo.png", height: SizeConfig.getHeightMultiplier()*5,), + child: Image.asset( + "assets/images/cloud_logo.png", + height: SizeConfig.getHeightMultiplier() * 5, + ), ), ], ), - ),// This trailing comma makes auto-formatting nicer for build methods. - ); - } -} - -class FirstColumn extends StatelessWidget { - final bool have3Patient; - - const FirstColumn({Key key, this.have3Patient = false}) : super(key: key); - - @override - Widget build(BuildContext context) { - return Column( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), - SizedBox( - height: SizeConfig.getHeightMultiplier() * 5,), - if(have3Patient) - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: const [ - QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,), - QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,), - ], - ), - ], + ), // This trailing comma makes auto-formatting nicer for build methods. ); } } diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index 4dea15c..4826085 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -7,20 +7,18 @@ class QueItemList extends StatelessWidget { @override Widget build(BuildContext context) { 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,), + 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: false, 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: false, haveListOfPatient: false,), + QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), - ],), - ), + ],), ); } } diff --git a/pubspec.lock b/pubspec.lock index 1f5e5a0..b88033d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -177,13 +177,6 @@ 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: @@ -307,7 +300,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.8" + version: "0.4.3" tuple: dependency: transitive description: From 5fe631c75946d17d3aba21ce0600a71b73a6dd50 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 3 Apr 2022 13:20:36 +0300 Subject: [PATCH 12/26] fix the header --- lib/header/app_header.dart | 5 +++-- lib/home/home_screen.dart | 2 +- lib/utils/utils.dart | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index 5b1697e..f0fad76 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.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/utils/utils.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; class AppHeader extends StatelessWidget with PreferredSizeWidget { @@ -30,7 +31,7 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { fontFamily: 'Poppins-SemiBold.ttf', ), - SvgPicture.asset( "assets/images/hmglogo.svg", height: 60,), + SvgPicture.asset( "assets/images/hmglogo.svg", height: Utils.getHeight() * 0.5,), ], ), ), @@ -40,5 +41,5 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { @override Size get preferredSize => Size( double.maxFinite, - SizeConfig.getHeightMultiplier()*8); + Utils.getHeight()); } diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 566c383..2327b76 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -148,7 +148,7 @@ class _MyHomePageState extends State { ), bottomSheet: Container( color: Colors.transparent, - height: Utils.getHeight() * 0.9, + height: Utils.getHeight(), width: double.infinity, child: Row( children: [ diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index 73ac5f3..d119548 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -178,6 +178,6 @@ class Utils { } static getHeight() { - return SizeConfig.getHeightMultiplier()*10; + return SizeConfig.getHeightMultiplier()*9; } } From 507e3b0ac1cbffa60030897fd842ca81d7f7c011 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 4 Apr 2022 10:30:24 +0300 Subject: [PATCH 13/26] fix issue of design --- assets/images/doctoricon.svg | 2 +- lib/core/config/localized_values.dart | 4 ++-- lib/home/home_screen.dart | 16 +++++++------- lib/home/que_item/que_item.dart | 16 ++++++-------- lib/home/que_item/que_item_widget.dart | 22 +++++++++---------- lib/home/que_item_list.dart | 21 ++++++++++-------- lib/widget/data_display/app_texts_widget.dart | 8 +------ 7 files changed, 41 insertions(+), 48 deletions(-) diff --git a/assets/images/doctoricon.svg b/assets/images/doctoricon.svg index a8dd640..a83af92 100644 --- a/assets/images/doctoricon.svg +++ b/assets/images/doctoricon.svg @@ -1,5 +1,5 @@ - + diff --git a/lib/core/config/localized_values.dart b/lib/core/config/localized_values.dart index 4225ed6..12a25a4 100644 --- a/lib/core/config/localized_values.dart +++ b/lib/core/config/localized_values.dart @@ -211,7 +211,7 @@ const Map> localizedValues = { "producerName": {"en": "PRODUCER NAME", "ar": "اسم المنتج"}, "receiptOn": {"en": "RECEIPT ON", "ar": "تاريخ الاستلام"}, "approvalNo": {"en": "Approval No:", "ar": "رقم الموافقة:"}, - "doctor": {"en": "Doctor", "ar": "الدكتور"}, + "Doctor": {"en": "Doctor", "ar": "الدكتور"}, "ext": {"en": "Ext#", "ar": "رقم التحويلة"}, "veryUrgent": {"en": "Very Urgent", "ar": "عاجل جدا"}, "urgent": {"en": "Urgent", "ar": "عاجل"}, @@ -307,7 +307,7 @@ const Map> localizedValues = { "ar": "معلومات السجل الصحي" }, "prevoius-sickleave-issed": { - "en": "Total previous sick leave issued by the doctor", + "en": "Total previous sick leave issued by the Doctor", "ar": "مجموع الإجازات المرضية السابقة التي أصدرها الطبيب" }, "clinicSelect": {"en": "Select Clinic", "ar": "اختر عيادة"}, diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 2327b76..97361a5 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -15,11 +15,11 @@ import 'first_column.dart'; class MyHomePage extends StatefulWidget { String title = "MyHomePage"; - bool have0Patient = true; + bool have0Patient = false; bool have1Patient = false; bool have2Patient = false; - bool have3Patient = false; - bool haveListOfPatient = false; + bool have3Patient = true; + bool haveListOfPatient = true; @override State createState() => _MyHomePageState(); @@ -88,7 +88,7 @@ class _MyHomePageState extends State { @override void initState() { - startTimer(); + // startTimer(); super.initState(); } @@ -113,6 +113,7 @@ class _MyHomePageState extends State { Center( child: AppText("Awaiting Patients Arrival", fontFamily: 'Poppins-SemiBold.ttf', + letterSpacing: -1.56, fontSize: SizeConfig.getWidthMultiplier() * 9), ), ], @@ -156,9 +157,8 @@ class _MyHomePageState extends State { padding: const EdgeInsets.only(top: 30, left: 30), child: AppText( "Powered By", - letterSpacing: -1.1, - color: AppGlobal.appTextColor, - fontSize: SizeConfig.getWidthMultiplier() * 2.5, + letterSpacing: -1.56, + fontSize: SizeConfig.getWidthMultiplier() * 2.6, fontFamily: 'Poppins-Medium.ttf', ), ), @@ -166,7 +166,7 @@ class _MyHomePageState extends State { padding: const EdgeInsets.only(top: 40, left: 18), child: Image.asset( "assets/images/cloud_logo.png", - height: SizeConfig.getHeightMultiplier() * 5, + height: SizeConfig.getHeightMultiplier() * 6, ), ), ], diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index 94020d5..5917726 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -52,12 +52,14 @@ class QueItem extends StatelessWidget { ? 13 : isSecondLine ? 8.5 - : 5.5), - letterSpacing: -2.6, - fontWeight: FontWeight.bold, + : 5.0), + letterSpacing: -3.26, + fontWeight: FontWeight.w600, fontFamily: 'Poppins', ), ), + const SizedBox(width: 25,), + Row( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, @@ -65,14 +67,10 @@ class QueItem extends StatelessWidget { SvgPicture.asset( isNurseVisit ? "assets/images/nurseicon.svg" - : "assets/images/doctoricon.svg", height:(isFirstLine - ? SizeConfig.getHeightMultiplier()*3 - : isSecondLine - ? SizeConfig.getHeightMultiplier()*3 - : SizeConfig.getHeightMultiplier()*3) ,), + : "assets/images/doctoricon.svg", height:SizeConfig.getHeightMultiplier()*2.5 ,), const SizedBox(width: 8,), AppText( - isNurseVisit ? " Please visit Nurse" : " Please visit doctor", + isNurseVisit ? " Please Visit Nurse" : " Please Visit Doctor", color: AppGlobal.appGreyColor, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine ? 3.3 diff --git a/lib/home/que_item/que_item_widget.dart b/lib/home/que_item/que_item_widget.dart index 7ac5d60..43cf084 100644 --- a/lib/home/que_item/que_item_widget.dart +++ b/lib/home/que_item/que_item_widget.dart @@ -4,6 +4,8 @@ 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'; +///TODO Roaa we have dublicated code between this and the que item widget we need to make it customize + class QueItemWidget extends StatelessWidget { const QueItemWidget({ Key key, @@ -26,11 +28,11 @@ class QueItemWidget extends StatelessWidget { queNo, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine - ? 13 + ? 15 : isSecondLine - ? 7.5 + ? 9.5 : 5.5), - letterSpacing: -5.00, + letterSpacing: -11.72, fontWeight: FontWeight.bold, fontFamily: 'Poppins-Bold.ttf', @@ -42,14 +44,10 @@ class QueItemWidget extends StatelessWidget { 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,), + : "assets/images/doctoricon.svg", height:SizeConfig.getHeightMultiplier()*2.5 ,), + const SizedBox(width: 25,), AppText( - isNurseVisit ? "Please visit Nurse" : "Please visit doctor", + isNurseVisit ? "Please Visit Nurse" : "Please Visit Doctor", color: isNurseVisit ? AppGlobal.appGreenColor : AppGlobal.appRedColor, @@ -58,9 +56,9 @@ class QueItemWidget extends StatelessWidget { : isSecondLine ? 3.3 : 3.3), - letterSpacing: -2.6, + letterSpacing: -3.25, fontWeight: FontWeight.w600, - fontFamily: 'Poppins-Bold.ttf', + fontFamily: 'Poppins-Medium.ttf', ), ], ), diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index 4826085..e4e1461 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:queuing_system/core/config/size_config.dart'; import 'package:queuing_system/home/que_item/que_item.dart'; class QueItemList extends StatelessWidget { @@ -8,15 +9,17 @@ class QueItemList extends StatelessWidget { Widget build(BuildContext context) { return SizedBox( 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: false, 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: false, haveListOfPatient: false,), - QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox(height: SizeConfig.getHeightMultiplier() *2.3,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), ],), ); diff --git a/lib/widget/data_display/app_texts_widget.dart b/lib/widget/data_display/app_texts_widget.dart index 9fe77a2..7420d78 100644 --- a/lib/widget/data_display/app_texts_widget.dart +++ b/lib/widget/data_display/app_texts_widget.dart @@ -151,12 +151,6 @@ class _AppTextState extends State { ], ), ), - // onLongPress: (){ - // if(widget.isCopyable){ - // DrAppToastMsg.showShortToast(TranslationBase.of(context).textCopiedSuccessfully); - // Clipboard.setData(new ClipboardData(text: widget.text)); - // } - // }, ); } @@ -191,7 +185,7 @@ class _AppTextState extends State { : TextStyle( fontStyle: widget.italic ? FontStyle.italic : null, color: - widget.color != null ? widget.color : Color(0xff2E303A), + widget.color != null ? widget.color : Color(0xff000000), fontSize: widget.fontSize ?? _getFontSize(), letterSpacing: widget.letterSpacing ?? (widget.variant == "overline" ? 1.5 : null), From 3f49de9c2ca9e038bba2e9c41f23c1b2b826e733 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 4 Apr 2022 10:34:33 +0300 Subject: [PATCH 14/26] fix issue of design --- lib/home/que_item/que_item.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index 5917726..ef4a21f 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -52,13 +52,13 @@ class QueItem extends StatelessWidget { ? 13 : isSecondLine ? 8.5 - : 5.0), + : 4.7), letterSpacing: -3.26, fontWeight: FontWeight.w600, fontFamily: 'Poppins', ), ), - const SizedBox(width: 25,), + const SizedBox(width: 30,), Row( mainAxisAlignment: MainAxisAlignment.start, @@ -68,7 +68,7 @@ class QueItem extends StatelessWidget { isNurseVisit ? "assets/images/nurseicon.svg" : "assets/images/doctoricon.svg", height:SizeConfig.getHeightMultiplier()*2.5 ,), - const SizedBox(width: 8,), + const SizedBox(width: 4,), AppText( isNurseVisit ? " Please Visit Nurse" : " Please Visit Doctor", color: AppGlobal.appGreyColor, From 249f57ed859b330eb5930cff3ca2eb66cbfd4399 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 4 Apr 2022 10:39:27 +0300 Subject: [PATCH 15/26] return the timer --- lib/home/home_screen.dart | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 97361a5..7bc7ab4 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -15,11 +15,11 @@ import 'first_column.dart'; class MyHomePage extends StatefulWidget { String title = "MyHomePage"; - bool have0Patient = false; + bool have0Patient = true; bool have1Patient = false; bool have2Patient = false; - bool have3Patient = true; - bool haveListOfPatient = true; + bool have3Patient = false; + bool haveListOfPatient = false; @override State createState() => _MyHomePageState(); @@ -88,7 +88,7 @@ class _MyHomePageState extends State { @override void initState() { - // startTimer(); + startTimer(); super.initState(); } From 5adf4202f0ab7f570cd5ecda2f45a0512cf2696d Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Mon, 4 Apr 2022 10:47:22 +0300 Subject: [PATCH 16/26] fix landscape issue --- android/app/src/main/AndroidManifest.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 8117512..455e8d2 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -9,6 +9,7 @@ android:exported="true" android:launchMode="singleTop" android:theme="@style/LaunchTheme" + android:screenOrientation="landscape" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" android:windowSoftInputMode="adjustResize"> From aad9f695ff818cfea693f2311e46d0441b4e9b52 Mon Sep 17 00:00:00 2001 From: RoaaGhali98 Date: Mon, 4 Apr 2022 15:30:52 +0300 Subject: [PATCH 17/26] Fixing some design issues --- lib/header/app_header.dart | 1 - lib/home/home_screen.dart | 5 +---- lib/home/que_item/que_item.dart | 2 +- lib/home/que_item/que_item_widget.dart | 9 ++++----- lib/main.dart | 2 +- 5 files changed, 7 insertions(+), 12 deletions(-) diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index f0fad76..aadf25b 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.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/utils/utils.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 7bc7ab4..18c3274 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,16 +1,13 @@ import 'dart:async'; - import 'package:flutter/material.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/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'; - import 'first_column.dart'; class MyHomePage extends StatefulWidget { @@ -36,7 +33,7 @@ class _MyHomePageState extends State { } startTimer() { - Timer.periodic(Duration(seconds: 1), (timer) { + Timer.periodic(const Duration(seconds: 1), (timer) { if (remainingTime == 0) { setState(() { remainingTime = 30; diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index ef4a21f..39ad8c4 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -70,7 +70,7 @@ class QueItem extends StatelessWidget { : "assets/images/doctoricon.svg", height:SizeConfig.getHeightMultiplier()*2.5 ,), const SizedBox(width: 4,), AppText( - isNurseVisit ? " Please Visit Nurse" : " Please Visit Doctor", + isNurseVisit ? " Please Visit Nurse" : " Please Visit Doctor", color: AppGlobal.appGreyColor, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine ? 3.3 diff --git a/lib/home/que_item/que_item_widget.dart b/lib/home/que_item/que_item_widget.dart index 43cf084..f327236 100644 --- a/lib/home/que_item/que_item_widget.dart +++ b/lib/home/que_item/que_item_widget.dart @@ -28,14 +28,13 @@ class QueItemWidget extends StatelessWidget { queNo, fontSize: SizeConfig.getWidthMultiplier() * (isFirstLine - ? 15 + ? 14 : isSecondLine - ? 9.5 + ? 8.5 : 5.5), - letterSpacing: -11.72, + letterSpacing: -13.72, fontWeight: FontWeight.bold, - fontFamily: 'Poppins-Bold.ttf', - + // fontFamily: 'Poppins-Bold.ttf', ), Row( crossAxisAlignment: CrossAxisAlignment.start, diff --git a/lib/main.dart b/lib/main.dart index ed701d3..f61e6b5 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -34,7 +34,7 @@ class MyApp extends StatelessWidget { primaryColor: Colors.grey, fontFamily: 'Poppins', dividerColor: Colors.grey[350], - backgroundColor: Color.fromRGBO(255, 255, 255, 1), + backgroundColor: const Color.fromRGBO(255, 255, 255, 1), ), home:MyHomePage() , debugShowCheckedModeBanner: false, From 2dbb83f54f13bb68a28258acee4d3ac3359d66e3 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Wed, 15 Jun 2022 16:41:31 +0300 Subject: [PATCH 18/26] fix signal R code --- lib/core/config/size_config.dart | 16 +++++------ lib/home/home_screen.dart | 5 +++- lib/utils/signalR_utils.dart | 46 +++++++++++++++++++++++++++----- 3 files changed, 51 insertions(+), 16 deletions(-) diff --git a/lib/core/config/size_config.dart b/lib/core/config/size_config.dart index 681bf61..f2fcf56 100644 --- a/lib/core/config/size_config.dart +++ b/lib/core/config/size_config.dart @@ -67,14 +67,14 @@ class SizeConfig { heightMultiplier = _blockHeight; widthMultiplier = _blockWidth; - print('realScreenWidth $realScreenWidth'); - print('realScreenHeight $realScreenHeight'); - print('textMultiplier $textMultiplier'); - print('imageSizeMultiplier $imageSizeMultiplier'); - print('heightMultiplier$heightMultiplier'); - print('widthMultiplier $widthMultiplier'); - print('isPortrait $isPortrait'); - print('isMobilePortrait $isMobilePortrait'); + // print('realScreenWidth $realScreenWidth'); + // print('realScreenHeight $realScreenHeight'); + // print('textMultiplier $textMultiplier'); + // print('imageSizeMultiplier $imageSizeMultiplier'); + // print('heightMultiplier$heightMultiplier'); + // print('widthMultiplier $widthMultiplier'); + // print('isPortrait $isPortrait'); + // print('isMobilePortrait $isMobilePortrait'); } static getTextMultiplierBasedOnWidth({double width}) { diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 18c3274..8d5eb6a 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -86,12 +86,15 @@ class _MyHomePageState extends State { @override void initState() { startTimer(); + SignalRHelper signalRHelper = new SignalRHelper(); + if (!signalRHelper.getConnectionState()) signalRHelper.startSignalRConnection(); super.initState(); } @override Widget build(BuildContext context) { - SignalRHelper signalRHelper = SignalRHelper(); + + return AppScaffold( appBar: AppHeader(), body: Column( diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart index 31e4f03..9233779 100644 --- a/lib/utils/signalR_utils.dart +++ b/lib/utils/signalR_utils.dart @@ -1,24 +1,56 @@ +import 'dart:io'; + import 'package:flutter/material.dart'; +import 'package:http/io_client.dart'; import 'package:signalr_core/signalr_core.dart'; class SignalRHelper{ - String hubBaseURL =""; + String hubBaseURL ="https://queueing.hmg.com/signalr/hubs"; + // "https://VCallApi.hmg.com/WebRTCHub?source=mobile&username=2001273"; String msg ="Awaiting Patients Arrival"; HubConnection connection; - SignalRHelper(){ + startSignalRConnection() async { connection = HubConnectionBuilder() .withUrl( hubBaseURL, HttpConnectionOptions( - logging: (level, message) { - msg = message; - print("$message"); + client: IOClient(HttpClient()..badCertificateCallback = (x, y, z) => true), + transport: HttpTransportType.webSockets, + logging: (level, message) => {print(message) + }, - ) - ).build(); + )) + .build(); + + await connection.start(); + + connection.on('ReceiveMessage', (message) { + handleIncomingMessage(message); + }); + + + connection.start(); + + + } + + + void handleIncomingMessage(List message) { + print(message.toString()); + } + + void sendMessage(List args) async { + await connection.invoke('SendMessage', args: args); //['Bob', 'Says hi!'] } + bool getConnectionState() { + if(connection == null ) return false; + if (connection.state == HubConnectionState.connected || connection.state == HubConnectionState.connecting) return true; + if (connection.state == HubConnectionState.disconnected || connection.state == HubConnectionState.disconnecting) return false; + } + + closeConnection(BuildContext context) async { if(connection.state == HubConnectionState.connected) From e996efcb52843df3beb234a3090ae7a2261eca01 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Sun, 24 Jul 2022 14:08:05 +0300 Subject: [PATCH 19/26] my last comment :) --- lib/home/home_screen.dart | 16 ++++++++++------ lib/utils/signalR_utils.dart | 5 +++-- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 8d5eb6a..89a8bc1 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -42,36 +42,40 @@ class _MyHomePageState extends State { setState(() { remainingTime--; if (remainingTime > 25) { + + /// for 0 patinet widget.have0Patient = true; widget.have1Patient = false; widget.have2Patient = false; widget.have3Patient = false; widget.haveListOfPatient = false; } else if (remainingTime > 20) { + /// for 1 patinet + widget.have0Patient = false; widget.have1Patient = true; widget.have2Patient = false; widget.have3Patient = false; widget.haveListOfPatient = false; } else if (remainingTime > 15) { + + /// for 2 patinet + widget.have0Patient = false; widget.have1Patient = false; widget.have2Patient = true; widget.have3Patient = false; widget.haveListOfPatient = false; } else if (remainingTime > 10) { - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = true; - widget.haveListOfPatient = false; - } else if (remainingTime > 5) { + /// for 3 only patinet widget.have0Patient = false; widget.have1Patient = false; widget.have2Patient = false; widget.have3Patient = true; widget.haveListOfPatient = false; } else { + /// for 3+ only patinet + widget.have0Patient = false; widget.have1Patient = false; widget.have2Patient = false; diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart index 9233779..395e438 100644 --- a/lib/utils/signalR_utils.dart +++ b/lib/utils/signalR_utils.dart @@ -6,7 +6,7 @@ import 'package:signalr_core/signalr_core.dart'; class SignalRHelper{ - String hubBaseURL ="https://queueing.hmg.com/signalr/hubs"; + String hubBaseURL ="https://vcallapi.hmg.com/patientcalling.html?IPAddress=10.10.14.11&Clinic=4&Project=15"; // "https://VCallApi.hmg.com/WebRTCHub?source=mobile&username=2001273"; String msg ="Awaiting Patients Arrival"; HubConnection connection; @@ -17,7 +17,8 @@ class SignalRHelper{ HttpConnectionOptions( client: IOClient(HttpClient()..badCertificateCallback = (x, y, z) => true), transport: HttpTransportType.webSockets, - logging: (level, message) => {print(message) + logging: (level, message) => { + print(message) }, )) From 1428fd64805356e69f1dd41bd66ca68f939c90e2 Mon Sep 17 00:00:00 2001 From: Zohaib Iqbal Kambrani <> Date: Thu, 27 Oct 2022 15:56:55 +0300 Subject: [PATCH 20/26] Updates --- android/app/build.gradle | 2 +- android/app/src/main/AndroidManifest.xml | 7 +- android/build.gradle | 2 +- assets/images/wait.svg | 17 ++ assets/voice_ar/0.mp3 | Bin 0 -> 13056 bytes assets/voice_ar/1.mp3 | Bin 0 -> 14976 bytes assets/voice_ar/2.mp3 | Bin 0 -> 14976 bytes assets/voice_ar/3.mp3 | Bin 0 -> 15360 bytes assets/voice_ar/4.mp3 | Bin 0 -> 13824 bytes assets/voice_ar/5.mp3 | Bin 0 -> 13824 bytes assets/voice_ar/6.mp3 | Bin 0 -> 12288 bytes assets/voice_ar/7.mp3 | Bin 0 -> 12672 bytes assets/voice_ar/8.mp3 | Bin 0 -> 16128 bytes assets/voice_ar/9.mp3 | Bin 0 -> 12288 bytes assets/voice_ar/ticket_number.mp3 | Bin 0 -> 24192 bytes assets/voice_ar/visit_doctor.mp3 | Bin 0 -> 34176 bytes assets/voice_ar/visit_nurse.mp3 | Bin 0 -> 34944 bytes assets/voice_en/0.mp3 | Bin 0 -> 5085 bytes assets/voice_en/1.mp3 | Bin 0 -> 4221 bytes assets/voice_en/2.mp3 | Bin 0 -> 4077 bytes assets/voice_en/3.mp3 | Bin 0 -> 4221 bytes assets/voice_en/4.mp3 | Bin 0 -> 4653 bytes assets/voice_en/5.mp3 | Bin 0 -> 5085 bytes assets/voice_en/6.mp3 | Bin 0 -> 4941 bytes assets/voice_en/7.mp3 | Bin 0 -> 4653 bytes assets/voice_en/8.mp3 | Bin 0 -> 3789 bytes assets/voice_en/9.mp3 | Bin 0 -> 4653 bytes assets/voice_en/ticket_number.mp3 | Bin 0 -> 7101 bytes assets/voice_en/visit_doctor.mp3 | Bin 0 -> 9261 bytes assets/voice_en/visit_nurse.mp3 | Bin 0 -> 9261 bytes lib/core/api.dart | 47 +++ lib/core/config/config.dart | 3 +- lib/core/response_model/patient_call.dart | 75 +++++ lib/core/response_model/xyz.dart | 59 ++++ lib/header/app_header.dart | 8 +- lib/home/first_column.dart | 6 +- lib/home/home_screen.dart | 280 +++++++++--------- lib/home/home_screen_bkp.dart | 205 +++++++++++++ lib/home/home_screen_components.dart | 93 ++++++ lib/home/priority_calls.dart | 101 +++++++ lib/home/que_item/que_item.dart | 4 +- lib/home/que_item_list.dart | 16 +- lib/main.dart | 1 + lib/utils/call_by_voice.dart | 48 +++ lib/utils/call_type.dart | 60 ++++ lib/utils/signalR_utils.dart | 54 ++-- lib/utils/utils.dart | 2 +- macos/Flutter/GeneratedPluginRegistrant.swift | 8 + macos/Runner.xcodeproj/project.pbxproj | 62 +++- .../contents.xcworkspacedata | 3 + pubspec.yaml | 6 + 51 files changed, 994 insertions(+), 175 deletions(-) create mode 100644 assets/images/wait.svg create mode 100644 assets/voice_ar/0.mp3 create mode 100644 assets/voice_ar/1.mp3 create mode 100644 assets/voice_ar/2.mp3 create mode 100644 assets/voice_ar/3.mp3 create mode 100644 assets/voice_ar/4.mp3 create mode 100644 assets/voice_ar/5.mp3 create mode 100644 assets/voice_ar/6.mp3 create mode 100644 assets/voice_ar/7.mp3 create mode 100644 assets/voice_ar/8.mp3 create mode 100644 assets/voice_ar/9.mp3 create mode 100644 assets/voice_ar/ticket_number.mp3 create mode 100644 assets/voice_ar/visit_doctor.mp3 create mode 100644 assets/voice_ar/visit_nurse.mp3 create mode 100644 assets/voice_en/0.mp3 create mode 100644 assets/voice_en/1.mp3 create mode 100644 assets/voice_en/2.mp3 create mode 100644 assets/voice_en/3.mp3 create mode 100644 assets/voice_en/4.mp3 create mode 100644 assets/voice_en/5.mp3 create mode 100644 assets/voice_en/6.mp3 create mode 100644 assets/voice_en/7.mp3 create mode 100644 assets/voice_en/8.mp3 create mode 100644 assets/voice_en/9.mp3 create mode 100644 assets/voice_en/ticket_number.mp3 create mode 100644 assets/voice_en/visit_doctor.mp3 create mode 100644 assets/voice_en/visit_nurse.mp3 create mode 100644 lib/core/api.dart create mode 100644 lib/core/response_model/patient_call.dart create mode 100644 lib/core/response_model/xyz.dart create mode 100644 lib/home/home_screen_bkp.dart create mode 100644 lib/home/home_screen_components.dart create mode 100644 lib/home/priority_calls.dart create mode 100644 lib/utils/call_by_voice.dart create mode 100644 lib/utils/call_type.dart diff --git a/android/app/build.gradle b/android/app/build.gradle index 8a164e5..1d1f0af 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -44,7 +44,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.queuing_system" - minSdkVersion flutter.minSdkVersion + minSdkVersion localProperties.getProperty('flutter.minSdkVersion').toInteger() targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 455e8d2..9b4b6a4 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,10 @@ + + + + + - + diff --git a/android/build.gradle b/android/build.gradle index 24047dc..9e8dea7 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.3.50' + ext.kotlin_version = '1.6.0' repositories { google() mavenCentral() diff --git a/assets/images/wait.svg b/assets/images/wait.svg new file mode 100644 index 0000000..854fb2b --- /dev/null +++ b/assets/images/wait.svg @@ -0,0 +1,17 @@ + + + + + + diff --git a/assets/voice_ar/0.mp3 b/assets/voice_ar/0.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..2c1cf4f6eb2d43c2faabb62c7857541eaa615a2c GIT binary patch literal 13056 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 literal 0 HcmV?d00001 diff --git a/assets/voice_ar/1.mp3 b/assets/voice_ar/1.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..b05d61777c22647193e877be459d822e1a62a485 GIT binary patch literal 14976 zcmeI&XHZk$zbO1PAV7cw0)(DGXrU!^5S7qNz)%H5rG_FRAS(6{dhaC&Nbew30YT|C zAiW4ET?Fx`D0bzMbDw)&+%j|Si~qedXU>}0vuCpR?DgHB{oQM?thJ7QruPB<$71SF zx$^fnuD_cU0H93;Ff(&-a3GO_f`S+fMn*%@)^{3j|$$Nu0c zPya70_5Eh8Y7dD~C637O?+a8h*J`j2(sUv7-gOG)j{yDIxWx#k_hz57Dit8C$> z+MfZV`wR?M?Tv%O_Ztn-uA5)}*=m4&xq0IG^$>B=6% zX-!=&AgF7&xWt9`hsAwF2%09gLXRrDMS+Jw4Gf(8TtY$sfUvH=kEyo{06YD6_u>Ok zY~yH<#!MG~Eh;1C7Gdpr>eu8sgSKvX2oRBI5+4EmfbzAE6Sb%kN9JL4^O3KrXp}ie zzkDNWPaB+(Or}4yBVF>W0;?4X!-_Z+DqZIYEj_hf;igZPR<$ZN$v7Nx>TFKhK78QZ z@OeLiH#1*nq^5E5Dk4}&Mn*A4+O<_kT-iiX@`oO7Mj}=~?B;zeMJ>Bu;z*IdVd1tu ztDlBz+gd}gyWeKcedQ^ zGZ_G*uHUqvu*ZI;_D$fn%-$a+hRWj93}*95EBF9|3S9Y|a2@?B;-9 zDe|(kHxCO%8VDVoj4Gk%3#8e`f5|;sfBbvo#Kqoigm|J&DyXF&Y)BH}Gv57f_~f^j zvxcx>w0C9wpu0AL%h=U-#|F;X$LzHUp_tV7xeu8r2t;AjsIzU7f6X ztar9kMLa(IK1VtK@XWZ|pPi@1S1i$qpWcF1%$-p&Qu8;ORepzJ>$`p^4-Y(iIk(y! z7-Z9FMVR|%WAJj4=tP5kejbz;__m8vn*I#p9Hn*jZ4o|^M4LFSYcmy}y@ z$+i>X0I<1sf()~kj^As)k0k=pgW`GwxP!Mt)UiJofWH#KYw4QQlUd;*xm>>%3Fky0 zV4~85A?L2u338&|;N;xKS0zDK1onHwyKVIDlpPlg-bqpA3wishZzweqyHAvnvONT$>V^_D%)&gn=`L0h=!5 zWC@!4q)Xiw>^c!|fR8!cY`NhNz1X_y;PBnq*gjzW)0bztDf%C5_w`*)n!=Hg6I}o_ z5YQ_@>}8GE$l>bc0jMBYH&`NgSO>161K6C9^jOu>*3-P2>ajgj?jk{+tSu5X_| z+%PRA6kJvODLawXpDb>FQwRMppYxG$x~Y){wxGf~`|#xSqa0i&`h>&7pNz9Lm8M%L zhc?&Cp9D$mDLmB%)-Jbf15G+Q)|(|tN+U`&c&;c{?Ow0}D=eDV%~#d(9(cw&>V2&k z*_-?7sK_#k7w5PNXj0a2hNp3^vniKIr$JLx2^UzvEEC@9!qZi0gn%#=o@0L=a8{v) zAlK#Xp8m>>vH8+^wE%axh}mlECFkoLZf0G@lEsS$x}$DtXJ`Yw5Woa>05o~m<>I}b z5r_0GQ(HY_U*Y=Su=uV@+d8{#A)On3F%|wwg%oyMy9i<4t=_?%ph*`(iITD4u9m+R zkJn+!i*yEg{j@b+PDoNWTg~o?4z2$2vyuKKp(5EYuc~6_4l}x)m!HzR-wR$+ZT#og zFN-U+-N@Tj05&(DGFShZOYeTTxD4H^68GLA`FtaBI>RhM@#W}v9`<+-0hk3aE?HHI z>W%3)JE;H1i(JCRqWtduDOH|+3E4mgC;J{7;(Loa)`RHpv0Vx8;=Qek%qX!;pzVZc zc7Ey}Yk`;ta<53;Qm4?47%2D;uZXwe7k*@FtZBh*^K!L$wkSZue7e5sFyXqhOQ!sT z9>dA^dE)Ofd>mgM{&0MD?L^MSU!6y{KXmnf?zmy=Qfz%?q~%%))yt?sp-t_i$5l@AMcuPrF0YJE3a+#S3{*pqM3YZ?ot77eI^kr z)k;#fdlAUe(ZZ)J&C{1DpBX&y{>16DTKGON{tSTRQfX-%3X@SzID4I8EX@$Lh4t_< zP9fqed71Qz!5|5IA>s{m=tk(eJk!ZJxn2eD^eHJjcF(}}Yn#7SqP3=@pC-P`^p`$~ z81YTf_@g9P7G|ZO;JowCly2=Oxyp0EAS_wVfaJKHz~95v)po0YntSg2#v78he9&8K z=XPtC$>17kNrG)aO7^n3yUg+}Io|o)Y8uao+{t3K8!IoKU$_$YmVJq4{w$AC{vH6N z0(67ia6gUA`iAum?4D$Fo(4HPaSMQk)F=K$SjWR_zb?N=`uY!-OTOO@JOhM2-@OnNiy zRT;&W@!4s(^>&{k#|IL|-pOif75h`e+DeYtDP#8b2c~8H*l?RlCe5 z9TyZ<64{x`5@R-;ncw2KyIlS{Pv=UlYc~*XyDb)0291omI*nnbN9P81fn1}2rm4lU zF6{Vo`L11`7~cfR^?r|xb#Z7j$hhe9RCsugR*brXIW?oQ%Lfb zm70qKWIhnwVuxv(n`!u^-h^v7Fk)7!De8gld3C

wj!@zG8D!q6sXK%e#lMQ5S-E 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 z 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

A3 zP^f^xtak>ZH$mF@j*|K4aoxKe+R!oHddjO_YrmulSRmtRMj@)RyBW(7;Lq1zCK$Eu z-9M9@@Yx(ccnhi{_eA{stG9JjgDu15eJ)ewsqbz*P^O$p4q865>U(>dxL}-(X zv>W@pZo&Ugy{;dv9%tA?kEZ3Op78y^zSs4CYSp@yhaO7Yi*WCYJpTIYwAnSty6^K# z762Ilz+wSdU?kvkM&aYR`QVDUi3uRv^hLb)kPCQP5qmhe2?0|N5{Fc;;Mp`lV*qwM zfNWrha23ptNg7JynHGr+pA)A3vxG7|oRWUt_`)2#iys}+pv%W$zNdf-l|{2EI6y56 z^;!SjKPO!g<T~Oa`guTZ*Ra*#WN_ps~@E*tJ7Nm7x(+WlUBmcG`h$BLfujGo{L=V3Qg_g%;AphVXerv<^Y?wZ` zs-f=cm6S8Q`|tMvXk*O!r0Q9it-^07)1eX^9jElBF})HiO9XnBw3nh+gZg~BG4=V) z<>lC|)6&Sx%S%!~cY&2r1s{}8Asa%gDbb&gNupJ;R26mD@As=m(zZ7je=|9lYsM=XO;8FW99*3DXzJ586 zG8DemOF=4|zcSU}tnEh(g>Sa(v-%vZ578a*bRQR%X zZZ#Nd)lGgl&xxpK;t zC%6 z4iA}xP3lPujk?J&HN;K2oV$d!A|xJZK1!An|L5RcWIl)BzuvzV$e=IplF=id>(NUi zxN-{7uf&-K_a~c6r9U(o(^AhM9k)AHBm%OoTOSe21UNj;;vDu z=){ysNm^?=`gl3JSX;CzJVr_)9@QvUa(NVw52d3TES_E~Fm^?Z$(ZK77Ceh^J6^fM811{AmC z8B9BsdQxdR$%|7DWz8a%D;DHdB@Nzjw>>JjZjkE5D)dFGhURDQWB z=OV_L70n|J|HHN6KTiAWUlY4B8a_*%`~w33prZa1i~h&y-v85{{73cIBOd?&tN%>5 z;Q!_S|MZ6c9~|s&{QsB#{{hs$(@*|?@&`mwFc%sO&hc`20wEAS_Ux7W&fWePMs~sS zHhsp|Xk^k!xwhuh)gWD$&(&>rya^{ir{6z0EiEj6eaz)O{p*5D*^$ZRiA&5VA3Dh9 zM#11Z?*$btTZf}rQt=b9KE#gxpH~_Mw`b?uk4|;{eiHe32-Cmr{xDq5qRF*C@PjES z_kjj}&io$2rXjEW5SD9=-uu`8U;j(|KR@feT;TB&7Vhu6^>ZgFW!viV=N- zU%&s9j`07cqT(F@{l43;4q=t6V2BG+!8M5`!$CBbdgKRJeD7QhIETrJM{_dZV6}?M z!otzPscx(gNjYG$n9Nm5s2yMnDcG4JI4M@~782Kx8J>TR6zh!G*2|I4l`RtfT!Y&! z5b#2ioWXizh82~BnW9eC_n3Ush89Y3^C=7MFVFP2h>nz+yI*{Wla&>@#;h;3%%^S` zu(r%Rl4CW_m~v&Q42IlP(qAbUtSx3T(t;s=C-=5KH7TK>;c==N^phT5Ow+a{KH%en z*0@Vg)qphjUxkw3PZ89`C1S=EMz?9rC!uB2YO!d;AKm7zRIanB^E3%1?v!dJyOcuK z4l?F#^(?nhUfx>*C04Ze6DWVjvbLRump_u$D|+38U9r!jq$#Y9v7b=;UKs7^HD38N zPpHQw>v(Btz@<5P*^o4A;>uJpL_iMw`=~7^!eWaEk~^$ literal 0 HcmV?d00001 diff --git a/assets/voice_ar/4.mp3 b/assets/voice_ar/4.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..3a3e2ecb9bd740d80a18a4b2c0876111e643493c GIT binary patch literal 13824 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 TQLNO^|5Jbd>xB2;K9c_nG#V6F literal 0 HcmV?d00001 diff --git a/assets/voice_ar/5.mp3 b/assets/voice_ar/5.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..e2e0feeffcc45077c5f48b9d7e220d3d299d8a87 GIT binary patch literal 13824 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 Nd8_}wf&V4&KLBaLN^<}J literal 0 HcmV?d00001 diff --git a/assets/voice_ar/6.mp3 b/assets/voice_ar/6.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..6e5646d5f20c6bc7f6322fdfd61af57f34aa6856 GIT binary patch literal 12288 zcmeI&cTiKo!!P`V&-&MTF3M2vw?v-VqQ`L^1RtE%YFr(3^B=8mg3l zbP-f~6$BM*h+KHyndgsp?#%t~cjvzE{mvvOlbmFCKWDSEvuDpwGX?U3U$;r#h>;6STLqnsY zq7oAmGcJ;smseI+R##Wo+S=N4k)ffXiHV8%`T0*5+1}nhJUsmQ^XK{b`9)cZhH6Gy zG7<aWBROPDPyOpX$B(l$3OCc_qYhjV zrrWGl9!y7M36o3ti6DYRwfse?)lHF;=sirE;V&kTclrzUUX6JCan1^F6IbFY(3Miz zrNoImtgnKKDV8fnA8C|~%o?_HT+jVX!|GVhp#d`6@1>z9zTl0))smt4n;MlqXHY2Q ztGi|}*v@m)#yyH855jnf)^BUOx|X%>vf5+V*K)@@>h1qzsX0_K+mz(iG_yX-R>RM| z_-EaaWc2j>?U+)@U&bXVg_Rnl7b@)`( zm^H~dzbL~{Tcp}-NW}U63t8o^CL^}rL27R`nhwxiv<=!RV7Yi{y%YD4XWt(k*urb@-KvMnLe_co-KOQuwq1$kF6hAV3Df{Ae%!k?( zHgG+mY~52?d>euZ^_cK**kcthejniHr;(dq!!J53vGMRjn6}~=DYmMFeb^(*Nbj`e z)uN&OJGX;;qoqwAw6j1ht#WUb;J}ZO$ZPPnL(2|l-W1VQR%trHC zDm7cQ_8Nb4x)ymw`Vhf>n++W1bpMOPPozZD-)H+5!tfwE)Ean2Q9SLqT(J5tC)QHGw&~MwT7G_!}Dsa;hEpC$;(H!nLoeXvmfSH;g)GLp~5YDkX1 zG|7Okz6R};bsG)@36pJIZx-Vg!**L(Bhon)CUa7YG#${cHtD*ocVsuQI(YJC7l;+o zkFJKIIjbUJ$8Uy*s>7xH*k?rJWcI_oVVk8Vr!l-Qmwrn=D(-l>G-qI76YQJ&#{IJ` zSGjL~3>*Le=5x!;c?MB3FgzAZHh&Zp5T$73A*ku+j_SDdXT-jXwos*NW*V)n+QG#* zDh3XmS${jeQpl=fIfQfS;Bw`7+$=@Zv&*k|XGGH3&SEV!VufG96ovH_4anJ~Se8{2 z6?noic~E6pkl+`)*5Me@qYS;Q)eKo?R&h_#Nkw+6p+hl%A}g*|!F||y#@@0iV#Vc? zh4U+i%1JmJp-H**!bi^Ag;JbvyBVH2a$3Gik7S74n|@BAx0|46M`6P?I&RohoO#H( zDmL(82m-vD@q+4WX9sSp{GjI1oXgQ!Id(<2ENy4Ya(?1#?DCx#y+XlilP)3_$8(9k zr0wp;>ek7>hI~rDYNqC9=VdB)8XaGn*59(kROa5=4g4V`v8=lx(L8#nHqkuMVKZA6 zEj+8W;%GReJN!;2?D;5HjYz zPVA*W6JY+tL_JZ4X>_Jqc=CAl_f)7?TGhR));>F}p4yW2pFQn<=D5vQ_@9jTEUR1h zwXsj))sJ3^-8oqgZz+Q(fXQ)X0DZ1eJrf4l8ClF2D5hc-XbZ858zj`-NKYv_aQO`L z_B^n<_Eo(oFI5w)YdUJyLJ_GK?Gw)WCs+KK52dxKJ^$P_c}?fu7a@w92%DS%ZV|9{ za`1J@m}<}4Hm+qP=E6)4-$tah9rX>mU2x3ZiMt{`k_@H%~r)GGnh z=h4Y!oeu8#zjXFib56#3tjA%qat`m*-1K7%*`j=&_`xV>iBZ@OX-qJ4hQ8^P%7B#z znSG(tucc&0`xhP;JPl;})m;$4({(MT_*rA(u3Yfl_qib?U$tC|q#KI>O4DlwZ!)vh zt(V$SA66F|z8?>|yvHeiD zNBKJ)?E<9W)zrz;YHh$+w#>H!_CD?a0}4kklly!g!7ME%w6l?(vgfMba@g=BOHPZT zS66y6Whrr><<}j7J=ta*5PMm%Tdj_!Z82ZjMPKeA2L$cM4H3B(soHx7}1Ivtnt%<>y`XeY^7dR)l4EWJyP$`h$}AK zZqK*LxMpin5}$~cExlS*C~XbJnCP#j&d+2LSmlg}DRQya8F1qJn{U7Uk-GvvAzh`? z6^)g8$t02<1(OC3mZybn6r=gHZ-UB?yTqK*AB>snCa_cacrH}^-Q9ZS`^!%y6KB-H zf<%(7rNZX<-5oa6QD!32298xG$zBBiYFe!gkNzwcDc>7EzMlzP`d0FtXKiH~GjUy9XQ~;#JNq@jL>o1=)@_U8 z*X#o2Wb=e)oVpzB$`P}*rsZ+v)5UWcPU1)vxW8683 zvZ3~uancqE*>*86AS>O?7Vz{?s6I&4!^nmDlo$wEKQ6dM-*(IL)zZ8GGk1F2Kf#qX zS^M`MZ9Y9SvNXr12q(2CF~ce}AUB8jGC zz~jD4nV0Rz+S2EFdN!?-Y5+L|lmr08T{8p{{fHPQq8c}b?U8GZz#av_6hX# z%10#~Cn(3rDybE%hA=tzGEQW@@f>Uz&0UA%i|eF;)Y7a2I0qWb+|BO7(ubQ1HigX& z`$KZj<`_ya6fPQ`y+8U)0;*tzp<|ccDz4(xub>jzMBL2nf*4qwnpn(*!Xiwsw>pe8 z3Ym^BU(9tc^7icVdHwnvyaWfOl`0ZUy9ZJi&3zoX0a9bDU39;5P;#GLJ-q+P$GCxO zN~<;fXqJs{P|4J${I&WQTP^mh!ar_WEHTZhnA@5ZNA++*iYA~=L{St$;ZU7prXAyE zC*7>jTKz$Pw(&WKUCnKU8py`+pRnH(x9?TN6^G591y8xZu-dk8z$;Yyqq|I{Ib0uQ zOiFHtpHhk@i`GpWHC^?Qr#Ntnq?E&Kwe$q_%zr<;@%G*6;j)-jiPSjvLV;r@7E1<@ zkM50oh6AfSA=5=-(7LlfsxJNM08I8q+6UcZea5^MNhE{Gsl1AYR;yFu$E5`NlJX#PPd6X~LHJF1JS?{rnrl0{}>mDU^?S+gQex~3bj{8gS z7jbN$)#&hX5o-BkHh(1`<*ri^_-m7ii@J642Q`qC4@UKiu^zWgvh2&=Sr&Sq+fcewr1g3upR|8Qb^>B@`+ykG!+Yd< zxZxOTgJ+ zrh?4F_EyIX^k!9JG@9%D>px?Qet(}D9t8>qD?YfB@)3LKj{v2Q@C!>g#E+W5N-0S2 zKcgd>7LYrPF)W#KHIDkg8N~`g(SRBkgu;GqU+LV3_lGtZ0Upl<#*BXVw|jxM?PN}UdWEU3yKC3v1l>&<^T}ea`{i)K;`!R?giCjP2k#Eq9cnrHn)jV2 zHMcrQ31r;O61SXtNSv-R$Hch{0uyOWJ(!0E)Md(8ufRpXi78l1%lHy8yO$0TL+SBr zZ|P!?1cFFS2rWpL{LiSbhlsj3udBHCdsBBg!SEW zX9Doz;?hEYNjv!CGnuK%N;$ZY6cC1Lt&}n}zce{uK9#~)G;l!OwBq;LG7X~%wW&WU z3V!wWM>EL@E$1NLhIKzhL6JN3P{SN!4T!q1_+&b>fw@_Zi6{$&*Un?)sFhkhT8-IR zPq=Af>aU_;d4<-rYJPdwzojoc-EFEajn$GKt0it5IDt;tc!ifn1$Tfjqs=GM`I^U< z{zhcD)~jq^l*b}W`Bw+Wr7%~ex08>};%Ees#AnC7w+~-G3-1*kFt`K5m$SselyBk4 zz9HEJtC`}4sg;VSO-+aTk{I^h?UqKa#+LVQQoU@YkMeeU!*C;Gjozjaytge@UoPUy zmL4pWu#@NG-vgP%wLf$pL!mde(!R}{_HJ9Pvw5lXbR?qg@L(#HjrYqD5w;$>R3{c7 z0D!@1HE)ViVzqVOiJXz68sgkB>Mo2E-ZYh)j$WeVzR}9_x%eNck1#c4`S5^k9Ik2g z{>KPcGzXY^D}AbWm_mT_GxM%Z+OM^jW>TcYGTB7)Y(F1;Ij1w*_~>egQrAZYgRB@mnJLdc3^vD_;CIV|!y-NbH283N|_KgjqF8 zH(Xmi{-oeD%J^|USBKT`SmE@`MC8|uzlsfQCnq(NLxd_PQ*)Mo^ZFNyL;$k!drp+j zNbAwN1@bsSr1z zM~7uy-Qjw&4lCu<{kCKZ!!(nYnc##;2>MP0q(o8sy|kh((V6la)P=5W&qcdyXrJzp zQ`N*WI`Uq@bQ$Vt*Xg!oXG)hU$fi1QV(tJel9P5z)HH4;*q@N7 zLe|b)y)vjZgdCWqr|EYmb^?37rC5;e3ofP3gK-P|%(8umD;zA2@Th5Hwkwq{;2mEA zZ*xSIsCO_>j;LE}K#@4Lb!p+CF%>^PX#81ti*BZM{{6g?s&aWYrzZGIvDx27H0lk^ z-K^e|SE|IP%RVL}ymaCQ3ytso_5=VN?Wv&tC3cRz;YOGKIapkW9Mg5Fx1+cD9HP77 z0i~T5ZB)FFW%i_{M~#gV^`2(03^W6`PHus#61uDt=7|fBUf;hhQcFB>yF9>OV$G;GZx>^UH6$Z`t;Y z{`gU?)9^+IRYrycfMvwtOoNo7ibk>NHI9^WnY7Q;yl*W$sSwE8*B9YyY=3{Q*4JA$ zLnp}1r_Hl5?M;YU5lp8ir74J6IMrUWiVvh5gV4VBP!nmfQP#~%((6?D#Qh}r-Ovml z^3uN>z+6TLHo7Gi!NB9_QO@!E4a=_Br=TB?MrOTh%b;9=%pMHA0QxBIuW7XGBkRQ_ zG02^=D7y?UW#y2oXN5062kB_u*$BV0l6MOM1>NZn z7_Ma-6eZ>=ex#PQ)Cqu;N^V7QJm3zob&x>4X+&w9B}K3DBN$p9Vb9D5uUEx36k5~A zm1*RO^?FmdWUleFR)1xV@8JLqqE~JHBs;;7YLf_Hz7aur6M$vF>ecZP#^E~`3=Z|pr@Zw4e=6*B!Og84}V9`=R_gl94A^=hx zE^F=6jBh$dNhsB}yql8mYNZ ztMCyXK=3U$4EGdp%33Fk1delO%Z1c_NyO5TFK*6QNGCsGD6J^!k!bv_b`aEN6Wv`> z(gG()_d=&)`gw9Ra$@wIxJ1AnYlF8`9&goee|)oc_@QZ^>wHp6V4au_1SO(qxmio_ zslyK88x-ZjRw8vz&;MO4BsS`Ws+^yzp1%o?0RoC`_H}-~;=1(z0$`gGpuF-1OFk*F zrg4)9uuI8Q-gcY%H~#$Tq0WatQLNaD`2#>97>*z41r!7(+0-Xw)Xleo4Et-#;szZN z*`z6)z#v>bwQ_e$Mk`A~J_r0VtV-*ekw426kDKT__Q|(%tgZqqHqq6xP>*>#4MlTV zW47tFP@1&bDGl^2w(VJbI+I@Xtc3-x^?+?9KrOA80f9|)R(Hy%i^&j-+vU<)p1kwCh8Qc-6 zSP<;L_dGv>44*5q;~&Et!L-#S7p+C~kA~^-6;?N*f$BF$%-q2F!`YYBXqFzjs9{pl(j^z>4u;R zwUU-JSjt#h3lU}HszO*1SZ0@07wqu3f;vD{IXC_)ez49M$dz+HNha{Eos5KkVJ0yX zbzf^jc&6~(qjjg}S%a(FYsRKF>%HdYt-=MmNeiBXJ1SYyUo^jtw%rWl-r`#=-i$ae zcV?a}d%NUwJ-Xj4X}#@4wPCii$3}l<>eFm%R?tt=+}V#jQlB1=J!z*bq8<`}m6B#6 zk^1Hn0{tv06B4;p%%qrhL>ytlNxjJYO}WXsgSn}5hP9a-@xEKr#n=u_^i$jBLP41G zu*I3J$hm0L2*6pF5Bbi&-E=P0F@iQy1l|$j6L4gTTS>9@1!xd@d`C z(ht$&%O90*C|ig3xDJ)RBIMheBwhMdEPRG+@ebCB;ITZO9PONm3Ra!Z6@f!B~r3y9&799mxjSdXw12F7vN*cfN!VCP0hxshNs@ zcb~ue=_|p&6X{z13mooT-Uf-pl$*2X`1{h1akwPAuI@&p3r{=6;BErQ z+PwnJWdkwdN;K3}jFP2vm4Uv;uCV#F`)-uV-(TyW?ADn$KS-_{+URZVmeCtuu3H|w zRtms@MTe~Wbi_XX`*QosGGGlY622#Z9!X^98{=oDi%igFlIJ+0!~u(GAM}c0RwvgY zbS>jBKx&XUSmJSfcqph;TqYVcjn-<$u4X-4;6Q4^k5=>`?qA*0dOX7w_!!@+C7_=5 zoFdngx{H2%&hjLwE;w%e%gkC1%d~&tQd*Fr^4p`H^keDX^B=#I&a75M82|$tto9(q zHjL6C0N{syJYg;45JTb`0?H-cAPWUM%hN@WSV3^soJl@P+6<1Ns5RmmCO!gS2pLr1 zpvmY+fjJRN%!0bqng~X%o5?)8_w-x*wu@GDQtg4TY|=5_>_*44a zEXT+w!!SuNXQyt)gCLXYqBWy{;iOyvX#i0v0m|=mliUaq>aWyZ(2$tbC@WCC8q8k? z%r(8@q{3zR*bU)V`=;25h5A_u)PqU@slgWJ0HBr%z^pdLrw+*jbKH?+^iaaABZO$B z?1V(5BOUtI8L6gL`osI7SR?=e11Kyy^yMT%0H7RkPt3{+Oqd{WfFwGWQj&q807%@k zS$YB>;?iL$gk8$rVQ$EK%L%>X3XO;Dx`=J zUF`zvLAqm$398xOchsgXKCEdjsZM(PA6{*y@y2ZpaZhkkgHomghdz%gh@(%Nw zeAaYMYZ)>n>7U`R6LsA-Fa7rbY)tgh79=eBm)g>?TSQ>Hv(zmQRKT<4<@590vbU#~ zi(j`4ujkJJ$dCYPvK5+jFXTqwja~8-5G7uH3mqRvn}BXDDXO_L81BxyDX955FU`>M z9m-Iz;spZ|4A4q@k%4-gMvshRQqhM+ny~%^N0ojWvzfQ+>?yo~&v)?&z3ydH=dn27 zhR5UUe7?6<&(%D&4sLeMHh&=-`fCmKGGe6hCk|BXASAm%tP-NvN-vKdCN%mLL2JQ_ zuVt$uKFQZ>VB8RaqdxZ?C*XOS^Eu9KrH-01n!&#I%$3xc+(-}*nHpZX)TMPbMLd_L zFmZS4`FtW$+Xo=!R8!peVsfn7HL05ybD&8obcSt(WMocmej@N8*MM#~i~juHok$u8 z1#48x-t^eFU^+5B@=1R41!SM4zM*tH?7G?Th3!eXtQac2 z-)-0(!WWUQynbO7^BOcdnh$AF%NO9pJc46F?{#9g5umgVkasZiWLy=lWvIhso zYgb~!zW$SqYTcK6&O(Lyox6jQJZslq@I5u+whi-h>dtp0t)9taPcfA#*baqATCY;VkmE8k5_eiX?wmgQ>M%pK&Z z+0OD|c&M2jc8?u?^qYppAtB#SXh4KP zvUEBrx`V+<4>5zO4)Pnfj-~sWR_t zO;Ru=M!~8=o|T~~m{Q_3HxTgSH0t!%-2e4MLQ6JzIR$ftb^2)LlY8gqTN!o5iKdx} zPCy{-e{Vpt_)q21|7+y@+{!-H3+uk!?hk+;bgTcV!vDkN{O5K5*A2Y%*9Q^*pZ!-b z06-QC0FeK$zxIFR8UNS+fA3}czyAMw{rOTcO%(5SlNdN;CD|g_KXYSuAvsp4hp%%H z{NNbS@Aa?Bo~kLEv1`df^ODh(g@nF9YaV_6wH9OUlzsqFRb1usQ2BZ>;%Ou8hR$bb zt=Cmgp>Gewj=RBi<_}*nc<(f+Wa#uQzO_MJr6l`0dFJ$0OxbFA+PBYa^;eN;G4;~u{aiY>|k`p`B&-sFEe{$$Z?d*43gRT9VPZbts(4>Bpnv~3^zN;*_n)cRr+ zuQSC(HxJL_8B3)St!zy=Gqt0>JsQWCdZZW#F!!Ej*+lShxkm%6=u?43vYLvK{vWBu z>~txg8IMK{X+{~Gy?lSC@8?#sx*O+M;E0K4tyQY-H3|%+H#K8Y4pgyyY46|Cbj`BE z5b2Xt)q>y@|E&L2^%$jnU;ebZN@6Vvx!0l9bWj;ic8CmbqI^I--v6&hP21#4-)CBG z->c-%&RgZzIr@xmZ1mwxbmXR9m!r@SW_F#rSw1maF^KCbDN(IkeXK;ROW>A*Zq(YJ zZ6?+`O#RcMKxA1<8p;Gh#&U&RLpV=2k;_0$-EU3WgTv9r1Ku)g%^x1OX<>%T&YD3A z&!h=B>o)S)+Ry?u*ECx;l5|9?%aY$aYS!X}09bQfa=myEAnoyY3k#HHA`_n$TXkKD z#r6zNKQEq((qN7mo{dkhO^_+L^goZ_JlU%S38bnIDHSXXq^!mpn4-K%GZ9$x0Bu}= z@SKHWQLnK$y#Z?T={Y6V8qHs9&QY8QD?Z{`Q-E)tDa@DKHAu`R1hZ)2h>Kc2hTJ_6K3F%_dO32?rgt(jxEj^^+NVvA49u6V+U$22OGKPG6 z4jko}L$1i~D&hEeX<_{c*PAqWb;EcXX_%lxj4%7iO((DWUS^>nE+yBwA${?gB!#9F zsb-Wc8VYG78%SUl22)#wW866Z>*$i0J6B0hsl$=b8kfh9LqK_cJ%-KV6CcAD8z(0N%fbQvd(} literal 0 HcmV?d00001 diff --git a/assets/voice_ar/7.mp3 b/assets/voice_ar/7.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..ba90910624d127c58f83a539301d43b2bb9ca229 GIT binary patch literal 12672 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 TzhboKf9K!-I>Y;KKa&3iSv$Y9 literal 0 HcmV?d00001 diff --git a/assets/voice_ar/8.mp3 b/assets/voice_ar/8.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..5b2e025e6ce871f7f546b4c2b986d3db8a978e24 GIT binary patch literal 16128 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 literal 0 HcmV?d00001 diff --git a/assets/voice_ar/ticket_number.mp3 b/assets/voice_ar/ticket_number.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..3a1ce475140d906053826d50fa13bda3c66877b6 GIT binary patch literal 24192 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/0.mp3 b/assets/voice_en/0.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..5603d804422ad935ebb1ad16d88945afd9482cf8 GIT binary patch literal 5085 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 Uo+FN6{dk#W6UqO7`~T_qFE;J~qyPW_ literal 0 HcmV?d00001 diff --git a/assets/voice_en/1.mp3 b/assets/voice_en/1.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..f5cced969b9ce8a63653dc6217baff140951a1cc GIT binary patch literal 4221 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 V&ym2qmk-NIoZNqZ`u{iM{{Tj;Jfi>r literal 0 HcmV?d00001 diff --git a/assets/voice_en/2.mp3 b/assets/voice_en/2.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..f0c6084b5f54dce7b76e2262bf57a48dd364984d GIT binary patch literal 4077 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 Vp1q4Q*1u3^{qle9)c<_Y{{X6umbd@_ literal 0 HcmV?d00001 diff --git a/assets/voice_en/3.mp3 b/assets/voice_en/3.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..da489e852f8ddbc062e85a318e976ba61ce8d355 GIT binary patch literal 4221 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 M1^Exn{Qt)M7kGyRcK`qY literal 0 HcmV?d00001 diff --git a/assets/voice_en/4.mp3 b/assets/voice_en/4.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..f76338c0dc2611fab31ab94d56f69610a99044e9 GIT binary patch literal 4653 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 Q#^_gvnE&_f|6j-d0B*`EWB>pF literal 0 HcmV?d00001 diff --git a/assets/voice_en/5.mp3 b/assets/voice_en/5.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..0cbc7de0a8f636f3e32e201cdd408f7ab5339b0f GIT binary patch literal 5085 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 B?brYS literal 0 HcmV?d00001 diff --git a/assets/voice_en/6.mp3 b/assets/voice_en/6.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..779ed791a32272bb1cda2aaa31cb7b945c54f083 GIT binary patch literal 4941 zcmciGRag|vzX$Mzm(B%tDHkMVN$FU+mPWcuKtd33X%GpQB_ss|lT+H*#?=$nv#XO^>CPo0jh10~?SpC08Y5?FL-Nykg64F9a zl0qWF!vD_xPr)8L4*(cRw6*{{Mg$6YQ$LyzaWpY|(vEbRF-EPcBtTL^d?X3bp+bQ= zreE%nbHNkQ?>7Z(k+9wic6OTK$uoxDD-#mR{%w|0mL9W=`vXUcK{B8@f;4bfCc!HtjNYELxs|X^kmm7UA`2}^jzp&@k7iZ~ z|2$RO;-=sw#Ap8jxOP%wtgz{bX>1#}l@_O$Y77C}x6({J4rdM&@$d*u zrMLOOwOLmlvBk;#WEYY52R6BZ-fXF%V;rbJ@*bBJ29FJ#M~3c#RXJ~84e+|QwRF7L zpqgRGinpH(VSW@mu=13DdAQMmD~k=FV+SZS1Y8V#ENnhd4X6SJ309YCB=z?-vqi#r zi_7isZrP*O6?WaVFl{@@*RV*jO!>>}CQUyXYQ�vn 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�A| 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Ν9+Q0Szm;XZ-;$yD0)L&qfDxCy8AnSUrA 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/8.mp3 b/assets/voice_en/8.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..b1947c29653a9c1043f236b8ba3a191d7fbe2aaf GIT binary patch literal 3789 zcmbW)cRU-+;|K8A#NLS-5i!ft1Rb=E(Z(pTS5c#c6g8_gs#fh;t*teRMvQuFwQCen zv0DVSYOAd%`967mfB*h@K7ZW(aj(03-@Wc$uRHC#3bX)9#7vBhQUBEJ0051y{Zpr_ zH~zYQ?Jooz{%`C5736)#E&$&u>Ol7=7cG~)Ob+AoN4|a|&$+8y-zyUzd3;X}rKaam z?dT1n_5wf{O@0JR)NsG~aeZtx{CAjSU;2mHP$l$829jJdrDd|I7u5Z=lMAeRClaA- zcSgE>a;1w#hE`$GhCcwmFDDco0urRn;G&{~&=%5u0Wl@0Rz=W&nahpPAC)jL*+k`H zT8c-KM@j;wxWNKYq;(fgN9wgz8BOrC=e}?b5;~ObzO1<6-cT@Hbov^zdg&R%_LWQh z{6W%uMYy44iFghGZPUHw*LR>!JYK7-ju0iy#B9zasn0qpHj{k0uDUHyViyL*_eS@dorv@i z$u^5}H8EN67ui&St7m$~ZO_)=%dCOEzbGDGP@W~6Wj7MG=-_{l=|F_aXfskFP@Q|0ytZ}(kM#T91L!ymCFUTnaOYVIvWKx$=9XQ2;1Awv zvT4*$-&=xs zf_mX59(#(rMDe5w41ZE&T-6=Y&&o;d^x0XQ&1^a!*}GNx`**R8@y+-BPPgZ`LSONz zFN#EcuM?&_7lcKGwjzq_sczr~`{wQRqy)xXd%`{keQnXaNju>69SRqX1nassW`4mr?qM~xd z8^X{ZrULP2Of5UbXh&8$I|lY8zkEoubr5s7+UM>*=*3#U2F>1B9lM_~Rq_*)5Ok;$N39RJ7CAyUSd= zn&P=GRL9m0zL9!4<-pdFi!7nim0l}$I4(JGQ4+;tgNRp7?jJT@ZG@W&{&D(>OL|oK zW<|~0JR-oKn4mK^fZR&V{gzJ1ZZw*AeAmzL?Q z(%eS1=N!yiT@VQ-+?ePTW6t*;pk#uH?!jv7C=)5Z&Rz)3P(KckPOzVnk89+;J!KSg zSrV{hW-lR-$*nu8loD>uu zr#HPE6|l1Xhn9czT?B@XgAS@13hRzy>kwffj8q$Ty0t!8tM=jm+(R!K8y$vB)Ih=0 zALlp9+>||;y&`LCO49QM^vV}h=R?6%K0ilLP@LDXVp!U-n;+?wC|@Q(A|BQI#F66R zfZ&l|>%xbw?a;xLhT1{3lbV6j9HSA@hw>F{)RQsn<_kg|8H86Fz-ZNLP*0lpmv)OfN_U?xc0~T`5m{F+sq3dD;Y<(W8FWv! zf@jOt<=v4fw_pz5jSs)_9!#tbUA1Vynx@5J@EAic-Yx*AnxUObdvd-y+*?)+3SSOA zeQ)w$H5E-NMDgb5D(IdDSNL1}P#u8uCR~t@;%w2I)KxY4{TFX@0~ShMtuIMw<@rqk zo*uD5flOI40z!_;mCo60&pjy~ZqYL6+r<96Gu#R*hrDqf1%K<5%$1%p=;AufnoN^k zihXLT7GF0i?@!wAbu3JA$-^3j$YAw!VR>5oVst%mJlDo@BgKyLQauPN(w_ZK=K9E| za&F7=02;^_Q1|rDaTRjgNpQhMS-S7_duw>*y1lclwKeZE8)NlV6rgUol1Abyu4l{| ztKc9<@vsXPsF$>Myll3^8(<9{T6V(pa4lCA-LqapwB@r$h@FW058Cjtvo;yE{T-Ea048d5wWg16*TksUAn z@2$n~rQURVMVM1E_4e_2sz9*yZ~ze$Zh`MP=&tt|O+B*e?-}X=+PRrJZO)QUwARNn zaE>PR|J<^(fZ)SY6XMzRpVBqfgLCB5XZ47;bh-dc0U)9MnkaL0e5@kX^LuNR4e-h+ zwQHQp6C{IZQOK^^)0C_W7mVvgttFX^cXp+C5CVNh_j7(4Fz!7iAKiFgD3I-9uxrs` zVitmvHJf3f4kNI#0j>9&hGg@wp35|7uHhuvO4so*rP$!p!Tq+$GnM{vaQNXk3*4H+ zqlbYZOH}AmOo}s07M=5ztpx>5#am>BI@SX7AgiM2#4T^O|w=yv2#rx1}x!V+N; zJTj4x^%R$H^~J{&j}|ynT~TUVgJqz+?8fK1^4msMFZ-8zXLy z0aa8@;lH0E7#ZQow8k7#jCX0et+a~V65`=rn!2b?=}FF^rnuz5SP{r%@+(Q)($B<+ zM2_1As+Da}3)QS{T5a)5WsGyAqOo*~KNF2&=Y6&|Ri~vgwNjpzl6)b6VoY9)F2&=> zuPP6xdH@0}+z`M3WU4-Db(Ui6zoSoetP(CBq22pw`}yNsgG~zfW-$|!Nja7o=jUUt z)fH}|0ojOZ^o%C!l<>!-cq^+~=-Kp!+s?|SyR-21obyH7m8&Oh$IdO1K4Bl-Th`F# z_h)_`uCQNz`0W)6k(|=P`@iA-qSePp^ErOtUVin?*WkuilQIm^<%5_{V zizj!8u~LikU|}d|qEz!6_;B_G5|Qbeup!Xaa~@o=ORn2(4nA&{8f+K@_A20}Qn^)% z3ciFhsj5S&$I;Vnbykn-2-XpB5C2|;VQO5|?ybDfrw@4r-rWrOeEJU{RFh9u3su8Z=0(#0kcyS(K^B>r;@ z%#FEupFJSia;+c(4+p*qXUd+9BG0#wSX+%P@!Y7f;d?okG+OiXN?GvtOR!nlACK%x zB+_A}IG{Z0#4G+b#5Tqp zgP|@IU(duN;7QOPtvP8qQ-9t%>!(d;mZg?{qo#1F=W9m~nV|haVJF2HhR`0EVYcn) z_V<~BBK%k_#IuuYT&W==6QAG+fy>LqZN90gm&)P!$W$>bry#Q?K=BAdWM0$@#%cuh z7M^Y)QspuOPu^KJ2Xrp!yf=(2%GJ3_xY*f)6!96gTv+Yr>g1jR&BSt#uJkBB!|<}e z@t?!#g{sZuu>vx=`E7dW(y?XYWeT!?;iVYTmG8c6Td624n;1_?FaK1G2MY_ zs|r&w1%}XP1#oyfXv6L&y7uvSiB+@)_zzM%!chFhQ?1E(!01$+)v=4;kVQ#K%E5)L zipwvRKQ0BPFie}rtamV(9KU3k>Ax>$<7)LtrZ_!o3f5RGUUnZ;0*&bl@f?AbW>IP2 zvxCcBU|1PR*y=I%?gvNbw@>zR(L%urLL@$#Pz@X~ zuK9h*TZFx@@bwmohmWU2LrZakmgV{{eL{1O86rLsXe?SSFy~Zo$q&v05K>F4pf+^R zyCv|rlOamn)dCy+_tJyvS>nN@QTZ@p?IOzbyjkGdZ@!@hFcUx-B^FrDrYUs7#z55ZH(E|oa zF{a@@T`nnG`i51~C$wUFEwna^=DSG9h{-(M^Qo@w+@GsuI0wVcT2yrriD1)j@_yF+ z?fGq$*07q`iKS^K0!kGsBkZfTW-9KJJ&_h;w$d0|{_p$89(3w1tGIeMC)(NYQG)vq zdRc>H@NNaSg#})F$=AN*?{K$kV2hY%=#f3M{Si?IR2moGa~R!V?MhKD4p{kmaSXUp zRl$W*7GF*>Tj;99?%H-$$ecKgeEF0He9I~&5ab+C)Hq~uh-baGTnb)-N~Jy@YZtT; zjkU_`+{G7Usm^CaW^01oLLi)!{RshAhA{$XxfpLS-Ku7^X}DhD zz2z<7N{bPN>Z0jNppran0`w?t0Snv*Cg3Z1X6ERDkTCUP7Y}mzr*2+dH8e_r d^2;;*FQIsH_zh;F6=!w-+X(+<*8jiH{{XqzJ2?OV literal 0 HcmV?d00001 diff --git a/assets/voice_en/9.mp3 b/assets/voice_en/9.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..4e5453c5305437047223363d99129de8f5cadff0 GIT binary patch literal 4653 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 MU;f+4_&@gh51vxMdjJ3c literal 0 HcmV?d00001 diff --git a/assets/voice_en/ticket_number.mp3 b/assets/voice_en/ticket_number.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..ca4b295a7ab3bf30322a913480b0a623a8ce80ee GIT binary patch literal 7101 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/visit_doctor.mp3 b/assets/voice_en/visit_doctor.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..fa3f018aa6c7f47902fbd747b3bc86232d1bf467 GIT binary patch literal 9261 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 a|G%8VJ?-Qd$PAz*EY1Iy2me3a`+oqE$Lw7I literal 0 HcmV?d00001 diff --git a/assets/voice_en/visit_nurse.mp3 b/assets/voice_en/visit_nurse.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..f60684da3a08cfb2fe8c2ca62083179cdeb44d02 GIT binary patch literal 9261 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, List) onSuccess, @required Function(dynamic) onFailure}) async{ + final body = { "IPAdress" : deviceIp }; + BaseAppClient.post(_getCallRequestInfoByClinicInfo, body: body, onSuccess: (response, status){ + if(status == 200){ + final calledByNurse = (response["CalledByNurse"] as List).map((j) => Tickets.fromJson(j)).toList(); + final clinicCurrentPatient = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); + onSuccess(calledByNurse, clinicCurrentPatient); + }else{ + onFailure(response); + } + }, onFailure: (error, status) => onFailure(error)); + } + + static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async{ + if(tickets.isEmpty) { + return; + } + + List _ticketsUpdated = []; + + for (var ticket in tickets) { + final body = { "CallID" : ticket.callNo}; + await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, body: body, onSuccess: (response, status){ + if(status == 200){ + ticket.call_updated = true; + _ticketsUpdated.add(ticket); + } + }, onFailure: (error, status) => onFailure(error)); + } + + if(_ticketsUpdated.isNotEmpty) { + onSuccess(_ticketsUpdated); + }else{ + onFailure(false); + } + } +} diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart index 7221b93..7f1dc2c 100644 --- a/lib/core/config/config.dart +++ b/lib/core/config/config.dart @@ -5,7 +5,8 @@ const ONLY_NUMBERS = "[0-9]"; const ONLY_LETTERS = "[a-zA-Z &'\"]"; const ONLY_DATE = "[0-9/]"; const BASE_URL_LIVE_CARE = 'https://livecare.hmg.com/'; -const BASE_URL = 'https://hmgwebservices.com/'; +const BASE_URL = 'http://10.200.204.11:2222/Services/Nurses.svc/REST'; +// const BASE_URL = 'https://hmgwebservices.com/'; /// Timer Info diff --git a/lib/core/response_model/patient_call.dart b/lib/core/response_model/patient_call.dart new file mode 100644 index 0000000..a7332f2 --- /dev/null +++ b/lib/core/response_model/patient_call.dart @@ -0,0 +1,75 @@ + +import 'dart:convert'; + +import 'package:queuing_system/utils/call_type.dart'; + +class Tickets { + Tickets({ + this.callNo, + this.roomNo, + this.callType, + this.createdON, + this.doctorName, + this.doctorNameN, + this.editedON, + this.mobileNo, + this.patientGender, + this.patientID, + this.queueNo,}); + + Tickets.fromJson(dynamic json) { + callNo = json['CallNo']; + roomNo = json['RoomNo']; + callType = json['CallType']; + createdON = json['CreatedON']; + doctorName = json['DoctorName']; + doctorNameN = json['DoctorNameN']; + editedON = json['EditedON']; + mobileNo = json['MobileNo']; + patientGender = json['PatientGender']; + patientID = json['PatientID']; + queueNo = json['QueueNo']; + } + + int callNo; + String roomNo; + int callType; + String createdON; + String doctorName; + String doctorNameN; + String editedON; + String mobileNo; + int patientGender; + int patientID; + String queueNo; + bool call_updated = false; + + Map toJson() { + final map = {}; + map['CallNo'] = callNo; + map['RoomNo'] = roomNo; + map['CallType'] = callType; + map['CreatedON'] = createdON; + map['DoctorName'] = doctorName; + map['DoctorNameN'] = doctorNameN; + map['EditedON'] = editedON; + map['MobileNo'] = mobileNo; + map['PatientGender'] = patientGender; + map['PatientID'] = patientID; + map['QueueNo'] = queueNo; + return map; + } + + @override + String toString() { + return (callNo).toString(); + } + + CallType getCallType(){ + if(callType == 0) return CallType.RECEPTION; + if(callType == 1) return CallType.NURSE; + if(callType == 2) return CallType.DOCTOR; + return CallType.NONE; + } + +} \ No newline at end of file diff --git a/lib/core/response_model/xyz.dart b/lib/core/response_model/xyz.dart new file mode 100644 index 0000000..11e0cb5 --- /dev/null +++ b/lib/core/response_model/xyz.dart @@ -0,0 +1,59 @@ +import 'dart:convert'; +Xyz xyzFromJson(String str) => Xyz.fromJson(json.decode(str)); +String xyzToJson(Xyz data) => json.encode(data.toJson()); +class Xyz { + Xyz({ + this.callNo, + this.roomNo, + this.callType, + this.createdON, + this.doctorName, + this.doctorNameN, + this.editedON, + this.mobileNo, + this.patientGender, + this.patientID, + this.queueNo,}); + + Xyz.fromJson(dynamic json) { + callNo = json['CallNo']; + roomNo = json['RoomNo']; + callType = json['CallType']; + createdON = json['CreatedON']; + doctorName = json['DoctorName']; + doctorNameN = json['DoctorNameN']; + editedON = json['EditedON']; + mobileNo = json['MobileNo']; + patientGender = json['PatientGender']; + patientID = json['PatientID']; + queueNo = json['QueueNo']; + } + int callNo; + String roomNo; + int callType; + String createdON; + String doctorName; + String doctorNameN; + String editedON; + String mobileNo; + int patientGender; + int patientID; + String queueNo; + + Map toJson() { + final map = {}; + map['CallNo'] = callNo; + map['RoomNo'] = roomNo; + map['CallType'] = callType; + map['CreatedON'] = createdON; + map['DoctorName'] = doctorName; + map['DoctorNameN'] = doctorNameN; + map['EditedON'] = editedON; + map['MobileNo'] = mobileNo; + map['PatientGender'] = patientGender; + map['PatientID'] = patientID; + map['QueueNo'] = queueNo; + return map; + } + +} \ No newline at end of file diff --git a/lib/header/app_header.dart b/lib/header/app_header.dart index aadf25b..4cae3c2 100644 --- a/lib/header/app_header.dart +++ b/lib/header/app_header.dart @@ -12,14 +12,12 @@ class AppHeader extends StatelessWidget with PreferredSizeWidget { padding: const EdgeInsets.only( left: 0, right: 5, - bottom: 5, ), decoration: BoxDecoration( - color: AppGlobal.appRedColor - , - border: const Border(bottom: BorderSide(color: Color(0xFFEFEFEF)))), + color: AppGlobal.appRedColor, border: const Border(bottom: BorderSide(color: Color(0xFFEFEFEF)))), child: Container( - padding: const EdgeInsets.only(left: 30, right: 50, bottom: 0,), + height: 100, + padding: const EdgeInsets.only(left: 20, right: 20, bottom: 0,), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center, diff --git a/lib/home/first_column.dart b/lib/home/first_column.dart index 23d24df..f99e8eb 100644 --- a/lib/home/first_column.dart +++ b/lib/home/first_column.dart @@ -13,7 +13,7 @@ class FirstColumn extends StatelessWidget { return Column( mainAxisAlignment: MainAxisAlignment.start, children: [ - const QueItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), + const TicketItem(queNo: "OBG-T45", isFirstLine: true, isNurseVisit: true, haveListOfPatient: true,), SizedBox( height: SizeConfig.getHeightMultiplier() * 5,), if(have3Patient ||have2Patient ) @@ -21,9 +21,9 @@ class FirstColumn extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.spaceAround, children: [ if(have2Patient || have3Patient) - const QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,), + const TicketItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: false, haveListOfPatient: true,), if(have3Patient) - const QueItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,), + const TicketItem(queNo: "OBG-T45", isSecondLine: true, isNurseVisit: true, haveListOfPatient: true,), ], ), ], diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 89a8bc1..ea3f400 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,181 +1,195 @@ import 'dart:async'; +import 'dart:io'; +import 'package:connectivity/connectivity.dart'; import 'package:flutter/material.dart'; +import 'package:queuing_system/core/api.dart'; import 'package:queuing_system/core/base/app_scaffold_widget.dart'; +import 'package:queuing_system/core/base/base_app_client.dart'; import 'package:queuing_system/core/config/config.dart'; import 'package:queuing_system/core/config/size_config.dart'; +import 'package:queuing_system/core/response_model/patient_call.dart'; import 'package:queuing_system/header/app_header.dart'; +import 'package:queuing_system/home/home_screen_components.dart'; import 'package:queuing_system/home/que_item_list.dart'; +import 'package:queuing_system/utils/call_by_voice.dart'; +import 'package:queuing_system/utils/call_type.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:signalr_core/signalr_core.dart'; +import 'package:text_to_speech/text_to_speech.dart'; import 'first_column.dart'; + +var DEVICE_IP = "10.20.20.19"; // Testing IP +// var DEVICE_IP = "10.70.249.21"; // (Make sure by Haroon before use it) Production IP + class MyHomePage extends StatefulWidget { String title = "MyHomePage"; - bool have0Patient = true; - bool have1Patient = false; - bool have2Patient = false; - bool have3Patient = false; - bool haveListOfPatient = false; @override State createState() => _MyHomePageState(); } class _MyHomePageState extends State { - Timer _timer; - int remainingTime = 30; + SignalRHelper signalRHelper = SignalRHelper(); + + final _tts = TextToSpeech(); + + List waitings = []; + List currents = []; @override void dispose() { - _timer.cancel(); super.dispose(); } - startTimer() { - Timer.periodic(const Duration(seconds: 1), (timer) { - if (remainingTime == 0) { - setState(() { - remainingTime = 30; - }); - } else { - setState(() { - remainingTime--; - if (remainingTime > 25) { - - /// for 0 patinet - widget.have0Patient = true; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 20) { - /// for 1 patinet - - widget.have0Patient = false; - widget.have1Patient = true; - widget.have2Patient = false; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 15) { - - /// for 2 patinet - - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = true; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 10) { - /// for 3 only patinet - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = true; - widget.haveListOfPatient = false; - } else { - /// for 3+ only patinet - - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = true; - widget.haveListOfPatient = true; - } - }); - } - }); - } @override void initState() { - startTimer(); - SignalRHelper signalRHelper = new SignalRHelper(); - if (!signalRHelper.getConnectionState()) signalRHelper.startSignalRConnection(); + listenNetworkConnectivity(); + + if (!signalRHelper.getConnectionState()) { + signalRHelper.startSignalRConnection( + DEVICE_IP, + onUpdateAvailable: onUpdateAvailable, + onConnect: onConnect, + onConnecting: onConnecting, + onDisconnect: onDisconnect + ); + } + + _tts.setLanguage("en"); + _tts.setRate(0.7); + + // _tts.getVoiceByLang('en').then((value){ + // + // }) + _tts.getVoice().then((value){ + _tts.setVoice(value[2]); + }); + super.initState(); } @override Widget build(BuildContext context) { - return AppScaffold( appBar: AppHeader(), - body: Column( - children: [ - SizedBox( - height: SizeConfig.getHeightMultiplier() * - (widget.haveListOfPatient - ? 2 - : widget.have1Patient || widget.have0Patient - ? 20 - : 10)), - widget.have0Patient - ? Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: AppText("Awaiting Patients Arrival", - fontFamily: 'Poppins-SemiBold.ttf', - letterSpacing: -1.56, - fontSize: SizeConfig.getWidthMultiplier() * 9), - ), - ], - ) - : widget.haveListOfPatient - ? Row( - children: [ - FirstColumn( - have3Patient: widget.have3Patient, - have2Patient: widget.have2Patient, - ), - 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( - have3Patient: widget.have3Patient, - have2Patient: widget.have2Patient, - ), - ], - ), - bottomSheet: Container( - color: Colors.transparent, + body: content(), + bottomNavigationBar: Container( + color: Colors.grey.withOpacity(0.1), height: Utils.getHeight(), width: double.infinity, child: Row( + crossAxisAlignment: CrossAxisAlignment.center, children: [ - Padding( - padding: const EdgeInsets.only(top: 30, left: 30), - child: AppText( - "Powered By", - letterSpacing: -1.56, - fontSize: SizeConfig.getWidthMultiplier() * 2.6, - fontFamily: 'Poppins-Medium.ttf', - ), + const SizedBox(width: 20), + AppText( + "Powered By", + fontSize: SizeConfig.getWidthMultiplier() * 2.6, + fontFamily: 'Poppins-Medium.ttf', ), - Padding( - padding: const EdgeInsets.only(top: 40, left: 18), - child: Image.asset( - "assets/images/cloud_logo.png", - height: SizeConfig.getHeightMultiplier() * 6, - ), + const SizedBox(width: 20), + Image.asset( + "assets/images/cloud_logo.png", + height: SizeConfig.getHeightMultiplier() * 4, ), + const SizedBox(width: 20), ], ), - ), // This trailing comma makes auto-formatting nicer for build methods. + ), ); } + + Widget content(){ + // waitings = waitings.sublist(0,3); + voiceCall(); + + if(waitings.isEmpty) { + // No Patient in Queue + return noPatientInQueue(); + + }else if(waitings.length > 4){ + // Return Content With Side List + return priorityTicketsWithSideList(waitings); + + }else{ + // Return Content In Center Aligned + return priorityTickets(waitings); + + } + } + + + CallByVoice voiceCaller; + voiceCall() async{ + if(waitings.isNotEmpty && voiceCaller == null){ + final postVoice = waitings.first.getCallType().audio('en'); + voiceCaller = CallByVoice(waitings.first.callNo.toString(), preVoice: 'ticket_number.mp3', postVoice: postVoice, lang: 'en'); + await voiceCaller.start(); + voiceCaller = null; + } + } + + onUpdateAvailable(data) async{ + API.GetCallRequestInfoByClinincInfo( + DEVICE_IP, + onSuccess: (waitingCalls, currentInClinic){ + + setState(() { + waitings = waitingCalls; + currents = currentInClinic; + }); + + print("\n\n"); + print("--------------------"); + print("Current: $currentInClinic"); + print("Waiting: $waitingCalls"); + print("--------------------"); + print("\n\n"); + + updateTickets(); + + }, onFailure: (error){ + + }); + } + + + updateTickets(){ + List _ticketsToUpdate = waitings.where((t) => t.call_updated == false); + API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated){ + print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); + }, onFailure: (e){ + + }); + } + + + onConnect(){ + print("SignalR: onConnect"); + } + + onDisconnect(exception){ + print("SignalR: onDisconnect"); + } + + onConnecting(){ + print("SignalR: onConnecting"); + } + + listenNetworkConnectivity() async{ + Connectivity().onConnectivityChanged.listen((event) { + switch (event) { + case ConnectivityResult.wifi: + signalRHelper.connection.start(); + break; + case ConnectivityResult.none: + signalRHelper.closeConnection(context); + break; + } + }); + } } diff --git a/lib/home/home_screen_bkp.dart b/lib/home/home_screen_bkp.dart new file mode 100644 index 0000000..34b0dc2 --- /dev/null +++ b/lib/home/home_screen_bkp.dart @@ -0,0 +1,205 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:queuing_system/core/api.dart'; +import 'package:queuing_system/core/base/app_scaffold_widget.dart'; +import 'package:queuing_system/core/base/base_app_client.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_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'; +import 'first_column.dart'; + + +var DEVICE_IP = "10.70.249.21"; + +class MyHomePage extends StatefulWidget { + String title = "MyHomePage"; + bool have0Patient = true; + bool have1Patient = false; + bool have2Patient = false; + bool have3Patient = false; + bool haveListOfPatient = false; + + @override + State createState() => _MyHomePageState(); +} + +class _MyHomePageState extends State { + Timer _timer; + int remainingTime = 30; + + @override + void dispose() { + _timer.cancel(); + super.dispose(); + } + + startTimer() { + Timer.periodic(const Duration(seconds: 1), (timer) { + if (remainingTime == 0) { + setState(() { + remainingTime = 30; + }); + } else { + setState(() { + remainingTime--; + if (remainingTime > 25) { + + /// for 0 patinet + widget.have0Patient = true; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 20) { + /// for 1 patinet + + widget.have0Patient = false; + widget.have1Patient = true; + widget.have2Patient = false; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 15) { + + /// for 2 patinet + + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = true; + widget.have3Patient = false; + widget.haveListOfPatient = false; + } else if (remainingTime > 10) { + /// for 3 only patinet + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = true; + widget.haveListOfPatient = false; + } else { + /// for 3+ only patinet + + widget.have0Patient = false; + widget.have1Patient = false; + widget.have2Patient = false; + widget.have3Patient = true; + widget.haveListOfPatient = true; + } + }); + } + }); + } + + @override + void initState() { + startTimer(); + // Get Ticket Info + // http://10.200.204.11:2222/Services/Nurses.svc/REST/GetCallRequestInfoByClinincInfo + + SignalRHelper signalRHelper = SignalRHelper(); + if (!signalRHelper.getConnectionState()) { + signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable); + } + super.initState(); + } + + @override + Widget build(BuildContext context) { + + + return AppScaffold( + appBar: AppHeader(), + body: Column( + children: [ + SizedBox( + height: SizeConfig.getHeightMultiplier() * + (widget.haveListOfPatient + ? 2 + : widget.have1Patient || widget.have0Patient + ? 20 + : 10)), + widget.have0Patient + ? Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: AppText("Awaiting Patients Arrival", + fontFamily: 'Poppins-SemiBold.ttf', + fontSize: SizeConfig.getWidthMultiplier() * 9), + ), + ], + ) + : widget.haveListOfPatient + ? Row( + children: [ + FirstColumn( + have3Patient: widget.have3Patient, + have2Patient: widget.have2Patient, + ), + 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( + have3Patient: widget.have3Patient, + have2Patient: widget.have2Patient, + ), + ], + ), + bottomSheet: Container( + color: Colors.transparent, + height: Utils.getHeight(), + width: double.infinity, + child: Row( + children: [ + Padding( + padding: const EdgeInsets.only(top: 30, left: 30), + child: AppText( + "Powered By", + fontSize: SizeConfig.getWidthMultiplier() * 2.6, + fontFamily: 'Poppins-Medium.ttf', + ), + ), + Padding( + padding: const EdgeInsets.only(top: 40, left: 18), + child: Image.asset( + "assets/images/cloud_logo.png", + height: SizeConfig.getHeightMultiplier() * 6, + ), + ), + ], + ), + ), // This trailing comma makes auto-formatting nicer for build methods. + ); + } + + + onUpdateAvailable(data) async{ + API.GetCallRequestInfoByClinincInfo( + DEVICE_IP, + onSuccess: (waitingCalls, currentInClinic){ + print("\n\n"); + print("--------------------"); + print("Current: $currentInClinic"); + print("Waiting: $waitingCalls"); + print("--------------------"); + print("\n\n"); + }, onFailure: (error){ + + }); + } +} diff --git a/lib/home/home_screen_components.dart b/lib/home/home_screen_components.dart new file mode 100644 index 0000000..01a118c --- /dev/null +++ b/lib/home/home_screen_components.dart @@ -0,0 +1,93 @@ + +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:queuing_system/core/config/config.dart'; +import 'package:queuing_system/core/config/size_config.dart'; +import 'package:queuing_system/core/response_model/patient_call.dart'; +import 'package:queuing_system/home/priority_calls.dart'; +import 'package:queuing_system/utils/call_type.dart'; +import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; + +Widget noPatientInQueue(){ + return Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: AppText("Awaiting Patients Arrival", + fontFamily: 'Poppins-SemiBold.ttf', + fontSize: SizeConfig.getWidthMultiplier() * 9), + ), + ], + ); +} + +Widget priorityTickets(List tickets){ + return PriorityTickets(tickets); +} + + + +Widget priorityTicketsWithSideList(List tickets){ + final priorityTickets = tickets.sublist(0,3); + final otherTickets = tickets.sublist(3,tickets.length); + return Row( + children: [ + Expanded( + flex: 3, + child: PriorityTickets(priorityTickets) + ), + Container(color: Colors.grey.withOpacity(0.1), width: 10, margin: const EdgeInsets.symmetric(horizontal: 20, vertical: 50)), + Expanded( + flex: 2, + child: ListView.builder( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 50), + itemCount: otherTickets.length, + itemBuilder: (ctx,idx){ + + final itm = otherTickets[idx]; + final isDoctor = itm.callType == 1; + + final icon = "assets/images/${isDoctor ? 'doctoricon' : 'nurseicon'}.svg"; + final title = "Please Visit ${isDoctor ? 'Doctor' : 'Nurse'}"; + final color = isDoctor ? AppGlobal.appRedColor : AppGlobal.appGreenColor; + + return ListTile( + contentPadding: const EdgeInsets.all(8), + title: Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + SizedBox( + width: 140, + child: AppText( + itm.callNo.toString(), + letterSpacing: -2.32, + fontWeight: FontWeight.bold, + fontSize: SizeConfig.getWidthMultiplier() * 5, + textAlign: TextAlign.end, + ), + ), + Row( + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + itm.getCallType().icon(SizeConfig.getHeightMultiplier()*2.5), + const SizedBox(width: 10), + AppText( + itm.getCallType().message('en'), + color: itm.getCallType().color(), + letterSpacing: -1.5, + fontSize: SizeConfig.getWidthMultiplier() * 3.3, + fontWeight: FontWeight.w600, + fontHeight: 0.5, + ), + ], + ) + ], + ), + ); + }, + ), + ) + ], + ); +} \ No newline at end of file diff --git a/lib/home/priority_calls.dart b/lib/home/priority_calls.dart new file mode 100644 index 0000000..18b8695 --- /dev/null +++ b/lib/home/priority_calls.dart @@ -0,0 +1,101 @@ +import 'package:blinking_text/blinking_text.dart'; +import 'package:flutter/material.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/core/response_model/patient_call.dart'; +import 'package:queuing_system/home/que_item/que_item.dart'; +import 'package:queuing_system/utils/call_type.dart'; +import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; + +class PriorityTickets extends StatelessWidget { + List tickets; + + PriorityTickets(this.tickets, {Key key}) : super(key: key); + + @override + Widget build(BuildContext context) { + + final firstTicket = tickets[0]; + final otherTickets = tickets.sublist(1,tickets.length); + + return Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + + vTicketItem(ticketNo: "${firstTicket.callNo ?? ''}", callType: firstTicket.getCallType(), scale: 1.2, blink: true), + + const SizedBox(height: 100), + + if(tickets.length > 1) + ...[ + SizedBox(height: SizeConfig.getHeightMultiplier()*1.5), + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: otherTickets.map((ticket) => vTicketItem(ticketNo: "${ticket.callNo ?? ''}", callType: ticket.getCallType(), scale: 0.8)).toList(), + ) + ] + ], + ); + } +} + +class vTicketItem extends StatelessWidget{ + final String ticketNo; + final CallType callType; + final bool blink; + final double scale; + vTicketItem({@required this.ticketNo, @required this.callType, this.scale, this.blink = false}); + + @override + Widget build(BuildContext context) { + + return Transform.scale( + scale: scale, + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + BlinkText( + ticketNo, + style: TextStyle( + fontSize: SizeConfig.getWidthMultiplier() * 16, + letterSpacing: -9.32, + height: 0.5, + fontWeight: FontWeight.bold + ), + beginColor: Colors.black, + endColor: blink ? Colors.black.withOpacity(0.1) : Colors.black, + // endColor: blink ? AppGlobal.appRedColor : Colors.black, + times: 0, + duration: const Duration(seconds: 1) + ), + // AppText( + // ticketNo, + // letterSpacing: -9.32, + // fontSize: SizeConfig.getWidthMultiplier() * 16, + // fontWeight: FontWeight.bold, + // fontHeight: 0.7, + // ), + + Row( + crossAxisAlignment: CrossAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + callType.icon(SizeConfig.getHeightMultiplier()*2.5), + const SizedBox(width: 10), + AppText( + callType.message('en'), + color: callType.color(), + letterSpacing: -1.5, + fontSize: SizeConfig.getWidthMultiplier() * 3.3, + fontWeight: FontWeight.w600, + fontHeight: 0.5, + ), + ], + ), + ], + ), + ); + } +} diff --git a/lib/home/que_item/que_item.dart b/lib/home/que_item/que_item.dart index 39ad8c4..68c0454 100644 --- a/lib/home/que_item/que_item.dart +++ b/lib/home/que_item/que_item.dart @@ -5,8 +5,8 @@ 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({ +class TicketItem extends StatelessWidget { + const TicketItem({ Key key, this.isFirstLine = false, this.isSecondLine = false, diff --git a/lib/home/que_item_list.dart b/lib/home/que_item_list.dart index e4e1461..5b8d098 100644 --- a/lib/home/que_item_list.dart +++ b/lib/home/que_item_list.dart @@ -12,14 +12,14 @@ class QueItemList extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ SizedBox(height: SizeConfig.getHeightMultiplier() *2.3,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), - const QueItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: true, haveListOfPatient: false,), + const TicketItem(queNo: "OBG-T45", isInListLine: true, isNurseVisit: false, haveListOfPatient: false,), ],), ); diff --git a/lib/main.dart b/lib/main.dart index f61e6b5..0d37e23 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -3,6 +3,7 @@ import 'package:provider/provider.dart'; import 'core/base/project_view_model.dart'; import 'core/config/size_config.dart'; import 'home/home_screen.dart'; +// import 'home/home_screen_bkp.dart'; void main() { runApp(const MyApp()); diff --git a/lib/utils/call_by_voice.dart b/lib/utils/call_by_voice.dart new file mode 100644 index 0000000..044c1c7 --- /dev/null +++ b/lib/utils/call_by_voice.dart @@ -0,0 +1,48 @@ +import 'package:flutter/cupertino.dart'; +import 'package:just_audio/just_audio.dart'; +import 'package:queuing_system/utils/call_type.dart'; + +class CallByVoice{ + + final String lang; + final String preVoice; + final String ticketNo; + final String postVoice; + + CallByVoice(this.ticketNo, {this.lang = 'en', @required this.preVoice, @required this.postVoice}); + + final _player = AudioPlayer(); + start() async{ + + // Create Pre Voice Players + if(preVoice != null && preVoice.isNotEmpty) { + await _player.setAsset('assets/voice_$lang/$preVoice'); + await _player.play(); + } + + // Create Ticket Number Voice Players + final characters = ticketNo.characters.toList(); + for(int i = 0; i< characters.length; i++){ + final no = characters[i]; + if(no.isNotEmpty){ + await Future.delayed(const Duration(milliseconds: 200)); + + await _player.stop(); + await _player.setAsset('assets/voice_$lang/$no.mp3'); + await _player.play(); + } + } + + + // Create Post Voice Players + if(postVoice != null && postVoice.isNotEmpty) { + await Future.delayed(const Duration(milliseconds: 1000)); + + await _player.stop(); + await _player.setAsset('assets/voice_$lang/$postVoice'); + await _player.play(); + } + + _player.dispose(); + } +} \ No newline at end of file diff --git a/lib/utils/call_type.dart b/lib/utils/call_type.dart new file mode 100644 index 0000000..b3cfb99 --- /dev/null +++ b/lib/utils/call_type.dart @@ -0,0 +1,60 @@ +import 'dart:ui'; + +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:queuing_system/core/config/config.dart'; + +enum CallType{ + RECEPTION, + NURSE, + DOCTOR, + NONE, +} + +extension xCallType on CallType{ + + Color color(){ + if(this == CallType.RECEPTION) { + return AppGlobal.appRedColor; + }else if(this == CallType.NURSE) { + return AppGlobal.appGreenColor; + }else if(this == CallType.DOCTOR) { + return AppGlobal.appRedColor ; + }else{ + return Colors.black54; + } + } + + SvgPicture icon(double height,){ + if(this == CallType.RECEPTION) { + return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color()); + }else if(this == CallType.NURSE) { + return SvgPicture.asset("assets/images/nurseicon.svg", height: height, color: color()); + }else if(this == CallType.DOCTOR) { + return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color()); + } + return SvgPicture.asset("assets/images/wait.svg", height: height, color: color());; + } + + String message(String lang){ + if(this == CallType.RECEPTION) { + return "Please visit reception"; + }else if(this == CallType.NURSE) { + return "Please visit nurse"; + }else if(this == CallType.DOCTOR) { + return "Please visit doctor"; + } + return "Please wait . . ."; + } + + String audio(String lang){ + if(this == CallType.RECEPTION) { + return "visit_doctor.mp3"; + }else if(this == CallType.NURSE) { + return "visit_nurse.mp3"; + }else if(this == CallType.DOCTOR) { + return "visit_doctor.mp3"; + } + return ""; + } +} \ No newline at end of file diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart index 395e438..eb7ebcc 100644 --- a/lib/utils/signalR_utils.dart +++ b/lib/utils/signalR_utils.dart @@ -4,43 +4,54 @@ import 'package:flutter/material.dart'; import 'package:http/io_client.dart'; import 'package:signalr_core/signalr_core.dart'; -class SignalRHelper{ +/* +https://vcallapi.hmg.com/patientcalling.html?IPAddress=10.10.14.20&Clinic=4&Project=15 + +--------------------------------------- + IP, Clinic, Project Mapping to SignalR +--------------------------------------- +(SignalR: 10.10.14.11) <<<< [IP=10.10.14.20 | Clinic=4 | Project=15] +(SignalR: 10.70.249.21) <<<< [IP=10.10.14.20 | Clinic=3 | Project=16] +--------------------------------------- +*/ - String hubBaseURL ="https://vcallapi.hmg.com/patientcalling.html?IPAddress=10.10.14.11&Clinic=4&Project=15"; +class SignalRHelper{ + String hubBaseURL = "https://vcallapi.hmg.com/PatientCallingHub"; + // 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() async { + + startSignalRConnection(String deviceIp, {@required Function(dynamic) onUpdateAvailable, @required VoidCallback onConnect, @required Function(dynamic) onDisconnect, @required VoidCallback onConnecting}) async { + + // Hardcoded IP For Testing + deviceIp = "10.10.14.11"; + + final url = hubBaseURL+"?IPAddress=$deviceIp"; connection = HubConnectionBuilder() .withUrl( - hubBaseURL, + url, HttpConnectionOptions( client: IOClient(HttpClient()..badCertificateCallback = (x, y, z) => true), transport: HttpTransportType.webSockets, logging: (level, message) => { print(message) - }, )) .build(); - await connection.start(); + connection.onclose(onDisconnect); + connection.onreconnecting((exception) => onConnecting()); + connection.onreconnected((connectionId) => onConnect()); - connection.on('ReceiveMessage', (message) { - handleIncomingMessage(message); + connection.on('addChatMessage', (message) { + onUpdateAvailable(message); }); - - connection.start(); - + await connection.start(); } - - void handleIncomingMessage(List message) { - print(message.toString()); - } - void sendMessage(List args) async { await connection.invoke('SendMessage', args: args); //['Bob', 'Says hi!'] } @@ -52,11 +63,18 @@ class SignalRHelper{ } - closeConnection(BuildContext context) async { - if(connection.state == HubConnectionState.connected) + if(connection.state == HubConnectionState.connected || connection.state == HubConnectionState.connecting) { await connection.stop(); } } + + startConnection(BuildContext context) async { + if(connection.state == HubConnectionState.connected || connection.state == HubConnectionState.connecting) + { + connection.off('addChatMessage'); + await connection.start(); + } + } } \ No newline at end of file diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index d119548..cc01d0f 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -178,6 +178,6 @@ class Utils { } static getHeight() { - return SizeConfig.getHeightMultiplier()*9; + return SizeConfig.getHeightMultiplier()*7; } } diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 9994324..1d5268d 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -5,8 +5,16 @@ import FlutterMacOS import Foundation +import audio_session import connectivity_macos +import just_audio +import path_provider_macos +import text_to_speech_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin")) + JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) + PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) + TextToSpeechMacOsPlugin.register(with: registry.registrar(forPlugin: "TextToSpeechMacOsPlugin")) } diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj index 6ade3d5..6b9af40 100644 --- a/macos/Runner.xcodeproj/project.pbxproj +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -26,6 +26,7 @@ 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + 6AAE3FFB3F8FFB988FA76AB9 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11DB0DA04C904ACC8281A43B /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -52,9 +53,10 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 11DB0DA04C904ACC8281A43B /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; - 33CC10ED2044A3C60003C045 /* queuing_system.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "queuing_system.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10ED2044A3C60003C045 /* queuing_system.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = queuing_system.app; sourceTree = BUILT_PRODUCTS_DIR; }; 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -66,8 +68,11 @@ 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 48B59F1CA514D4FE4E3BDC17 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + B1FB68A5A367B781DB228777 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + B5F3688D63D2A57A68A0C215 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -75,12 +80,24 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 6AAE3FFB3F8FFB988FA76AB9 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 03070B72BAE9950C266BFD12 /* Pods */ = { + isa = PBXGroup; + children = ( + 48B59F1CA514D4FE4E3BDC17 /* Pods-Runner.debug.xcconfig */, + B1FB68A5A367B781DB228777 /* Pods-Runner.release.xcconfig */, + B5F3688D63D2A57A68A0C215 /* Pods-Runner.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; 33BA886A226E78AF003329D5 /* Configs */ = { isa = PBXGroup; children = ( @@ -99,6 +116,7 @@ 33CEB47122A05771004F2AC0 /* Flutter */, 33CC10EE2044A3C60003C045 /* Products */, D73912EC22F37F3D000D13A0 /* Frameworks */, + 03070B72BAE9950C266BFD12 /* Pods */, ); sourceTree = ""; }; @@ -148,6 +166,7 @@ D73912EC22F37F3D000D13A0 /* Frameworks */ = { isa = PBXGroup; children = ( + 11DB0DA04C904ACC8281A43B /* Pods_Runner.framework */, ); name = Frameworks; sourceTree = ""; @@ -159,11 +178,13 @@ isa = PBXNativeTarget; buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + AD55B7E3AC663188F5990F5E /* [CP] Check Pods Manifest.lock */, 33CC10E92044A3C60003C045 /* Sources */, 33CC10EA2044A3C60003C045 /* Frameworks */, 33CC10EB2044A3C60003C045 /* Resources */, 33CC110E2044A8840003C045 /* Bundle Framework */, 3399D490228B24CF009A79C7 /* ShellScript */, + E17CB185511E52C6C3C36151 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -270,6 +291,45 @@ shellPath = /bin/sh; shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; }; + AD55B7E3AC663188F5990F5E /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + E17CB185511E52C6C3C36151 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ diff --git a/macos/Runner.xcworkspace/contents.xcworkspacedata b/macos/Runner.xcworkspace/contents.xcworkspacedata index 1d526a1..21a3cc1 100644 --- a/macos/Runner.xcworkspace/contents.xcworkspacedata +++ b/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/pubspec.yaml b/pubspec.yaml index 446205c..287b451 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -38,6 +38,10 @@ dependencies: flutter_gifimage: ^1.0.1 flutter_svg: ^1.0.3 http: ^0.13.0 + blinking_text: ^1.0.2 + + text_to_speech: ^0.2.3 + just_audio: ^0.9.29 #signalr core signalr_core: ^1.1.1 @@ -71,6 +75,8 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - assets/images/ + - assets/voice_en/ + - assets/voice_ar/ fonts: From d20a45208a9f0c71bb5b0d7dbb62ef1d85e2b11a Mon Sep 17 00:00:00 2001 From: Zohaib Iqbal Kambrani <> Date: Sun, 30 Oct 2022 14:58:33 +0300 Subject: [PATCH 21/26] no message --- lib/core/config/config.dart | 3 ++- lib/home/home_screen.dart | 12 ++++++------ lib/home/home_screen_components.dart | 5 ----- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/lib/core/config/config.dart b/lib/core/config/config.dart index 7f1dc2c..3114524 100644 --- a/lib/core/config/config.dart +++ b/lib/core/config/config.dart @@ -5,7 +5,8 @@ const ONLY_NUMBERS = "[0-9]"; const ONLY_LETTERS = "[a-zA-Z &'\"]"; const ONLY_DATE = "[0-9/]"; const BASE_URL_LIVE_CARE = 'https://livecare.hmg.com/'; -const BASE_URL = 'http://10.200.204.11:2222/Services/Nurses.svc/REST'; +const BASE_URL = 'https://uat.hmgwebservices.com/services/Nurses.svc/REST'; // UAT +// const BASE_URL = 'http://10.200.204.11:2222/Services/Nurses.svc/REST'; // const BASE_URL = 'https://hmgwebservices.com/'; diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index ea3f400..f071538 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -159,12 +159,12 @@ class _MyHomePageState extends State { updateTickets(){ - List _ticketsToUpdate = waitings.where((t) => t.call_updated == false); - API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated){ - print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); - }, onFailure: (e){ - - }); + // List _ticketsToUpdate = waitings.where((t) => t.call_updated == false); + // API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated){ + // print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); + // }, onFailure: (e){ + // + // }); } diff --git a/lib/home/home_screen_components.dart b/lib/home/home_screen_components.dart index 01a118c..3e697e6 100644 --- a/lib/home/home_screen_components.dart +++ b/lib/home/home_screen_components.dart @@ -46,11 +46,6 @@ Widget priorityTicketsWithSideList(List tickets){ itemBuilder: (ctx,idx){ final itm = otherTickets[idx]; - final isDoctor = itm.callType == 1; - - final icon = "assets/images/${isDoctor ? 'doctoricon' : 'nurseicon'}.svg"; - final title = "Please Visit ${isDoctor ? 'Doctor' : 'Nurse'}"; - final color = isDoctor ? AppGlobal.appRedColor : AppGlobal.appGreenColor; return ListTile( contentPadding: const EdgeInsets.all(8), From 3295bbc9e1b63b3d5bd540b23e8395dd0c9c62bb Mon Sep 17 00:00:00 2001 From: FaizHashmiCS22 Date: Sun, 30 Oct 2022 17:28:07 +0300 Subject: [PATCH 22/26] resolved lint errors --- lib/home/home_screen.dart | 21 +- lib/widget/data_display/app_texts_widget.dart | 91 +++++---- macos/Flutter/GeneratedPluginRegistrant.swift | 2 - pubspec.lock | 179 ++++++++++++++++-- pubspec.yaml | 1 - windows/flutter/generated_plugins.cmake | 8 + 6 files changed, 217 insertions(+), 85 deletions(-) diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index f071538..4c298a8 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,25 +1,16 @@ -import 'dart:async'; -import 'dart:io'; import 'package:connectivity/connectivity.dart'; import 'package:flutter/material.dart'; import 'package:queuing_system/core/api.dart'; import 'package:queuing_system/core/base/app_scaffold_widget.dart'; -import 'package:queuing_system/core/base/base_app_client.dart'; -import 'package:queuing_system/core/config/config.dart'; import 'package:queuing_system/core/config/size_config.dart'; import 'package:queuing_system/core/response_model/patient_call.dart'; import 'package:queuing_system/header/app_header.dart'; import 'package:queuing_system/home/home_screen_components.dart'; -import 'package:queuing_system/home/que_item_list.dart'; import 'package:queuing_system/utils/call_by_voice.dart'; import 'package:queuing_system/utils/call_type.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:signalr_core/signalr_core.dart'; -import 'package:text_to_speech/text_to_speech.dart'; -import 'first_column.dart'; - var DEVICE_IP = "10.20.20.19"; // Testing IP // var DEVICE_IP = "10.70.249.21"; // (Make sure by Haroon before use it) Production IP @@ -34,8 +25,6 @@ class MyHomePage extends StatefulWidget { class _MyHomePageState extends State { SignalRHelper signalRHelper = SignalRHelper(); - final _tts = TextToSpeech(); - List waitings = []; List currents = []; @@ -59,15 +48,7 @@ class _MyHomePageState extends State { ); } - _tts.setLanguage("en"); - _tts.setRate(0.7); - // _tts.getVoiceByLang('en').then((value){ - // - // }) - _tts.getVoice().then((value){ - _tts.setVoice(value[2]); - }); super.initState(); } @@ -189,6 +170,8 @@ class _MyHomePageState extends State { case ConnectivityResult.none: signalRHelper.closeConnection(context); break; + case ConnectivityResult.mobile: + break; } }); } diff --git a/lib/widget/data_display/app_texts_widget.dart b/lib/widget/data_display/app_texts_widget.dart index 7420d78..d4e88d1 100644 --- a/lib/widget/data_display/app_texts_widget.dart +++ b/lib/widget/data_display/app_texts_widget.dart @@ -1,4 +1,3 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:queuing_system/core/config/size_config.dart'; @@ -31,8 +30,8 @@ class AppText extends StatefulWidget { final TextDecoration textDecoration; final bool isCopyable; - AppText( - this.text, { + const AppText( + this.text, {Key key, this.color = Colors.black, this.fontWeight, this.variant, @@ -59,7 +58,7 @@ class AppText extends StatefulWidget { this.textDecoration, this.letterSpacing, this.isCopyable = false, - }); + }) : super(key: key); @override _AppTextState createState() => _AppTextState(); @@ -72,9 +71,9 @@ class _AppTextState extends State { @override void didUpdateWidget(covariant AppText oldWidget) { setState(() { - if (widget.style == "overline") + if (widget.style == "overline") { text = widget.text.toUpperCase(); - else { + } else { text = widget.text; } }); @@ -84,9 +83,9 @@ class _AppTextState extends State { @override void initState() { hidden = widget.readMore; - if (widget.style == "overline") + if (widget.style == "overline") { text = widget.text.toUpperCase(); - else { + } else { text = widget.text; } super.initState(); @@ -133,7 +132,7 @@ class _AppTextState extends State { widget.readMore && text.length > widget.maxLength) Padding( - padding: EdgeInsets.only(top: 8.0, right: 8.0, bottom: 8.0), + padding: const EdgeInsets.only(top: 8.0, right: 8.0, bottom: 8.0), child: InkWell( onTap: () { setState(() { @@ -158,42 +157,40 @@ class _AppTextState extends State { if (widget.isCopyable) { return Theme( data: ThemeData( - textSelectionColor: Colors.lightBlueAccent, + textSelectionTheme: const TextSelectionThemeData(selectionColor: Colors.lightBlueAccent), ), - child: Container( - child: SelectableText( - !hidden - ? text - : (text.substring( - 0, - text.length > widget.maxLength - ? widget.maxLength - : text.length)), - textAlign: widget.textAlign, - // overflow: widget.maxLines != null - // ? ((widget.maxLines > 1) - // ? TextOverflow.fade - // : TextOverflow.ellipsis) - // : null, - maxLines: widget.maxLines ?? null, - style: widget.style != null - ? _getFontStyle().copyWith( - fontStyle: widget.italic ? FontStyle.italic : null, - color: widget.color, - fontWeight: widget.fontWeight ?? _getFontWeight(), - height: widget.fontHeight) - : TextStyle( - fontStyle: widget.italic ? FontStyle.italic : null, - color: - widget.color != null ? widget.color : Color(0xff000000), - fontSize: widget.fontSize ?? _getFontSize(), - letterSpacing: widget.letterSpacing ?? - (widget.variant == "overline" ? 1.5 : null), - fontWeight: widget.fontWeight ?? _getFontWeight(), - fontFamily: widget.fontFamily ?? 'Poppins', - decoration: widget.textDecoration, - height: widget.fontHeight), - ), + child: SelectableText( + !hidden + ? text + : (text.substring( + 0, + text.length > widget.maxLength + ? widget.maxLength + : text.length)), + textAlign: widget.textAlign, + // overflow: widget.maxLines != null + // ? ((widget.maxLines > 1) + // ? TextOverflow.fade + // : TextOverflow.ellipsis) + // : null, + maxLines: widget.maxLines, + style: widget.style != null + ? _getFontStyle().copyWith( + fontStyle: widget.italic ? FontStyle.italic : null, + color: widget.color, + fontWeight: widget.fontWeight ?? _getFontWeight(), + height: widget.fontHeight) + : TextStyle( + fontStyle: widget.italic ? FontStyle.italic : null, + color: + widget.color ?? const Color(0xff000000), + fontSize: widget.fontSize ?? _getFontSize(), + letterSpacing: widget.letterSpacing ?? + (widget.variant == "overline" ? 1.5 : null), + fontWeight: widget.fontWeight ?? _getFontWeight(), + fontFamily: widget.fontFamily ?? 'Poppins', + decoration: widget.textDecoration, + height: widget.fontHeight), ), ); } else { @@ -211,7 +208,7 @@ class _AppTextState extends State { ? TextOverflow.fade : TextOverflow.ellipsis) : null, - maxLines: widget.maxLines ?? null, + maxLines: widget.maxLines, style: widget.style != null ? _getFontStyle().copyWith( fontStyle: widget.italic ? FontStyle.italic : null, @@ -220,7 +217,7 @@ class _AppTextState extends State { height: widget.fontHeight) : TextStyle( fontStyle: widget.italic ? FontStyle.italic : null, - color: widget.color != null ? widget.color : Colors.black, + color: widget.color ?? Colors.black, fontSize: widget.fontSize ?? _getFontSize(), letterSpacing: widget.letterSpacing ?? (widget.variant == "overline" ? 1.5 : null), @@ -257,7 +254,7 @@ class _AppTextState extends State { case "button": return Theme.of(context).textTheme.button; default: - return TextStyle(); + return const TextStyle(); } } diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 1d5268d..f7ea4ff 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -9,12 +9,10 @@ import audio_session import connectivity_macos import just_audio import path_provider_macos -import text_to_speech_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin")) JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) - TextToSpeechMacOsPlugin.register(with: registry.registrar(forPlugin: "TextToSpeechMacOsPlugin")) } diff --git a/pubspec.lock b/pubspec.lock index b88033d..8b284a7 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -7,7 +7,21 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.8.2" + version: "2.9.0" + audio_session: + dependency: transitive + description: + name: audio_session + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.10" + blinking_text: + dependency: "direct main" + description: + name: blinking_text + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" boolean_selector: dependency: transitive description: @@ -21,7 +35,7 @@ packages: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.2.1" charcode: dependency: transitive description: @@ -35,14 +49,14 @@ packages: name: clock url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.1.1" collection: dependency: transitive description: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" connectivity: dependency: "direct main" description: @@ -91,7 +105,21 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.1" + file: + dependency: transitive + description: + name: file + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.4" flutter: dependency: "direct main" description: flutter @@ -155,7 +183,28 @@ packages: name: js url: "https://pub.dartlang.org" source: hosted - version: "0.6.3" + version: "0.6.4" + just_audio: + dependency: "direct main" + description: + name: just_audio + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.30" + just_audio_platform_interface: + dependency: transitive + description: + name: just_audio_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "4.2.0" + just_audio_web: + dependency: transitive + description: + name: just_audio_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.7" lints: dependency: transitive description: @@ -176,14 +225,21 @@ packages: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.11" + version: "0.12.12" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.5" meta: dependency: transitive description: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.7.0" + version: "1.8.0" nested: dependency: transitive description: @@ -197,7 +253,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.2" path_drawing: dependency: transitive description: @@ -212,6 +268,55 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + path_provider: + dependency: transitive + description: + name: path_provider + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.11" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.20" + path_provider_ios: + dependency: transitive + description: + name: path_provider_ios + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.11" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.7" + path_provider_macos: + dependency: transitive + description: + name: path_provider_macos + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.6" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.5" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.3" petitparser: dependency: transitive description: @@ -219,6 +324,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.4.0" + platform: + dependency: transitive + description: + name: platform + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.0" plugin_platform_interface: dependency: transitive description: @@ -226,6 +338,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.2" + process: + dependency: transitive + description: + name: process + url: "https://pub.dartlang.org" + source: hosted + version: "4.2.4" provider: dependency: "direct main" description: @@ -240,6 +359,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.1+1" + rxdart: + dependency: transitive + description: + name: rxdart + url: "https://pub.dartlang.org" + source: hosted + version: "0.27.5" signalr_core: dependency: "direct main" description: @@ -258,7 +384,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.1" + version: "1.9.0" sse_client: dependency: transitive description: @@ -286,21 +412,21 @@ packages: name: string_scanner url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.1.1" term_glyph: dependency: transitive description: name: term_glyph url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.3" + version: "0.4.12" tuple: dependency: transitive description: @@ -315,13 +441,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + uuid: + dependency: transitive + description: + name: uuid + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.6" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.1" + version: "2.1.2" web_socket_channel: dependency: transitive description: @@ -329,6 +462,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.0" + win32: + dependency: transitive + description: + name: win32 + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.0+2" xml: dependency: transitive description: @@ -337,5 +484,5 @@ packages: source: hosted version: "5.3.1" sdks: - dart: ">=2.14.0 <3.0.0" - flutter: ">=2.4.0-0.0.pre" + dart: ">=2.17.0 <3.0.0" + flutter: ">=3.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 287b451..26354ae 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -40,7 +40,6 @@ dependencies: http: ^0.13.0 blinking_text: ^1.0.2 - text_to_speech: ^0.2.3 just_audio: ^0.9.29 #signalr core diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 4d10c25..b93c4c3 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -5,6 +5,9 @@ list(APPEND FLUTTER_PLUGIN_LIST ) +list(APPEND FLUTTER_FFI_PLUGIN_LIST +) + set(PLUGIN_BUNDLED_LIBRARIES) foreach(plugin ${FLUTTER_PLUGIN_LIST}) @@ -13,3 +16,8 @@ foreach(plugin ${FLUTTER_PLUGIN_LIST}) list(APPEND PLUGIN_BUNDLED_LIBRARIES $) list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) From 7e82746ce3f02f263610dc0add7470295d471cbf Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Mon, 2 Jan 2023 15:49:13 +0300 Subject: [PATCH 23/26] Pushing after callType Testing --- lib/core/api.dart | 46 +-- lib/core/base/base_app_client.dart | 6 +- lib/core/response_model/patient_call.dart | 20 +- lib/home/home_screen.dart | 23 +- lib/home/home_screen_bkp.dart | 410 +++++++++++----------- 5 files changed, 252 insertions(+), 253 deletions(-) diff --git a/lib/core/api.dart b/lib/core/api.dart index 01bb09c..8f747ae 100644 --- a/lib/core/api.dart +++ b/lib/core/api.dart @@ -21,27 +21,27 @@ class API{ }, onFailure: (error, status) => onFailure(error)); } - static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async{ - if(tickets.isEmpty) { - return; - } - - List _ticketsUpdated = []; - - for (var ticket in tickets) { - final body = { "CallID" : ticket.callNo}; - await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, body: body, onSuccess: (response, status){ - if(status == 200){ - ticket.call_updated = true; - _ticketsUpdated.add(ticket); - } - }, onFailure: (error, status) => onFailure(error)); - } - - if(_ticketsUpdated.isNotEmpty) { - onSuccess(_ticketsUpdated); - }else{ - onFailure(false); - } - } + // static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async{ + // if(tickets.isEmpty) { + // return; + // } + // + // List _ticketsUpdated = []; + // + // for (var ticket in tickets) { + // final body = { "CallID" : ticket.callNo}; + // await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, body: body, onSuccess: (response, status){ + // if(status == 200){ + // ticket.call_updated = true; + // _ticketsUpdated.add(ticket); + // } + // }, onFailure: (error, status) => onFailure(error)); + // } + // + // if(_ticketsUpdated.isNotEmpty) { + // onSuccess(_ticketsUpdated); + // }else{ + // onFailure(false); + // } + // } } diff --git a/lib/core/base/base_app_client.dart b/lib/core/base/base_app_client.dart index a4eeabc..c6e5d6c 100644 --- a/lib/core/base/base_app_client.dart +++ b/lib/core/base/base_app_client.dart @@ -32,7 +32,7 @@ class BaseAppClient { if (statusCode < 200 || statusCode >= 400) { onFailure(Utils.generateContactAdminMsg(), statusCode); } else { - print(response.body.toString()); + print("Response: ${response.body.toString()}"); var parsed = json.decode(response.body.toString()); onSuccess(parsed, statusCode); } @@ -57,8 +57,8 @@ class BaseAppClient { try { // String token = await sharedPref.getString(TOKEN); - print("URL : $url"); - print("Body : ${json.encode(body)}"); + print("URL GET: $url"); + print("Body GET: ${json.encode(body)}"); var asd = json.encode(body); var asd2; if (await Utils.checkConnection()) { diff --git a/lib/core/response_model/patient_call.dart b/lib/core/response_model/patient_call.dart index a7332f2..ff913fa 100644 --- a/lib/core/response_model/patient_call.dart +++ b/lib/core/response_model/patient_call.dart @@ -1,6 +1,4 @@ -import 'dart:convert'; - import 'package:queuing_system/utils/call_type.dart'; class Tickets { @@ -15,12 +13,13 @@ class Tickets { this.mobileNo, this.patientGender, this.patientID, - this.queueNo,}); + this.queueNo, + }); Tickets.fromJson(dynamic json) { callNo = json['CallNo']; roomNo = json['RoomNo']; - callType = json['CallType']; + callType = json['callType']; createdON = json['CreatedON']; doctorName = json['DoctorName']; doctorNameN = json['DoctorNameN']; @@ -48,7 +47,7 @@ class Tickets { final map = {}; map['CallNo'] = callNo; map['RoomNo'] = roomNo; - map['CallType'] = callType; + map['callType'] = callType; map['CreatedON'] = createdON; map['DoctorName'] = doctorName; map['DoctorNameN'] = doctorNameN; @@ -65,11 +64,10 @@ class Tickets { return (callNo).toString(); } - CallType getCallType(){ - if(callType == 0) return CallType.RECEPTION; - if(callType == 1) return CallType.NURSE; - if(callType == 2) return CallType.DOCTOR; + CallType getCallType() { + if (callType == 0) return CallType.RECEPTION; + if (callType == 1) return CallType.NURSE; + if (callType == 2) return CallType.DOCTOR; return CallType.NONE; } - -} \ No newline at end of file +} diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 4c298a8..db9ea26 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -1,3 +1,5 @@ +import 'dart:developer'; + import 'package:connectivity/connectivity.dart'; import 'package:flutter/material.dart'; import 'package:queuing_system/core/api.dart'; @@ -12,7 +14,7 @@ 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'; -var DEVICE_IP = "10.20.20.19"; // Testing IP +var DEVICE_IP = "10.10.14.11"; // Testing IP // var DEVICE_IP = "10.70.249.21"; // (Make sure by Haroon before use it) Production IP class MyHomePage extends StatefulWidget { @@ -55,7 +57,6 @@ class _MyHomePageState extends State { @override Widget build(BuildContext context) { - return AppScaffold( appBar: AppHeader(), body: content(), @@ -124,12 +125,12 @@ class _MyHomePageState extends State { currents = currentInClinic; }); - print("\n\n"); - print("--------------------"); - print("Current: $currentInClinic"); - print("Waiting: $waitingCalls"); - print("--------------------"); - print("\n\n"); + log("\n\n"); + log("--------------------"); + log("Current: $currentInClinic"); + log("Waiting: $waitingCalls"); + log("--------------------"); + log("\n\n"); updateTickets(); @@ -150,15 +151,15 @@ class _MyHomePageState extends State { onConnect(){ - print("SignalR: onConnect"); + log("SignalR: onConnect"); } onDisconnect(exception){ - print("SignalR: onDisconnect"); + log("SignalR: onDisconnect"); } onConnecting(){ - print("SignalR: onConnecting"); + log("SignalR: onConnecting"); } listenNetworkConnectivity() async{ diff --git a/lib/home/home_screen_bkp.dart b/lib/home/home_screen_bkp.dart index 34b0dc2..e0ad7bc 100644 --- a/lib/home/home_screen_bkp.dart +++ b/lib/home/home_screen_bkp.dart @@ -1,205 +1,205 @@ -import 'dart:async'; -import 'package:flutter/material.dart'; -import 'package:queuing_system/core/api.dart'; -import 'package:queuing_system/core/base/app_scaffold_widget.dart'; -import 'package:queuing_system/core/base/base_app_client.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_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'; -import 'first_column.dart'; - - -var DEVICE_IP = "10.70.249.21"; - -class MyHomePage extends StatefulWidget { - String title = "MyHomePage"; - bool have0Patient = true; - bool have1Patient = false; - bool have2Patient = false; - bool have3Patient = false; - bool haveListOfPatient = false; - - @override - State createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - Timer _timer; - int remainingTime = 30; - - @override - void dispose() { - _timer.cancel(); - super.dispose(); - } - - startTimer() { - Timer.periodic(const Duration(seconds: 1), (timer) { - if (remainingTime == 0) { - setState(() { - remainingTime = 30; - }); - } else { - setState(() { - remainingTime--; - if (remainingTime > 25) { - - /// for 0 patinet - widget.have0Patient = true; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 20) { - /// for 1 patinet - - widget.have0Patient = false; - widget.have1Patient = true; - widget.have2Patient = false; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 15) { - - /// for 2 patinet - - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = true; - widget.have3Patient = false; - widget.haveListOfPatient = false; - } else if (remainingTime > 10) { - /// for 3 only patinet - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = true; - widget.haveListOfPatient = false; - } else { - /// for 3+ only patinet - - widget.have0Patient = false; - widget.have1Patient = false; - widget.have2Patient = false; - widget.have3Patient = true; - widget.haveListOfPatient = true; - } - }); - } - }); - } - - @override - void initState() { - startTimer(); - // Get Ticket Info - // http://10.200.204.11:2222/Services/Nurses.svc/REST/GetCallRequestInfoByClinincInfo - - SignalRHelper signalRHelper = SignalRHelper(); - if (!signalRHelper.getConnectionState()) { - signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable); - } - super.initState(); - } - - @override - Widget build(BuildContext context) { - - - return AppScaffold( - appBar: AppHeader(), - body: Column( - children: [ - SizedBox( - height: SizeConfig.getHeightMultiplier() * - (widget.haveListOfPatient - ? 2 - : widget.have1Patient || widget.have0Patient - ? 20 - : 10)), - widget.have0Patient - ? Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: AppText("Awaiting Patients Arrival", - fontFamily: 'Poppins-SemiBold.ttf', - fontSize: SizeConfig.getWidthMultiplier() * 9), - ), - ], - ) - : widget.haveListOfPatient - ? Row( - children: [ - FirstColumn( - have3Patient: widget.have3Patient, - have2Patient: widget.have2Patient, - ), - 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( - have3Patient: widget.have3Patient, - have2Patient: widget.have2Patient, - ), - ], - ), - bottomSheet: Container( - color: Colors.transparent, - height: Utils.getHeight(), - width: double.infinity, - child: Row( - children: [ - Padding( - padding: const EdgeInsets.only(top: 30, left: 30), - child: AppText( - "Powered By", - fontSize: SizeConfig.getWidthMultiplier() * 2.6, - fontFamily: 'Poppins-Medium.ttf', - ), - ), - Padding( - padding: const EdgeInsets.only(top: 40, left: 18), - child: Image.asset( - "assets/images/cloud_logo.png", - height: SizeConfig.getHeightMultiplier() * 6, - ), - ), - ], - ), - ), // This trailing comma makes auto-formatting nicer for build methods. - ); - } - - - onUpdateAvailable(data) async{ - API.GetCallRequestInfoByClinincInfo( - DEVICE_IP, - onSuccess: (waitingCalls, currentInClinic){ - print("\n\n"); - print("--------------------"); - print("Current: $currentInClinic"); - print("Waiting: $waitingCalls"); - print("--------------------"); - print("\n\n"); - }, onFailure: (error){ - - }); - } -} +// import 'dart:async'; +// import 'package:flutter/material.dart'; +// import 'package:queuing_system/core/api.dart'; +// import 'package:queuing_system/core/base/app_scaffold_widget.dart'; +// import 'package:queuing_system/core/base/base_app_client.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_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'; +// import 'first_column.dart'; +// +// +// var DEVICE_IP = "10.70.249.21"; +// +// class MyHomePage extends StatefulWidget { +// String title = "MyHomePage"; +// bool have0Patient = true; +// bool have1Patient = false; +// bool have2Patient = false; +// bool have3Patient = false; +// bool haveListOfPatient = false; +// +// @override +// State createState() => _MyHomePageState(); +// } +// +// class _MyHomePageState extends State { +// Timer _timer; +// int remainingTime = 30; +// +// @override +// void dispose() { +// _timer.cancel(); +// super.dispose(); +// } +// +// startTimer() { +// Timer.periodic(const Duration(seconds: 1), (timer) { +// if (remainingTime == 0) { +// setState(() { +// remainingTime = 30; +// }); +// } else { +// setState(() { +// remainingTime--; +// if (remainingTime > 25) { +// +// /// for 0 patinet +// widget.have0Patient = true; +// widget.have1Patient = false; +// widget.have2Patient = false; +// widget.have3Patient = false; +// widget.haveListOfPatient = false; +// } else if (remainingTime > 20) { +// /// for 1 patinet +// +// widget.have0Patient = false; +// widget.have1Patient = true; +// widget.have2Patient = false; +// widget.have3Patient = false; +// widget.haveListOfPatient = false; +// } else if (remainingTime > 15) { +// +// /// for 2 patinet +// +// widget.have0Patient = false; +// widget.have1Patient = false; +// widget.have2Patient = true; +// widget.have3Patient = false; +// widget.haveListOfPatient = false; +// } else if (remainingTime > 10) { +// /// for 3 only patinet +// widget.have0Patient = false; +// widget.have1Patient = false; +// widget.have2Patient = false; +// widget.have3Patient = true; +// widget.haveListOfPatient = false; +// } else { +// /// for 3+ only patinet +// +// widget.have0Patient = false; +// widget.have1Patient = false; +// widget.have2Patient = false; +// widget.have3Patient = true; +// widget.haveListOfPatient = true; +// } +// }); +// } +// }); +// } +// +// @override +// void initState() { +// startTimer(); +// // Get Ticket Info +// // http://10.200.204.11:2222/Services/Nurses.svc/REST/GetCallRequestInfoByClinincInfo +// +// SignalRHelper signalRHelper = SignalRHelper(); +// if (!signalRHelper.getConnectionState()) { +// signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable); +// } +// super.initState(); +// } +// +// @override +// Widget build(BuildContext context) { +// +// +// return AppScaffold( +// appBar: AppHeader(), +// body: Column( +// children: [ +// SizedBox( +// height: SizeConfig.getHeightMultiplier() * +// (widget.haveListOfPatient +// ? 2 +// : widget.have1Patient || widget.have0Patient +// ? 20 +// : 10)), +// widget.have0Patient +// ? Column( +// mainAxisAlignment: MainAxisAlignment.center, +// children: [ +// Center( +// child: AppText("Awaiting Patients Arrival", +// fontFamily: 'Poppins-SemiBold.ttf', +// fontSize: SizeConfig.getWidthMultiplier() * 9), +// ), +// ], +// ) +// : widget.haveListOfPatient +// ? Row( +// children: [ +// FirstColumn( +// have3Patient: widget.have3Patient, +// have2Patient: widget.have2Patient, +// ), +// 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( +// have3Patient: widget.have3Patient, +// have2Patient: widget.have2Patient, +// ), +// ], +// ), +// bottomSheet: Container( +// color: Colors.transparent, +// height: Utils.getHeight(), +// width: double.infinity, +// child: Row( +// children: [ +// Padding( +// padding: const EdgeInsets.only(top: 30, left: 30), +// child: AppText( +// "Powered By", +// fontSize: SizeConfig.getWidthMultiplier() * 2.6, +// fontFamily: 'Poppins-Medium.ttf', +// ), +// ), +// Padding( +// padding: const EdgeInsets.only(top: 40, left: 18), +// child: Image.asset( +// "assets/images/cloud_logo.png", +// height: SizeConfig.getHeightMultiplier() * 6, +// ), +// ), +// ], +// ), +// ), // This trailing comma makes auto-formatting nicer for build methods. +// ); +// } +// +// +// onUpdateAvailable(data) async{ +// API.GetCallRequestInfoByClinincInfo( +// DEVICE_IP, +// onSuccess: (waitingCalls, currentInClinic){ +// print("\n\n"); +// print("--------------------"); +// print("Current: $currentInClinic"); +// print("Waiting: $waitingCalls"); +// print("--------------------"); +// print("\n\n"); +// }, onFailure: (error){ +// +// }); +// } +// } From 54f6c7c185340095bb108cc5e438a2cd2516ff37 Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Tue, 10 Jan 2023 14:32:39 +0300 Subject: [PATCH 24/26] Pushing after Testing on Panel --- assets/images/undraw_connected_world_wuay.png | Bin 0 -> 16393 bytes ios/Flutter/AppFrameworkInfo.plist | 2 +- ios/Podfile | 2 +- ios/Podfile.lock | 24 ++- ios/Runner.xcodeproj/project.pbxproj | 6 +- ios/Runner/Info.plist | 2 + lib/core/api.dart | 88 +++++---- lib/home/home_screen.dart | 168 +++++++++++------- lib/utils/call_by_voice.dart | 22 +-- lib/utils/signalR_utils.dart | 3 +- 10 files changed, 192 insertions(+), 125 deletions(-) create mode 100644 assets/images/undraw_connected_world_wuay.png diff --git a/assets/images/undraw_connected_world_wuay.png b/assets/images/undraw_connected_world_wuay.png new file mode 100644 index 0000000000000000000000000000000000000000..6e8eb47d399bded5428dcf4b5359119270de8231 GIT binary patch literal 16393 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 L{^P1gHgEqwD0&0? literal 0 HcmV?d00001 diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist index 8d4492f..9625e10 100644 --- a/ios/Flutter/AppFrameworkInfo.plist +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 9.0 + 11.0 diff --git a/ios/Podfile b/ios/Podfile index 1e8c3c9..88359b2 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -# platform :ios, '9.0' +# platform :ios, '11.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 0cb89ab..305bc17 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,29 +1,47 @@ PODS: + - audio_session (0.0.1): + - Flutter - connectivity (0.0.1): - Flutter - Reachability - Flutter (1.0.0) + - just_audio (0.0.1): + - Flutter + - path_provider_ios (0.0.1): + - Flutter - Reachability (3.2) DEPENDENCIES: + - audio_session (from `.symlinks/plugins/audio_session/ios`) - connectivity (from `.symlinks/plugins/connectivity/ios`) - Flutter (from `Flutter`) + - just_audio (from `.symlinks/plugins/just_audio/ios`) + - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) SPEC REPOS: trunk: - Reachability EXTERNAL SOURCES: + audio_session: + :path: ".symlinks/plugins/audio_session/ios" connectivity: :path: ".symlinks/plugins/connectivity/ios" Flutter: :path: Flutter + just_audio: + :path: ".symlinks/plugins/just_audio/ios" + path_provider_ios: + :path: ".symlinks/plugins/path_provider_ios/ios" SPEC CHECKSUMS: + audio_session: 4f3e461722055d21515cf3261b64c973c062f345 connectivity: c4130b2985d4ef6fd26f9702e886bd5260681467 - Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a + Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 + just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa + path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96 -PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c +PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3 -COCOAPODS: 1.11.2 +COCOAPODS: 1.11.3 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 7046dae..6364bea 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -340,7 +340,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -418,7 +418,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -467,7 +467,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 81eb537..256543f 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -43,5 +43,7 @@ UIViewControllerBasedStatusBarAppearance + CADisableMinimumFrameDurationOnPhone + diff --git a/lib/core/api.dart b/lib/core/api.dart index 8f747ae..4f9c756 100644 --- a/lib/core/api.dart +++ b/lib/core/api.dart @@ -1,47 +1,57 @@ - import 'package:flutter/cupertino.dart'; import 'package:queuing_system/core/base/base_app_client.dart'; import 'package:queuing_system/core/response_model/patient_call.dart'; const _getCallRequestInfoByClinicInfo = "/GetCallRequestInfoByClinincInfo"; -const _call_UpdateNotIsQueueRecordByIDAsync = "/Call_UpdateNotIsQueueRecordByIDAsync"; - -class API{ - - static GetCallRequestInfoByClinincInfo(String deviceIp, {@required Function(List, List) onSuccess, @required Function(dynamic) onFailure}) async{ - final body = { "IPAdress" : deviceIp }; - BaseAppClient.post(_getCallRequestInfoByClinicInfo, body: body, onSuccess: (response, status){ - if(status == 200){ - final calledByNurse = (response["CalledByNurse"] as List).map((j) => Tickets.fromJson(j)).toList(); - final clinicCurrentPatient = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); - onSuccess(calledByNurse, clinicCurrentPatient); - }else{ - onFailure(response); - } - }, onFailure: (error, status) => onFailure(error)); +const _call_UpdateNotIsQueueRecordByIDAsync = "/Call_UpdateNotIsQueueRecordByID"; + +class API { + static GetCallRequestInfoByClinincInfo(String deviceIp, {@required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { + final body = {"IPAdress": deviceIp}; + BaseAppClient.post(_getCallRequestInfoByClinicInfo, + body: body, + onSuccess: (response, status) { + if (status == 200) { + var calledByNurse = (response["CalledByNurse"] as List).map((j) => Tickets.fromJson(j)).toList(); + final patients = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); + calledByNurse.addAll(patients); + + calledByNurse.sort((a, b) => a.callNo.compareTo(b.callNo)); + + // final clinicCurrentPatient = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); + onSuccess(calledByNurse); + } else { + onFailure(response); + } + }, + onFailure: (error, status) => onFailure(error)); } - // static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async{ - // if(tickets.isEmpty) { - // return; - // } - // - // List _ticketsUpdated = []; - // - // for (var ticket in tickets) { - // final body = { "CallID" : ticket.callNo}; - // await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, body: body, onSuccess: (response, status){ - // if(status == 200){ - // ticket.call_updated = true; - // _ticketsUpdated.add(ticket); - // } - // }, onFailure: (error, status) => onFailure(error)); - // } - // - // if(_ticketsUpdated.isNotEmpty) { - // onSuccess(_ticketsUpdated); - // }else{ - // onFailure(false); - // } - // } + static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { + if (tickets.isEmpty) { + return; + } + + List _ticketsUpdated = []; + + for (var ticket in tickets) { + final body = {"CallID": ticket.callNo}; + await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, + body: body, + onSuccess: (response, status) { + print("response: $response"); + if (status == 200) { + ticket.call_updated = true; + _ticketsUpdated.add(ticket); + } + }, + onFailure: (error, status) => onFailure(error)); + } + + if (_ticketsUpdated.isNotEmpty) { + onSuccess(_ticketsUpdated); + } else { + onFailure(false); + } + } } diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index db9ea26..2ccf9f6 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -4,6 +4,7 @@ import 'package:connectivity/connectivity.dart'; import 'package:flutter/material.dart'; import 'package:queuing_system/core/api.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/core/response_model/patient_call.dart'; import 'package:queuing_system/header/app_header.dart'; @@ -14,7 +15,10 @@ 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'; -var DEVICE_IP = "10.10.14.11"; // Testing IP +var DEVICE_IP = "10.10.14.11"; // Testing IP +// var DEVICE_IP = "10.10.14.11"; // Testing IP +// var DEVICE_IP = "10.10.15.11"; + // var DEVICE_IP = "10.70.249.21"; // (Make sure by Haroon before use it) Production IP class MyHomePage extends StatefulWidget { @@ -30,31 +34,25 @@ class _MyHomePageState extends State { List waitings = []; List currents = []; + bool isLoading = false; + @override void dispose() { super.dispose(); } - @override void initState() { listenNetworkConnectivity(); - if (!signalRHelper.getConnectionState()) { - signalRHelper.startSignalRConnection( - DEVICE_IP, - onUpdateAvailable: onUpdateAvailable, - onConnect: onConnect, - onConnecting: onConnecting, - onDisconnect: onDisconnect - ); + signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); } - - super.initState(); } + TextEditingController controller = TextEditingController(); + @override Widget build(BuildContext context) { return AppScaffold( @@ -66,48 +64,91 @@ class _MyHomePageState extends State { width: double.infinity, child: Row( crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - const SizedBox(width: 20), - AppText( - "Powered By", - fontSize: SizeConfig.getWidthMultiplier() * 2.6, - fontFamily: 'Poppins-Medium.ttf', + Row( + children: [ + const SizedBox(width: 20), + AppText( + "Powered By", + fontSize: SizeConfig.getWidthMultiplier() * 2.6, + fontFamily: 'Poppins-Medium.ttf', + ), + const SizedBox(width: 20), + Image.asset( + "assets/images/cloud_logo.png", + height: SizeConfig.getHeightMultiplier() * 4, + ), + ], ), - const SizedBox(width: 20), - Image.asset( - "assets/images/cloud_logo.png", - height: SizeConfig.getHeightMultiplier() * 4, + Row( + children: [ + const SizedBox(width: 60), + SizedBox( + width: 200, + child: TextField( + controller: controller, + )), + const SizedBox(width: 30), + isLoading + ? const CircularProgressIndicator() + : ElevatedButton( + onPressed: onUpdateIPPressed, + child: const Text( + "Update IP", + style: TextStyle(color: Colors.white), + ), + style: ElevatedButton.styleFrom(backgroundColor: AppGlobal.appRedColor), + ), + const SizedBox(width: 30), + Text("IP: $DEVICE_IP", style: const TextStyle(fontWeight: FontWeight.w600)), + const SizedBox(width: 20), + ], ), - const SizedBox(width: 20), ], ), ), ); } - Widget content(){ + onUpdateIPPressed() async { + if (controller.text.isNotEmpty) { + isLoading = true; + setState(() {}); + DEVICE_IP = controller.text; + + await signalRHelper.connection.stop(); + if (!signalRHelper.getConnectionState()) { + await signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); + } + + controller.clear(); + waitings.clear(); + isLoading = false; + setState(() {}); + } + } + + Widget content() { // waitings = waitings.sublist(0,3); voiceCall(); - if(waitings.isEmpty) { + if (waitings.isEmpty) { // No Patient in Queue return noPatientInQueue(); - - }else if(waitings.length > 4){ + } else if (waitings.length > 4) { // Return Content With Side List return priorityTicketsWithSideList(waitings); - - }else{ + } else { // Return Content In Center Aligned return priorityTickets(waitings); - } } - CallByVoice voiceCaller; - voiceCall() async{ - if(waitings.isNotEmpty && voiceCaller == null){ + + voiceCall() async { + if (waitings.isNotEmpty && voiceCaller == null) { final postVoice = waitings.first.getCallType().audio('en'); voiceCaller = CallByVoice(waitings.first.callNo.toString(), preVoice: 'ticket_number.mp3', postVoice: postVoice, lang: 'en'); await voiceCaller.start(); @@ -115,54 +156,47 @@ class _MyHomePageState extends State { } } - onUpdateAvailable(data) async{ - API.GetCallRequestInfoByClinincInfo( - DEVICE_IP, - onSuccess: (waitingCalls, currentInClinic){ - - setState(() { - waitings = waitingCalls; - currents = currentInClinic; - }); - - log("\n\n"); - log("--------------------"); - log("Current: $currentInClinic"); - log("Waiting: $waitingCalls"); - log("--------------------"); - log("\n\n"); - - updateTickets(); - - }, onFailure: (error){ - - }); + onUpdateAvailable(data) async { + API.GetCallRequestInfoByClinincInfo(DEVICE_IP, onSuccess: (waitingCalls) { + setState(() { + waitings = waitingCalls; + // currents = currentInClinic; + }); + + log("\n\n"); + log("--------------------"); + // log("Current: $currentInClinic"); + log("Waiting: $waitingCalls"); + log("--------------------"); + log("\n\n"); + + updateTickets(); + }, onFailure: (error) {}); } - - updateTickets(){ - // List _ticketsToUpdate = waitings.where((t) => t.call_updated == false); - // API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated){ - // print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); - // }, onFailure: (e){ - // - // }); + updateTickets() { + List _ticketsToUpdate = waitings.where((t) => t.call_updated == false).toList(); + API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated) { + print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); + }, onFailure: (e) { + print("API UPDate Tickets Failed with : ${e.toString()}"); + }); } - - onConnect(){ + onConnect() { log("SignalR: onConnect"); } - onDisconnect(exception){ + onDisconnect(exception) { log("SignalR: onDisconnect"); + signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); } - onConnecting(){ + onConnecting() { log("SignalR: onConnecting"); } - listenNetworkConnectivity() async{ + listenNetworkConnectivity() async { Connectivity().onConnectivityChanged.listen((event) { switch (event) { case ConnectivityResult.wifi: diff --git a/lib/utils/call_by_voice.dart b/lib/utils/call_by_voice.dart index 044c1c7..d58ec61 100644 --- a/lib/utils/call_by_voice.dart +++ b/lib/utils/call_by_voice.dart @@ -1,9 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:just_audio/just_audio.dart'; -import 'package:queuing_system/utils/call_type.dart'; - -class CallByVoice{ +class CallByVoice { final String lang; final String preVoice; final String ticketNo; @@ -12,19 +10,19 @@ class CallByVoice{ CallByVoice(this.ticketNo, {this.lang = 'en', @required this.preVoice, @required this.postVoice}); final _player = AudioPlayer(); - start() async{ + start() async { // Create Pre Voice Players - if(preVoice != null && preVoice.isNotEmpty) { + if (preVoice != null && preVoice.isNotEmpty) { await _player.setAsset('assets/voice_$lang/$preVoice'); await _player.play(); } // Create Ticket Number Voice Players final characters = ticketNo.characters.toList(); - for(int i = 0; i< characters.length; i++){ + for (int i = 0; i < characters.length; i++) { final no = characters[i]; - if(no.isNotEmpty){ + if (no.isNotEmpty) { await Future.delayed(const Duration(milliseconds: 200)); await _player.stop(); @@ -33,9 +31,8 @@ class CallByVoice{ } } - // Create Post Voice Players - if(postVoice != null && postVoice.isNotEmpty) { + if (postVoice != null && postVoice.isNotEmpty) { await Future.delayed(const Duration(milliseconds: 1000)); await _player.stop(); @@ -45,4 +42,9 @@ class CallByVoice{ _player.dispose(); } -} \ No newline at end of file + + stop() async { + await _player.stop(); + } + +} diff --git a/lib/utils/signalR_utils.dart b/lib/utils/signalR_utils.dart index eb7ebcc..505feb1 100644 --- a/lib/utils/signalR_utils.dart +++ b/lib/utils/signalR_utils.dart @@ -25,7 +25,8 @@ class SignalRHelper{ startSignalRConnection(String deviceIp, {@required Function(dynamic) onUpdateAvailable, @required VoidCallback onConnect, @required Function(dynamic) onDisconnect, @required VoidCallback onConnecting}) async { // Hardcoded IP For Testing - deviceIp = "10.10.14.11"; + // deviceIp = "10.10.14.11"; + print("Connecting Signal R with: $deviceIp"); final url = hubBaseURL+"?IPAddress=$deviceIp"; connection = HubConnectionBuilder() From c73daeb8e85629a1705cc9e4a4217e417b874b81 Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Sun, 15 Jan 2023 15:19:50 +0300 Subject: [PATCH 25/26] Pushing till working demo --- android/app/build.gradle | 2 +- assets/voice_en/A.mp3 | Bin 0 -> 3645 bytes assets/voice_en/B.mp3 | Bin 0 -> 3645 bytes assets/voice_en/C.mp3 | Bin 0 -> 4221 bytes assets/voice_en/D.mp3 | Bin 0 -> 3501 bytes assets/voice_en/E.mp3 | Bin 0 -> 4941 bytes assets/voice_en/F.mp3 | Bin 0 -> 3789 bytes assets/voice_en/G.mp3 | Bin 0 -> 3789 bytes assets/voice_en/H.mp3 | Bin 0 -> 4221 bytes assets/voice_en/I.mp3 | Bin 0 -> 5229 bytes assets/voice_en/J.mp3 | Bin 0 -> 4077 bytes assets/voice_en/K.mp3 | Bin 0 -> 4077 bytes assets/voice_en/L.mp3 | Bin 0 -> 2304 bytes assets/voice_en/M.mp3 | Bin 0 -> 2925 bytes assets/voice_en/N.mp3 | Bin 0 -> 3069 bytes assets/voice_en/O.mp3 | Bin 0 -> 3069 bytes assets/voice_en/P.mp3 | Bin 0 -> 2637 bytes assets/voice_en/Q.mp3 | Bin 0 -> 3645 bytes assets/voice_en/R.mp3 | Bin 0 -> 3213 bytes assets/voice_en/S.mp3 | Bin 0 -> 3069 bytes assets/voice_en/T.mp3 | Bin 0 -> 2349 bytes assets/voice_en/U.mp3 | Bin 0 -> 3501 bytes assets/voice_en/V.mp3 | Bin 0 -> 2925 bytes assets/voice_en/W.mp3 | Bin 0 -> 3933 bytes assets/voice_en/X.mp3 | Bin 0 -> 3069 bytes assets/voice_en/Y.mp3 | Bin 0 -> 3357 bytes assets/voice_en/Z.mp3 | Bin 0 -> 3357 bytes lib/core/api.dart | 21 +++-- lib/core/response_model/patient_call.dart | 16 +++- lib/home/home_screen.dart | 31 ++++--- lib/home/home_screen_components.dart | 68 ++++++++------ lib/home/priority_calls.dart | 85 +++++++++++------- lib/utils/call_by_voice.dart | 4 +- macos/Flutter/GeneratedPluginRegistrant.swift | 2 + pubspec.lock | 34 ++++++- pubspec.yaml | 4 +- 36 files changed, 177 insertions(+), 90 deletions(-) create mode 100644 assets/voice_en/A.mp3 create mode 100644 assets/voice_en/B.mp3 create mode 100644 assets/voice_en/C.mp3 create mode 100644 assets/voice_en/D.mp3 create mode 100644 assets/voice_en/E.mp3 create mode 100644 assets/voice_en/F.mp3 create mode 100644 assets/voice_en/G.mp3 create mode 100644 assets/voice_en/H.mp3 create mode 100644 assets/voice_en/I.mp3 create mode 100644 assets/voice_en/J.mp3 create mode 100644 assets/voice_en/K.mp3 create mode 100644 assets/voice_en/L.mp3 create mode 100644 assets/voice_en/M.mp3 create mode 100644 assets/voice_en/N.mp3 create mode 100644 assets/voice_en/O.mp3 create mode 100644 assets/voice_en/P.mp3 create mode 100644 assets/voice_en/Q.mp3 create mode 100644 assets/voice_en/R.mp3 create mode 100644 assets/voice_en/S.mp3 create mode 100644 assets/voice_en/T.mp3 create mode 100644 assets/voice_en/U.mp3 create mode 100644 assets/voice_en/V.mp3 create mode 100644 assets/voice_en/W.mp3 create mode 100644 assets/voice_en/X.mp3 create mode 100644 assets/voice_en/Y.mp3 create mode 100644 assets/voice_en/Z.mp3 diff --git a/android/app/build.gradle b/android/app/build.gradle index 1d1f0af..d4f4f6e 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -45,7 +45,7 @@ android { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.queuing_system" minSdkVersion localProperties.getProperty('flutter.minSdkVersion').toInteger() - targetSdkVersion flutter.targetSdkVersion + targetSdkVersion localProperties.getProperty('flutter.targetSdkVersion').toInteger() versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/assets/voice_en/A.mp3 b/assets/voice_en/A.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..9e7c9baff426622e4e34e964675c644e303d2d21 GIT binary patch literal 3645 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/C.mp3 b/assets/voice_en/C.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..e339eea48c3c3b5a83145196cd194dad98a82d06 GIT binary patch literal 4221 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 Y|32`ZV~7Ve8K{>^?SH@B|GUF~0cK{cP5=M^ literal 0 HcmV?d00001 diff --git a/assets/voice_en/F.mp3 b/assets/voice_en/F.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..9e91029e30f580f44f51d1c0c0e749b3a8d15164 GIT binary patch literal 3789 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 XWpJLLhrbvp^L+d8{>vNxpKJdEte{yc literal 0 HcmV?d00001 diff --git a/assets/voice_en/G.mp3 b/assets/voice_en/G.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..6d466d99b504a96a0e79a0f388b117024ff932b2 GIT binary patch literal 3789 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 S61y0u^uT=n*UA5neE$LWCHnLL literal 0 HcmV?d00001 diff --git a/assets/voice_en/J.mp3 b/assets/voice_en/J.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..20c4c7d062818b4e60c274ce1ffbe77873a8ae6e GIT binary patch literal 4077 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/M.mp3 b/assets/voice_en/M.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..241ab72d74d42be9be52e593969d71a9f198e528 GIT binary patch literal 2925 zcmb`}`8(9x9{}*dBqC#-2BRk1wM-f`mNpvH7^5&_8DuScgbde`tQli(Mkor=m?0%g zbjuR5#?6`uMYu?^hsNhNegA{+bKgI_&kyH$-sg4R&v~BnHZ|4;gSeqUBoIt~tq>51 z5ARC$KS$=9P``Komw>e^tsoh3en}ov7oJ3obfRI)r(3Sn2eCZtSF)1sHZ3)hdRw%t6AKmPUay?l)XDVnNB3+S<{=eVhcU>WJOk1&EhHtQ0VBZ>5Nn>H3gmDyI}zG>}#ACxaID zqU?*~dSn!Wl$+~PTzHFQ0~5#(`6SZn-DCBEezCu>9=^+_c~XK|-5ARN|7QvECwFsT zdLiD~c-y^+EuKwIjR&n{)}Ory4fU%WuAcEH1shaP7Tn8am7Lt#&bspinq6-M9y;9F8TC$+%ay<}4*ZKN{oG_5* zJA?6b_?CXT5C-F} zKK06W<1iZQJhn5^`l5D2ouG4b=Is;RYm0LeSX%APxqqwAW*m-nOW+l zzf-@b#u-XFZ{24`Zv?g$Dx*s~mM<$FdlyvLU)S^K#h|zh7(oy|VyWfKU=78z3N%Ln z_fZ(N{BX>tz~B8jtd-oZ+#J7NT>^o8=|cED_y2KKSUb;Y@FhOF6fKEqqC^2ZZZvGp z_tsQQ-@@J!^sPi-xwWh1)v>D3h8x$kk0mu$Bza0oy&qeQIJx{SJ|b465L(uZ>y0jH zgZQ|Ut5y@t#Is$JV&M*nf+q( z#B#@Cj*MCrf*E#r5U^{gTYip_j&ByOV&ssi^SBElH=Kb#9RNI zO4XhGY3q#a&Y|9j-XIEvlw##e_VBS?>*e*PmAd6@O`-~~EzqJEX*O4^O|HGSIz>IG zqCwr$NlQX>qX9rv|N z`jY%>>3u2*Jqcu=!q&bE*j&RyYXXr>vxZvg@}KsIWF(<5om@b7QLPaT4+ZzJM-^WF;SDQ zSb~&f`bH)I?2w}jHq4`o8$9I)m%kkwLCN!;PI^`gh2Q zrG9%?9)5S31)IGlUaOyP&k1Fbo4JAtPVD#W9+`q+Ye2$9?;mq%NX4bKt!NmKbzhqtP(jZ zOe_gtN=aJ>{Z$FAX1my?jCzVst?*)N)Vxg^g`tAR#A$y!wpl|V9Iecc4m1uLTbDtOWc@p^6~B_5j5 zZFBpBJj1v)r%=NEo0dwXNqB#yyFq$M*}a^H@(MNZw<5wt4*&pV_V@-9FDaK(3U`%=E&DZ@y zjOj+8W`lQjbw0SqsVlA|olnjWXARzPl=?0=0AwfY)O0i)r-{1$yq4#c;vVsxf-yIb0Rb} z(rvTz9g|)WTM%s>TS@=?iME_O^0%Ej698EM9P@g{k1RNZ7}4}`D*Rq+)EOcr)tPm8 z#II~fpK1Nfk?V<<%}b+X_qVPW<~zdnose|b-MwAu`zG)r1~1#;-B97`85ibP>6n;B zA%M2j@7XJ-8GR*S!{NH!Ms_~Ffgzjz8kbfsFtYslQ}%<)PXyc2YWgu&>L zHr$3D5n`$5HEHRyto{zES@!SuF!Z`)qX9p2#pp9rpr%(>7;QH*KplQ3J%A4^so724 z$Jg~uYX--u%!zNfbRdD46f~GOcnb2I?oHQz%=MJX4HS5R+2F`wu$4f1`5m+QgJtfe z{VCa1K8X?gy@&BVGfsY;Cr54Tt*ywx;3LP!cLpPzyC--Nl|M}y+YgALRr&fLg5a)O zzOt(n3$KT98RpE;ZQE0u(c84N%qhA+lNA{oM2x-OHO*&mX1qH}qa#vYRf+TvmK$Vu zbREx>!h+wQR5E@Km*RS=hgkJv&e`|{Cp0cD}^(zY|PcWD488G3qX8!=C*=(C4Z znYdt2erp7PmAb6t37SrA!?unu@FT|cOUM9XrvMsrS;M1& literal 0 HcmV?d00001 diff --git a/assets/voice_en/N.mp3 b/assets/voice_en/N.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..07845a570401b998cf71ebcc260b961e833f8b59 GIT binary patch literal 3069 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/O.mp3 b/assets/voice_en/O.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..4489e28064d3e2fadad475ac839a9c6a5ee45f6b GIT binary patch literal 3069 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/P.mp3 b/assets/voice_en/P.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..8b05b1b30c33c003dc469e212f4c5879e4e6895d GIT binary patch literal 2637 zcmciEdpy(o9|!P_S>`&|#pe%P(5i0&^L!oJ9sP+4v~a_fnLd)GKj*VE#1_Qsbvr_%rP1G^x+54y8-O# z2YNpy=^CB{!SK8NLmbZ#+}j`3G7NZTr1q*S*sa}f7*zjiFCxmFiD#|&q*E-ZaCI3N z^NvIJpBCT>u?K5r@X4Q1nG1#p38>%a4@P(e<|pL+$MtOBq?2pmi!8uu9)anT+qZnS%>mtBHYN5b=xHf% z7<6|~yhv{HRgQBylDt*)jp$k>A!5kn7G>kh2W+*N29hjlZtYT$+sRB9=mUtb;VnTfVdVK0H@3%fbtBj)_Wk1tn;q$Q~+OFeKR-(;nD zVVaM}tI zHcvLz%%hFvz>*8A4wLS+ZwqDRjdy!S+w6@G-B!DLy*koZ?gbAWI>ebRkH7?}`rZXS z&7%cTo9BC%;|Cpyt{AaLNjFlx3O7Q;!mi9ua~LxXXTo)x?zA`BmUv;->+_O%`psBVqP96y_^Z}&dAQ*m1P1sn$5J9 z$>uWxFEN8B)QJUsUa+;8KjY;fR68k4kn&|pC!`~s=Cmw`OY6Zq#`xptQ$sFuF*0J0 zI!dLJNtmL3uAM~6-}Aw~NY?L&)JP3mhY#K^-MCorlah|X1Rp3IdXGhNEcsW>Ehz8i z+lK4Ho*ut-U9Lnf#{{8Z%DdVa2bH52xH)Gk`0$kdj80^CK3m}cJ1H3sI0D>Wzm~f+ zJ`oT=&woaaikeSk;rehd5AONaDPZY7 zd|{-#hPP^}S+p7IyC7SB&%*+C3uqJ=-TlJ!TF5jkWG*TPaWtirXkRIoLBQx}>fPv8 zcOFbtRXPWHz6SQ z8xVz_6`W~3z8L0_V}W~cX#DqIk25&eK*u90t3fM946k6ZLxokXN=gWGX{la_8}LJ9B*3rYInoAWcKlw zQ%RjXd;DnlVxZ3Or?{YByM8Y-3gI`5Z@VoT&}(*?T|SD?{}#jhIkhkH9p zQhW;4oIh4YBA-{au3--yb}v^_`7ujclyQ^l)tvk7(_&xyScjXa7P(Cv$u_fFt$ro zlaP#vO#|KVSwl#HVol_09?LI3Sh*3uL_R-*A_L<=x=Tl>R##jxnTx_cS`JEPfu|9Demxoh zM0|k%GXT_YYSll@C?+&Y44HUdknBKgqAwi!EIKCJvY&STotCeyzHet|Vs?LOEvS({RW;nYfPl#ItX!<5S0|n2gK0nL*uj zZ?VS@F*?X;@55CbECqniC@N^rb@4^KJYY&+N>O@LH{DPagk-WJvx5LO;> zQccRujt{!pM84Y8c8k&+qh+0T?)v*T;BO#kPW0;YZve0)_JkoWb~fEl#62N-PcFLn z<3|qQG{67Q+vTZqGfgEncs^UIUx#7qofO@C?@?vIs_EExT$6(#q36wU6&b}mDsM(< zA%(K`)@z0(O_txH-J~nLMim>Qe|cZCP0tuxAYX|)w%vuaXMZTVb=_PScyi)i{p`)1 zfwyCVHwC;Z=IuRw;FGEp@b538;bKp$w%K%5NAH_>K7u;z2-LFPl2+de{ z*xqv&SRK>1yTSlAF0S*1fv%|U6}3aQ3VD$pp#^pQE|^~`2hSBW9CbFUw6$Hg-U5;? z6K4>od*u`zKJ0aR*Pc$?H3h7CY+zl_;t?^zjw^Y-5^xdp*EL9NsXv)FV>S1@f>PS( zZ%Cwg!^9ps0w0jx{*c-&dOR73p0!vhNCKw*P)XntZW(0iIu7*cSJksyvsvC&F7m-X zX2ISL;oivS&%XdJ*UiDL=FfF);H~>J+;EAesp}Evcz9ud#$F|0Gb1}+7RIm70yS(w z_c?*m=~43GnY%QIMBI37j`vDSgI1eWMm?bLPx&BsT1()YBY;XG#GY#Hx9<}Q6R6$p zFFt9|;)-vmhb*ZZ5{n&A zIuENL14brr1*(S9{yCS`$H!-wh6UJGMa)Moms=z!D+`m#a&f_hq_Noz_GBiruE>PV z=1lB7lol^iy30=V`-Z`?JE4g^TvhOapmGgYM;fiQrxz6x@^dYTMDis#dAeALze~RV WV#J<#ZOWDqgc*DNFZTYws{a6>df_4f literal 0 HcmV?d00001 diff --git a/assets/voice_en/Q.mp3 b/assets/voice_en/Q.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..b19af4691a43cea1a04aea8f0c22c52b5c7ae3b0 GIT binary patch literal 3645 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 Qi)wk?2NAlptN;Jwe{H21Pyhe` literal 0 HcmV?d00001 diff --git a/assets/voice_en/R.mp3 b/assets/voice_en/R.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..06a7061a81dcab9406187c9b79e1544d5468ef9e GIT binary patch literal 3213 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/S.mp3 b/assets/voice_en/S.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..61cd779a499b2d1ff48318f28415551a7187480d GIT binary patch literal 3069 zcmciEXFS{69|!OtMq}?48hf=?QPj1g1Q)ep)d(?q%ipM=+SpOFMyeI1wyS6nyDqV5 zDAJN%Zf}j6p|sjm&ELPd|EK@Q_w(SK2j{`}{raBqIyRPT@tNWg4H9!^$o04IKP1=1pBXiVrLhzgL(>#4kqQ-|k;B5;WRADUZ)Gs?Sm-Bfpb`{o`G`;>>>hx1-1c2R3Txjr7>bH>?# zRE*4%AJ;xat3@gBT4xlO$x!cj{rM`?Z_U}81EbNSRJYE(~UXJ&- zwe{kpN1q)4KeI}0@R2puTS}q>KX6B3g;chb-J=wON^Ljc3&X>G9{+}_G_TKGl*8jq z=M>2qzDhH8>|NmomeRN?wE&(!^q zdOX-ri{TN3p&s;FC0KqPSFbJL+Lm};mH1e*`yP7@g*dqs55}4kIS3&Xf9^Vk0-=P~ z(6ElG3m;+3W_Gu1yIn_!g?qqMPF*Id*RAcArnYcvd9cAGwqj}>CcEfxu(L0DMgo9+ z)ouu?g4~*)9jy86_O0qrq;YtnDm9f!(sk~$Xo-z2s{$E%J2xucrCn+jU%6_ zt--~YkA?GXts_<{lX>+05oo0VHz}(C!2gD{B);DN*_{I)NZg_KdgT?qU(~$(mK>{* zR+SJ%mTX;DvjGmn-OuPi#MC$iYrnpq{?C3%g&DVm4_fW?6Kt;N)i@WdgEwYKT_`yZ zk#NBPL<_}xC7F-XCRdYH|9Ye9E|?SAOD5~dze2FMdL#m0k33XIm-iDYc(-emoQxee z-fKP3mp#XBT+NZ@NNoZ(;Wal6rAp#sO8ujmgTy^K43kr&LJy;1m{k6@U6zt?Uga+% z?Gkkw&DUmo_eF)@%zpHzN+Q(-?N5wCxF&iwfXd^WUdweuqZN`#Q&9!@ zO;;1@7;tuod?`2hsKWi`#l0t)9w&uPnK+PiLHZXhqtaim$51=X3zYYO!+4GqY%p-L z%eoEhPkiY2;4#i+hk-t0(RVOkCdU)|rjEJZJ{MznjGz{@YEX#1)co7QO#g3zS{ur2 zd4qB3WoQxqG{II5SgmM%%mmZ#)lvuZ+JU<>d!*sovc4Ukd9FcBXl@7PW(UPI+~y(I zT0+FurzYd@*QXA;Sm5{<iilMR z0^;^)yRpDVGNZXfoA&B(2%h=f^cyQTa7RH3FV_fW1{9C*>Mv?A7Q2F=I>6# zyC(QNCl_?t-lg$ONZKk-B>2E&p?3-8el+Z?+dc@*a4Xa*pI*qtUv~`(@*q5EZ;b_j zvlz5{@WTh+1bB{u7G;;?VsvI*RCX+=riXOgK(Z6U9e0bkb%Ei*KxN4*CjsCOSs;R) zNN-U-vBiRiR#F{#*~PuLf&4Zb9*{9}4cL8JyD6?w+LVqr_OO;JE-M*{_HdF%^Ei{- zNrxOAhCSLUJ5w2_9=>N2Rql5d(r(PtDbu$l-*uVKtn+tM-ajnNT~xpN{YcPV+5mC~ zxqq$*a~xldw_4K4r8FyQdTZBBEd6ue??JzgE}ZzMmE~Kz2K?x|;=g56Epm19qi;iA zmb?^K`jt;Lgf>em3)zn*+VDBH|FZGfL0fFYqH8uk;=uJ=p*2Zv`Ke~xN1fe6F*xM=b$v4_H1$AA6d zy`AD1q~Pi~QB)LX5NMsM7hbR7KElOQk+lC19M;)u*+e-*L9VKWPm|qeS(_Ky zIskwPR%7~{1%f`|D{o+UrllmOI;H(aE~XpfHR_xc5xp8=^58hI)T`60srh_DIrxEk zaMJ9F0*QK>Z#Eb(UScBy6Ogywh-dTe!vuI83lhzd`Kl#1(>;6UyB{in*U#rhuw55EXY`rj z`CCd(JwwwJ*XZJ>BjHssqoqWyqA`CK4h-YVA_#LJ1PPY)@jc?+N=AzS7veiSj+*pfUZH+rlD*W-FTE<2o|7)Tg(cQ-ey?Op~1 z0y_kq4>LM^;E?eF3>y8b`fmfQoa_QAgP(pQVfTrM!mY$WP;6={iJ*r-Bmlg5J|fYq z0;tx&;cVjL@A9$&ySDrI_e=pVA}bx(4ipNV79f(D%nCjNq0VFi-=Mp*c=G@p_#!O- zkH`Bp1}e9seaUqU=|pXD`B+EeIq< zh(^aLtGu5kyM~F+znM}aOYG!KvZ&-;GY}uG{VWx3JGks(yB5RL(c~wA+RJUvortoM zADH8dFFQM(O4w($f|Z4OeS?}ix4h7OgZU@xEhk@%6wt+ zgB$MBPb{3t<__GUK_H!3gk>m8FiU$~YtU$Kuadt5A&>hYeVa20Ne}K!e=gsX7Cj0L zBB)-Y!y;O|aONNC3n5vBQ1@(is97=9rGcQCt8A}wfp+OD&G+-2-|n8!c*!gsf3=6+ zUjurCHg*gjDl(G$Owsr|KJ1s6)9q;3h=S<{>AxGCH za#Kpt^kP%Zv3R-LN_x)}7T)bAbYgLg%c>YRV{m8heGCmWJhP@47A6@XQ!x4Oed#dD zxjj-_@tShkNl8WaLNr76i?M@*M!;`HLr?FtEPUP zd?V`6AT`OxwX$0hv@C@lY52MIT5GmL^n&zDJ1@eNVQ_0~N@E1WhscwpT2pWY9QE%bNPLq7AR!k?M#KL9BzV*euF`Pw`X-40c55 zQHFyVZ4cOD6{(5M(oGC!r*naQC|b;QuU8aImF`5ABC+12hx1YFooBIkGOyiaXJboA z&1Wa+sx+{gNB|vhi&4aZmfcXk=Bafd2kAEoBj%B)RIl8r*SaKcjJ5AOL`$4aYUTDX*CI z791E_5uC21Wjh82g$qFF;@n^hyPCfrcTZ-%6SHue#`zuSGDC~G+6Rjy80?(c{fRR= zT)RNa_aR#cMyx-CIuGuP7J5uz!w+uW=n-S}Lcm-;c{SXc<8eM*4uP6^oqHtCC{DZN zk3xVc!8eOV>TDZ+sLYM4M}^IPp&@x2{^A{pp&fxJ&|#OG)v{9G`uzemzUIj3`VFn4 zdn)&sMy^bhf1=&Ie84oeQbL`Synsp7rn)(vFybaa&gT6Y1ai>4B1LMQ?;D+vt;|!z z3O%;4-UsEE*tlH%Fd6Sh<>@FSK61-@L(o4_vAz9L*OyNdWM9)WlX*N#2i~rb657S6 zd!ryV?~ErNc1flg(9}{{HCFYAVb6(~5B511g&t3sl4$POu+-V;sh}@< zfMD{$cjvZ@mbAtQvBHm6-Ql}q8KQCFC2tfjQc>=+`o~l5Td&wr-<$kJ{ytk4ONeWt znrikEgIBVR-#qJ&l$xrBdgMI=3T&NiD?N-q1k;IU2G5(3GC5JlF@p}b8?D;l1cXWj zg)z2$S^(H;TuoYCT4p3f*&N@cD)dCchSw>xZ2Jq}FwpQn1fIxj6NY&)u`I>^RA^4b zI2-Sra@VywZ( z2|to%hv3W$uTTSiF(6D}Y3^X2CckDZtj8d`kv0DBs+wWUiBKUb|J4ZYWi2fsyN zb+d$?3ozgI)W?I_9c&A;YuF+&iChzxhl$kIGx2NCoP}1W@}mkE~xCTtwOU+mLoBBO)7I6&33Wva-6xm5WYm)y&17a%dhg;yVgGS78imKZjwlj$`v% z8O_&iwC=r3y8^R~(sp+8t4ZdLTsGHs=h*2rjuifh4EsSV9XlQ6GS;x+`WNmEOml;dQ8X{XE6l33svb(mBZDfmzq!_y_ zSt`=>DrIRM%uSf{Hut_?->>(4IOoIpKj-|ObI$+&Jm;LD3KN9h#BlcZM!!dH2!zqX zGtyU0Ltgz4c_l@~zi0pHz>W_IA~43b7lB1Wp!up$7z3R3*>^M=hGK%!xELVuXc*%s z%DbPsl=y@1p&#^NjQgRXJWPzI-W{IOZNKq5im{590g^Do`uu;vLx72K9m-fD0v2GJ z9`DdF2CgOU$JJ<7Mt+QU9T6%n*iDS(D> zM7d_M8I-I-(>Xj`2#0YPZ^o6V;=&WF4;}!ppU48Yt+`S2E8oj=E62ik_yB-)Qu5Qs zUa>AGw$*_GbGNe1*xl=0qV_`UrXTW5&nXtm5pE$~&^>Upy+f}1iU#EEwA!CfC*l4- zXW4j(3=By-&*PM&MjzJ{Pwt&dDUU9BU2#_(H0^x#m<`P^K)qm0D~t?64vo&p`{zbA zdicAx|A4kXHQ+_WuFl}PTA$pt^2+v7(Ygu%E(8GZX-Dr_+_;U$KWxgNenwwdOdvp)isjj8wxTg~jF-Av-%YK?}%-Zh{Am%ZN;|AGmB~J0F z6Qn~yBz82XVfMlr6qorSzO;XmC^(iFp6 zcbn-RUUc6?i}2W@Pz2xTcsD=aduNOTH6%st^rkNo_n|FPtw@AX{J6){S>IH@GaB(X z9C@-o*n@*_QE2lW6|GI>fgfkUo@AQZ*2O1h?SfnM4AN705~VPV45I+hf&@O=5~x^9 zosuEijg%SPzrcRxrB5Z7^QU^XBGIy9z5Wcv3Ii;L==+(`vqaoK9+ino+zZ21?(pTS zjP8_aH7>XCipi3SZeB@Voki|oid^9~(EN1m=g6|-ylEo)q!`k#8@zdAdpfsqP;5C- zHczq8h;_2bXk+Y5Hz{B$$jlD$K&h(s*m5)ZEdZ3-epm?DD5T{132)#YfW2!{#%#>3 zS0Ip#`J-y2>!?(E>RjEWcS)XxUUUyaWamjUb;5A9rr;slBo>t_fo8_JYC0bK)Ppap z3;O^q@y(!BPgt1h?6v(sea_*VP2ko?uaA*$A3Pv0XiRS;IUDDcY6H_dCt0edLrfgP z@ilHun&V($jWZWa0dUam)~gOwnn-zAr#WA)uy_lW=u=>q9|>exFOFxB@(OGlg8)Y zv7jLk88Po;cP?DPVa~-8SN0fuDfh)yL;$Lx+y)tdBUHic04;qBd+Y2vQ~dk<(hNy( zCourVRE(CeVI1)`bmcdLXx(AIKTAtyLVR|i} z%_2;K^`d(kUdn|^#bt!%WM!?a;mge{9UO}I>#}CfmW@3yu~9p0b>FkonVWWDuo?9Q zd7nw{zu)bbMR0UNtPCvG~F6dJO5 z-;Xc2?p}uUk}hgLIk776ZnM;tFh`MaVVlOCgn4Xsd`-nzbK<3g6ctRrB0A(eXmjXq)TqAw*+ntV9&=4{7#kD zqwvcr^S5^GW$o~OIAghI*$Khk{rGr>W1*tki(zFZ3C%C?g2T@FL!C~81=c!QX8oh~6y_h#JdX(C8vsFDSL!+G9!pf; za;L+fS%vqX)&mpxLO@H!uKX@y^VWd661+EAn&}vw{G2ymfQ!lGWbgt9RAyFTQsw3G5=>ZyYU>b@Rlnj%ri8!q-A$0fRlPK57!`27f(%|l#f@+4 z>pRV+!ju&2ghtN!3t#nxk(~5Ca(Wq<=}R+Z4c@IgDd;Mw$(Gs>$WtIvB`VF}5&pB_ z(T3cY2)8vgV=Z{yvIRyT#_6%iP9;S4BN{z@V&}mAIEhcn&jgDgVy+UCpds&31VBC# zxb{f>_)rZtokQ;KxX|C{6E4Kgp1m~59<_LOcfQv}vNO(>FK6 ztO_58IFgO5Tux{4OPN4lE=1fhKoiGJ2e~C;P<;kZhh+sifat!Js*S83SS*im(Vxo6 z8>h8i8vt`}+5qrY;sCp~>wO&+dN}evQFGo`R-E@7n&ONUTfl4y4q!7Ci{9G)#YBoJ!o2*`Is|R*fRD@Xj4%ixy52?jZ_Y|NgTgh=R%%W7UtT{9p z31VX=ErTi+?x$(^G+o|7iU&=~+NMMS})MX>3kZD!oulN4xmb^Oz)sTH>0YI+i5b)jnbeQsZPehIniwo0|_PJJ1m2L}unI?nsUGe)F?0)Hfzt=Dufs*x$ zryT0LEr%OM;Ty6$^`-M-&zmemPM&*;!Bf-yd+?4&{r>;KV)rX16068zwW2Olqfs^w z!-3yHEZORB532T-Dr}ylL-vzTIeYHN7O!>M(RQC$vAt-yol|xw#JacW`6~jB zY?KK5C{dxN1kpFom7Jf7Z8#n9HPm}yUgk(vKEip}mF-ErVDyEUKC2Ly9pknNdWi%P1Y-1^8 zNsT3B%T8rWPkB;GWsTAFeVga`6W;g!;hZ1Nb+jf zkO0;v>Y{;>Hp)<2PgnP!)qe+Io!AYMcNYSIysa`dB#^7HOXgC2%>Bg4PA=nEd0(+Q)8CLQAX!0b;%u08Yff?k}b(F%*Ou`nf`?@Uw>Q zsJZ2H%RGaio*Hm>~5U4iM9z-od0%foJg3V9u&(1f#@dEo}P)&MfcZE zTnHNC7N`H{%1`8&S6sJLP&pdDw6z35Qd8Rjpl=S5EW^FIp$4U1_+4&tm|SuX5(nb% zT(apUD=umBxkt73YBkO7R^KI8FPCbPrxN4QwDm;(&su`%ec3u@JP%T(p{eX#7Zhb@ zx*}vj$qYQ059>3idRQK~bhU*w5A3iP5Kc*m@aZUn>bm3}hu@66uhfmuU4Jn#j*Y^@ z^r(}NDu-WzPCcevhs8b366!A`1l2oS@zfh`pBK8WW9w;y<7(AJjDMR(N`HDHUEQd& z_xa(jh#Mn$pkM%SZ)^`C@{58!nowq+cpfQ4IEQsE(;hDUspONgeNewznyg#elnAI_ z{K5qV{gU|qkPQW25=RV5^a?yL_zGokycgC3*Q2F5zPA(`lK zVfO9_{@!`89PDQ~0Q=5QJ#{=wXWT2(cttJan%0^?kHNyWLw-w1&$rQmn8R+_;`tf& zAJ4tjcyD*TuSQBvz5YFlk{HiFEYPawCi9S>iEw>E^7E{^{5+fJ>ll_&n|S-ssZ zKQR>N(=ymrYL&Deae>8OQ!w6a#hjbwl%-DC6b;O#Ow%M4pBh+n%gf^i<)Fhne(6y+dw`Q%={2NxA^rOmErKIr5GdE-z4oJK!(AMqIF4T z%J9?QONt8r^ct{SX5qH9d+~v-zqzsPxNEz5s@A{tqL>f=p6Gr?MhxaQ8X;dotrpS# z^L0xN>04PT)wN|mKCki{{#Y|yZ~wu0(>3!2>*$Tu!Ue1!@dP&=8qPH}X9O)?HI1oJ z7JQquyp^K)=BShxWCb9;=^LJ-0Gk?!Zd{wz1cMv2-+LqywJh)MLr&(9r;4CcAkm4@ zJSvc}A2I!8b*@Mp*oPCMEO7$YE9k1g0A=G^suOG00JK<=k+m zSE$1I@j zpD3M(O7)eN6Dnz_&tS)pmLBT~BO94}@(yEc=WN)0u%zi$ouln^{&p`VJp|||Zg3(c ztML7l*(W7srm<0RgF{z7<1MHf+0j&ndQH;Krg;kwFS7sXA0;$}g?kR3yCLS96C$Xj zlFe!eHa!?O;f;UWP9i4RcvQXU25yR1J+Lg%vn0=!!4n)w(1gMskz>c}i(|g8RpZN? zqnbiymnZdGe6Zoizoa{=Q)>Nwugl#MwtIi`*N;@S2d8U~)t_W`h}{x2cJ#5z2C2@y zm51`V#@J_q9-G9GbAl$j2E)}Cc%J==P6Mpij_&#Befg{OnAy@w&`=i=?FJ?DWf7u> zsw!=wV+!+e5)RJEg%zPV*-$})kewIG$n>W3z!dkardb4T7(JZ_0O!M8U~}!jPv$^1 za9uUZ*@~v>a@G8+v$6nHx^fxRcw&2R647&lK8e&^Mge90; zQEBcxk1Bk*jM>yrpE?{*h?mwL)iVMrJn#$`EPB>ar0|1lm z@Us?OeY^cHJvgXb8Ha0+m^RLefJtF2oqX{C|2+@nV*zBTdR+$_v~LfxC~j}$NVVQy zewg@FiN-~GaB!7TKr<_-DVU`EY<0F-{p$GTQ@(HXOH66}O_FPEJkK$BN?TFv^X|*g zRDWwB=(4WVkj865ZH+Mzti=ETw?t@sVioFGR3;%67;bbe3)s)kHxbjMMfzg{##M3qPXDKVLfU&hGvMnR~x(R_Ef#` zG%fUYx@@YbYAi2WNndF`hpJ3ZJ0cq&5BR71voEda!*F*Nw$xiJdXMe{09%?|s%7|- z&whF`rNGlzp2tPu%M9Z{CnYOTYVtvV24mq*=3Fjo&E?1$MfKyOT|46L{3I(c2PUMSWJdAFmI@VF*F|1;)VT4r_EMV7D4=ZA2${Wfk`GC) z%rW2|GRl0^ivk>e4!Oa433YYDqwo1n0220gVPc1GW5V{0{kak-KeaZ+^N`?A>$79~ z6GQLKtLPr}ZJTMtSAfLF2!7zZF$3<*?o@yC&VC(juO|){ujLKG&me~_eN@&6)tTCR zR;2~??KAIgh4=JmA*@61<3JhVV*50lp1_B-4md}K0Kk{5f;)ez;q2PXb@RuTfMxYk zWGt0909Q4M?IDp|BwEualmlu;jq+2+KVVaMo@j+@ZRxQc1JrU-AzfQ#E~Li&Z&+(h zYFm2mbVR&{uEEV#molyB`H-BQrC+}5ZcMaAm_Y8fOK`Hjcec4}ZIaflfG+?*bXyaz@f@G2-6LXcp+8G&$K9yD>JgHq{4x zx7d~QX3a&?tHGY13GRW6ofbbU@eM5|-E`-3vD9>SPx@avs=%6c*6;g+ zMk0HJBLwZjCN@XDa%NG6YB2BKGN3Z$;dV;ZdH+I!m2t^H>0Zmt6k()#oVL#go`Na>wgHIr$Hg%wm3flJoi7G^Z(lVUrztKz5oCK literal 0 HcmV?d00001 diff --git a/assets/voice_en/W.mp3 b/assets/voice_en/W.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..a0b575afc730e111939b7ad03a4e8bba449ab844 GIT binary patch literal 3933 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 literal 0 HcmV?d00001 diff --git a/assets/voice_en/X.mp3 b/assets/voice_en/X.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..3f4ae66746a09dc9e497f25ceebc1f5d05d1f0f3 GIT binary patch literal 3069 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 b9S0i!8~^|I1fTssu2Q}m|NL?MPvXA;?Xf@6 literal 0 HcmV?d00001 diff --git a/lib/core/api.dart b/lib/core/api.dart index 4f9c756..b4b61c5 100644 --- a/lib/core/api.dart +++ b/lib/core/api.dart @@ -13,13 +13,19 @@ class API { onSuccess: (response, status) { if (status == 200) { var calledByNurse = (response["CalledByNurse"] as List).map((j) => Tickets.fromJson(j)).toList(); + print("calledByNurse Length: ${calledByNurse.length}"); + final patients = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); + print("patients Length: ${patients.length}"); calledByNurse.addAll(patients); - calledByNurse.sort((a, b) => a.callNo.compareTo(b.callNo)); + + + + // calledByNurse.sort((a, b) => a.callNo.compareTo(b.callNo)); // final clinicCurrentPatient = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); - onSuccess(calledByNurse); + onSuccess(calledByNurse.reversed.toList()); } else { onFailure(response); } @@ -27,26 +33,25 @@ class API { onFailure: (error, status) => onFailure(error)); } - static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required List tickets, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { - if (tickets.isEmpty) { + static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required Tickets ticket, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { + if (ticket.id == null) { return; } List _ticketsUpdated = []; - for (var ticket in tickets) { - final body = {"CallID": ticket.callNo}; + // for (var ticket in tickets) { + final body = {"CallID": ticket.id}; await BaseAppClient.post(_call_UpdateNotIsQueueRecordByIDAsync, body: body, onSuccess: (response, status) { - print("response: $response"); if (status == 200) { ticket.call_updated = true; _ticketsUpdated.add(ticket); } }, onFailure: (error, status) => onFailure(error)); - } + // } if (_ticketsUpdated.isNotEmpty) { onSuccess(_ticketsUpdated); diff --git a/lib/core/response_model/patient_call.dart b/lib/core/response_model/patient_call.dart index ff913fa..435dcf6 100644 --- a/lib/core/response_model/patient_call.dart +++ b/lib/core/response_model/patient_call.dart @@ -1,4 +1,3 @@ - import 'package:queuing_system/utils/call_type.dart'; class Tickets { @@ -13,10 +12,20 @@ class Tickets { this.mobileNo, this.patientGender, this.patientID, + this.callNoStr, this.queueNo, }); + String getParsedDateTime(String date) { + print("gotDate: $date"); + DateTime dateTime = DateTime.parse(date); + + + } + Tickets.fromJson(dynamic json) { + print("here json: $json"); + id = json['ID']; callNo = json['CallNo']; roomNo = json['RoomNo']; callType = json['callType']; @@ -28,8 +37,10 @@ class Tickets { patientGender = json['PatientGender']; patientID = json['PatientID']; queueNo = json['QueueNo']; + callNoStr = json['CallNoStr'] ?? json['CallNo'].toString(); } + int id; int callNo; String roomNo; int callType; @@ -41,10 +52,12 @@ class Tickets { int patientGender; int patientID; String queueNo; + String callNoStr; bool call_updated = false; Map toJson() { final map = {}; + map['ID'] = id; map['CallNo'] = callNo; map['RoomNo'] = roomNo; map['callType'] = callType; @@ -55,6 +68,7 @@ class Tickets { map['MobileNo'] = mobileNo; map['PatientGender'] = patientGender; map['PatientID'] = patientID; + map['CallNoStr'] = callNoStr; map['QueueNo'] = queueNo; return map; } diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 2ccf9f6..04aa2e8 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -14,8 +14,9 @@ import 'package:queuing_system/utils/call_type.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:text_to_speech/text_to_speech.dart'; -var DEVICE_IP = "10.10.14.11"; // Testing IP +var DEVICE_IP = "10.10.15.11"; // Testing IP // var DEVICE_IP = "10.10.14.11"; // Testing IP // var DEVICE_IP = "10.10.15.11"; @@ -44,6 +45,7 @@ class _MyHomePageState extends State { @override void initState() { listenNetworkConnectivity(); + if (!signalRHelper.getConnectionState()) { signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); } @@ -53,6 +55,7 @@ class _MyHomePageState extends State { TextEditingController controller = TextEditingController(); + @override Widget build(BuildContext context) { return AppScaffold( @@ -150,13 +153,20 @@ class _MyHomePageState extends State { voiceCall() async { if (waitings.isNotEmpty && voiceCaller == null) { final postVoice = waitings.first.getCallType().audio('en'); - voiceCaller = CallByVoice(waitings.first.callNo.toString(), preVoice: 'ticket_number.mp3', postVoice: postVoice, lang: 'en'); + voiceCaller = CallByVoice(waitings.first.callNoStr.toString(), preVoice: 'ticket_number.mp3', postVoice: postVoice, lang: 'en'); await voiceCaller.start(); voiceCaller = null; } } + printWaiting() { + for (var value in waitings) { + print("waiting: ${value.callNoStr}"); + } + } + onUpdateAvailable(data) async { + waitings.clear(); API.GetCallRequestInfoByClinincInfo(DEVICE_IP, onSuccess: (waitingCalls) { setState(() { waitings = waitingCalls; @@ -166,7 +176,8 @@ class _MyHomePageState extends State { log("\n\n"); log("--------------------"); // log("Current: $currentInClinic"); - log("Waiting: $waitingCalls"); + // log("Waiting: $waitingCalls"); + printWaiting(); log("--------------------"); log("\n\n"); @@ -175,12 +186,12 @@ class _MyHomePageState extends State { } updateTickets() { - List _ticketsToUpdate = waitings.where((t) => t.call_updated == false).toList(); - API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, tickets: _ticketsToUpdate, onSuccess: (tickets_updated) { - print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); - }, onFailure: (e) { - print("API UPDate Tickets Failed with : ${e.toString()}"); - }); + // List _ticketsToUpdate = waitings.where((t) => t.call_updated == false).toList(); + // API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, ticket: _ticketsToUpdate.first, onSuccess: (tickets_updated) { + // print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); + // }, onFailure: (e) { + // print("API UPDate Tickets Failed with : ${e.toString()}"); + // }); } onConnect() { @@ -189,7 +200,7 @@ class _MyHomePageState extends State { onDisconnect(exception) { log("SignalR: onDisconnect"); - signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); + // signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); } onConnecting() { diff --git a/lib/home/home_screen_components.dart b/lib/home/home_screen_components.dart index 3e697e6..3f3408f 100644 --- a/lib/home/home_screen_components.dart +++ b/lib/home/home_screen_components.dart @@ -1,74 +1,84 @@ - import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:flutter_svg/svg.dart'; -import 'package:queuing_system/core/config/config.dart'; import 'package:queuing_system/core/config/size_config.dart'; import 'package:queuing_system/core/response_model/patient_call.dart'; import 'package:queuing_system/home/priority_calls.dart'; import 'package:queuing_system/utils/call_type.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; -Widget noPatientInQueue(){ +Widget noPatientInQueue() { return Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Center( - child: AppText("Awaiting Patients Arrival", - fontFamily: 'Poppins-SemiBold.ttf', - fontSize: SizeConfig.getWidthMultiplier() * 9), + child: AppText("Awaiting Patients Arrival", fontFamily: 'Poppins-SemiBold.ttf', fontSize: SizeConfig.getWidthMultiplier() * 9), ), ], ); } -Widget priorityTickets(List tickets){ +Widget priorityTickets(List tickets) { return PriorityTickets(tickets); } - - -Widget priorityTicketsWithSideList(List tickets){ - final priorityTickets = tickets.sublist(0,3); - final otherTickets = tickets.sublist(3,tickets.length); +Widget priorityTicketsWithSideList(List tickets) { + final priorityTickets = tickets.sublist(0, 3); + final otherTickets = tickets.sublist(3, tickets.length); return Row( children: [ - Expanded( - flex: 3, - child: PriorityTickets(priorityTickets) - ), - Container(color: Colors.grey.withOpacity(0.1), width: 10, margin: const EdgeInsets.symmetric(horizontal: 20, vertical: 50)), + Expanded(flex: 2, child: PriorityTickets(priorityTickets)), + Container(color: Colors.grey.withOpacity(0.1), width: 10, margin: const EdgeInsets.symmetric(horizontal: 10, vertical: 50)), Expanded( flex: 2, child: ListView.builder( padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 50), itemCount: otherTickets.length, - itemBuilder: (ctx,idx){ - + itemBuilder: (ctx, idx) { final itm = otherTickets[idx]; - return ListTile( - contentPadding: const EdgeInsets.all(8), - title: Row( + return Padding( + padding: const EdgeInsets.all(8), + child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ SizedBox( - width: 140, + width: SizeConfig.getWidthMultiplier() * 13, child: AppText( - itm.callNo.toString(), + itm.callNoStr.toString(), letterSpacing: -2.32, fontWeight: FontWeight.bold, - fontSize: SizeConfig.getWidthMultiplier() * 5, + fontSize: SizeConfig.getWidthMultiplier() * 4.5, textAlign: TextAlign.end, ), ), + const SizedBox(width: 10), Row( crossAxisAlignment: CrossAxisAlignment.end, children: [ - itm.getCallType().icon(SizeConfig.getHeightMultiplier()*2.5), + SizedBox( + width: SizeConfig.getWidthMultiplier() * 3.3, + child: itm.getCallType().icon(SizeConfig.getHeightMultiplier() * 2.5), + ), const SizedBox(width: 10), + SizedBox( + width: SizeConfig.getWidthMultiplier() * 29, + child: AppText( + itm.getCallType().message('en'), + color: itm.getCallType().color(), + letterSpacing: -1.5, + fontSize: SizeConfig.getWidthMultiplier() * 3.3, + fontWeight: FontWeight.w600, + fontHeight: 0.5, + ), + ), + Container( + color: Colors.grey.withOpacity(0.3), + width: 6, + height: SizeConfig.getHeightMultiplier() * 3, + margin: const EdgeInsets.symmetric(horizontal: 10), + ), AppText( - itm.getCallType().message('en'), + "Room: ${itm.roomNo}", color: itm.getCallType().color(), letterSpacing: -1.5, fontSize: SizeConfig.getWidthMultiplier() * 3.3, @@ -85,4 +95,4 @@ Widget priorityTicketsWithSideList(List tickets){ ) ], ); -} \ No newline at end of file +} diff --git a/lib/home/priority_calls.dart b/lib/home/priority_calls.dart index 18b8695..35ae16b 100644 --- a/lib/home/priority_calls.dart +++ b/lib/home/priority_calls.dart @@ -1,10 +1,7 @@ import 'package:blinking_text/blinking_text.dart'; import 'package:flutter/material.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/core/response_model/patient_call.dart'; -import 'package:queuing_system/home/que_item/que_item.dart'; import 'package:queuing_system/utils/call_type.dart'; import 'package:queuing_system/widget/data_display/app_texts_widget.dart'; @@ -15,61 +12,67 @@ class PriorityTickets extends StatelessWidget { @override Widget build(BuildContext context) { - final firstTicket = tickets[0]; - final otherTickets = tickets.sublist(1,tickets.length); + final otherTickets = tickets.sublist(1, tickets.length); return Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: [ - - vTicketItem(ticketNo: "${firstTicket.callNo ?? ''}", callType: firstTicket.getCallType(), scale: 1.2, blink: true), - - const SizedBox(height: 100), - - if(tickets.length > 1) - ...[ - SizedBox(height: SizeConfig.getHeightMultiplier()*1.5), - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: otherTickets.map((ticket) => vTicketItem(ticketNo: "${ticket.callNo ?? ''}", callType: ticket.getCallType(), scale: 0.8)).toList(), - ) - ] + const SizedBox(height: 20), + vTicketItem( + ticketNo: firstTicket.callNoStr ?? '', + callType: firstTicket.getCallType(), + scale: 1, + blink: true, + roomNo: firstTicket.roomNo, + ), + const SizedBox(height: 40), + if (tickets.length > 1) ...[ + SizedBox(height: SizeConfig.getHeightMultiplier() * 1.5), + Column( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: otherTickets + .map((ticket) => Padding( + padding: EdgeInsets.only(top: SizeConfig.getHeightMultiplier() * 2), + child: vTicketItem( + ticketNo: ticket.callNoStr ?? '', + callType: ticket.getCallType(), + scale: 0.7, + roomNo: ticket.roomNo, + ), + )) + .toList(), + ) + ] ], ); } } -class vTicketItem extends StatelessWidget{ +class vTicketItem extends StatelessWidget { final String ticketNo; + final String roomNo; final CallType callType; final bool blink; final double scale; - vTicketItem({@required this.ticketNo, @required this.callType, this.scale, this.blink = false}); + + const vTicketItem({@required this.ticketNo, @required this.roomNo, @required this.callType, this.scale, this.blink = false}); @override Widget build(BuildContext context) { - return Transform.scale( scale: scale, child: Column( crossAxisAlignment: CrossAxisAlignment.center, children: [ - BlinkText( - ticketNo, - style: TextStyle( - fontSize: SizeConfig.getWidthMultiplier() * 16, - letterSpacing: -9.32, - height: 0.5, - fontWeight: FontWeight.bold - ), + BlinkText(ticketNo, + style: TextStyle(fontSize: SizeConfig.getWidthMultiplier() * 10, letterSpacing: -9.32, height: 0.5, fontWeight: FontWeight.bold), beginColor: Colors.black, endColor: blink ? Colors.black.withOpacity(0.1) : Colors.black, // endColor: blink ? AppGlobal.appRedColor : Colors.black, times: 0, - duration: const Duration(seconds: 1) - ), + duration: const Duration(seconds: 1)), // AppText( // ticketNo, // letterSpacing: -9.32, @@ -77,18 +80,32 @@ class vTicketItem extends StatelessWidget{ // fontWeight: FontWeight.bold, // fontHeight: 0.7, // ), - + const SizedBox(height: 10), Row( crossAxisAlignment: CrossAxisAlignment.end, mainAxisAlignment: MainAxisAlignment.center, children: [ - callType.icon(SizeConfig.getHeightMultiplier()*2.5), + callType.icon(SizeConfig.getHeightMultiplier() * 3), const SizedBox(width: 10), AppText( callType.message('en'), color: callType.color(), letterSpacing: -1.5, - fontSize: SizeConfig.getWidthMultiplier() * 3.3, + fontSize: SizeConfig.getWidthMultiplier() * 3.8, + fontWeight: FontWeight.w600, + fontHeight: 0.5, + ), + Container( + color: Colors.grey.withOpacity(0.3), + width: 6, + height: SizeConfig.getHeightMultiplier() * 3, + margin: const EdgeInsets.symmetric(horizontal: 10), + ), + AppText( + "Room: $roomNo", + color: callType.color(), + letterSpacing: -1.5, + fontSize: SizeConfig.getWidthMultiplier() * 3.8, fontWeight: FontWeight.w600, fontHeight: 0.5, ), diff --git a/lib/utils/call_by_voice.dart b/lib/utils/call_by_voice.dart index d58ec61..557d3f6 100644 --- a/lib/utils/call_by_voice.dart +++ b/lib/utils/call_by_voice.dart @@ -22,11 +22,11 @@ class CallByVoice { final characters = ticketNo.characters.toList(); for (int i = 0; i < characters.length; i++) { final no = characters[i]; - if (no.isNotEmpty) { + if (no.isNotEmpty && no != "-" && no != "_" && no != " ") { await Future.delayed(const Duration(milliseconds: 200)); await _player.stop(); - await _player.setAsset('assets/voice_$lang/$no.mp3'); + await _player.setAsset('assets/voice_$lang/${no.toUpperCase()}.mp3'); await _player.play(); } } diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index f7ea4ff..1d5268d 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -9,10 +9,12 @@ import audio_session import connectivity_macos import just_audio import path_provider_macos +import text_to_speech_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin")) JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) + TextToSpeechMacOsPlugin.register(with: registry.registrar(forPlugin: "TextToSpeechMacOsPlugin")) } diff --git a/pubspec.lock b/pubspec.lock index 8b284a7..c94731a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -14,7 +14,7 @@ packages: name: audio_session url: "https://pub.dartlang.org" source: hosted - version: "0.1.10" + version: "0.1.13" blinking_text: dependency: "direct main" description: @@ -190,7 +190,7 @@ packages: name: just_audio url: "https://pub.dartlang.org" source: hosted - version: "0.9.30" + version: "0.9.31" just_audio_platform_interface: dependency: transitive description: @@ -365,7 +365,7 @@ packages: name: rxdart url: "https://pub.dartlang.org" source: hosted - version: "0.27.5" + version: "0.27.7" signalr_core: dependency: "direct main" description: @@ -427,6 +427,34 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.4.12" + text_to_speech: + dependency: "direct main" + description: + name: text_to_speech + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.3" + text_to_speech_macos: + dependency: transitive + description: + name: text_to_speech_macos + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1" + text_to_speech_platform_interface: + dependency: transitive + description: + name: text_to_speech_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3" + text_to_speech_web: + dependency: transitive + description: + name: text_to_speech_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.2" tuple: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 26354ae..0e196ae 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -39,8 +39,8 @@ dependencies: flutter_svg: ^1.0.3 http: ^0.13.0 blinking_text: ^1.0.2 - - just_audio: ^0.9.29 + just_audio: ^0.9.31 + text_to_speech: ^0.2.3 #signalr core signalr_core: ^1.1.1 From c9f978f0eb6823f2339c25f2bd98945063fb4d7d Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Wed, 18 Jan 2023 10:27:50 +0300 Subject: [PATCH 26/26] Pushing till working demo --- lib/core/api.dart | 15 ++-- lib/core/response_model/patient_call.dart | 16 ++--- lib/home/home_screen.dart | 70 +++++++++++++------ lib/utils/call_by_voice.dart | 70 +++++++++++-------- macos/Flutter/GeneratedPluginRegistrant.swift | 4 +- pubspec.lock | 35 ++-------- pubspec.yaml | 2 +- .../flutter/generated_plugin_registrant.cc | 3 + windows/flutter/generated_plugins.cmake | 1 + 9 files changed, 119 insertions(+), 97 deletions(-) diff --git a/lib/core/api.dart b/lib/core/api.dart index b4b61c5..e64c53d 100644 --- a/lib/core/api.dart +++ b/lib/core/api.dart @@ -1,3 +1,5 @@ +import 'dart:developer'; + import 'package:flutter/cupertino.dart'; import 'package:queuing_system/core/base/base_app_client.dart'; import 'package:queuing_system/core/response_model/patient_call.dart'; @@ -6,25 +8,22 @@ const _getCallRequestInfoByClinicInfo = "/GetCallRequestInfoByClinincInfo"; const _call_UpdateNotIsQueueRecordByIDAsync = "/Call_UpdateNotIsQueueRecordByID"; class API { - static GetCallRequestInfoByClinincInfo(String deviceIp, {@required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { + static getCallRequestInfoByClinicInfo(String deviceIp, {@required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { final body = {"IPAdress": deviceIp}; BaseAppClient.post(_getCallRequestInfoByClinicInfo, body: body, onSuccess: (response, status) { if (status == 200) { var calledByNurse = (response["CalledByNurse"] as List).map((j) => Tickets.fromJson(j)).toList(); - print("calledByNurse Length: ${calledByNurse.length}"); + log("calledByNurse Length: ${calledByNurse.length}"); final patients = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); - print("patients Length: ${patients.length}"); + log("patients Length: ${patients.length}"); calledByNurse.addAll(patients); - - // calledByNurse.sort((a, b) => a.callNo.compareTo(b.callNo)); - // final clinicCurrentPatient = (response["ClinicCurrentPatient"] as List).map((j) => Tickets.fromJson(j)).toList(); onSuccess(calledByNurse.reversed.toList()); } else { onFailure(response); @@ -33,7 +32,7 @@ class API { onFailure: (error, status) => onFailure(error)); } - static Call_UpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required Tickets ticket, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { + static callUpdateNotIsQueueRecordByIDAsync(String deviceIp, {@required Tickets ticket, @required Function(List) onSuccess, @required Function(dynamic) onFailure}) async { if (ticket.id == null) { return; } @@ -46,7 +45,7 @@ class API { body: body, onSuccess: (response, status) { if (status == 200) { - ticket.call_updated = true; + ticket.callUpdated = true; _ticketsUpdated.add(ticket); } }, diff --git a/lib/core/response_model/patient_call.dart b/lib/core/response_model/patient_call.dart index 435dcf6..dc1332b 100644 --- a/lib/core/response_model/patient_call.dart +++ b/lib/core/response_model/patient_call.dart @@ -1,3 +1,5 @@ +import 'dart:math'; + import 'package:queuing_system/utils/call_type.dart'; class Tickets { @@ -16,15 +18,11 @@ class Tickets { this.queueNo, }); - String getParsedDateTime(String date) { - print("gotDate: $date"); - DateTime dateTime = DateTime.parse(date); - - + int getRandomNum() { + return Random().nextInt(1); } Tickets.fromJson(dynamic json) { - print("here json: $json"); id = json['ID']; callNo = json['CallNo']; roomNo = json['RoomNo']; @@ -38,6 +36,7 @@ class Tickets { patientID = json['PatientID']; queueNo = json['QueueNo']; callNoStr = json['CallNoStr'] ?? json['CallNo'].toString(); + isAcknowledged = getRandomNum(); } int id; @@ -53,7 +52,8 @@ class Tickets { int patientID; String queueNo; String callNoStr; - bool call_updated = false; + bool callUpdated = false; + int isAcknowledged; Map toJson() { final map = {}; @@ -75,7 +75,7 @@ class Tickets { @override String toString() { - return (callNo).toString(); + return (callNoStr).toString(); } CallType getCallType() { diff --git a/lib/home/home_screen.dart b/lib/home/home_screen.dart index 04aa2e8..fc03b41 100644 --- a/lib/home/home_screen.dart +++ b/lib/home/home_screen.dart @@ -14,7 +14,6 @@ import 'package:queuing_system/utils/call_type.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:text_to_speech/text_to_speech.dart'; var DEVICE_IP = "10.10.15.11"; // Testing IP // var DEVICE_IP = "10.10.14.11"; // Testing IP @@ -55,7 +54,6 @@ class _MyHomePageState extends State { TextEditingController controller = TextEditingController(); - @override Widget build(BuildContext context) { return AppScaffold( @@ -148,26 +146,58 @@ class _MyHomePageState extends State { } } + String getCallTypeText(Tickets ticket) { + final callType = ticket.getCallType(); + switch (callType) { + case CallType.RECEPTION: + return "Please Visit Doctor"; + break; + case CallType.NURSE: + return "Please Visit Nurse"; + break; + case CallType.DOCTOR: + return "Please Visit Doctor"; + break; + case CallType.NONE: + return ""; + break; + default: + return ""; + } + } + CallByVoice voiceCaller; voiceCall() async { + var j = { + "ID": 4182, + "PatientID": 123123, + "MobileNo": "05***6794", + "DoctorName": "Shakiera", + "DoctorNameN": "Shakeria", + "PatientGender": 1, + "CallNo": 123, + "callType": 1, + "RoomNo": "10", + "CreatedOn": "/Date(1673771382130+0300)/", + "EditedOn": "/Date(1673771384500+0300)/", + "CallNoStr": "A-5", + "QueueNo": null + }; + waitings = [Tickets.fromJson(j)]; + if (waitings.isNotEmpty && voiceCaller == null) { - final postVoice = waitings.first.getCallType().audio('en'); - voiceCaller = CallByVoice(waitings.first.callNoStr.toString(), preVoice: 'ticket_number.mp3', postVoice: postVoice, lang: 'en'); - await voiceCaller.start(); + final postVoice = getCallTypeText(waitings.first); + voiceCaller = CallByVoice(waitings.first.callNoStr.toString(), preVoice: "Ticket Number", postVoice: postVoice, lang: 'en'); + await voiceCaller.startCalling(); voiceCaller = null; } } - printWaiting() { - for (var value in waitings) { - print("waiting: ${value.callNoStr}"); - } - } onUpdateAvailable(data) async { waitings.clear(); - API.GetCallRequestInfoByClinincInfo(DEVICE_IP, onSuccess: (waitingCalls) { + API.getCallRequestInfoByClinicInfo(DEVICE_IP, onSuccess: (waitingCalls) { setState(() { waitings = waitingCalls; // currents = currentInClinic; @@ -175,9 +205,7 @@ class _MyHomePageState extends State { log("\n\n"); log("--------------------"); - // log("Current: $currentInClinic"); - // log("Waiting: $waitingCalls"); - printWaiting(); + log("waiting: $waitings"); log("--------------------"); log("\n\n"); @@ -186,12 +214,14 @@ class _MyHomePageState extends State { } updateTickets() { - // List _ticketsToUpdate = waitings.where((t) => t.call_updated == false).toList(); - // API.Call_UpdateNotIsQueueRecordByIDAsync(DEVICE_IP, ticket: _ticketsToUpdate.first, onSuccess: (tickets_updated) { - // print("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); - // }, onFailure: (e) { - // print("API UPDate Tickets Failed with : ${e.toString()}"); - // }); + if (waitings != null && waitings.isNotEmpty) { + List _ticketsToUpdate = waitings.where((t) => t.callUpdated == false).toList(); + API.callUpdateNotIsQueueRecordByIDAsync(DEVICE_IP, ticket: _ticketsToUpdate.first, onSuccess: (tickets_updated) { + log("[${tickets_updated.length}] Tickets Updated: $tickets_updated"); + }, onFailure: (e) { + log("API UPDate Tickets Failed with : ${e.toString()}"); + }); + } } onConnect() { diff --git a/lib/utils/call_by_voice.dart b/lib/utils/call_by_voice.dart index 557d3f6..910e82d 100644 --- a/lib/utils/call_by_voice.dart +++ b/lib/utils/call_by_voice.dart @@ -1,5 +1,7 @@ +import 'dart:developer'; + import 'package:flutter/cupertino.dart'; -import 'package:just_audio/just_audio.dart'; +import 'package:flutter_tts/flutter_tts.dart'; class CallByVoice { final String lang; @@ -9,42 +11,50 @@ class CallByVoice { CallByVoice(this.ticketNo, {this.lang = 'en', @required this.preVoice, @required this.postVoice}); - final _player = AudioPlayer(); + final FlutterTts textToSpeech = FlutterTts(); + + double volume = 1.0; + double pitch = 0.9; + double rate = 0.5; + + Future _getLanguages() async => await textToSpeech.getLanguages; - start() async { + startCalling() async { + log("languages: ${await _getLanguages()}"); + log("no: $ticketNo"); + textToSpeech.setLanguage("en-US"); + var splitText = ticketNo.split("-"); // Create Pre Voice Players if (preVoice != null && preVoice.isNotEmpty) { - await _player.setAsset('assets/voice_$lang/$preVoice'); - await _player.play(); + textToSpeech.setSpeechRate(rate); + textToSpeech.setPitch(pitch); + textToSpeech.setVolume(volume); + await textToSpeech.speak(preVoice + " .. " + splitText[0] + " .. " + splitText[1] + " .. " + postVoice); } - // Create Ticket Number Voice Players - final characters = ticketNo.characters.toList(); - for (int i = 0; i < characters.length; i++) { - final no = characters[i]; - if (no.isNotEmpty && no != "-" && no != "_" && no != " ") { - await Future.delayed(const Duration(milliseconds: 200)); - - await _player.stop(); - await _player.setAsset('assets/voice_$lang/${no.toUpperCase()}.mp3'); - await _player.play(); - } - } + // // Create Ticket Number Voice Players + // final characters = ticketNo.characters.toList(); + // for (int i = 0; i < characters.length; i++) { + // final no = characters[i]; + // if (no.isNotEmpty && no != "-" && no != "_" && no != " ") { + // + // await _player.stop(); + // await _player.setAsset('assets/voice_$lang/${no.toUpperCase()}.mp3'); + // await _player.play(); + // } + // } // Create Post Voice Players - if (postVoice != null && postVoice.isNotEmpty) { - await Future.delayed(const Duration(milliseconds: 1000)); - - await _player.stop(); - await _player.setAsset('assets/voice_$lang/$postVoice'); - await _player.play(); - } - - _player.dispose(); - } - - stop() async { - await _player.stop(); + // if (postVoice != null && postVoice.isNotEmpty) { + // await Future.delayed(const Duration(milliseconds: 1000)); + // + // await _player.stop(); + // await _player.setAsset('assets/voice_$lang/$postVoice'); + // await _player.play(); + // } } +// stop() async { +// await _player.stop(); +// } } diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 1d5268d..addc988 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -7,14 +7,14 @@ import Foundation import audio_session import connectivity_macos +import flutter_tts import just_audio import path_provider_macos -import text_to_speech_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin")) + FlutterTtsPlugin.register(with: registry.registrar(forPlugin: "FlutterTtsPlugin")) JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) - TextToSpeechMacOsPlugin.register(with: registry.registrar(forPlugin: "TextToSpeechMacOsPlugin")) } diff --git a/pubspec.lock b/pubspec.lock index c94731a..35bf3c8 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -151,6 +151,13 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_tts: + dependency: "direct main" + description: + name: flutter_tts + url: "https://pub.dartlang.org" + source: hosted + version: "3.6.3" flutter_web_plugins: dependency: transitive description: flutter @@ -427,34 +434,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.4.12" - text_to_speech: - dependency: "direct main" - description: - name: text_to_speech - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.3" - text_to_speech_macos: - dependency: transitive - description: - name: text_to_speech_macos - url: "https://pub.dartlang.org" - source: hosted - version: "0.1.1" - text_to_speech_platform_interface: - dependency: transitive - description: - name: text_to_speech_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "0.1.3" - text_to_speech_web: - dependency: transitive - description: - name: text_to_speech_web - url: "https://pub.dartlang.org" - source: hosted - version: "0.1.2" tuple: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 0e196ae..6f0a180 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -40,7 +40,7 @@ dependencies: http: ^0.13.0 blinking_text: ^1.0.2 just_audio: ^0.9.31 - text_to_speech: ^0.2.3 + flutter_tts: ^3.6.3 #signalr core signalr_core: ^1.1.1 diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 8b6d468..63d4407 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -6,6 +6,9 @@ #include "generated_plugin_registrant.h" +#include void RegisterPlugins(flutter::PluginRegistry* registry) { + FlutterTtsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FlutterTtsPlugin")); } diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index b93c4c3..26bfe68 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + flutter_tts ) list(APPEND FLUTTER_FFI_PLUGIN_LIST