Example #1
0
 public ModelNotification(int id, string data, PatientUser patient) : base(id, data)
 {
     Data          = data;
     PatientUserId = patient.id;
     PatientUser   = patient;
 }
 public DoctorAppointment RecommendAnAppointment(DoctorUser doctor, DateTime date1, DateTime date2, PatientUser patient)
 {
     return(regularAppointmentService.RecommendAnAppointment(doctor, date1, date2, patient));
 }
 public List <DoctorAppointment> recommenedAnAppointmentDatePriority(DateTime date1, DateTime date2, PatientUser patient)
 {
     return(regularAppointmentService.RecommenedAnAppointmentDatePriority(date1, date2, patient, "Speciality"));
 }
 public Boolean isTermNotAvailable(DoctorUser doctor, TimeSpan time, String dateToString, PatientUser patient)
 {
     return(regularAppointmentService.IsTermNotAvailable(doctor, time, dateToString, patient));
 }
Example #5
0
 /// <summary>This method creates <c>Feedback</c> from provided <paramref name="dto"/> and <paramref name="patient"/>.</summary>
 /// <param name="dto"><c>dto</c> is Data Transfer Object of a <c>Feedback</c> that contains <c>Message</c>, <c>IsPublic</c>, <c>IsAnonymous</c> and <c>PatientId</c>.</param>
 /// <param name="patient"><c>patient</c> is <c>PatientUser</c> that has created <c>Feedback</c></param>
 /// <returns> created <c>Feedback</c> </returns>
 public static Feedback FeedbackDtoToFeedback(FeedbackDto dto, PatientUser patient)
 {
     return(new Feedback(dto.Message, dto.IsPublic, dto.IsAnonymous, DateTime.Now, patient.id, patient));
 }
