Exemple #1
0
        private void AddCertainDays(Medicament medicament) // функция добавления расписания, при выбранных днях недели
        {
            var startDate = medicament.StartDate;

            startDate = startDate.AddDays(1);
            for (int i = 0; i < medicament.DurationOfAdmission; i++)
            {
                for (int j = 0; j < medicament.Days.Count; j++)
                {
                    if (startDate.DayOfWeek.ToString() == medicament.Days[j].ToString())
                    {
                        var oneDay = FindADay(startDate);
                        if (oneDay != null)
                        {
                            TimesADay(oneDay, medicament);
                        }
                        else
                        {
                            oneDay     = new OneDay();
                            oneDay.Day = startDate;
                            _oneDays.Add(oneDay);
                            TimesADay(oneDay, medicament);
                        }
                        break;
                    }
                }
                startDate = startDate.AddDays(1);
            }
        }
Exemple #2
0
        private void TimesADay(OneDay oneday, Medicament medicament) // функция, которая добавляет в расписание дня несколько приемов препарата, если они есть
        {
            var hours = 12.0 / medicament.TimesADay;

            for (int i = 0; i < medicament.TimesADay; i++)
            {
                oneday.LightMedicaments.Add(new LightMedicament(TimeSpan.FromHours(9 + i * hours), medicament));
            }
        }
        private void ListBoxProfiles_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ListBoxTimesMedicament.Items.Clear();
            ProfileName.Text = ((String)ListBoxProfiles.SelectedItem);
            Human humanFind = null;

            foreach (var human in _people)
            {
                if (human.Name == ProfileName.Text)
                {
                    humanFind = human;
                    break;
                }
            }
            var selDate = DateTime.Parse(TextBlockSelectedDate.Text);

            if (humanFind != null)
            {
                BitmapImage bi3 = new BitmapImage();
                try
                {
                    bi3.BeginInit();
                    bi3.UriSource = humanFind.Avatar;
                    bi3.EndInit();
                    Avatar.Stretch = Stretch.Uniform;
                    Avatar.Source  = bi3;
                }
                catch (Exception)
                {
                }
                OneDay oneDayFind = null;
                foreach (var oneDay in humanFind.OneDays)
                {
                    if (oneDay.Day == selDate)
                    {
                        oneDayFind = oneDay;
                        break;
                    }
                }
                if (oneDayFind != null)
                {
                    CheckBox cbMonday = null;
                    foreach (var lightMedicament in oneDayFind.LightMedicaments)
                    {
                        cbMonday           = new CheckBox();
                        cbMonday.Checked  += CbMondayOnChecked;
                        cbMonday.ToolTip   = lightMedicament.Medicament1.Notes;
                        cbMonday.Content   = lightMedicament.Time.ToString() + " | " + lightMedicament.Medicament1.Title + " - " + lightMedicament.Medicament1.Name + " " + lightMedicament.Medicament1.Num + " " + lightMedicament.Medicament1.UnitOfPreparation;
                        cbMonday.IsChecked = lightMedicament.isDone;
                        ListBoxTimesMedicament.Items.Add(cbMonday);
                    }
                }
            }
        }
Exemple #4
0
        private void AddEveryDay(Medicament medicament) // функция добавления препарата, если выбран режим каждый день
        {
            var startDate = medicament.StartDate;

            for (int i = 0; i < medicament.DurationOfAdmission; i++)
            {
                startDate = startDate.AddDays(1);
                var oneDay = FindADay(startDate);
                if (oneDay != null)
                {
                    TimesADay(oneDay, medicament);
                }
                else
                {
                    oneDay     = new OneDay();
                    oneDay.Day = startDate;
                    _oneDays.Add(oneDay);
                    TimesADay(oneDay, medicament);
                }
            }
        }
Exemple #5
0
        private void AddDailyInterval(Medicament medicament)
        {
            var startDate = medicament.StartDate;

            startDate = startDate.AddDays(1);
            for (int i = 0; i < medicament.DurationOfAdmission; i++)
            {
                var oneDay = FindADay(startDate);
                if (oneDay != null)
                {
                    TimesADay(oneDay, medicament);
                }
                else
                {
                    oneDay     = new OneDay();
                    oneDay.Day = startDate;
                    _oneDays.Add(oneDay);
                    TimesADay(oneDay, medicament);
                }
                startDate = startDate.AddDays(medicament.DaysOfDailyInterval);
            }
        }
        private void CbMondayOnChecked(object sender, RoutedEventArgs routedEventArgs)
        {
            ProfileName.Text = ((String)ListBoxProfiles.SelectedItem);
            Human humanFind = null;

            foreach (var human in _people)
            {
                if (human.Name == ProfileName.Text)
                {
                    humanFind = human;
                    break;
                }
            }
            var selDate = DateTime.Parse(TextBlockSelectedDate.Text);

            if (humanFind != null)
            {
                OneDay oneDayFind = null;
                foreach (var oneDay in humanFind.OneDays)
                {
                    if (oneDay.Day == selDate)
                    {
                        oneDayFind = oneDay;
                        break;
                    }
                }
                if (oneDayFind != null)
                {
                    foreach (var lightMedicament in oneDayFind.LightMedicaments)
                    {
                        if (((CheckBox)sender).Content.ToString() == lightMedicament.Time.ToString() + " | " + lightMedicament.Medicament1.Title + " - " + lightMedicament.Medicament1.Name + " " + lightMedicament.Medicament1.Num + " " + lightMedicament.Medicament1.UnitOfPreparation && ((CheckBox)sender).ToolTip.ToString() == lightMedicament.Medicament1.Notes)
                        {
                            lightMedicament.isDone = ((CheckBox)sender).IsEnabled;
                        }
                    }
                }
            }
        }
 private void TimerTick(object state)
 {
     foreach (var human in _people)
     {
         OneDay oneDayFind = null;
         foreach (var oneDay in human.OneDays)
         {
             if (oneDay.Day == DateTime.Today)
             {
                 oneDayFind = oneDay;
                 break;
             }
             else if (oneDay.Day > DateTime.Today)
             {
                 break;
             }
         }
         if (oneDayFind == null)
         {
             break;
         }
         foreach (var lightMedicament in oneDayFind.LightMedicaments)
         {
             if (lightMedicament.isDone == false && lightMedicament.Time > DateTime.Now.TimeOfDay.Add(TimeSpan.FromMinutes(-5)) && lightMedicament.Time < DateTime.Now.TimeOfDay.Add(TimeSpan.FromMinutes(5)))
             {
                 var res = MessageBox.Show("Time to " + lightMedicament.Medicament1.Name + " " + lightMedicament.Medicament1.Num +
                                           lightMedicament.Medicament1.UnitOfPreparation + " | Note: " +
                                           lightMedicament.Medicament1.Notes, human.Name, MessageBoxButton.YesNo, MessageBoxImage.Warning);
                 if (res == MessageBoxResult.Yes)
                 {
                     lightMedicament.isDone = true;
                 }
             }
         }
     }
 }