FormacionAcademicaMysqlDAO.java 4.16 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
package trismegistoplanilla.mysqldao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.json.JSONArray;
import org.json.JSONObject;
import trismegistoplanilla.beans.FormacionAcademicaBean;
import trismegistoplanilla.beans.PersonaBean;
import trismegistoplanilla.dao.FormacionAcademicaDAO;
import trismegistoplanilla.utilities.ResponseHelper;
import trismegistoplanilla.utilities.Variables;

public class FormacionAcademicaMysqlDAO implements FormacionAcademicaDAO {

	@Override
	public JSONObject obtenerFormacionAcademicaPorPersona(PersonaBean persona) {
19
		System.out.println("FormacionAcademicaMysqlDAO: obtenerFormacionAcademicaPorPersona");
20 21 22 23 24 25 26 27
		JSONObject jsonObjObtenerFormacionAcademicaPorPersona = null;
		JSONArray jsonArrayObtenerFormacionAcademicaPorPersona = new JSONArray();
		ResponseHelper response = new ResponseHelper();
		PreparedStatement ps = null;
		ResultSet rs = null;
		Connection cnx = null;

		try {
28
			cnx = MysqlDAOFactory.obtenerConexion(Variables.MYSQL_NUEVO_BD_NAME);
29 30 31 32 33
			String sql
				= "SELECT "
				+ "formacionacademica.nombre_centro_estudio centroEstudios, "
				+ "nivelestudio.nombre nivelEstudio, "
				+ "estadoestudio.nombre estadoEstudio, "
34 35 36 37
				+ "date_format(formacionacademica.fecha_inicio, '%d/%m/%Y') fechaInicio, "
				+ "ifnull(date_format(formacionacademica.fecha_fin, '%d/%m/%Y'),'-') fechaFin, "
				+ "ifnull(formacionacademica.documento_adjunto,'NO TIENE DOCUMENTO ADJUNTO') documentoAdjunto,"
				+ "ifNull(formacionacademica.carrera_profesional,'-') carreraProfesional, "
38
				+ "formacionacademica.sector_institucion sectorInstitucion, "
39 40
				+ "ifnull(formacionacademica.numero_colegiatura,'-') numeroColegiatura, "
				+ "ifnull(formacionacademica.observacion,'-') observacion "
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
				+ "FROM formacion_academica formacionacademica "
				+ "INNER JOIN nivel_estado nivelestado ON nivelestado.codigo_nivel_estado = formacionacademica.codigo_nivel_estado "
				+ "INNER JOIN estado_estudio estadoestudio ON estadoestudio.codigo_estado_estudio = nivelestado.codigo_estado_estudio "
				+ "INNER JOIN nivel_estudio nivelestudio ON nivelestudio.codigo_nivel_estudio = nivelestado.codigo_nivel_estudio "
				+ "where formacionacademica.codigo_persona = ?";

			ps = cnx.prepareStatement(sql);
			ps.setInt(1, persona.getCodigoPersona());
			rs = ps.executeQuery();
			while (rs.next()) {
				FormacionAcademicaBean formacionAcademica = new FormacionAcademicaBean();
				formacionAcademica.setNombreCentroEstudios(rs.getString("centroEstudios"));
				formacionAcademica.setNivelEstudio(rs.getString("nivelEstudio"));
				formacionAcademica.setEstadoEstudio(rs.getString("estadoEstudio"));
				formacionAcademica.setFechaInicio(rs.getString("fechaInicio"));
				formacionAcademica.setFechaFin(rs.getString("fechaFin"));
				formacionAcademica.setDocumentoAdjunto(rs.getString("documentoAdjunto"));
				formacionAcademica.setNombreCarreraProfesional(rs.getString("carreraProfesional"));
				formacionAcademica.setSectorInstitucion(rs.getString("sectorInstitucion"));
				formacionAcademica.setNumeroColegiatura(rs.getString("numeroColegiatura"));
				formacionAcademica.setObservacion(rs.getString("observacion"));
				JSONObject jsonObjFormacionAcademica = new JSONObject(formacionAcademica);
				jsonArrayObtenerFormacionAcademicaPorPersona.put(jsonObjFormacionAcademica);
			}

			JSONObject jsonObjFormacionAcademica = new JSONObject();
			jsonObjFormacionAcademica.put("formacionacademica", jsonArrayObtenerFormacionAcademicaPorPersona);

			response.setStatus(true);
			response.setMessage("Se ha listado la formacion academica correctamente");
			response.setData(jsonObjFormacionAcademica);

		} catch (SQLException e) {
			e.printStackTrace();
			response.setStatus(false);
			response.setMessage("Error: " + e.getMessage() + " \n Error Code: [" + e.getErrorCode() + "]");
		} finally {
			try {
				if (rs != null) {
					rs.close();
				}
				if (ps != null) {
					ps.close();
				}
				if (cnx != null) {
					cnx.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

		jsonObjObtenerFormacionAcademicaPorPersona = new JSONObject(response);
		return jsonObjObtenerFormacionAcademicaPorPersona;
	}

}