Commit 0607d75a by sistem26user

[ADD] Añadida columna de usuario en el reporte de cambios y reemplazos

parent 00ef182f
......@@ -34,8 +34,17 @@ public class HorarioCF {
private String grupoAcademico;
private Time hora;
private String estadoEliminado;
private String usuarioAcciona;
public HorarioCF(){
public String getUsuarioAcciona() {
return usuarioAcciona;
}
public void setUsuarioAcciona(String usuarioAcciona) {
this.usuarioAcciona = usuarioAcciona;
}
public HorarioCF() {
}
......@@ -47,8 +56,6 @@ public class HorarioCF {
this.estadoEliminado = estadoEliminado;
}
public Time getHora() {
return hora;
}
......@@ -57,8 +64,6 @@ public class HorarioCF {
this.hora = hora;
}
public Date getFechaRegistro() {
return fechaRegistro;
}
......@@ -83,10 +88,6 @@ public class HorarioCF {
this.grupoAcademico = grupoAcademico;
}
public String getNombreSede() {
return nombreSede;
}
......@@ -199,8 +200,4 @@ public class HorarioCF {
this.observacion = observacion;
}
}
......@@ -58,16 +58,16 @@ public class MySqlDAOFactory extends DAOFactory {
try {
conexion = DriverManager.getConnection(
"jdbc:mysql://serverprueba:3306/encuesta_docente",
"desarrollo",
"5VC02019");
// "jdbc:mysql://localhost:3306/encuesta_docente",
// "root",
// "mysql");
// "jdbc:mysql://serverprueba:3306/encuesta_docente",
// "desarrollo",
// "5VC02019");
// "jdbc:mysql://localhost:3306/encuesta_docente",
// "root",
// "mysql");
//server_winpla
// "jdbc:mysql://172.16.2.68:3306/encuesta_docente",
// "sis_horarios",
// "Sy356ho899");
"jdbc:mysql://172.16.2.68:3306/encuesta_docente",
"sis_horarios",
"Sy356ho899");
} catch (Exception e) {
// TODO Auto-generated catch block
......@@ -79,16 +79,16 @@ public class MySqlDAOFactory extends DAOFactory {
try {
conexion = DriverManager.getConnection(
"jdbc:mysql://serverprueba:3306/nuevo",
"desarrollo",
"5VC02019");
// "jdbc:mysql://localhost:3306/nuevo",
// "root",
// "mysql");
// "jdbc:mysql://serverprueba:3306/nuevo",
// "desarrollo",
// "5VC02019");
// "jdbc:mysql://localhost:3306/nuevo",
// "root",
// "mysql");
//server_winpla
// "jdbc:mysql://172.16.2.68:3306/nuevo",
// "sis_horarios",
// "Sy356ho899");
"jdbc:mysql://172.16.2.68:3306/nuevo",
"sis_horarios",
"Sy356ho899");
} catch (Exception e) {
// TODO Auto-generated catch block
......@@ -100,16 +100,16 @@ public class MySqlDAOFactory extends DAOFactory {
try {
conexion = DriverManager.getConnection(
"jdbc:mysql://serverprueba:3306/horarios_docente",
"desarrollo",
"5VC02019");
// "jdbc:mysql://localhost:3306/horarios_docente",
// "root",
// "mysql");
// "jdbc:mysql://serverprueba:3306/horarios_docente",
// "desarrollo",
// "5VC02019");
// "jdbc:mysql://localhost:3306/horarios_docente",
// "root",
// "mysql");
//server_winpla
// "jdbc:mysql://172.16.2.68:3306/horarios_docente",
// "sis_horarios",
// "Sy356ho899");
"jdbc:mysql://172.16.2.68:3306/horarios_docente",
"sis_horarios",
"Sy356ho899");
} catch (Exception e) {
// TODO Auto-generated catch block
......@@ -120,16 +120,16 @@ public class MySqlDAOFactory extends DAOFactory {
try {
conexion = DriverManager.getConnection(
"jdbc:mysql://serverprueba:3306/sacoolive3",
"desarrollo",
"5VC02019");
// "jdbc:mysql://localhost:3306/sacoolive3",
// "root",
// "mysql");
// "jdbc:mysql://serverprueba:3306/sacoolive3",
// "desarrollo",
// "5VC02019");
// "jdbc:mysql://localhost:3306/sacoolive3",
// "root",
// "mysql");
//server_winpla
// "jdbc:mysql://172.16.2.68:3306/sacoolive3",
// "sis_horarios",
// "Sy356ho899");
"jdbc:mysql://172.16.2.68:3306/sacoolive3",
"sis_horarios",
"Sy356ho899");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
......
......@@ -368,7 +368,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
docente.setCantHijos(rs.getInt("cant_hijos"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
......@@ -403,34 +402,34 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
@Override
public ArrayList<Docente> consultarDatos(String codDocente,String codPeriodo) throws Exception {
public ArrayList<Docente> consultarDatos(String codDocente, String codPeriodo) throws Exception {
ArrayList<Docente> lista = new ArrayList<Docente>();
String base = "horario";
Connection cnx = null;
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
Statement st = cnx.createStatement();
String query = "SELECT DISTINCT IFNULL(p.nom_pla,'-')nom_pla,datos_docente.cant_hijos,datos_docente.cod_dat_per, \n" +
" datos_docente.cod_doc, datos_docente.tel_dat_per, \n" +
" datos_docente.cor_dat_per, datos_docente.cod_prov, \n" +
" datos_docente.cod_dep, datos_docente.cod_dis, \n" +
" datos_docente.cel_dat_per, datos_docente.nom_dir, \n" +
" ubigeo.nom_dis_ubi, ubigeo.nom_dep_ubi, \n" +
" ubigeo.nom_pro_ubi FROM datos_docente \n" +
" INNER JOIN ubigeo \n" +
" ON datos_docente.cod_dis = ubigeo.cod_dis_ubi \n" +
" AND datos_docente.cod_dep = ubigeo.cod_dep_ubi \n" +
" AND datos_docente.cod_prov = ubigeo.cod_pro_ubi\n" +
" LEFT JOIN(\n" +
" SELECT ad.cod_doc, p.nom_pla FROM area_docente ad\n" +
" INNER JOIN plana_docente pd ON ad.cod_doc=pd.cod_doc\n" +
" INNER JOIN plana p ON p.cod_pla=pd.cod_pla\n" +
" WHERE ad.cod_doc='"+codDocente+"' and pd.cod_per='"+codPeriodo+"' AND pd.est_plana='1'\n" +
" ) p\n" +
" \n" +
" ON p.cod_doc=datos_docente.cod_doc\n" +
" \n" +
" WHERE datos_docente.cod_doc='"+codDocente+"'";
String query = "SELECT DISTINCT IFNULL(p.nom_pla,'-')nom_pla,datos_docente.cant_hijos,datos_docente.cod_dat_per, \n"
+ " datos_docente.cod_doc, datos_docente.tel_dat_per, \n"
+ " datos_docente.cor_dat_per, datos_docente.cod_prov, \n"
+ " datos_docente.cod_dep, datos_docente.cod_dis, \n"
+ " datos_docente.cel_dat_per, datos_docente.nom_dir, \n"
+ " ubigeo.nom_dis_ubi, ubigeo.nom_dep_ubi, \n"
+ " ubigeo.nom_pro_ubi FROM datos_docente \n"
+ " INNER JOIN ubigeo \n"
+ " ON datos_docente.cod_dis = ubigeo.cod_dis_ubi \n"
+ " AND datos_docente.cod_dep = ubigeo.cod_dep_ubi \n"
+ " AND datos_docente.cod_prov = ubigeo.cod_pro_ubi\n"
+ " LEFT JOIN(\n"
+ " SELECT ad.cod_doc, p.nom_pla FROM area_docente ad\n"
+ " INNER JOIN plana_docente pd ON ad.cod_doc=pd.cod_doc\n"
+ " INNER JOIN plana p ON p.cod_pla=pd.cod_pla\n"
+ " WHERE ad.cod_doc='" + codDocente + "' and pd.cod_per='" + codPeriodo + "' AND pd.est_plana='1'\n"
+ " ) p\n"
+ " \n"
+ " ON p.cod_doc=datos_docente.cod_doc\n"
+ " \n"
+ " WHERE datos_docente.cod_doc='" + codDocente + "'";
ResultSet rs = st.executeQuery(query);
......@@ -667,7 +666,7 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
@Override
public int registroDatos(String codDocente, String telefono, String mail, int cod_dep, int cod_pro, int cod_dis, String cel, String dir,int numhijos,int codarea,int codplana,int codperiodo) throws Exception {
public int registroDatos(String codDocente, String telefono, String mail, int cod_dep, int cod_pro, int cod_dis, String cel, String dir, int numhijos, int codarea, int codplana, int codperiodo) throws Exception {
int dato = 0;
String base = "horario";
Connection cnx = null;
......@@ -680,10 +679,9 @@ public class MySqlDocenteDAO implements DocenteDAO {
dato = rs.getInt("cant");
}
if (dato == 0) {
String queryInsert = "insert into datos_docente (cod_doc, tel_dat_per, cor_dat_per,cod_prov,cod_dep, cod_dis, cel_dat_per, nom_dir,cant_hijos) VALUES ('" + codDocente + "','" + telefono + "','" + mail + "','" + cod_pro + "','" + cod_dep + "','" + cod_dis + "','" + cel + "','" + dir + "','"+numhijos+"')";
String insertarArea="insert into area_docente(cod_doc,cod_are,est_are_doc) VALUES ('"+codDocente+"','"+codarea+"',1)";
String insertarPlana="insert into plana_docente(cod_pla,cod_doc,cod_per,est_plana) VALUES('"+codplana+"','"+codDocente+"','"+codperiodo+"',1)";
String queryInsert = "insert into datos_docente (cod_doc, tel_dat_per, cor_dat_per,cod_prov,cod_dep, cod_dis, cel_dat_per, nom_dir,cant_hijos) VALUES ('" + codDocente + "','" + telefono + "','" + mail + "','" + cod_pro + "','" + cod_dep + "','" + cod_dis + "','" + cel + "','" + dir + "','" + numhijos + "')";
String insertarArea = "insert into area_docente(cod_doc,cod_are,est_are_doc) VALUES ('" + codDocente + "','" + codarea + "',1)";
String insertarPlana = "insert into plana_docente(cod_pla,cod_doc,cod_per,est_plana) VALUES('" + codplana + "','" + codDocente + "','" + codperiodo + "',1)";
st.executeUpdate(queryInsert);
st.executeUpdate(insertarArea);
......@@ -699,12 +697,12 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
@Override
public int registrarDatosEdit(String codDocente, String telefono, String mail, int cod_dep, int cod_pro, int cod_dis, String cel, String dir,int cantHijos,int codArea,int codPlana,int periodo) throws Exception {
public int registrarDatosEdit(String codDocente, String telefono, String mail, int cod_dep, int cod_pro, int cod_dis, String cel, String dir, int cantHijos, int codArea, int codPlana, int periodo) throws Exception {
int dato = 0;
int datoPlana = 0;
String base = "horario";
Connection cnx = null;
String consultaPlanaDocente="";
String consultaPlanaDocente = "";
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
......@@ -712,11 +710,10 @@ public class MySqlDocenteDAO implements DocenteDAO {
String queryConsulta = "SELECT COUNT(cod_doc) as cant from datos_docente where cod_doc='" + codDocente + "'";
consultaPlanaDocente = "SELECT COUNT(cod_doc) as cantidad from plana_docente where cod_doc='" + codDocente + "' and cod_per='"+periodo+"'";
consultaPlanaDocente = "SELECT COUNT(cod_doc) as cantidad from plana_docente where cod_doc='" + codDocente + "' and cod_per='" + periodo + "'";
ResultSet rs = st.executeQuery(queryConsulta);
while (rs.next()) {
dato = rs.getInt("cant");
......@@ -733,28 +730,26 @@ public class MySqlDocenteDAO implements DocenteDAO {
datoPlana = rsDos.getInt("cantidad");
}
if(datoPlana > 0){
String updateArea = "UPDATE area_docente SET cod_are="+codArea+" where cod_doc="+codDocente+"";
String updatePlan = "UPDATE plana_docente SET cod_pla="+codPlana+" where cod_doc="+codDocente+" and cod_per='"+periodo+"' and est_plana=1";
if (datoPlana > 0) {
String updateArea = "UPDATE area_docente SET cod_are=" + codArea + " where cod_doc=" + codDocente + "";
String updatePlan = "UPDATE plana_docente SET cod_pla=" + codPlana + " where cod_doc=" + codDocente + " and cod_per='" + periodo + "' and est_plana=1";
st.executeUpdate(updateArea);
st.executeUpdate(updatePlan);
} else {
String insertArea = "INSERT INTO area_docente (cod_doc,cod_are,est_are_doc) VALUES('"+codDocente+"','"+codArea+"',1)";
String insertPlan = "INSERT INTO plana_docente (cod_pla,cod_doc,cod_per,est_plana) VALUES('"+codPlana+"','"+codDocente+"','"+periodo+"',1)";
String insertArea = "INSERT INTO area_docente (cod_doc,cod_are,est_are_doc) VALUES('" + codDocente + "','" + codArea + "',1)";
String insertPlan = "INSERT INTO plana_docente (cod_pla,cod_doc,cod_per,est_plana) VALUES('" + codPlana + "','" + codDocente + "','" + periodo + "',1)";
st.executeUpdate(insertArea);
st.executeUpdate(insertPlan);
}
System.out.println("consulta-->" + queryInsert);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
......@@ -1515,7 +1510,7 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
@Override
public Docente consultarInforme(String codigoDocente,String codSede) throws Exception {
public Docente consultarInforme(String codigoDocente, String codSede) throws Exception {
String base = "horario";
Docente docente = new Docente();
......@@ -1523,18 +1518,18 @@ public class MySqlDocenteDAO implements DocenteDAO {
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
Statement st = cnx.createStatement();
String query = "SELECT \n" +
" i.nom_doc, \n" +
" i.mot_int, \n" +
" i.arg_inf, \n" +
" i.nom_sed, \n" +
" DATE(i.fec_inf) AS fec_inf, \n" +
" i.res_inf \n" +
" FROM \n" +
" informe i \n" +
"INNER JOIN sede s ON s.cod_loc=i.cod_sed\n" +
" WHERE \n" +
" i.cod_doc = '"+codigoDocente+"' and i.cod_sed='"+codSede+"'";
String query = "SELECT \n"
+ " i.nom_doc, \n"
+ " i.mot_int, \n"
+ " i.arg_inf, \n"
+ " i.nom_sed, \n"
+ " DATE(i.fec_inf) AS fec_inf, \n"
+ " i.res_inf \n"
+ " FROM \n"
+ " informe i \n"
+ "INNER JOIN sede s ON s.cod_loc=i.cod_sed\n"
+ " WHERE \n"
+ " i.cod_doc = '" + codigoDocente + "' and i.cod_sed='" + codSede + "'";
ResultSet rs = st.executeQuery(query);
if (rs.next()) {
docente.setRespuestaInforme(rs.getString("res_inf"));
......@@ -2276,14 +2271,12 @@ public class MySqlDocenteDAO implements DocenteDAO {
st = cnx.createStatement();
String query = "SELECT cod_hcd,codAula,dia,pos_blo,hor_ini,hor_fin,cod_cur,cod_doc,cod_tur,cod_per,codGru FROM horario_curso_docente WHERE cod_doc = ? and cod_per= ? ";
String deshabilitarDisponibilidad = "UPDATE disponibilidad_docente SET estDis='0' WHERE codDoc = '"+codigo+"' and cod_per= '"+periodo+"' ";
String deshabilitarDisponibilidad = "UPDATE disponibilidad_docente SET estDis='0' WHERE codDoc = '" + codigo + "' and cod_per= '" + periodo + "' ";
pst = cnx.prepareStatement(query);
st.executeUpdate(deshabilitarDisponibilidad);
pst.setString(1, codigo);
pst.setString(2, periodo);
rs = pst.executeQuery();
......@@ -2332,44 +2325,44 @@ public class MySqlDocenteDAO implements DocenteDAO {
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
String query = "SELECT tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" - \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n" +
"\n" +
"IF(tbl1.cantLib=0,tbl1.cantAulas*tbl1.computable,(tbl1.computable*3)-(tbl1.cantLib*tbl1.computable)) cantMin,\n" +
"\n" +
"tbl1.doc_saliente,tbl1.nom_cur,tbl1.fechafin,tbl1.motivoCambio,tbl1.doc_entrante,tbl1.curso_entrante,\n" +
"\n" +
"tbl1.fechainicio,tbl1.condicionTrabajador,tbl1.observacion\n" +
"FROM (\n" +
"SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib,\n" +
"tbl.turno,REPLACE(GROUP_CONCAT(tbl.aula ORDER BY ingreso ),',','-') aulas,SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico,\n" +
"tbl.computable,tbl.doc_saliente,tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur,\n" +
"tbl.fechainicio,tbl.condicionTrabajador,tbl.observacion\n" +
"FROM (\n" +
"SELECT hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,\n" +
"s.des_loc,TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,IF(tg.destipogrado ='LIBRE',1,0) cantLib,\n" +
"IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<'14:20','M','T') turno,\n" +
"TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula,\n" +
"1 cantAulas,IF(g.abrGrado LIKE '%1' OR g.abrGrado LIKE '%2','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico,\n" +
"IF(a.codtipocentro = 2,120,80) computable,CONCAT(pf1.apellido,\" \",pf1.nombre) as doc_saliente ,c2.nom_cur,IF(hcd.fechafin = '','-',hcd.fechafin) fechafin,\n" +
"hcd.motivoCambio,CONCAT(pf2.apellido,\" \",pf2.nombre)as doc_entrante ,c.nom_cur as curso_entrante,hcd.cod_cur,\n" +
"IF(hcd.fechainicio = '','-',hcd.fechainicio) fechainicio,hcd.condicionTrabajador,hcd.observacion\n" +
"FROM historial_horario hcd\n" +
"INNER JOIN curso c ON c.cod_cur=hcd.cod_cur\n" +
"INNER JOIN curso c2 ON c2.cod_cur=hcd.cod_cur_reemp\n" +
"INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc_reemp\n" +
"INNER JOIN sacoolive3.profesor pf2 ON pf2.codprofesor=hcd.cod_doc\n" +
"INNER JOIN aula a ON a.codaula=hcd.codAula\n" +
"INNER JOIN grado g on g.codgrado = a.codgrado \n" +
"INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado\n" +
"INNER JOIN sede s ON s.cod_loc=a.codlocal\n" +
"WHERE \n" +
"hcd.fecha BETWEEN ? AND ? AND accion='CAMBIO FIJO'\n" +
"\n" +
") tbl\n" +
"GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.cantAulas,tbl.doc_saliente,\n" +
"tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur,\n" +
"tbl.fechainicio,tbl.condicionTrabajador \n" +
") tbl1";
String query = "SELECT tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" - \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n"
+ "\n"
+ "IF(tbl1.cantLib=0,tbl1.cantAulas*tbl1.computable,(tbl1.computable*3)-(tbl1.cantLib*tbl1.computable)) cantMin,\n"
+ "\n"
+ "tbl1.doc_saliente,tbl1.nom_cur,tbl1.fechafin,tbl1.motivoCambio,tbl1.doc_entrante,tbl1.curso_entrante,\n"
+ "\n"
+ "tbl1.fechainicio,tbl1.condicionTrabajador,tbl1.observacion\n"
+ "FROM (\n"
+ "SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib,\n"
+ "tbl.turno,REPLACE(GROUP_CONCAT(tbl.aula ORDER BY ingreso ),',','-') aulas,SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico,\n"
+ "tbl.computable,tbl.doc_saliente,tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur,\n"
+ "tbl.fechainicio,tbl.condicionTrabajador,tbl.observacion\n"
+ "FROM (\n"
+ "SELECT hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,\n"
+ "s.des_loc,TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,IF(tg.destipogrado ='LIBRE',1,0) cantLib,\n"
+ "IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<'14:20','M','T') turno,\n"
+ "TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula,\n"
+ "1 cantAulas,IF(g.abrGrado LIKE '%1' OR g.abrGrado LIKE '%2','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico,\n"
+ "IF(a.codtipocentro = 2,120,80) computable,CONCAT(pf1.apellido,\" \",pf1.nombre) as doc_saliente ,c2.nom_cur,IF(hcd.fechafin = '','-',hcd.fechafin) fechafin,\n"
+ "hcd.motivoCambio,CONCAT(pf2.apellido,\" \",pf2.nombre)as doc_entrante ,c.nom_cur as curso_entrante,hcd.cod_cur,\n"
+ "IF(hcd.fechainicio = '','-',hcd.fechainicio) fechainicio,hcd.condicionTrabajador,hcd.observacion\n"
+ "FROM historial_horario hcd\n"
+ "INNER JOIN curso c ON c.cod_cur=hcd.cod_cur\n"
+ "INNER JOIN curso c2 ON c2.cod_cur=hcd.cod_cur_reemp\n"
+ "INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc_reemp\n"
+ "INNER JOIN sacoolive3.profesor pf2 ON pf2.codprofesor=hcd.cod_doc\n"
+ "INNER JOIN aula a ON a.codaula=hcd.codAula\n"
+ "INNER JOIN grado g on g.codgrado = a.codgrado \n"
+ "INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado\n"
+ "INNER JOIN sede s ON s.cod_loc=a.codlocal\n"
+ "WHERE \n"
+ "hcd.fecha BETWEEN ? AND ? AND accion='CAMBIO FIJO'\n"
+ "\n"
+ ") tbl\n"
+ "GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.cantAulas,tbl.doc_saliente,\n"
+ "tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur,\n"
+ "tbl.fechainicio,tbl.condicionTrabajador \n"
+ ") tbl1";
// String query = ""
// + "SELECT "
......@@ -2461,53 +2454,94 @@ public class MySqlDocenteDAO implements DocenteDAO {
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
String query = "SELECT \n" +
" \n" +
" tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" -\",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n" +
"\n" +
" tbl1.hora,tbl1.docente,tbl1.nom_cur,\n" +
"if(tbl1.accion = 'REGISTRADO',tbl1.accion,'') as sincurso,if(tbl1.accion = 'ELIMINADO',tbl1.accion,'') as eliminado\n" +
" FROM ( \n" +
" SELECT tbl.cod_doc,tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n" +
" \n" +
" tbl.turno, \n" +
" REPLACE(GROUP_CONCAT(DISTINCT tbl.aula ORDER BY ingreso ),',','-') aulas, \n" +
" SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n" +
" tbl.computable,tbl.hora,tbl.docente,tbl.accion,tbl.nom_cur \n" +
" FROM ( \n" +
" SELECT hcd.cod_doc,hcd.hora,hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia, \n" +
" s.des_loc, \n" +
" TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso, \n" +
" TIME_FORMAT(hcd.hor_fin,'%H:%i') salida, \n" +
" IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n" +
" IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<='14:30','M','T') turno, \n" +
" \n" +
" TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n" +
" \n" +
" 1 cantAulas,IF(g.abrGrado LIKE '%1%' OR g.abrGrado LIKE '%2%','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n" +
" IF(a.codtipocentro = 2,240,360) computable, \n" +
" CONCAT(pf1.apellido,',',pf1.nombre)as docente, \n" +
" IF(hcd.accion = 'REGISTRADO','REGISTRADO','ELIMINADO') as accion,c.nom_cur \n" +
" \n" +
" FROM historial_horario hcd \n" +
" INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n" +
" INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc \n" +
" INNER JOIN aula a ON a.codaula=hcd.codAula \n" +
" INNER JOIN grado g on g.codgrado = a.codgrado \n" +
" INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n" +
" INNER JOIN sede s ON s.cod_loc=a.codlocal \n" +
" WHERE \n" +
" hcd.fecha BETWEEN ? AND ? and hcd.est_hcd=1 \n" +
" AND (accion ='ELIMINADO' or accion='REGISTRADO') \n" +
" \n" +
" \n" +
" ) tbl \n" +
" GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.nom_cur,tbl.cantAulas,tbl.accion \n" +
" ORDER BY tbl.hora DESC \n" +
" \n" +
" ) tbl1 ";
// String query = "SELECT \n"
// + " \n"
// + " tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" -\",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n"
// + "\n"
// + " tbl1.hora,tbl1.docente,tbl1.nom_cur,\n"
// + "if(tbl1.accion = 'REGISTRADO',tbl1.accion,'') as sincurso,if(tbl1.accion = 'ELIMINADO',tbl1.accion,'') as eliminado\n"
// + " FROM ( \n"
// + " SELECT tbl.cod_doc,tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n"
// + " \n"
// + " tbl.turno, \n"
// + " REPLACE(GROUP_CONCAT(DISTINCT tbl.aula ORDER BY ingreso ),',','-') aulas, \n"
// + " SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n"
// + " tbl.computable,tbl.hora,tbl.docente,tbl.accion,tbl.nom_cur \n"
// + " FROM ( \n"
// + " SELECT hcd.cod_doc,hcd.hora,hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia, \n"
// + " s.des_loc, \n"
// + " TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso, \n"
// + " TIME_FORMAT(hcd.hor_fin,'%H:%i') salida, \n"
// + " IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n"
// + " IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<='14:30','M','T') turno, \n"
// + " \n"
// + " TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n"
// + " \n"
// + " 1 cantAulas,IF(g.abrGrado LIKE '%1%' OR g.abrGrado LIKE '%2%','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n"
// + " IF(a.codtipocentro = 2,240,360) computable, \n"
// + " CONCAT(pf1.apellido,',',pf1.nombre)as docente, \n"
// + " IF(hcd.accion = 'REGISTRADO','REGISTRADO','ELIMINADO') as accion,c.nom_cur \n"
// + " \n"
// + " FROM historial_horario hcd \n"
// + " INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n"
// + " INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc \n"
// + " INNER JOIN aula a ON a.codaula=hcd.codAula \n"
// + " INNER JOIN grado g on g.codgrado = a.codgrado \n"
// + " INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n"
// + " INNER JOIN sede s ON s.cod_loc=a.codlocal \n"
// + " WHERE \n"
// + " hcd.fecha BETWEEN ? AND ? and hcd.est_hcd=1 \n"
// + " AND (accion ='ELIMINADO' or accion='REGISTRADO') \n"
// + " \n"
// + " \n"
// + " ) tbl \n"
// + " GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.nom_cur,tbl.cantAulas,tbl.accion \n"
// + " ORDER BY tbl.hora DESC \n"
// + " \n"
// + " ) tbl1 ";
String query = "SELECT \n"
+ "tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" -\",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n"
+ "tbl1.hora,tbl1.docente,tbl1.nom_cur,\n"
+ "if(tbl1.accion = 'REGISTRADO',tbl1.accion,'') as sincurso,if(tbl1.accion = 'ELIMINADO',tbl1.accion,'') as eliminado,\n"
+ "tbl1.usuario_acciona\n"
+ " FROM ( \n"
+ " SELECT tbl.cod_doc,tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n"
+ " tbl.turno,\n"
+ " REPLACE(GROUP_CONCAT(DISTINCT tbl.aula ORDER BY ingreso ),',','-') aulas, \n"
+ " SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n"
+ " tbl.computable,tbl.hora,tbl.docente,tbl.accion,tbl.nom_cur, tbl.usuario_acciona\n"
+ " FROM ( \n"
+ " SELECT hcd.cod_doc,hcd.hora,hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia, \n"
+ " s.des_loc, \n"
+ " TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso, \n"
+ " TIME_FORMAT(hcd.hor_fin,'%H:%i') salida, \n"
+ " IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n"
+ " IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<='14:30','M','T') turno, \n"
+ " TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n"
+ " \n"
+ " 1 cantAulas,IF(g.abrGrado LIKE '%1%' OR g.abrGrado LIKE '%2%','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n"
+ " IF(a.codtipocentro = 2,240,360) computable, \n"
+ " CONCAT(pf1.apellido,',',pf1.nombre)as docente, \n"
+ " IF(hcd.accion = 'REGISTRADO','REGISTRADO','ELIMINADO') as accion,\n"
+ " c.nom_cur,\n"
+ " tb_usuario.usu_usu AS usuario_acciona\n"
+ " FROM historial_horario hcd\n"
+ " INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n"
+ " INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc \n"
+ " INNER JOIN aula a ON a.codaula=hcd.codAula \n"
+ " INNER JOIN grado g on g.codgrado = a.codgrado \n"
+ " INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n"
+ " INNER JOIN sede s ON s.cod_loc=a.codlocal\n"
+ " INNER JOIN usuario tb_usuario ON hcd.cod_usu = tb_usuario.cod_usu\n"
+ " WHERE \n"
+ " hcd.fecha BETWEEN ? AND ? and hcd.est_hcd=1 \n"
+ " AND (accion ='ELIMINADO' or accion='REGISTRADO') \n"
+ " \n"
+ " \n"
+ " ) tbl \n"
+ " GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.nom_cur,tbl.cantAulas,tbl.accion \n"
+ " ORDER BY tbl.hora DESC \n"
+ " ) tbl1";
PreparedStatement st = cnx.prepareStatement(query);
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
......@@ -2534,7 +2568,7 @@ public class MySqlDocenteDAO implements DocenteDAO {
h.setCursoEntrante(rs.getString("nom_cur"));
h.setMotivoCambio(rs.getString("sincurso"));
h.setEstadoEliminado(rs.getString("eliminado"));
h.setUsuarioAcciona(rs.getString("usuario_acciona"));
lista.add(h);
}
} catch (Exception e) {
......@@ -2546,7 +2580,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
@Override
public ArrayList<HorarioCF> listarEliminados(String fechaDesde, String fechaHasta) throws Exception {
ArrayList<HorarioCF> lista = new ArrayList<HorarioCF>();
......@@ -2555,52 +2588,51 @@ public class MySqlDocenteDAO implements DocenteDAO {
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
String query = "SELECT \n" +
" tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" - \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n" +
"\n" +
" tbl1.hora,tbl1.docente,tbl1.nom_cur,tbl1.accion\n" +
" FROM ( \n" +
" SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n" +
"\n" +
" tbl.turno,\n" +
" REPLACE(GROUP_CONCAT(DISTINCT tbl.aula ORDER BY ingreso ),',','-') aulas,\n" +
" SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n" +
" tbl.computable,tbl.hora,tbl.docente,tbl.accion,tbl.nom_cur\n" +
" FROM ( \n" +
" SELECT hcd.hora,hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia, \n" +
" s.des_loc,\n" +
" TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,\n" +
" TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,\n" +
" IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n" +
" IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<='14:30','M','T') turno, \n" +
"\n" +
" \n" +
"\n" +
" TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n" +
"\n" +
" 1 cantAulas,IF(g.abrGrado LIKE '%1%' OR g.abrGrado LIKE '%2%','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n" +
" IF(a.codtipocentro = 2,240,360) computable,\n" +
" CONCAT(pf1.apellido,',',pf1.nombre)as docente,\n" +
" IF(hcd.accion = 'REGISTRADO','SIN CURSO','ELIMINADO') as accion,c.nom_cur\n" +
"\n" +
" FROM historial_horario hcd \n" +
" INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n" +
" INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc \n" +
" INNER JOIN aula a ON a.codaula=hcd.codAula \n" +
" INNER JOIN grado g on g.codgrado = a.codgrado \n" +
" INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n" +
" INNER JOIN sede s ON s.cod_loc=a.codlocal \n" +
" WHERE \n" +
" hcd.fecha BETWEEN ? AND ? and hcd.est_hcd=1\n" +
" AND accion ='ELIMINADO'\n" +
" \n" +
" \n" +
" ) tbl \n" +
" GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.nom_cur,tbl.cantAulas\n" +
" ORDER BY tbl.hora DESC\n" +
" \n" +
" ) tbl1";
String query = "SELECT \n"
+ " tbl1.fecha,tbl1.des_loc,tbl1.dia,tbl1.turno,CONCAT(tbl1.ingreso,\" - \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,\n"
+ "\n"
+ " tbl1.hora,tbl1.docente,tbl1.nom_cur,tbl1.accion\n"
+ " FROM ( \n"
+ " SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n"
+ "\n"
+ " tbl.turno,\n"
+ " REPLACE(GROUP_CONCAT(DISTINCT tbl.aula ORDER BY ingreso ),',','-') aulas,\n"
+ " SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n"
+ " tbl.computable,tbl.hora,tbl.docente,tbl.accion,tbl.nom_cur\n"
+ " FROM ( \n"
+ " SELECT hcd.hora,hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia, \n"
+ " s.des_loc,\n"
+ " TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,\n"
+ " TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,\n"
+ " IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n"
+ " IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<='14:30','M','T') turno, \n"
+ "\n"
+ " \n"
+ "\n"
+ " TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n"
+ "\n"
+ " 1 cantAulas,IF(g.abrGrado LIKE '%1%' OR g.abrGrado LIKE '%2%','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n"
+ " IF(a.codtipocentro = 2,240,360) computable,\n"
+ " CONCAT(pf1.apellido,',',pf1.nombre)as docente,\n"
+ " IF(hcd.accion = 'REGISTRADO','SIN CURSO','ELIMINADO') as accion,c.nom_cur\n"
+ "\n"
+ " FROM historial_horario hcd \n"
+ " INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n"
+ " INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc \n"
+ " INNER JOIN aula a ON a.codaula=hcd.codAula \n"
+ " INNER JOIN grado g on g.codgrado = a.codgrado \n"
+ " INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n"
+ " INNER JOIN sede s ON s.cod_loc=a.codlocal \n"
+ " WHERE \n"
+ " hcd.fecha BETWEEN ? AND ? and hcd.est_hcd=1\n"
+ " AND accion ='ELIMINADO'\n"
+ " \n"
+ " \n"
+ " ) tbl \n"
+ " GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.nom_cur,tbl.cantAulas\n"
+ " ORDER BY tbl.hora DESC\n"
+ " \n"
+ " ) tbl1";
PreparedStatement st = cnx.prepareStatement(query);
......@@ -2623,7 +2655,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
// h.setGrupoAcademico(rs.getString("grupoAcademico"));
// h.setCodigoAula(rs.getString("aulas"));
// h.setHora(rs.getTime("hora"));
h.setDocenteEntrante(rs.getString("docente"));
h.setCursoEntrante(rs.getString("nom_cur"));
h.setMotivoCambio(rs.getString("accion"));
......@@ -2638,7 +2669,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
return lista;
}
@Override
public ArrayList<Horario> listarCambiosDia(String fechaDesde, String fechaHasta) throws Exception {
ArrayList<Horario> lista = new ArrayList<Horario>();
......@@ -2647,54 +2677,53 @@ public class MySqlDocenteDAO implements DocenteDAO {
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
String query = "SELECT tbl1.fecha,tbl1.des_loc,tbl1.fechafin,CONCAT(tbl1.ingreso,\"- \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,tbl1.nom_cur, \n" +
" \n" +
" IF(tbl1.cantLib=0,tbl1.cantAulas*tbl1.computable,(tbl1.computable*3)-(tbl1.cantLib*tbl1.computable)) cantMin, \n" +
"\n" +
"\n" +
" tbl1.doc_saliente,tbl1.motivoCambio,tbl1.observacion,tbl1.horaAviso,tbl1.doc_entrante,tbl1.curso_entrante, \n" +
" \n" +
" tbl1.fechainicio,tbl1.avance,tbl1.recuperacion,tbl1.fecha_aviso,tbl1.docente_recuperacion,tbl1.curso_recuperacion,tbl1.fecha_recuperacion,tbl1.horini_recuperacion,tbl1.horfini_recuperacion \n" +
" \n" +
" FROM ( \n" +
" SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n" +
" \n" +
" tbl.turno,REPLACE(GROUP_CONCAT(tbl.aula ORDER BY ingreso ),',','-') aulas,SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n" +
" \n" +
" tbl.computable,tbl.doc_saliente,tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur, \n" +
" tbl.fechainicio,tbl.observacion,tbl.avance,tbl.recuperacion,tbl.horaAviso,tbl.fecha_aviso,tbl.docente_recuperacion,tbl.curso_recuperacion,tbl.fecha_recuperacion,tbl.horini_recuperacion,tbl.horfini_recuperacion\n" +
" FROM ( \n" +
" SELECT hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,\n" +
" \n" +
" s.des_loc,TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n" +
" IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<'14:20','M','T') turno, \n" +
" \n" +
" TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n" +
" 1 cantAulas,IF(g.abrGrado LIKE '%1' OR g.abrGrado LIKE '%2','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n" +
"\n" +
" IF(a.codtipocentro = 2,120,80) computable,CONCAT(pf1.apellido,\" \",pf1.nombre) as doc_saliente ,c2.nom_cur,hcd.fechafin, \n" +
"\n" +
" hcd.motivoCambio,CONCAT(pf2.apellido,\" \",pf2.nombre)as doc_entrante ,c.nom_cur as curso_entrante,hcd.cod_cur, \n" +
" \n" +
" hcd.fechainicio,hcd.observacion,hcd.avance,hcd.recuperacion,hcd.horaAviso,hcd.fecha_aviso,hcd.docente_recuperacion ,hcd.curso_recuperacion,hcd.fecha_recuperacion,hcd.horini_recuperacion,hcd.horfini_recuperacion\n" +
" FROM historial_horario hcd \n" +
" INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n" +
" INNER JOIN curso c2 ON c2.cod_cur=hcd.cod_cur_reemp \n" +
" INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc_reemp \n" +
" INNER JOIN sacoolive3.profesor pf2 ON pf2.codprofesor=hcd.cod_doc \n" +
" INNER JOIN aula a ON a.codaula=hcd.codAula \n" +
" INNER JOIN grado g on g.codgrado = a.codgrado \n" +
" INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n" +
" INNER JOIN sede s ON s.cod_loc=a.codlocal \n" +
" WHERE \n" +
" accion = 'CAMBIO DIA' AND est_hcd = 1 and \n" +
" hcd.fecha BETWEEN ? AND ?\n" +
" ) tbl \n" +
" GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.cantAulas,tbl.doc_saliente, \n" +
" tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur, \n" +
" tbl.fechainicio \n" +
" ) tbl1";
String query = "SELECT tbl1.fecha,tbl1.des_loc,tbl1.fechafin,CONCAT(tbl1.ingreso,\"- \",tbl1.salida)as horario,tbl1.grupoAcademico,tbl1.aulas,tbl1.nom_cur, \n"
+ " \n"
+ " IF(tbl1.cantLib=0,tbl1.cantAulas*tbl1.computable,(tbl1.computable*3)-(tbl1.cantLib*tbl1.computable)) cantMin, \n"
+ "\n"
+ "\n"
+ " tbl1.doc_saliente,tbl1.motivoCambio,tbl1.observacion,tbl1.horaAviso,tbl1.doc_entrante,tbl1.curso_entrante, \n"
+ " \n"
+ " tbl1.fechainicio,tbl1.avance,tbl1.recuperacion,tbl1.fecha_aviso,tbl1.docente_recuperacion,tbl1.curso_recuperacion,tbl1.fecha_recuperacion,tbl1.horini_recuperacion,tbl1.horfini_recuperacion \n"
+ " \n"
+ " FROM ( \n"
+ " SELECT tbl.fecha,tbl.dia,tbl.des_loc,MIN(tbl.ingreso) ingreso,MAX(tbl.salida) salida,SUM(tbl.cantLib) cantLib, \n"
+ " \n"
+ " tbl.turno,REPLACE(GROUP_CONCAT(tbl.aula ORDER BY ingreso ),',','-') aulas,SUM(tbl.cantAulas) cantAulas,tbl.grupoAcademico, \n"
+ " \n"
+ " tbl.computable,tbl.doc_saliente,tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur, \n"
+ " tbl.fechainicio,tbl.observacion,tbl.avance,tbl.recuperacion,tbl.horaAviso,tbl.fecha_aviso,tbl.docente_recuperacion,tbl.curso_recuperacion,tbl.fecha_recuperacion,tbl.horini_recuperacion,tbl.horfini_recuperacion\n"
+ " FROM ( \n"
+ " SELECT hcd.cod_hcd,hcd.fecha,hcd.dia numdia,ELT(hcd.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,\n"
+ " \n"
+ " s.des_loc,TIME_FORMAT(hcd.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hcd.hor_fin,'%H:%i') salida,IF(tg.destipogrado ='LIBRE',1,0) cantLib, \n"
+ " IF (hcd.hor_ini>='07:00' AND hcd.hor_fin<'14:20','M','T') turno, \n"
+ " \n"
+ " TRIM(IF(tg.destipogrado ='LIBRE',tg.abrTipGrado,REPLACE(REPLACE(REPLACE(REPLACE(a.nombre,'TO ',''),'DO ',''),'RO ',''),'Y ','y'))) aula, \n"
+ " 1 cantAulas,IF(g.abrGrado LIKE '%1' OR g.abrGrado LIKE '%2','A',IF(a.codtipocentro = 2,'C','B')) grupoAcademico, \n"
+ "\n"
+ " IF(a.codtipocentro = 2,120,80) computable,CONCAT(pf1.apellido,\" \",pf1.nombre) as doc_saliente ,c2.nom_cur,hcd.fechafin, \n"
+ "\n"
+ " hcd.motivoCambio,CONCAT(pf2.apellido,\" \",pf2.nombre)as doc_entrante ,c.nom_cur as curso_entrante,hcd.cod_cur, \n"
+ " \n"
+ " hcd.fechainicio,hcd.observacion,hcd.avance,hcd.recuperacion,hcd.horaAviso,hcd.fecha_aviso,hcd.docente_recuperacion ,hcd.curso_recuperacion,hcd.fecha_recuperacion,hcd.horini_recuperacion,hcd.horfini_recuperacion\n"
+ " FROM historial_horario hcd \n"
+ " INNER JOIN curso c ON c.cod_cur=hcd.cod_cur \n"
+ " INNER JOIN curso c2 ON c2.cod_cur=hcd.cod_cur_reemp \n"
+ " INNER JOIN sacoolive3.profesor pf1 ON pf1.codprofesor=hcd.cod_doc_reemp \n"
+ " INNER JOIN sacoolive3.profesor pf2 ON pf2.codprofesor=hcd.cod_doc \n"
+ " INNER JOIN aula a ON a.codaula=hcd.codAula \n"
+ " INNER JOIN grado g on g.codgrado = a.codgrado \n"
+ " INNER JOIN tipo_grado tg ON g.codtipogrado=tg.codtipogrado \n"
+ " INNER JOIN sede s ON s.cod_loc=a.codlocal \n"
+ " WHERE \n"
+ " accion = 'CAMBIO DIA' AND est_hcd = 1 and \n"
+ " hcd.fecha BETWEEN ? AND ?\n"
+ " ) tbl \n"
+ " GROUP BY tbl.fecha,tbl.dia,tbl.des_loc,tbl.turno,tbl.grupoAcademico,tbl.cantAulas,tbl.doc_saliente, \n"
+ " tbl.nom_cur,tbl.fechafin,tbl.motivoCambio,tbl.doc_entrante,tbl.curso_entrante,tbl.cod_cur, \n"
+ " tbl.fechainicio \n"
+ " ) tbl1";
// + "SELECT "
// + " s.des_loc, "
......@@ -2734,7 +2763,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
// + " s.des_loc, "
// + " dia, "
// + " hh.cod_doc ";
PreparedStatement st = cnx.prepareStatement(query);
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date fechaInicio = dateFormat.parse(fechaDesde);
......@@ -2756,15 +2784,12 @@ public class MySqlDocenteDAO implements DocenteDAO {
h.setH_codigoDocente(rs.getString("doc_saliente"));
h.setGrupoAcademico(rs.getString("grupoAcademico"));
h.setH_nombreCurso(rs.getString("nom_cur"));
h.setH_motivoCambio(rs.getString("motivoCambio"));
h.setH_observacion(rs.getString("observacion"));
h.setH_horaAviso(rs.getString("horaAviso"));
h.setFechaAvisoFalta(rs.getString("fecha_aviso"));
h.setH_codigo_doc_reemp(rs.getString("doc_entrante"));
h.setH_nombre_cur_reemp(rs.getString("curso_entrante"));
h.setAvance(rs.getString("avance"));
......@@ -2776,12 +2801,6 @@ public class MySqlDocenteDAO implements DocenteDAO {
h.setHoraInicioRecuperacion(rs.getString("horini_recuperacion"));
h.setHoraFinRecuperacion(rs.getString("horfini_recuperacion"));
lista.add(h);
}
} catch (Exception e) {
......@@ -2822,26 +2841,25 @@ public class MySqlDocenteDAO implements DocenteDAO {
// + "GROUP BY "
// + "cod_doc, "
// + "s.cod_loc ";
String query=
"select ELT(hh.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,cod_doc, \n" +
" a.codaula,a.nombre nombreAula,\n" +
" s.des_loc, IF (hh.hor_ini>='07:00' AND hh.hor_fin<'14:20','MAÑANA','TARDE') turno,\n" +
" TIME_FORMAT(hh.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hh.hor_fin,'%H:%i') salida,\n" +
"\n" +
" p.nom_pla curso, \n" +
" \n" +
" date_format(fecha, '%d/%m/%Y') fecha, \n" +
" ultimoDia \n" +
" from historial_horario hh \n" +
" inner join aula a on hh.codAula = a.codaula \n" +
" inner join sede s on s.cod_loc = a.codlocal \n" +
" inner join curso c on c.cod_cur = hh.cod_cur \n" +
" inner join plana p on p.cod_pla = c.cod_pla \n" +
" where accion = 'DADO DE BAJA' \n" +
" and est_hcd = 1 \n" +
" and fecha between ? and ?\n" +
" ORDER BY s.cod_loc";
String query
= "select ELT(hh.dia, 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo') AS dia,cod_doc, \n"
+ " a.codaula,a.nombre nombreAula,\n"
+ " s.des_loc, IF (hh.hor_ini>='07:00' AND hh.hor_fin<'14:20','MAÑANA','TARDE') turno,\n"
+ " TIME_FORMAT(hh.hor_ini,'%H:%i') ingreso,TIME_FORMAT(hh.hor_fin,'%H:%i') salida,\n"
+ "\n"
+ " p.nom_pla curso, \n"
+ " \n"
+ " date_format(fecha, '%d/%m/%Y') fecha, \n"
+ " ultimoDia \n"
+ " from historial_horario hh \n"
+ " inner join aula a on hh.codAula = a.codaula \n"
+ " inner join sede s on s.cod_loc = a.codlocal \n"
+ " inner join curso c on c.cod_cur = hh.cod_cur \n"
+ " inner join plana p on p.cod_pla = c.cod_pla \n"
+ " where accion = 'DADO DE BAJA' \n"
+ " and est_hcd = 1 \n"
+ " and fecha between ? and ?\n"
+ " ORDER BY s.cod_loc";
PreparedStatement st = cnx.prepareStatement(query);
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
......@@ -2926,21 +2944,20 @@ public class MySqlDocenteDAO implements DocenteDAO {
// System.out.println(query);
//
// }
@Override
public ArrayList<Horario> listarCambiosDiaDocente(String cadenaAulas, String dia, String codigoDocente) throws Exception {
ArrayList<Horario> lista = new ArrayList<Horario>();
Object[] arrayCadenas=cadenaAulas.split(",");
Object[] arrayCadenas = cadenaAulas.split(",");
String aula1="";
for(int i=0;i < arrayCadenas.length;i++){
String aula1 = "";
for (int i = 0; i < arrayCadenas.length; i++) {
aula1 +="'"+arrayCadenas[i].toString()+"'";
aula1 += "'" + arrayCadenas[i].toString() + "'";
if(i<arrayCadenas.length-1){
if (i < arrayCadenas.length - 1) {
aula1 +=",";
aula1 += ",";
}
}
......@@ -2964,7 +2981,7 @@ public class MySqlDocenteDAO implements DocenteDAO {
+ "SELECT "
+ " s.des_loc, "
+ " GROUP_CONCAT(CONCAT(a.nombre)) aulas, "
// + " GROUP_CONCAT(CONCAT(grado.abrGrado,seccion.desseccion)) aulas, "
// + " GROUP_CONCAT(CONCAT(grado.abrGrado,seccion.desseccion)) aulas, "
+ " dia, "
+ " TIME_FORMAT(MIN(hor_ini),'%H:%i') hora_ini, "
+ " TIME_FORMAT(MAX(hor_fin),'%H:%i') hora_fin, "
......@@ -2989,15 +3006,15 @@ public class MySqlDocenteDAO implements DocenteDAO {
+ " INNER JOIN curso c1 ON c1.cod_cur = hh.cod_cur "
+ " INNER JOIN curso c2 ON c2.cod_cur = hh.cod_cur_reemp "
+ " INNER JOIN usuario usu ON usu.cod_usu = hh.cod_usu"
+ " WHERE \n" +
" accion = 'CAMBIO DIA' \n" +
" AND est_hcd = 1 and hh.codAula IN ("+aula1+") AND dia='"+dia+"' and hh.cod_doc_reemp = '"+codigoDocente+"' \n" +
" GROUP BY \n" +
" s.des_loc, \n" +
" dia, \n" +
" hh.cod_doc ORDER BY hh.hora,hh.fecha DESC ";
+ " WHERE \n"
+ " accion = 'CAMBIO DIA' \n"
+ " AND est_hcd = 1 and hh.codAula IN (" + aula1 + ") AND dia='" + dia + "' and hh.cod_doc_reemp = '" + codigoDocente + "' \n"
+ " GROUP BY \n"
+ " s.des_loc, \n"
+ " dia, \n"
+ " hh.cod_doc ORDER BY hh.hora,hh.fecha DESC ";
System.out.println("CONSULTA HISTORIAL CAMBIO DIA:"+query);
System.out.println("CONSULTA HISTORIAL CAMBIO DIA:" + query);
PreparedStatement st = cnx.prepareStatement(query);
ResultSet rs = st.executeQuery();
......@@ -3027,7 +3044,7 @@ public class MySqlDocenteDAO implements DocenteDAO {
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("ERROR "+e.getMessage());
System.out.println("ERROR " + e.getMessage());
} finally {
cnx.close();
}
......@@ -3036,32 +3053,30 @@ public class MySqlDocenteDAO implements DocenteDAO {
@Override
public int validarDni(String dni) throws Exception {
int codDocente=0;
String base="horario";
ResultSet rs=null;
int codDocente = 0;
String base = "horario";
ResultSet rs = null;
Connection cnx=null;
Connection cnx = null;
try {
cnx = MySqlDAOFactory.obtenerConexion(base);
Statement st = cnx.createStatement();
String query="select codprofesor from sacoolive3.profesor where dni="+dni+"";
rs=st.executeQuery(query);
String query = "select codprofesor from sacoolive3.profesor where dni=" + dni + "";
rs = st.executeQuery(query);
System.out.println("queryy->>"+query);
System.out.println("queryy->>" + query);
if(rs.next()){
if (rs.next()) {
codDocente = rs.getInt("codprofesor");
}
System.out.println("codDocnete->"+codDocente);
System.out.println("codDocnete->" + codDocente);
} catch (Exception e) {
e.printStackTrace();
}finally{
if(cnx != null){
} finally {
if (cnx != null) {
cnx.close();
}
......@@ -3075,6 +3090,4 @@ public class MySqlDocenteDAO implements DocenteDAO {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
......@@ -4841,7 +4841,6 @@ public class ServletHorario extends HttpServlet {
" <button type='button' class=\"btn btn-xs btn-success\" id='datepickerFechaFaltaAvisoButton' onclick='verfechaFaltaAviso();' title='Elegir fecha fin del docente'><i class='ace-icon fa fa-calendar'></i></button>\n" +
" </div>\n" +
" </div>");
pw.println("<div class=\"col-sm-3\">\n" +
" <div class=\"form-group\">\n" +
" <b>Observacion:</b>\n" +
......@@ -4849,14 +4848,8 @@ public class ServletHorario extends HttpServlet {
" </div>\n" +
" </div>");
}
pw.println("<div class='col-sm-12' style='height:20px;'></div>");
pw.println("<div class='col-sm-12'>");
pw.println("<div id='divDocenteCombo'>");
......
......@@ -20,7 +20,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<style type="text/css">
/* #dg{
/* #dg{
background-color: #D9D2E9;
font-weight: bold;
}
......@@ -33,7 +33,7 @@
font-weight: bold;
}*/
/* #contenedor {
/* #contenedor {
float: left;
width: 804px;
}
......@@ -124,6 +124,7 @@
<td <%=centrado%> colspan="8" style="text-align: center;background-color: #D9D2E9;font-weight: bold;">DATA GENERAL</td>
<td <%=centrado%> colspan="3" style="text-align: center;background-color: #EDEDED;font-weight: bold;">REGISTRADO</td>
<td <%=centrado%> colspan="1" style="text-align: center;background-color: #EDEDED;font-weight: bold;">ELIMINADO</td>
<td <%=centrado%> colspan="1" style="text-align: center;background-color: #EDEDED;font-weight: bold;">USUARIO</td>
</tr>
<tr style="background-color: #2F75B5">
......@@ -142,7 +143,7 @@
<th>APELLIDOS Y NOMBRES</th>
<th>CURSO</th>
<th colspan="2">ACCION</th>
<th colspan="3">ACCION</th>
......@@ -150,12 +151,12 @@
<%
String estilo="";
for(HorarioCF horario : lista){
// if(horario.getMotivoCambio().equals("SIN CURSO")){
// estilo="style='background-color:#D0CECE;padding : 10px;color:black;'";
//
// }else{
// estilo="style='background-color:#FFD966;padding : 10px;'";
// }
// if(horario.getMotivoCambio().equals("SIN CURSO")){
// estilo="style='background-color:#D0CECE;padding : 10px;color:black;'";
//
// }else{
// estilo="style='background-color:#FFD966;padding : 10px;'";
// }
%>
<tr>
......@@ -171,6 +172,7 @@
<td style="padding : 10px"><%=horario.getCursoEntrante()%></td>
<td <%=estilo%>><%=horario.getMotivoCambio()%></td>
<td style="padding : 10px"><%=horario.getEstadoEliminado()%></td>
<td style="padding : 10px"><%=horario.getUsuarioAcciona()%></td>
</tr>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment