private void btnSync_Click(object sender, EventArgs e) { db.insertPendingTeachers(); String serieTemp=""; int serieID=0; foreach(AsignacionClass a in asignaciones) { AsignacionClase asignacion = new AsignacionClase(); Serie serie = new Serie(); if (!serieTemp.Equals(a.Serie())) { //insertar serie serie.Descripcion = a.Serie(); db.insertSerie(ref serie); serieID = Convert.ToInt32(db.LastUpdated);//obtener id serie insertada serieTemp = a.Serie(); } serie.ID = serieID;//asignar id seria al objeto serie asignacion.Serie = serie;//asignar objeto seria a la asignacion //Asignar id aula a la asignacion Aula au = new Aula(); au.Id = a.AulaID; asignacion.Aula = au; //Asignar el codigo de grupo //buscar el id en la tabla grupo en base a la serie Grupo g = new Grupo(); g.Id = db.getIdFromGrupo(a.Serie()); asignacion.Grupo = g; //Asignar inicio y fin string hora24=DateTime.Parse(a.HoraInicio).ToString("HH:mm", CultureInfo.CurrentCulture); DateTime inicio = a.FechaInicio.Add(TimeSpan.Parse(hora24)); switch (a.Dia) { case "LUNES": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Monday)); break; case "MARTES": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Tuesday)); break; case "MIERCOLES": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Wednesday) ); break; case "JUEVES": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Thursday)); break; case "VIERNES": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Friday)); break; case "SABADO": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Saturday)); break; case "DOMINGO": inicio=inicio.AddDays(-(inicio.DayOfWeek - DayOfWeek.Sunday)); break; } asignacion.Inicio = inicio; string hora242 = DateTime.Parse(a.HoraFin).ToString("HH:mm", CultureInfo.CurrentCulture); asignacion.Fin = asignacion.Inicio.Add(-TimeSpan.Parse(hora24)); asignacion.Fin = asignacion.Fin.Add(TimeSpan.Parse(hora242)); //reprogramada asignacion.Reprogramada = false; Asignacion fin = asignacion; while (asignacion.Inicio <= a.FechaFin) { db.insertAsignacion(ref fin); asignacion.Inicio = asignacion.Inicio.AddDays(7); asignacion.Fin = asignacion.Fin.AddDays(7); } } }
public List<Asignacion> Aceptar() { int tipoAsignacion = comboBoxAsignacion.SelectedIndex; List<Asignacion> asignaciones = new List<Asignacion>(); foreach (PeriodoTiempo periodoTiempo in fechas) { Asignacion asignacion = new Asignacion(); switch (tipoAsignacion) { case 0: { AsignacionClase asignacionClase = new AsignacionClase(); asignacionClase.Grupo = (Grupo)comboBoxGrupo.SelectedItem; asignacion = asignacionClase; } break; case 1: { AsignacionVarios asignacionVarios = new AsignacionVarios(); asignacionVarios.TipoUso = (AulaTipoUso)comboBoxTipoUso.SelectedItem; asignacionVarios.Observaciones = textBoxObservaciones.Text; asignacionVarios.Cliente = (Cliente)comboBoxCliente.SelectedItem; asignacion = asignacionVarios; } break; } asignacion.Inicio = periodoTiempo.Inicio; asignacion.Fin = periodoTiempo.Fin; asignacion.Aula = (Aula)comboBoxAula.SelectedItem; asignaciones.Add(asignacion); } return asignaciones; }
public List<AsignacionClase> getAsignacionesClase(String filtro) { SqlDataReader dataReader = null; List<AsignacionClase> asignacionesClase = new List<AsignacionClase>(); try { string query = "Select * from Vista_AsignacionClases WHERE "+filtro; command = new SqlCommand(query, connection); command.Connection.Open(); dataReader = command.ExecuteReader(); while (dataReader.Read()) { AsignacionClase asig = new AsignacionClase(); asig.ID = Convert.ToInt32(dataReader["id_asignacion"].ToString()); asig.Aula = new Aula(); asig.Aula.Id = Convert.ToInt32(dataReader["id_aula"].ToString()); asig.Aula.IdTipo = Convert.ToInt32(dataReader["id_tipo"].ToString()); asig.Aula.NombreTipo = dataReader["aulaTipoDescripcion"].ToString(); asig.Aula.Nombre = dataReader["aulaDescripcion"].ToString(); asig.Aula.Capacidad = Convert.ToInt32(dataReader["aulaCapacidad"].ToString()); asig.Aula.IdEdificio = Convert.ToInt32(dataReader["id_edificio"].ToString()); asig.Aula.NombreEdificio = dataReader["edificioDescripcion"].ToString(); asig.Aula.Piso = Convert.ToInt32(dataReader["aulaPiso"].ToString()); asig.Aula.IdEstado = Convert.ToInt32(dataReader["id_estado"].ToString()); asig.Aula.NombreEstado = dataReader["aulaEstadoDescripcion"].ToString(); asig.Aula.Referencia = dataReader["aulaReferencia"].ToString(); asig.Grupo = new Grupo(); asig.Grupo.Id = Convert.ToInt32(dataReader["id_grupo"].ToString()); asig.Grupo.Asignatura = new Asignatura(); asig.Grupo.Asignatura.Id = Convert.ToInt32(dataReader["id_asignatura"].ToString()); asig.Grupo.Asignatura.Nombre = dataReader["asignaturaNombre"].ToString(); asig.Grupo.Asignatura.IdFacultad = Convert.ToInt32(dataReader["id_facultad"].ToString()); asig.Grupo.Asignatura.Facultad = dataReader["facultaDescripcion"].ToString(); asig.Grupo.Asignatura.IdCategoria = Convert.ToInt32(dataReader["id_categoria"].ToString()); asig.Grupo.Asignatura.Categoria = dataReader["asignaturaCategoriaDescripcion"].ToString(); asig.Grupo.Asignatura.Referencia = dataReader["asignaturaReferencia"].ToString(); asig.Grupo.Docente = new Docente(); asig.Grupo.Docente.Id = Convert.ToInt32(dataReader["id_docente"].ToString()); asig.Grupo.Docente.Nombre = dataReader["docenteNombre"].ToString(); asig.Grupo.CantidadEstudiantes = Convert.ToInt32(dataReader["grupoInscritos"].ToString()); asig.Grupo.Periodo = new Periodo(); asig.Grupo.Periodo.Id = Convert.ToInt32(dataReader["id_periodo"].ToString()); asig.Grupo.Periodo.FechaInicio = Convert.ToDateTime(dataReader["periodoInicio"].ToString()); asig.Grupo.Periodo.FechaFin = Convert.ToDateTime(dataReader["periodoFin"].ToString()); asig.Grupo.Periodo.Descripcion = dataReader["periodoDescripcion"].ToString(); asig.Inicio = Convert.ToDateTime(dataReader["inicio"].ToString()); asig.Fin = Convert.ToDateTime(dataReader["fin"].ToString()); asig.Reprogramada = (bool)dataReader["reprogramada"]; Serie serie = null; String s = dataReader["serie"].ToString(); if (s != null) { if (s.Length > 0 && s != "0") { serie = new Serie(); serie.ID = Convert.ToInt32(s); serie.Descripcion = dataReader["serieDescripcion"].ToString(); } } asig.Serie = serie; asignacionesClase.Add(asig); } return asignacionesClase; } catch (Exception e) { throw new Exception("Error al obtener datos de AulaEstado. " + e.Message.ToString()); } finally { command.Connection.Close(); } }
private Asignacion createAsignacion() { Asignacion asignacion = null; if (comboBoxAsignacion.SelectedIndex == 0) { AsignacionClase asignacionClase = new AsignacionClase(); asignacionClase.Grupo = (Grupo)comboBoxGrupo.SelectedItem; asignacion = asignacionClase; } else { AsignacionVarios asignacionVarios = new AsignacionVarios(); asignacionVarios.TipoUso = (AulaTipoUso)comboBoxTipoUso.SelectedItem; asignacionVarios.Observaciones = textBoxObservaciones.Text; asignacionVarios.Cliente = (Cliente)comboBoxCliente.SelectedItem; asignacion = asignacionVarios; } asignacion.Aula = (Aula)comboBoxAula.SelectedItem; asignacion.Id_Usuario = usuario.Cod_Usua; return asignacion; }
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"); } } }