/// <summary>
        /// Inserta una nueva residencia en la base de datos.
        /// </summary>
        /// <param name="residencia"></param>
        /// Contiene los datos que constituyen a una residencia.
        /// <returns>
        /// Retorna -1 si la sentencia no se ejecuto correctamente.
        /// </returns>
        public static int InsertarResidencia(ResidenciaPOJO residencia)
        {
            try
            {
                Conexion     con = new Conexion();
                MySqlCommand cmd = new MySqlCommand("INSERT INTO inforesidencia VALUES(null,@P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10); SELECT last_insert_id();");

                cmd.Parameters.AddWithValue("@P1", residencia.NombreProyec);
                cmd.Parameters.AddWithValue("@P2", residencia.Modalidad);
                cmd.Parameters.AddWithValue("@P3", residencia.Periodo);
                cmd.Parameters.AddWithValue("@P4", residencia.Anio);
                cmd.Parameters.AddWithValue("@P5", residencia.AsesorExt);
                cmd.Parameters.AddWithValue("@P6", residencia.PuestoAsesor);
                cmd.Parameters.AddWithValue("@P7", residencia.Responsable);
                cmd.Parameters.AddWithValue("@P8", residencia.PuestoResp);
                cmd.Parameters.AddWithValue("@P9", residencia.IdEmpresa);
                cmd.Parameters.AddWithValue("@P10", residencia.IdAlumno);

                return(con.ejecutarSentencia(cmd, true));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(-1);
            }
            finally
            {
                if (Conexion.conexion != null)
                {
                    Conexion.conexion.Close();
                }
            }
        }
Example #2
0
        /// <summary>
        /// Evento capaz de abrir la ventana FrmLiberacionFinalDetalle
        /// utilizando la residencia seleccionada de la lista.
        /// </summary>
        private void btnLiberar_Click(object sender, EventArgs e)
        {
            ResidenciaPOJO            res        = ResidenciaDAO.ObtenerResidenciaXMatricula(dgvLista.CurrentRow.Cells[0].Value.ToString());
            FrmLiberacionFinalDetalle frmMostrar = new FrmLiberacionFinalDetalle(res, doce.ID);

            frmMostrar.FormClosed += new FormClosedEventHandler(cargarDatos);
            frmMostrar.Show();
        }
        /// <summary>
        /// Llena los componentes encargados de mostrar los datos
        /// necesarios para la liberación final.
        /// </summary>
        /// <param name="res"></param>
        /// Residencias previamente seleccionada.
        /// <param name="idDocente"></param>
        /// Identificador del docente.
        public FrmLiberacionFinalDetalle(ResidenciaPOJO res, String idDocente)
        {
            InitializeComponent();
            resi = res;
            doce = DocenteDAO.ObtenerDocente(idDocente);
            AlumnoPOJO al = AlumnoDAO.ObtenerAlumno(res.IdAlumno);

            txtCarrera.Text   = CarreraDAO.ObtenerUno(al.Carrera).Nombre;
            txtNoControl.Text = al.Matricula;
            txtNombre.Text    = al.NombreCompleto;
            txtSemestre.Text  = al.Semestre + "";
        }