Example #6
0
        private void confirmButton_Click(object sender, RoutedEventArgs e)
        {
            String priority          = "";
            ListaDoktoriCeloIme name = (ListaDoktoriCeloIme)doctorCombo.SelectedValue;

            if (name == null || Date_TextBox.Text.Equals("") || !Regex.Match(Date_TextBox.Text, @"^([0-9]{2}/[0-9]{2}/[0-9]{4})$").Success ||
                Date_TextBox2.Text.Equals("") || !Regex.Match(Date_TextBox2.Text, @"^([0-9]{2}/[0-9]{2}/[0-9]{4})$").Success)
            {
                doctorCombo.Focus();
                MessageBox.Show("Please fill all fields corectlly!", "Error", MessageBoxButton.OK, MessageBoxImage.Error);

                return;
            }

            else
            {
                String imeDr = name.DoctorName;

                String[] delovi = imeDr.Split(' ');

                int idDoktor = int.Parse(delovi[2]);



                DoctorUser doktorPregled = doctorController.GetByid(idDoktor);


                if (rb1Date.IsChecked == true)
                {
                    priority = "DATE";
                }
                else
                {
                    priority = "DOCTOR";
                }

                patient = patientController.GetByid(int.Parse(myProperty));

                String   datum   = Date_TextBox.Text;
                String[] delovi2 = datum.Split('/');
                int      mesec   = int.Parse(delovi2[1]);
                int      dan     = int.Parse(delovi2[0]);
                int      godina  = int.Parse(delovi2[2]);

                DateTime dt1 = new DateTime(godina, mesec, dan, 0, 0, 0);

                String   datum2  = Date_TextBox2.Text;
                String[] delovi3 = datum2.Split('/');
                int      mesec2  = int.Parse(delovi3[1]);
                int      dan2    = int.Parse(delovi3[0]);
                int      godina2 = int.Parse(delovi3[2]);

                DateTime dt2 = new DateTime(godina2, mesec2, dan2, 0, 0, 0);


                DateTime dtSad = DateTime.Now;


                if (dtSad > dt1 || dtSad > dt2)
                {
                    MessageBox.Show("Please enter dates that are yet to come.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                if (dt1 > dt2)
                {
                    MessageBox.Show("Please enter dates that are yet to come.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                String ime = doktorPregled.firstName;


                DoctorAppointment pronadjesApp = appointmentController.RecommendAnAppointment(doktorPregled, dt1, dt2, patient);

                if (pronadjesApp == null)
                {
                    if (priority.Equals("DOCTOR"))
                    {
                        DateTime oduzimam = dt1.AddDays(-3);
                        DateTime dodajem  = dt2.AddDays(3);

                        pronadjesApp = appointmentController.RecommendAnAppointment(doktorPregled, oduzimam, dodajem, patient);
                    }
                    else if (priority.Equals("DATE"))
                    {
                        pronadjesApp = appointmentController.recommenedAnAppointmentDatePriority(dt1, dt2, patient);
                    }
                    else
                    {
                    }
                }
                String imeDoktora = doktorPregled.firstName + " " + doktorPregled.secondName;
                if (pronadjesApp == null)
                {
                    MessageBox.Show("Sorry\nAppointment is not found.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                else
                {
                    DoctorUser doktorIme       = pronadjesApp.doctor;
                    string     sMessageBoxText = "Do you want to schedule this appointment ? \n" + pronadjesApp.date + "\n" + pronadjesApp.time + "\n" + doktorIme.firstName + " " + doktorIme.secondName;
                    string     sCaption        = "New doctor appointment";

                    MessageBoxButton btnMessageBox = MessageBoxButton.YesNoCancel;
                    MessageBoxImage  icnMessageBox = MessageBoxImage.Warning;

                    MessageBoxResult rsltMessageBox = MessageBox.Show(sMessageBoxText, sCaption, btnMessageBox, icnMessageBox);
                    int id = 0;
                    switch (rsltMessageBox)
                    {
                    case MessageBoxResult.Yes:
                        id = getid();
                        pronadjesApp.id = id;
                        appointmentController.New(pronadjesApp, null);

                        MessageBox.Show(
                            "Appointment is successfully scheduled!");

                        break;

                    case MessageBoxResult.No:

                        break;

                    case MessageBoxResult.Cancel:

                        break;
                    }
                }
            }
        }
Example #7
0
        public Boolean isTermNotAvailable(DoctorUser doctor, TimeSpan start, TimeSpan end, String dateToString, PatientUser patient)
        {
            PatientController patientController     = new PatientController();
            DoctorController  doctorController      = new DoctorController();
            Boolean           hasAppointmentDoctor  = doctorController.doesDoctorHaveAnAppointmentAtSpecificPeriod(doctor, start, end, dateToString);
            Boolean           hasOperationDoctor    = doctorController.doesDoctorHaveAnOperationAtSpecificPerod(doctor, start, end, dateToString);
            Boolean           hasAppointmentPatient = patientController.doesPatientHaveAnAppointmentAtSpecificPeriod(start, end, dateToString, patient);
            Boolean           hasOperationPatient   = patientController.doesPatientHaveAnOperationAtSpecificPeriod(start, end, dateToString, patient);

            if (hasAppointmentDoctor || hasAppointmentPatient || hasOperationDoctor || hasOperationPatient)
            {
                return(true);
            }
            return(false);
        }
Example #8
0
        /// <summary> This method provides <c>PatientUser</c> <paramref name="patientId"/> and sends it to <c>PatientsRepository</c> there patient.IsBlocked will be set to true. </summary>
        /// <param name="patientId"><c>PatientUser</c> is <c>PatientUser</c> that needs to be blocked.
        /// </param>
        /// <returns>null if PatientUser is not valid; otherwise, succesfully blocked PatientUser. </returns>
        public PatientUser BlockPatient(int patientId)
        {
            PatientUser patient = PatientsRepository.FindOne(patientId);

            return((patient == null) ? null : PatientsRepository.BlockPatient(patient));
        }