public MainCalendarViewControl() { InitializeComponent(); calendarControl.OnBuscarClick += calendarControl_OnBuscarClick; calendarControl.OnNotificarClick += calendarControl_OnNotificarClick; HandleEvents(); Conexion conexion = new Conexion(); aulas=conexion.getAulas(); asignaturas = conexion.getAsignaturasConGrupo(); asignacionClaseControl.Aulas = aulas; asignacionVariosControl.Aulas = aulas; ; asignacionClaseControl.Asignaturas = asignaturas; calendarControl.AddAulas(aulas.ToArray()); List<AsignacionVarios> asignacionesVarios = conexion.getAsignacionesVarios(); foreach (AsignacionVarios asignacionVarios in asignacionesVarios) { calendarControl.calendarView.SelectedOwner = asignacionVarios.Aula.Referencia; calendarControl.AddAsignacion(asignacionVarios); } List<AsignacionClase> asignacionesClase = conexion.getAsignacionesClase(); foreach (AsignacionClase asignacionClase in asignacionesClase) { calendarControl.calendarView.SelectedOwner = asignacionClase.Aula.Referencia; calendarControl.AddAsignacion(asignacionClase); } calendarControl.calendarView.SelectedView = DevComponents.DotNetBar.Schedule.eCalendarView.Week; }
private void buttonAceptar_Click(object sender, EventArgs e) { int tipoAsignacion = comboBoxTipoAsignacion.SelectedIndex; DateTime oInicio = DateTime.Now; DateTime oFin = DateTime.Now ; bool flag=false; switch (tipoAsignacion) { case 0: { if(asignacionClaseControl.ValidateControls()){ AsignacionClase asignacionClase; if (!editing) { asignacionClase = new AsignacionClase(); } else { asignacionClase = (AsignacionClase)currentAsignacion; } oInicio = asignacionClase.Inicio; oFin = asignacionClase.Fin; asignacionClase.Aula = asignacionClaseControl.Aula; asignacionClase.Grupo = asignacionClaseControl.Grupo; asignacionClase.Inicio = asignacionClaseControl.Inicio; asignacionClase.Fin= asignacionClaseControl.Fin; asignacionClase.Id_Usuario = usuario.Cod_Usua; currentAsignacion = asignacionClase; flag = true; } } break; case 1: { if(asignacionVariosControl.ValidateControls()){ AsignacionVarios asignacionVarios; if (!editing) { asignacionVarios = new AsignacionVarios(); } else { asignacionVarios = (AsignacionVarios)currentAsignacion; } oInicio = asignacionVarios.Inicio; oFin = asignacionVarios.Fin; asignacionVarios.Aula = asignacionVariosControl.Aula; asignacionVarios.TipoUso = asignacionVariosControl.TipoUso; asignacionVarios.Observaciones = asignacionVariosControl.Observaciones; asignacionVarios.Inicio = asignacionClaseControl.Inicio; asignacionVarios.Fin = asignacionVariosControl.Fin; asignacionVarios.Cliente = asignacionVariosControl.Cliente; asignacionVarios.Id_Usuario = usuario.Cod_Usua; currentAsignacion = asignacionVarios; flag=true; } } break; } if (currentAsignacion != null && flag) { expandablePanel1.Expanded = false; try { Conexion conexion = new Conexion(); if (!editing) { conexion.insertAsignacion(ref currentAsignacion); calendarControl.AddAsignacion(currentAsignacion); } else { if (currentAsignacion.Serie != null) { List<Asignacion> asignaciones; if(currentAsignacion is AsignacionClase) asignaciones = conexion.getAsignacionesClase("serie="+currentAsignacion.Serie.ID).ToList<Asignacion>(); else asignaciones = conexion.getAsignacionesVarios("serie=" + currentAsignacion.Serie.ID).ToList<Asignacion>(); EditarSerieForm editarSerieForm = new EditarSerieForm(); editarSerieForm.setAsignaciones(asignaciones); editarSerieForm.setCurrentAsignacion(currentAsignacion); DialogResult result = editarSerieForm.ShowDialog(); if (result == DialogResult.OK) { EditarSerieForm.Option selectedOption = editarSerieForm.getSelectedOption(); if(selectedOption==EditarSerieForm.Option.CurrentEvent) { conexion.actualizarAsignacion(currentAsignacion); calendarControl.updateAsignacion(currentAsignacion); } else { TimeSpan InicioOffset; TimeSpan FinOffset; InicioOffset = currentAsignacion.Inicio.Subtract(oInicio); FinOffset = currentAsignacion.Fin.Subtract(oFin); List<Asignacion> asignacionesSeleccionadas = editarSerieForm.getAsignacionesSeleccionadas(); if (asignacionesSeleccionadas != null) { for (int i = 0; i < asignacionesSeleccionadas.Count; i++) { Asignacion asignacion = asignacionesSeleccionadas[i]; asignacion.Inicio = new DateTime(asignacion.Inicio.Year, asignacion.Inicio.Month, asignacion.Inicio.Day, currentAsignacion.Inicio.Hour, currentAsignacion.Inicio.Minute, 0); asignacion.Fin = new DateTime(asignacion.Fin.Year, asignacion.Fin.Month, asignacion.Fin.Day, currentAsignacion.Fin.Hour, currentAsignacion.Fin.Minute, 0); if (InicioOffset.Days != 0) asignacion.Inicio= asignacion.Inicio.AddDays(InicioOffset.Days); if (FinOffset.Days != 0) asignacion.Fin= asignacion.Fin.AddDays(FinOffset.Days); asignacion.Aula = currentAsignacion.Aula; if (currentAsignacion is AsignacionClase) { ((AsignacionClase)asignacion).Grupo = ((AsignacionClase)currentAsignacion).Grupo; } else if (currentAsignacion is AsignacionVarios) { ((AsignacionVarios)asignacion).TipoUso = ((AsignacionVarios)currentAsignacion).TipoUso; ((AsignacionVarios)asignacion).Observaciones = ((AsignacionVarios)currentAsignacion).Observaciones; ((AsignacionVarios)asignacion).Cliente = ((AsignacionVarios)currentAsignacion).Cliente; } conexion.actualizarAsignacion(asignacion); calendarControl.updateAsignacion(asignacion); } } } } } else { conexion.actualizarAsignacion(currentAsignacion); calendarControl.updateAsignacion(currentAsignacion); } } } catch (Exception ex) { MessageBox.Show("Ha ocurrido un problema al intentar insertar la asignación"); } } }