private void saveTache(object sender, RoutedEventArgs e) { try { Appointment appointment; if (Schedule.SelectedAppointment == null) { appointment = new Appointment(); appointment.TypeAjout = TypeAjout.TASK; } else { appointment = SelectedAppointment; } DateTime date = (DateTime)addstarttimeTache.DateTime; DateTime date1 = (DateTime)addendtimeTache.DateTime; if (SelectedAppointment == null) { if (Taches.SimulTache(((DateTime)addstartmonthTache.SelectedDate).Date.Add(new TimeSpan(date.Hour, date.Minute, date.Second)), ((DateTime)addendmonthTache.SelectedDate).Date.Add(new TimeSpan(date1.Hour, date1.Minute, date1.Second)), MainWindow.idUser).Rows.Count != 0) { MaterialMessageBox.Show("Une tâche est déjà programmée à ce moment !"); } else { appointment.ReminderTime = (ReminderTimeType)reminderTache.SelectedItem; appointment.selectedReminder = reminderTache.SelectedIndex; date = (DateTime)addstarttimeTache.DateTime; appointment.StartTime = ((DateTime)addstartmonthTache.SelectedDate).Date.Add(new TimeSpan(date.Hour, date.Minute, date.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); date1 = (DateTime)addendtimeTache.DateTime; appointment.EndTime = ((DateTime)addendmonthTache.SelectedDate).Date.Add(new TimeSpan(date1.Hour, date1.Minute, date1.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); appointment.Subject = subTache.Text; appointment.Notes = notesTache.Text; appointment.selectedActivity = TypeActivite.SelectedIndex; appointment.selectedPriority = priorityTache.SelectedIndex; appointment.selectedEtat = etatTache.SelectedIndex; appointment.AppointmentBackground = colorTache; DataRow dr; Activities = Activity.RechActivite(Activite.Text, TypeActivite1.Text, MainWindow.idUser); if (Activities.Rows.Count == 0) { MaterialMessageBox.Show("Le type de l'activité ne correspond pas"); } else { dr = Activities.Rows[0]; appointment.IdActivite = (int)dr["Id"]; Taches.InsertTache(appointment.Subject, appointment.selectedPriority, appointment.StartTime, appointment.selectedEtat, appointment.IdActivite, appointment.EndTime, appointment.Notes, appointment.selectedReminder, MainWindow.idUser); taches.Clear(); taches = Taches.SelectTache(appointment.IdActivite); dr = taches.Rows[(taches.Rows.Count) - 1]; appointment.IdTache = (int)dr["Id"]; try { document.InsertDocument(this.titleDoc.Text, doc, appointment.IdTache); } catch (Exception ex) { } Schedule.Appointments.Add(appointment); customeEditorTache.Visibility = Visibility.Collapsed; Schedule.IsHitTestVisible = true; } } } else { DataTable dt = Taches.SimulTache(((DateTime)addstartmonthTache.SelectedDate).Date.Add(new TimeSpan(date.Hour, date.Minute, date.Second)), ((DateTime)addendmonthTache.SelectedDate).Date.Add(new TimeSpan(date1.Hour, date1.Minute, date1.Second)), MainWindow.idUser); if (dt.Rows.Count == 0) { appointment.ReminderTime = (ReminderTimeType)reminderTache.SelectedItem; appointment.selectedReminder = reminderTache.SelectedIndex; date = (DateTime)addstarttimeTache.DateTime; appointment.StartTime = ((DateTime)addstartmonthTache.SelectedDate).Date.Add(new TimeSpan(date.Hour, date.Minute, date.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); date1 = (DateTime)addendtimeTache.DateTime; appointment.EndTime = ((DateTime)addendmonthTache.SelectedDate).Date.Add(new TimeSpan(date1.Hour, date1.Minute, date1.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); appointment.Subject = subTache.Text; appointment.Notes = notesTache.Text; appointment.selectedActivity = TypeActivite.SelectedIndex; appointment.selectedPriority = priorityTache.SelectedIndex; appointment.selectedEtat = etatTache.SelectedIndex; appointment.AppointmentBackground = colorTache; Taches.UpdateTache(appointment.IdTache, appointment.Subject, appointment.selectedPriority, appointment.StartTime, appointment.selectedEtat, appointment.EndTime, appointment.Notes, appointment.selectedReminder); DataTable docs = new DataTable(); BL.CLS_Document document = new BL.CLS_Document(); docs = document.SelectDocument(SelectedAppointment.IdDocument); try { if (docs.Rows.Count != 0) { document.UpdateDocument(appointment.IdDocument, this.titleDoc.Text, doc); } else { document.InsertDocument(this.titleDoc.Text, doc, appointment.IdTache); } } catch (Exception ex) { } customeEditorTache.Visibility = Visibility.Collapsed; Schedule.IsHitTestVisible = true; } else { if (dt.Rows.Count == 1) { if ((int)dt.Rows[0]["Id"] == SelectedAppointment.IdTache) { appointment.ReminderTime = (ReminderTimeType)reminderTache.SelectedItem; appointment.selectedReminder = reminderTache.SelectedIndex; date = (DateTime)addstarttimeTache.DateTime; appointment.StartTime = ((DateTime)addstartmonthTache.SelectedDate).Date.Add(new TimeSpan(date.Hour, date.Minute, date.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); date1 = (DateTime)addendtimeTache.DateTime; appointment.EndTime = ((DateTime)addendmonthTache.SelectedDate).Date.Add(new TimeSpan(date1.Hour, date1.Minute, date1.Second)); appointment.AppointmentTime = appointment.StartTime.ToString("HH:mm tt"); appointment.Subject = subTache.Text; appointment.Notes = notesTache.Text; appointment.selectedActivity = TypeActivite.SelectedIndex; appointment.selectedPriority = priorityTache.SelectedIndex; appointment.selectedEtat = etatTache.SelectedIndex; appointment.AppointmentBackground = colorTache; Taches.UpdateTache(appointment.IdTache, appointment.Subject, appointment.selectedPriority, appointment.StartTime, appointment.selectedEtat, appointment.EndTime, appointment.Notes, appointment.selectedReminder); DataTable docs = new DataTable(); BL.CLS_Document document = new BL.CLS_Document(); docs = document.SelectDocument(SelectedAppointment.IdDocument); try { if (docs.Rows.Count != 0) { document.UpdateDocument(appointment.IdDocument, this.titleDoc.Text, doc); } else { document.InsertDocument(this.titleDoc.Text, doc, appointment.IdTache); } } catch (Exception ex) { } customeEditorTache.Visibility = Visibility.Collapsed; Schedule.IsHitTestVisible = true; } else { MaterialMessageBox.Show("Une tâche est déjà programmée à cet horaire"); } } else { MaterialMessageBox.Show("Une tâche est déjà programmée à cet horaire"); } } } } catch (Exception ex) { MaterialMessageBox.Show("Une erreur est survenue"); } }
public Tasks() { try { InitializeComponent(); customeEditorTache.DataContext = this; customeEditorTache.Visibility = Visibility.Collapsed; Schedule.AppointmentEditorOpening += Schedule_AppointmentEditorOpening; Schedule.ReminderOpening += Schedule_ReminderOpening; Activities = Activity.SelectActivite(userId); foreach (DataRow ligneact in this.Activities.Rows) { taches = Taches.SelectTache((int)ligneact["Id"]); if (this.taches != null) { foreach (DataRow ligne in this.taches.Rows) { int iddoc; DataTable docs = new DataTable(); BL.CLS_Document document = new BL.CLS_Document(); docs = document.RechDocument((int)ligne["Id"]); if (docs.Rows.Count == 0) { iddoc = -1; } else { iddoc = (int)docs.Rows[0]["Id"]; } DateTime date1 = new DateTime(int.Parse(((string)ligne["HeureDebut"]).Substring(0, 4)), int.Parse(((string)ligne["HeureDebut"]).Substring(5, 2)), int.Parse(((string)ligne["HeureDebut"]).Substring(8, 2)), int.Parse(((string)ligne["HeureDebut"]).Substring(11, 2)), int.Parse(((string)ligne["HeureDebut"]).Substring(14, 2)), 0); DateTime date2 = new DateTime(int.Parse(((string)ligne["HeureFin"]).Substring(0, 4)), int.Parse(((string)ligne["HeureFin"]).Substring(5, 2)), int.Parse(((string)ligne["HeureFin"]).Substring(8, 2)), int.Parse(((string)ligne["HeureFin"]).Substring(11, 2)), int.Parse(((string)ligne["HeureFin"]).Substring(14, 2)), 0); int cpt = 0; int iter = 1; int semaine = 7; if ((string)ligneact["Designation"] == "Planning") { iter = 19; if (IdentifiantEmploiDuTemps == 0) { IdentifiantEmploiDuTemps = (int)ligne["ActiviteId"]; } } while (cpt < iter) { AppointmentCollection.Add(new Appointment() { StartTime = date1, EndTime = date2, AppointmentBackground = colorTache, Subject = (string)ligne["Designation"], selectedEtat = (int)ligne["Etat"], TypeAjout = TypeAjout.TASK, selectedPriority = (int)ligne["Priorite"], IdActivite = (int)ligne["ActiviteId"], IdTache = (int)ligne["Id"], IdCellule = (int)ligne["Etat"], Notes = (string)ligne["Commentaire"], selectedActivity = ((int)ligne["ActiviteId"] - 1), IdDocument = iddoc, selectedReminder = (int)ligne["Alerte"] }); date1 = date1.AddDays(semaine); date2 = date2.AddDays(semaine); cpt++; } } } } Schedule.Appointments = AppointmentCollection; } catch (Exception ex) { MaterialMessageBox.Show("Une erreur est survenue"); } }
private void editAppointmentTache() { try { Activite.Items.Clear(); Activite.IsEnabled = false; customeEditorTache.Visibility = Visibility.Visible; Schedule.IsHitTestVisible = false; DataContext = AddDataContext; SelectedAppointment = AddDataContext.Appointment as Appointment; TypeActivite.ItemsSource = Enum.GetValues(typeof(Appointment.AppointmentActivity)); TypeActivite.SelectedIndex = SelectedAppointment.selectedActivity; TypeActivite1.ItemsSource = Enum.GetValues(typeof(Appointment.AppointmentActivity)); subTache.IsReadOnly = false; priorityTache.IsEnabled = true; addendmonthTache.Visibility = Visibility.Visible; addstartmonthTache.Visibility = Visibility.Visible; TypeActivite.Visibility = Visibility.Visible; addstarttimeTache.IsEnabled = true; addendtimeTache.IsEnabled = true; etatTache.IsEnabled = true; TypeActivite1.IsEnabled = false; ajoutActivite.IsEnabled = false; priorityTache.ItemsSource = Enum.GetValues(typeof(Appointment.AppointmentPriority)); priorityTache.SelectedIndex = SelectedAppointment.selectedPriority; if (SelectedAppointment.IdActivite == MainWindow.idEmploi) { priorityTache.ItemsSource = Enum.GetValues(typeof(Appointment.AppointmentPriority)); etatTache.SelectedIndex = 0; etatTache.IsEnabled = false; TypeActivite.IsEnabled = false; subTache.IsReadOnly = true; priorityTache.IsEnabled = false; addendmonthTache.IsEnabled = false; addstartmonthTache.IsEnabled = false; addstarttimeTache.IsEnabled = false; addendtimeTache.IsEnabled = false; } BL.CLS_Activite activite = new BL.CLS_Activite(); DataTable dt = activite.SelectActivite(MainWindow.idUser); int i = 0; foreach (DataRow ligne in dt.Rows) { if ((String)ligne["Designation"] != "Planning") { Activite.Items.Add((String)ligne["Designation"]); } i++; } etatTache.ItemsSource = Enum.GetValues(typeof(Appointment.AppointmentEtat)); etatTache.SelectedIndex = SelectedAppointment.selectedEtat; DataTable docs = new DataTable(); BL.CLS_Document document = new BL.CLS_Document(); docs = document.SelectDocument(SelectedAppointment.IdDocument); if (docs.Rows.Count != 0) { try { this.titleDoc.Text = (string)docs.Rows[0]["Titre"]; doc = (string)docs.Rows[0]["Emplacement"]; } catch (Exception ex) { } } reminderTache.ItemsSource = Enum.GetValues(typeof(ReminderTimeType)); reminderTache.SelectedIndex = SelectedAppointment.selectedReminder; subTache.Text = SelectedAppointment.Subject; notesTache.Text = SelectedAppointment.Notes; addstarttimeTache.DateTime = (AddDataContext.Appointment as Appointment).StartTime; addstartmonthTache.SelectedDate = (AddDataContext.Appointment as Appointment).StartTime; addendtimeTache.DateTime = (AddDataContext.Appointment as Appointment).EndTime; addendmonthTache.SelectedDate = (AddDataContext.Appointment as Appointment).EndTime; BL.CLS_Activite activites = new BL.CLS_Activite(); docs = activites.SelectActivite(MainWindow.idUser); i = 0; foreach (DataRow ligne in docs.Rows) { if ((int)ligne["Id"] == SelectedAppointment.IdActivite) { Activite.Text = (String)ligne["Designation"]; TypeActivite1.Text = (String)ligne["TypeActivite"]; } } } catch (Exception ex) { MaterialMessageBox.Show("Une erreur est survenue"); } }