/// <summary> /// Busca y obtiene el dictamen que coincida con los /// parámetros ingresados. /// </summary> /// <param name="idDocente"></param> /// Identificador del docente. /// /// <param name="idAlumno"></param> /// Identificador del alumno. /// /// <param name="tipo"></param> /// Tipo de dictamen a buscado. /// <returns> /// Retorna el dictamen especificado si es encontrado, de otro modo retorna /// null. /// </returns> public static DictamenPOJO ObtenerDictamen(String idDocente, String idAlumno, String tipo) { try { var idResidencia = SolicitudDAO.ObtenerSolicitud(idAlumno).IdResidencia; Conexion con = new Conexion(); MySqlCommand cmd = new MySqlCommand("SELECT * FROM dictamen WHERE IdDocente=@P0 AND " + "IdResidencia=@P1 AND Tipo=@P2"); cmd.Parameters.AddWithValue("@P0", idDocente); cmd.Parameters.AddWithValue("@P1", idResidencia); cmd.Parameters.AddWithValue("@P2", tipo); DataTable dt = con.ejecutarConsulta(cmd); if (dt.Rows.Count != 1) { return(null); } return(DataRowAObjeto(dt.Rows[0])); } catch (Exception ex) { return(null); } finally { if (Conexion.conexion != null) { Conexion.conexion.Close(); } } }
/// <summary> /// Genera un archivo de Excel que contiene la solicitud de residencias /// profesionales de un alumno, a través de su matrícula. /// </summary> /// <param name="matricula">Matrícula del alumno de quien se generará la solicitud</param> /// <param name="ruta">Ruta donde se almacenará el archivo</param> /// <returns></returns> public static bool GenerarFormatoDeSolicitud(String matricula, String ruta) { // Obtener informacion de la solicitud var alumno = AlumnoDAO.ObtenerAlumno(matricula); var solicitud = SolicitudDAO.ObtenerSolicitud(matricula); var residencia = ResidenciaDAO.ObtenerResidencia(solicitud.IdResidencia); var empresa = EmpresaDAO.ObtenerEmpresa(residencia.IdEmpresa); // Obtener la ruta del archivo de plantilla var rutaPlantilla = Path.Combine(System.IO.Path.GetFullPath(@"..\..\"), "Resources", "Plantilla.xlsx"); // Crear la lista de cambios var listaDatos = new List <DatoCelda>(); // Fecha listaDatos.Add(new DatoCelda(6, 17, String.Format("{0:00}/{1:00}/{2}", DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year))); // Nombre del proyecto listaDatos.Add(new DatoCelda(11, 10, residencia.NombreProyec)); // Opcion elegida if (residencia.Modalidad == "Banco de proyectos") { listaDatos.Add(new DatoCelda(14, 13, "X")); } if (residencia.Modalidad == "Propuesta propia") { listaDatos.Add(new DatoCelda(14, 20, "X")); } if (residencia.Modalidad == "Trabajador") { listaDatos.Add(new DatoCelda(14, 26, "X")); } // Periodo proyectado listaDatos.Add(new DatoCelda(17, 10, String.Format("{0} {1}", residencia.Periodo, residencia.Anio))); // Nombre de la empresa listaDatos.Add(new DatoCelda(22, 4, empresa.Nombre)); // Giro de la empresa listaDatos.Add(new DatoCelda(24, 4, String.Format("Industrial ( {0} ) Servicios ( {1} ) Otro ( {2} )", empresa.Giro == "Industrial" ? "X" : " ", empresa.Giro == "Servicios" ? "X" : " ", empresa.Giro == "Otro" ? "X" : " "))); // RFC de la empresa listaDatos.Add(new DatoCelda(24, 19, empresa.RFC)); // Sector de la empresa listaDatos.Add(new DatoCelda(25, 4, String.Format("Pública ( {0} ) Privada( {1} )", empresa.Sector == "Publico" ? "X" : " ", empresa.Sector == "Privado" ? "X" : " "))); // Domicilio de la empresa listaDatos.Add(new DatoCelda(26, 4, empresa.Domicilio)); // Colonia de la empresa listaDatos.Add(new DatoCelda(28, 4, empresa.Colonia)); // CP de la empresa listaDatos.Add(new DatoCelda(28, 15, empresa.CP)); // Fax de la empresa listaDatos.Add(new DatoCelda(28, 21, empresa.Fax)); // Mision de la empresa listaDatos.Add(new DatoCelda(30, 4, empresa.Mision)); // Nombre del titular de la empresa listaDatos.Add(new DatoCelda(37, 6, empresa.Titular)); // Puesto del titular de la empresa listaDatos.Add(new DatoCelda(37, 19, empresa.PuestoTit)); // Nombre del asesor de la empresa listaDatos.Add(new DatoCelda(39, 6, residencia.AsesorExt)); // Puesto del asesor de la empresa listaDatos.Add(new DatoCelda(39, 19, residencia.PuestoAsesor)); // Nombre del responsable de la empresa listaDatos.Add(new DatoCelda(41, 9, residencia.Responsable)); // Puesto del responsable de la empresa listaDatos.Add(new DatoCelda(41, 19, residencia.PuestoResp)); // Nombre del residente listaDatos.Add(new DatoCelda(51, 4, alumno.NombreCompleto)); // Carrera del residente listaDatos.Add(new DatoCelda(53, 4, CarreraDAO.ObtenerUno(alumno.Carrera).Nombre)); // Matricula del residente listaDatos.Add(new DatoCelda(53, 19, alumno.Matricula)); // Domicilio del residente listaDatos.Add(new DatoCelda(55, 4, alumno.Domicilio)); // Correo del residente listaDatos.Add(new DatoCelda(57, 4, alumno.Correo)); // Tipo de SS del residente listaDatos.Add(new DatoCelda(57, 17, String.Format("IMSS ( {0} ) ISSSTE( {1} ) Otro( {2} )", alumno.TipoSS == "IMSS" ? "X" : " ", alumno.TipoSS == "ISSSTE" ? "X" : " ", alumno.TipoSS == "Otro" ? "X" : " "))); // Numero de SS del residente listaDatos.Add(new DatoCelda(58, 17, alumno.NumeroSS)); // Ciudad del residente listaDatos.Add(new DatoCelda(59, 4, alumno.Ciudad)); // Telefono del residente listaDatos.Add(new DatoCelda(59, 17, alumno.Telefono)); return(ExcelGenerador.LlenarPlantillaConDatos(ruta, rutaPlantilla, listaDatos)); }