//FUNCIONES //NOS AYUDAR A CARGAR LOS CAMPOS //ATRAVES DEL PARAMETRO OBJETO ESTUDIANTECURSO private void cargarCampos(EstudiantesCurso c) { txtObservacion.Text = c.Observaciones; cbUsuario.SelectedValue = c.Id_usuario.ToString(); cbCurso.SelectedValue = c.Id_curso; cbPuntuacion.SelectedItem = c.Puntuacion.ToString(); dtpFechaInicio.Value = c.Fecha_inicio; }
public static EstudiantesCurso RecuperarInscripcion(int id_curso, int id_usuario) { EstudiantesCurso est = new EstudiantesCurso(); string cadenaConexion = System.Configuration.ConfigurationManager.AppSettings["CadenaDB"]; SqlConnection cn = new SqlConnection(cadenaConexion); try { SqlCommand cmd = new SqlCommand(); string consulta = "SELECT ID_USUARIO,ID_CURSO,FECHA_INICIO,FECHA_FIN,PUNTUACION,OBSERVACIONES FROM USUARIOSCURSO WHERE ID_CURSO=@ID_CURSO AND ID_USUARIO=@ID_USUARIO"; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@ID_CURSO", id_curso); cmd.Parameters.AddWithValue("@ID_USUARIO", id_usuario); cmd.CommandType = CommandType.Text; cmd.CommandText = consulta; cn.Open(); cmd.Connection = cn; SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() && dr != null) { est.Id_curso = int.Parse(dr["id_curso"].ToString()); est.Id_usuario = int.Parse(dr["id_usuario"].ToString()); est.Observaciones = dr["observaciones"].ToString(); est.Fecha_inicio = DateTime.Parse(dr["fecha_inicio"].ToString()); est.Fecha_inicio = DateTime.Parse(dr["fecha_inicio"].ToString()); est.Puntuacion = int.Parse(dr["puntuacion"].ToString()); } } catch { throw; } finally { cn.Close(); } return(est); }
private void dgvInscripcion_CellClick(object sender, DataGridViewCellEventArgs e) { if (ban == true || guardar == 1) { Habilitar(false); ban = false; guardar = 0; } btnEditar.Enabled = true; btnBorrar.Enabled = true; string id_curso = dgvInscripcion.CurrentRow.Cells[1].Value.ToString(); string id_usuario = dgvInscripcion.CurrentRow.Cells[0].Value.ToString(); EstudiantesCurso est = AD_Inscripcion.RecuperarInscripcion(int.Parse(id_curso), int.Parse(id_usuario)); LimpiarCampos(); cargarCampos(est); }
private void btnBorrar_Click(object sender, EventArgs e) { //SI NO SELECCIONO UNA INSCRIPCION if (cbUsuario.SelectedIndex.Equals(-1) || cbCurso.SelectedIndex.Equals(-1)) { MessageBox.Show("Por favor seleccion una inscripcion a eliminar"); } //SI SELECCIONO UNA INSCRIPCION else { //OBTENER INSCRIPCION SELECCIONADA EstudiantesCurso est = obtenerInscripcion(); //OBTIENE CURSO SELECIONADO PARA MOSTRAR NOMBRE Curso curso = AD_Curso.RecuperarCurso(est.Id_curso); if (MessageBox.Show("Está seguro que desea eliminar la inscripcion del legajo " + cbUsuario.Text + " en el curso " + curso.Nombre + "?", "Eliminado", MessageBoxButtons.YesNo, MessageBoxIcon.Error, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { //ELIMINA EL AVANCE YA QUE TIENE UNA PK //DEPENDIENTE DE INSCRIPCION bool res = AD_AvanceCurso.EliminarAvance(est.Id_curso, est.Id_usuario, est.Fecha_inicio);; if (res) { //Y POR ULTIMO ELIMINAR EL CURSO AD_Inscripcion.EliminarInscripcion(est.Id_curso, est.Id_usuario); } else //SI NO SE PUEDO ELIMINAR EL AVANCE //NO ELIMINA LA INSCRIPCION { MessageBox.Show("Error al eliminar Inscripcion"); } } LimpiarCampos(); CargarGrilla(); ban = false; this.Habilitar(false); guardar = 0; } }
private EstudiantesCurso obtenerInscripcion() { EstudiantesCurso c = new EstudiantesCurso(); Curso curso = AD_Curso.RecuperarCurso((int)(cbCurso.SelectedValue)); if (cbPuntuacion.SelectedItem is null) { c.Puntuacion = 0; } else { c.Puntuacion = int.Parse((string )(cbPuntuacion.SelectedItem)); } c.Id_usuario = (int)cbUsuario.SelectedValue; c.Id_curso = (int)cbCurso.SelectedValue; c.Fecha_inicio = dtpFechaInicio.Value; c.Observaciones = txtObservacion.Text.Trim(); c.Fecha_fin = curso.Fecha_vigencia; return(c); }
private void btnGrabar_Click(object sender, EventArgs e) { if (validarCampos()) { EstudiantesCurso est = obtenerInscripcion(); //SI EL USUARIO QUIERE CREAR UN CURSO if (guardar == 1) { bool res = AD_Inscripcion.RegistrarTransaccion(est.Id_usuario, est.Id_curso, est.Fecha_inicio, est.Fecha_fin, est.Puntuacion, est.Observaciones); if (res) { MessageBox.Show("Inscripcion registrada correctamente"); } else { MessageBox.Show("Error al registrar inscripcion"); } } //SI EL USUARIO DESEA MODIFICAR UN CURSO if (guardar == 2) { bool res = AD_Inscripcion.ModificarInscripcion(est.Id_curso, est.Id_usuario, est.Puntuacion, est.Observaciones); if (res) { MessageBox.Show("Inscripcion modificada correctamente"); } else { MessageBox.Show("Error al modificar inscripcion"); } } LimpiarCampos(); CargarGrilla(); ban = false; this.Habilitar(false); guardar = 0; } }
static void Main(string[] args) { var cursos = Data.GetCursos(); var estudiantes = Data.GetEstudiantes(); var takeCursos = cursos.TakeLast(3); Console.WriteLine("CURSOS TAKE y TAKEWHILE"); foreach (var item in takeCursos) { Console.WriteLine($" {item.Codigo} - {item.Nombre}"); } var skipCursos = cursos.SkipLast(2); Console.WriteLine("CURSOS SKIP y SKIPWHILE"); foreach (var item in skipCursos) { Console.WriteLine($" {item.Codigo} - {item.Nombre}"); } var cursosActivos = cursos.Where(p => p.Activo); var cursosInactivos = cursos.Where(p => !p.Activo); var todoslosCursos = cursos.Except(cursosInactivos); Console.WriteLine("CURSOS UNION, CONTACT, EXCEPT"); foreach (var item in todoslosCursos) { Console.WriteLine($" {item.Codigo} - {item.Nombre}"); } var cursosFiltrada = (from c in cursos join e in estudiantes on c.CursoId equals e.CursoId into EstudiantesCurso from ec in EstudiantesCurso.DefaultIfEmpty() orderby c.Nombre, c.Codigo select new { c.Nombre, c.Codigo, CodigoEstudiante = ec?.Codigo }); var estudiantesFiltrada = estudiantes.OrderByDescending(p => p.CursoId).ThenBy(p => p.Nombre); var estudiantesOrdenada = estudiantesFiltrada.ToList().GroupJoin(cursos, e => e.CursoId, c => c.CursoId, (e, c) => new { estudiante = e, curso = c.DefaultIfEmpty() }).Select(p => new { NombreCurso = p.curso.FirstOrDefault() != null ? p.curso.FirstOrDefault().Nombre : "Sin curso", p.estudiante.Codigo, p.estudiante.Nombre, p.estudiante.Apellido }).ToLookup(p => p.NombreCurso); Console.WriteLine($"La suma de las primeras letras del nombre es { estudiantes.Aggregate("",(total,p)=> total + p.Nombre[0] + "A" ) }"); Console.WriteLine($"la suma de todas las edades es: { estudiantes.Sum(p=> p.Edad) }"); Console.WriteLine($"el estudiante de mayor edad tiene: { estudiantes.Max(p => p.Edad) }"); Console.WriteLine($"el estudiante de menor edad tiene: { estudiantes.Min(p => p.Edad) }"); Console.WriteLine($"El promedio de edad de los estudiantes es: {estudiantes.Average(p => p.Edad)}"); Console.WriteLine($"La cantidad de cursos es: {cursos.LongCount(p=> p.Activo) }"); var existeEstudianteSeleccionado = estudiantesFiltrada.Contains(estudiantes[5]); Console.WriteLine($"¿El Estudiante seleccionado esta en la lista? {existeEstudianteSeleccionado.ToString()}"); Console.WriteLine(" -- CURSOS Filtrado -- "); foreach (var item in cursosFiltrada) { Console.WriteLine($" {item.Codigo} - {item.Nombre} - {item.CodigoEstudiante}"); } Console.WriteLine(); Console.WriteLine(" -- ESTUDIANTES Filtrada-- "); foreach (var item in estudiantesOrdenada) { Console.WriteLine($"Los estudiantes del curso: { item.Key }"); foreach (var estudiante in item) { Console.WriteLine($" {estudiante.Codigo} - {estudiante.Nombre} {estudiante.Apellido}"); } } Console.WriteLine(); Console.WriteLine(" -- CURSOS -- "); foreach (var item in cursos) { Console.WriteLine($"{item.Codigo} - {item.Nombre}"); } Console.WriteLine(); Console.WriteLine(" -- ESTUDIANTES-- "); foreach (var item in estudiantes) { Console.WriteLine($"{item.Codigo} - {item.Nombre} {item.Apellido}"); } Console.ReadLine(); }