Añadido el ControladorProfesor y toda su gestión
This commit is contained in:
176
src/main/java/net/h4ckx0r/controlador/ControladorProfesor.java
Normal file
176
src/main/java/net/h4ckx0r/controlador/ControladorProfesor.java
Normal file
@@ -0,0 +1,176 @@
|
|||||||
|
package net.h4ckx0r.controlador;
|
||||||
|
|
||||||
|
import net.h4ckx0r.modelo.Profesor;
|
||||||
|
|
||||||
|
import java.sql.*;
|
||||||
|
|
||||||
|
public class ControladorProfesor {
|
||||||
|
public static Profesor getPrimerProfesor() {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Statement st = conn.createStatement();
|
||||||
|
ResultSet rs = st.executeQuery("SELECT * FROM profesor LIMIT 1");
|
||||||
|
|
||||||
|
if (rs.next()) {
|
||||||
|
return new Profesor(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getString("nombre"),
|
||||||
|
rs.getString("apellido1"),
|
||||||
|
rs.getString("apellido2"),
|
||||||
|
rs.getString("dni"),
|
||||||
|
rs.getString("direccion"),
|
||||||
|
rs.getString("email"),
|
||||||
|
rs.getString("telefono"),
|
||||||
|
rs.getInt("idTipologiaSexo")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Profesor getUltimoProfesor() {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Statement st = conn.createStatement();
|
||||||
|
ResultSet rs = st.executeQuery("SELECT * FROM profesor ORDER BY id DESC LIMIT 1");
|
||||||
|
|
||||||
|
if (rs.next()) {
|
||||||
|
return new Profesor(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getString("nombre"),
|
||||||
|
rs.getString("apellido1"),
|
||||||
|
rs.getString("apellido2"),
|
||||||
|
rs.getString("dni"),
|
||||||
|
rs.getString("direccion"),
|
||||||
|
rs.getString("email"),
|
||||||
|
rs.getString("telefono"),
|
||||||
|
rs.getInt("idTipologiaSexo")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Profesor getSiguienteProfesor(Profesor profesorActual) {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
|
||||||
|
try {
|
||||||
|
PreparedStatement pst = conn.prepareStatement("SELECT * FROM profesor WHERE id > ? LIMIT 1");
|
||||||
|
pst.setInt(1, profesorActual.getId());
|
||||||
|
ResultSet rs = pst.executeQuery();
|
||||||
|
if (rs.next()) {
|
||||||
|
return new Profesor(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getString("nombre"),
|
||||||
|
rs.getString("apellido1"),
|
||||||
|
rs.getString("apellido2"),
|
||||||
|
rs.getString("dni"),
|
||||||
|
rs.getString("direccion"),
|
||||||
|
rs.getString("email"),
|
||||||
|
rs.getString("telefono"),
|
||||||
|
rs.getInt("idTipologiaSexo")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Profesor getAnteriorProfesor(Profesor profesorActual) {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
|
||||||
|
try {
|
||||||
|
PreparedStatement pst = conn.prepareStatement("SELECT * FROM profesor WHERE id < ? ORDER BY id DESC LIMIT 1");
|
||||||
|
pst.setInt(1, profesorActual.getId());
|
||||||
|
ResultSet rs = pst.executeQuery();
|
||||||
|
if (rs.next()) {
|
||||||
|
return new Profesor(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getString("nombre"),
|
||||||
|
rs.getString("apellido1"),
|
||||||
|
rs.getString("apellido2"),
|
||||||
|
rs.getString("dni"),
|
||||||
|
rs.getString("direccion"),
|
||||||
|
rs.getString("email"),
|
||||||
|
rs.getString("telefono"),
|
||||||
|
rs.getInt("idTipologiaSexo")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int borrarProfesor(Profesor profesor) {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
try {
|
||||||
|
PreparedStatement pst = conn.prepareStatement("DELETE FROM profesor WHERE id = ?");
|
||||||
|
pst.setInt(1, profesor.getId());
|
||||||
|
return pst.executeUpdate();
|
||||||
|
} catch (SQLException e) {
|
||||||
|
return 0;
|
||||||
|
//throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int guardarProfesor(Profesor estudiante) {
|
||||||
|
if (estudiante.getId() == -1) {
|
||||||
|
estudiante.setId(getUltimoProfesor().getId() + 1);
|
||||||
|
return nuevoProfesor(estudiante);
|
||||||
|
}
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
try {
|
||||||
|
PreparedStatement pst = conn.prepareStatement("UPDATE profesor SET nombre = ?, apellido1 = ?, apellido2 = ?, dni = ?, direccion = ?, email = ?, telefono = ?, idTipologiaSexo = ? WHERE id = ?");
|
||||||
|
pst.setString(1, estudiante.getNombre());
|
||||||
|
pst.setString(2, estudiante.getApellido1());
|
||||||
|
pst.setString(3, estudiante.getApellido2());
|
||||||
|
pst.setString(4, estudiante.getDni());
|
||||||
|
pst.setString(5, estudiante.getDireccion());
|
||||||
|
pst.setString(6, estudiante.getEmail());
|
||||||
|
pst.setString(7, estudiante.getTelefono());
|
||||||
|
pst.setInt(8, estudiante.getIdTipologiaSexo());
|
||||||
|
pst.setInt(9, estudiante.getId());
|
||||||
|
return pst.executeUpdate();
|
||||||
|
} catch (SQLException e) {
|
||||||
|
return 0;
|
||||||
|
//throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int nuevoProfesor(Profesor profesor) {
|
||||||
|
Connection conn = GestorConexiones.getConexion();
|
||||||
|
try {
|
||||||
|
PreparedStatement pst = conn.prepareStatement("INSERT INTO profesor (id,nombre,apellido1,apellido2,dni,direccion,email,telefono,idTipologiaSexo) VALUES (?,?,?,?,?,?,?,?,?)");
|
||||||
|
pst.setInt(1, profesor.getId());
|
||||||
|
pst.setString(2, profesor.getNombre());
|
||||||
|
pst.setString(3, profesor.getApellido1());
|
||||||
|
pst.setString(4, profesor.getApellido2());
|
||||||
|
pst.setString(5, profesor.getDni());
|
||||||
|
pst.setString(6, profesor.getDireccion());
|
||||||
|
pst.setString(7, profesor.getEmail());
|
||||||
|
pst.setString(8, profesor.getTelefono());
|
||||||
|
pst.setInt(9, profesor.getIdTipologiaSexo());
|
||||||
|
return pst.executeUpdate();
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -3,9 +3,11 @@ package net.h4ckx0r.vista;
|
|||||||
import net.h4ckx0r.controlador.ControladorCurso;
|
import net.h4ckx0r.controlador.ControladorCurso;
|
||||||
import net.h4ckx0r.controlador.ControladorEstudiante;
|
import net.h4ckx0r.controlador.ControladorEstudiante;
|
||||||
import net.h4ckx0r.controlador.ControladorMateria;
|
import net.h4ckx0r.controlador.ControladorMateria;
|
||||||
|
import net.h4ckx0r.controlador.ControladorProfesor;
|
||||||
import net.h4ckx0r.modelo.Curso;
|
import net.h4ckx0r.modelo.Curso;
|
||||||
import net.h4ckx0r.modelo.Estudiante;
|
import net.h4ckx0r.modelo.Estudiante;
|
||||||
import net.h4ckx0r.modelo.Materia;
|
import net.h4ckx0r.modelo.Materia;
|
||||||
|
import net.h4ckx0r.modelo.Profesor;
|
||||||
import net.h4ckx0r.vista.panels.PanelCursos;
|
import net.h4ckx0r.vista.panels.PanelCursos;
|
||||||
import net.h4ckx0r.vista.panels.PanelMaterias;
|
import net.h4ckx0r.vista.panels.PanelMaterias;
|
||||||
import net.h4ckx0r.vista.panels.PanelPersona;
|
import net.h4ckx0r.vista.panels.PanelPersona;
|
||||||
@@ -65,6 +67,7 @@ public class MainView extends JFrame {
|
|||||||
frame.panelCursos.setCursoActual(ControladorCurso.getPrimerCurso());
|
frame.panelCursos.setCursoActual(ControladorCurso.getPrimerCurso());
|
||||||
frame.panelMaterias.setMateriaActual(ControladorMateria.getPrimeraMateria());
|
frame.panelMaterias.setMateriaActual(ControladorMateria.getPrimeraMateria());
|
||||||
frame.panelEstudiantes.setEstudianteActual(ControladorEstudiante.getPrimerEstudiante());
|
frame.panelEstudiantes.setEstudianteActual(ControladorEstudiante.getPrimerEstudiante());
|
||||||
|
frame.panelProfesores.setProfesorActual(ControladorProfesor.getPrimerProfesor());
|
||||||
|
|
||||||
|
|
||||||
frame.actualizarBotonesPantalla();
|
frame.actualizarBotonesPantalla();
|
||||||
@@ -260,6 +263,8 @@ public class MainView extends JFrame {
|
|||||||
panelMaterias.setMateriaActual(new Materia(-1, "", "", -1));
|
panelMaterias.setMateriaActual(new Materia(-1, "", "", -1));
|
||||||
} else if (tabbedPane.getSelectedComponent() == panelEstudiantes) {
|
} else if (tabbedPane.getSelectedComponent() == panelEstudiantes) {
|
||||||
panelEstudiantes.setEstudianteActual(new Estudiante(-1, "", "", "", "", "", "", "", -1));
|
panelEstudiantes.setEstudianteActual(new Estudiante(-1, "", "", "", "", "", "", "", -1));
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
panelProfesores.setProfesorActual(new Profesor(-1, "", "", "", "", "", "", "", -1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -312,6 +317,20 @@ public class MainView extends JFrame {
|
|||||||
agregarRegistro();
|
agregarRegistro();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor profesorSiguiente = ControladorProfesor.getSiguienteProfesor(panelProfesores.getProfesorActual());
|
||||||
|
Profesor profesorAnterior = ControladorProfesor.getAnteriorProfesor(panelProfesores.getProfesorActual());
|
||||||
|
|
||||||
|
resultado = ControladorProfesor.borrarProfesor(panelProfesores.getProfesorActual());
|
||||||
|
if (resultado > 0) {
|
||||||
|
if (profesorSiguiente != null) {
|
||||||
|
panelProfesores.setProfesorActual(profesorSiguiente);
|
||||||
|
} else if (profesorAnterior != null) {
|
||||||
|
panelProfesores.setProfesorActual(profesorAnterior);
|
||||||
|
} else {
|
||||||
|
agregarRegistro();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (resultado > 0) {
|
if (resultado > 0) {
|
||||||
@@ -330,6 +349,8 @@ public class MainView extends JFrame {
|
|||||||
resultado = ControladorMateria.guardarMateria(panelMaterias.getMateriaActual());
|
resultado = ControladorMateria.guardarMateria(panelMaterias.getMateriaActual());
|
||||||
} else if (tabbedPane.getSelectedComponent() == panelEstudiantes) {
|
} else if (tabbedPane.getSelectedComponent() == panelEstudiantes) {
|
||||||
resultado = ControladorEstudiante.guardarEstudiante(panelEstudiantes.getEstudianteActual());
|
resultado = ControladorEstudiante.guardarEstudiante(panelEstudiantes.getEstudianteActual());
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
resultado = ControladorProfesor.guardarProfesor(panelProfesores.getProfesorActual());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (resultado > 0) {
|
if (resultado > 0) {
|
||||||
@@ -361,6 +382,12 @@ public class MainView extends JFrame {
|
|||||||
panelEstudiantes.setEstudianteActual(primerEstudiante);
|
panelEstudiantes.setEstudianteActual(primerEstudiante);
|
||||||
actualizarBotonesPantalla();
|
actualizarBotonesPantalla();
|
||||||
}
|
}
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor primerProfesor = ControladorProfesor.getPrimerProfesor();
|
||||||
|
if (primerProfesor != null) {
|
||||||
|
panelProfesores.setProfesorActual(primerProfesor);
|
||||||
|
actualizarBotonesPantalla();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -384,6 +411,12 @@ public class MainView extends JFrame {
|
|||||||
panelEstudiantes.setEstudianteActual(ultimoEstudiante);
|
panelEstudiantes.setEstudianteActual(ultimoEstudiante);
|
||||||
actualizarBotonesPantalla();
|
actualizarBotonesPantalla();
|
||||||
}
|
}
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor ultimoProfesor = ControladorProfesor.getUltimoProfesor();
|
||||||
|
if (ultimoProfesor != null) {
|
||||||
|
panelProfesores.setProfesorActual(ultimoProfesor);
|
||||||
|
actualizarBotonesPantalla();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -395,7 +428,6 @@ public class MainView extends JFrame {
|
|||||||
panelCursos.setCursoActual(siguienteCurso);
|
panelCursos.setCursoActual(siguienteCurso);
|
||||||
actualizarBotonesPantalla();
|
actualizarBotonesPantalla();
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (tabbedPane.getSelectedComponent() == panelMaterias) {
|
} else if (tabbedPane.getSelectedComponent() == panelMaterias) {
|
||||||
Materia siguienteMateria = ControladorMateria.getSiguienteMateria(panelMaterias.getMateriaActual());
|
Materia siguienteMateria = ControladorMateria.getSiguienteMateria(panelMaterias.getMateriaActual());
|
||||||
if (siguienteMateria != null) {
|
if (siguienteMateria != null) {
|
||||||
@@ -408,6 +440,12 @@ public class MainView extends JFrame {
|
|||||||
panelEstudiantes.setEstudianteActual(siguienteEstudiante);
|
panelEstudiantes.setEstudianteActual(siguienteEstudiante);
|
||||||
actualizarBotonesPantalla();
|
actualizarBotonesPantalla();
|
||||||
}
|
}
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor siguienteProfesor = ControladorProfesor.getSiguienteProfesor(panelProfesores.getProfesorActual());
|
||||||
|
if (siguienteProfesor != null) {
|
||||||
|
panelProfesores.setProfesorActual(siguienteProfesor);
|
||||||
|
actualizarBotonesPantalla();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -446,6 +484,17 @@ public class MainView extends JFrame {
|
|||||||
actualizarBotonesPantalla();
|
actualizarBotonesPantalla();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor profesorActual = panelProfesores.getProfesorActual();
|
||||||
|
if (profesorActual.getId() == -1) {
|
||||||
|
panelProfesores.setProfesorActual(ControladorProfesor.getUltimoProfesor());
|
||||||
|
} else {
|
||||||
|
Profesor anteriorProfesor = ControladorProfesor.getAnteriorProfesor(panelProfesores.getProfesorActual());
|
||||||
|
if (anteriorProfesor != null) {
|
||||||
|
panelProfesores.setProfesorActual(anteriorProfesor);
|
||||||
|
actualizarBotonesPantalla();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -465,6 +514,11 @@ public class MainView extends JFrame {
|
|||||||
alternarBotonesToolbar(
|
alternarBotonesToolbar(
|
||||||
estudianteActual.getId() == ControladorEstudiante.getPrimerEstudiante().getId(),
|
estudianteActual.getId() == ControladorEstudiante.getPrimerEstudiante().getId(),
|
||||||
estudianteActual.getId() == ControladorEstudiante.getUltimoEstudiante().getId());
|
estudianteActual.getId() == ControladorEstudiante.getUltimoEstudiante().getId());
|
||||||
|
} else if (tabbedPane.getSelectedComponent() == panelProfesores) {
|
||||||
|
Profesor profesorActual = panelProfesores.getProfesorActual();
|
||||||
|
alternarBotonesToolbar(
|
||||||
|
profesorActual.getId() == ControladorProfesor.getPrimerProfesor().getId(),
|
||||||
|
profesorActual.getId() == ControladorProfesor.getUltimoProfesor().getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user