示例#1
0
        private void OnOpenSchedule(object sender, EventArgs args)
        {
            if (Busy == true) return;

            ActiveControl = noteCompanyEdit;
            OpenSchedule?.Invoke(sender, args);
        }
示例#2
0
        private async void SchedulesTable_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }
            if (e.ColumnIndex != SchedulesTable.Columns["Delete"].Index &&
                e.ColumnIndex != SchedulesTable.Columns["Open"].Index)
            {
                return;
            }
            var active = SchedulesTable.CurrentRow;
            int id     = Int32.Parse(active.Cells["Id"].Value.ToString());

            if (e.ColumnIndex == SchedulesTable.Columns["Delete"].Index)
            {
                await RemoveSchedule?.Invoke(id);

                Reload?.Invoke();
            }
            else
            {
                OpenSchedule?.Invoke(id);
            }
        }
示例#3
0
        private async void SchedulesTable_KeyDown(object sender, KeyEventArgs e)
        {
            var active = SchedulesTable.CurrentRow;
            int id     = Int32.Parse(active.Cells["Id"].Value.ToString());

            if (e.KeyCode == Keys.Delete)
            {
                await RemoveSchedule?.Invoke(id);

                Reload?.Invoke();
            }
            if (e.KeyCode == Keys.Enter)
            {
                OpenSchedule?.Invoke(id);
            }
        }
        private void SearchButton_Click(object sender, RoutedEventArgs e)
        {
            DatePicker picker = AppointmentPicker;
            DateTime? date = picker.SelectedDate;

            if (date == null)
            {
                this.Title = "No Date Selected";
            }
            else
            {
                List<TimeSpan> availableTimes = Office.GetFreeTimes((DateTime)date, doctorName);
                OpenSchedule schedule = new OpenSchedule(doctorName, availableTimes);
                Application.Current.Resources["OpenSchedule"] = schedule;
                SelectTime nextWindow = new SelectTime();
                nextWindow.Show();
                this.Close();
            }
        }
示例#5
0
        private void OpenSchedule_Executed(object sender, ExecutedRoutedEventArgs e)
        {
            var openScheduleDialog = new OpenSchedule()
            {
                Owner = this
            };

            openScheduleDialog.ShowDialog();

            if (openScheduleDialog.ScheduleToOpen != null)
            {
                var schedule = _viewModel.FindSchedule(openScheduleDialog.ScheduleToOpen.Id);
                if (_viewModel.LastOpenedSchedule != null && _viewModel.LastOpenedSchedule.Id != schedule.Id)
                {
                    _viewModel.LastOpenedSchedule.LastOpened = false;
                    _viewModel.UpdateCurrentSchedule();
                }

                _viewModel.LastOpenedSchedule            = schedule;
                _viewModel.LastOpenedSchedule.LastOpened = true;
                _viewModel.UpdateCurrentSchedule();
                _viewModel.InitRemainigSessions();

                // in case this is the first time running
                ScheduleView.Visibility   = Visibility.Visible;
                ClassromsPanel.Visibility = Visibility.Visible;
                ScheduleLabel.Visibility  = Visibility.Hidden;
                GlobalButton.IsEnabled    = true;
                // clear schedule from screen
                // repopulate schedule
                //_viewModel.ScheduleAppointments = Schedule.Appointments;
                _viewModel.InitSessions();

                Title = $"{schedule.Id} - {_appTitle}";
            }
        }