Example #4
0
        /// <summary>
        /// Llena la tabla con las solicitudes obtenidas a través
        /// de la consulta a la base de datos.
        /// </summary>
        private void cargarDatos(object sender, FormClosedEventArgs e)
        {
            List <SolicitudPOJO>    solicitudes = SolicitudDAO.ObtenerSolicitudesPendientes();
            List <TablaSolicitudes> listaTabla  = new List <TablaSolicitudes>();

            for (int i = 0; i < solicitudes.Count; i++)
            {
                AlumnoPOJO     objAlum       = AlumnoDAO.ObtenerAlumno(solicitudes[i].IdAlumno);
                ResidenciaPOJO objResidencia = ResidenciaDAO.ObtenerResidencia(solicitudes[i].IdResidencia);
                EmpresaPOJO    objEmpresa    = EmpresaDAO.ObtenerEmpresa(objResidencia.IdEmpresa);
                listaTabla.Add(new TablaSolicitudes(objAlum.Matricula, objAlum.NombreCompleto, objAlum.Semestre, objResidencia.NombreProyec,
                                                    objResidencia.Modalidad, objResidencia.Periodo, objEmpresa.Nombre));
            }
            dgvLista.DataSource = null;
            dgvLista.DataSource = listaTabla;
        }
        /// <summary>
        /// Llena la tabla con los datos obtenidos a través de la
        /// consulta.
        /// </summary>
        private void cargarDatos()
        {
            dgvLista.DataSource = null;
            List <DictamenPOJO> dictamenes = DictamenDAO.ObtenerProyectosTerminados();

            for (int i = 0; i < dictamenes.Count; i++)
            {
                TablaResumenPOJO    elemento  = new TablaResumenPOJO();
                DictamenPOJO        dic       = new DictamenPOJO();
                ResidenciaPOJO      res       = ResidenciaDAO.ObtenerResidencia(dictamenes[i].IdResidencia);
                List <DictamenPOJO> revisores = DictamenDAO.ObtenerDictamenesRevisores(res.ID);

                elemento.DictamenFinal = dictamenes[i].Estatus;
                elemento.Calificacion  = dictamenes[i].Calificacion;

                elemento.Proyecto = res.NombreProyec;
                elemento.Empresa  = EmpresaDAO.ObtenerEmpresa(res.IdEmpresa).Nombre;

                elemento.NombreAlumno = AlumnoDAO.ObtenerAlumno(res.IdAlumno).NombreCompleto;
                elemento.Matricula    = res.IdAlumno;

                dic                       = DictamenDAO.ObtenerDictamenAsesor(res.ID);
                elemento.Asesor           = DocenteDAO.ObtenerDocente(dic.IdDocente).NombreCompleto;
                elemento.DictamenAsesor   = dic.Estatus;
                elemento.ComentarioAsesor = dic.Comentario;

                for (int j = 0; j < revisores.Count; j++)
                {
                    if (j == 0)
                    {
                        elemento.Revisor1           = DocenteDAO.ObtenerDocente(revisores[j].IdDocente).NombreCompleto;
                        elemento.DictamenRevisor1   = revisores[j].Estatus;
                        elemento.ComentarioRevisor1 = revisores[j].Comentario;
                    }
                    else
                    {
                        elemento.Revisor2           = DocenteDAO.ObtenerDocente(revisores[j].IdDocente).NombreCompleto;
                        elemento.DictamenRevisor2   = revisores[j].Estatus;
                        elemento.ComentarioRevisor2 = revisores[j].Comentario;
                    }
                }

                tabla.Add(elemento);
            }
            dgvLista.DataSource = tabla;
        }
        /// <summary>
        /// Remplaza a la residencia ubicada en la base de datos por la
        /// residencia ingresada como parametro.
        /// </summary>
        /// <param name="residencia"></param>
        /// Contiene los datos de la residencia que remplazará a la
        /// residencia almacenada.
        /// <returns>
        /// Retorna true si la sentencia se ejecuto correctamente,
        /// de otro modo retorna false.
        /// </returns>
        public static bool ActualizarResidencia(ResidenciaPOJO residencia)
        {
            try
            {
                Conexion     con = new Conexion();
                MySqlCommand cmd = new MySqlCommand("UPDATE inforesidencia SET NombreProyecto=@P1, Modalidad=@P2, " +
                                                    "Periodo=@P3, Anio=@P4, AsesorExt=@P5, PuestoAsesor=@P6, Responsable=@P7, PuestoRespo=@P8, " +
                                                    "IdEmpresa=@P9, IdAlumno=@P10 WHERE ID=@P0");
                cmd.Parameters.AddWithValue("@P0", residencia.ID);
                cmd.Parameters.AddWithValue("@P1", residencia.NombreProyec);
                cmd.Parameters.AddWithValue("@P2", residencia.Modalidad);
                cmd.Parameters.AddWithValue("@P3", residencia.Periodo);
                cmd.Parameters.AddWithValue("@P4", residencia.Anio);
                cmd.Parameters.AddWithValue("@P5", residencia.AsesorExt);
                cmd.Parameters.AddWithValue("@P6", residencia.PuestoAsesor);
                cmd.Parameters.AddWithValue("@P7", residencia.Responsable);
                cmd.Parameters.AddWithValue("@P8", residencia.PuestoResp);
                cmd.Parameters.AddWithValue("@P9", residencia.IdEmpresa);
                cmd.Parameters.AddWithValue("@P10", residencia.IdAlumno);

                con.ejecutarSentencia(cmd, false);
                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(false);
            }
            finally
            {
                if (Conexion.conexion != null)
                {
                    Conexion.conexion.Close();
                }
            }
        }
        /// <summary>
        /// Almacena todos los cambios realizados en la
        /// base de datos.
        /// </summary>
        private void btnGuardarCambios_Click(object sender, EventArgs e)
        {
            if (spnCalificacionFinal.Enabled == false)
            {
                DialogResult dr = MessageBox.Show("¿Mantener los cambios realizados?", "Info",
                                                  MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.No)
                {
                    return;
                }

                for (int i = 3; i < 9; i++)
                {
                    if (tablaDocumentos[1, (i - 3)].Value.Equals(true))
                    {
                        EntregaDAO.CambiarEstadoDocumento("Entregado", matricula, i);
                    }
                    else
                    {
                        EntregaDAO.CambiarEstadoDocumento("Pendiente", matricula, i);
                    }
                }
                MessageBox.Show("Documentos guardados con exito", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
                btnGuardarCambios.Enabled = false;
                entregoTodos();
            }
            else if (spnCalificacionFinal.Enabled == true)
            {
                DialogResult dr = MessageBox.Show("Crear el dictamen \"liberación asesor\" con una calificación final de " + spnCalificacionFinal.Value, "Info",
                                                  MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.No)
                {
                    return;
                }

                ResidenciaPOJO residencia = ResidenciaDAO.ObtenerResidenciaXMatricula(matricula);
                String         estatus;
                if (spnCalificacionFinal.Value >= 70)
                {
                    estatus = "Aceptado";
                }
                else
                {
                    estatus = "Rechazado";
                }
                String       fecha         = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
                DictamenPOJO nuevoDictamen = new DictamenPOJO(0, residencia.ID, idDocente, "LiberacionAsesor",
                                                              estatus, txtaComentario.Text, int.Parse(spnCalificacionFinal.Value + ""), DateTime.Parse(fecha));
                DictamenDAO.InsertarDictamen(nuevoDictamen);
                MessageBox.Show("Dictamen creado con exito", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
                llenarTablaAlumno();
                bloquearDesbloquear(false);
                btnGuardarCambios.Enabled  = false;
                spnCalificacionFinal.Value = 0;
                limpiarChecks();
                tablaDocumentos.Enabled = false;
                if (tablaAlumnos.Rows.Count == 0)
                {
                    lblNombreAlumno.Text = "NO HAY ASESORADOS CON DOCUMENTACIÓN PENDIENTE";
                    btnCorregir.Visible  = false;
                    tablaAlumnos.Enabled = false;
                }
                else
                {
                    tablaAlumnos.Rows[0].Selected = true;
                    llenarEspacios(0);
                    //lblNombreAlumno.Text = "SELECCIONE UN ALUMNO";
                    btnGuardarCambios.Enabled = true;
                }
            }
        }
        /// <summary>
        /// Llena los componentes encargados de mostrar los datos
        /// de la solicitud seleccionada previamente.
        /// </summary>
        private void cargarDatos()
        {
            AlumnoPOJO     objAlum       = AlumnoDAO.ObtenerAlumno(Solicitud.IdAlumno);
            ResidenciaPOJO objResidencia = ResidenciaDAO.ObtenerResidencia(Solicitud.IdResidencia);
            EmpresaPOJO    objEmpresa    = EmpresaDAO.ObtenerEmpresa(objResidencia.IdEmpresa);

            txtResNoControl.Text = objAlum.Matricula;
            txtResNombre.Text    = objAlum.NombreCompleto;
            cmbResCarrera.Text   = CarreraDAO.ObtenerUno(objAlum.Carrera).Nombre;
            txtResDomicilio.Text = objAlum.Domicilio;
            txtResCiudad.Text    = objAlum.Ciudad;
            txtResEmail.Text     = objAlum.Correo;
            txtResTelefono.Text  = objAlum.Telefono;
            if (objAlum.TipoSS == "IMSS")
            {
                rbtnResSSIMSS.Checked = true;
            }
            else if (objAlum.TipoSS == "ISSSTE")
            {
                rbtnResSSISSSTE.Checked = true;
            }
            else
            {
                rbtnResSSOtro.Checked = true;
            }
            txtResSSNumero.Text = objAlum.NumeroSS + "";

            txtProNombre.Text = objResidencia.NombreProyec;
            if (objResidencia.Modalidad == "Banco de proyectos")
            {
                rbtnProTipoBanco.Checked = true;
            }
            else if (objResidencia.Modalidad == "Propuesta propia")
            {
                rbtnProTipoPropia.Checked = true;
            }
            else
            {
                rbtnProTipoTrabajador.Checked = true;
            }
            cmbProPeriodo.Text = objResidencia.Periodo;

            txtEmpRFC.Text    = objEmpresa.RFC;
            txtEmpNombre.Text = objEmpresa.Nombre;
            if (objEmpresa.Giro == "Industrial")
            {
                rbtnEmpGiroIndustrial.Checked = true;
            }
            else if (objEmpresa.Giro == "Servicios")
            {
                rbtnEmpGiroServicios.Checked = true;
            }
            else
            {
                rbtnEmpGiroOtro.Checked = true;
            }
            if (objEmpresa.Sector == "Publico")
            {
                rbtnEmpTipoPublica.Checked = true;
            }
            else
            {
                rbtnEmpTipoPrivada.Checked = true;
            }
            txtEmpDomicilio.Text     = objEmpresa.Domicilio;
            txtEmpColonia.Text       = objEmpresa.Colonia;
            txtEmpCP.Text            = objEmpresa.CP;
            txtEmpFax.Text           = objEmpresa.Fax;
            txtEmpCiudad.Text        = objEmpresa.Ciudad;
            txtEmpTelefono.Text      = objEmpresa.Telefono;
            txtEmpMision.Text        = objEmpresa.Mision;
            txtEmpTitularNombre.Text = objEmpresa.Titular;
            txtEmpTitularPuesto.Text = objEmpresa.PuestoTit;
            txtEmpFirmaNombre.Text   = objResidencia.Responsable;
            txtEmpFirmaPuesto.Text   = objResidencia.PuestoResp;
            txtEmpAsesorNombre.Text  = objResidencia.AsesorExt;
            txtEmpAsesorPuesto.Text  = objResidencia.PuestoAsesor;
        }