cambios backend frontend

This commit is contained in:
Soka_jplr 2024-05-22 08:21:57 -06:00
parent f6c745dce8
commit c8c3213d25
6 changed files with 276 additions and 107 deletions

View File

@ -24,7 +24,7 @@ public class DAO_Carrrera {
rs = stm.executeQuery(sql);
while (rs.next()) {
Carrera u = new Carrera(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4),
rs.getString(5), rs.getString(6), rs.getString(7));
rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8));
resultado.add(u);
}
} catch (Exception e) {
@ -36,29 +36,33 @@ public class DAO_Carrrera {
}
/*public static boolean agregarCarrera(Carrera carrera) {
PreparedStatement stm = null;
Connection conn = null;
boolean msj = false;
conn = cn.conectar();
try {
String sql = "INSERT INTO `carrera` (`area`,`nombre`, `modalidad`, `campus`, `costo`) VALUES(?,?,?,?,?);";
stm = (PreparedStatement) conn.prepareStatement(sql);
stm.setString(1, carrera.getArea());
stm.setString(2, carrera.getNombre());
stm.setString(3, carrera.getModalidad());
stm.setString(4, carrera.getCampus());
stm.setDouble(5, carrera.getCosto());
} catch (Exception e) {
System.out.println(e);
} finally {
cerrarConexiones(stm, conn);
}
return msj;
}*/
/*
* public static boolean agregarCarrera(Carrera carrera) {
* PreparedStatement stm = null;
* Connection conn = null;
* boolean msj = false;
*
* conn = cn.conectar();
*
* try {
* String sql =
* "INSERT INTO `carrera` (`area`,`nombre`, `modalidad`, `campus`, `costo`) VALUES(?,?,?,?,?);"
* ;
* stm = (PreparedStatement) conn.prepareStatement(sql);
* stm.setString(1, carrera.getArea());
* stm.setString(2, carrera.getNombre());
* stm.setString(3, carrera.getModalidad());
* stm.setString(4, carrera.getCampus());
* stm.setDouble(5, carrera.getCosto());
*
* } catch (Exception e) {
* System.out.println(e);
* } finally {
* cerrarConexiones(stm, conn);
* }
* return msj;
* }
*/
private static void cerrarConexiones(PreparedStatement stm, Connection conn) {
if (stm != null) {
@ -81,27 +85,31 @@ public class DAO_Carrrera {
return false;
}
/*public static boolean editarCarrera(Carrera carrera) {
PreparedStatement stm = null;
Connection conn = null;
boolean verificacion = false;
conn = cn.conectar();
try {
String sql = "UPDATE `alumno` SET `area` = '" + carrera.getArea() + "',`nombre` = '" + carrera.getNombre()
+ "',`modalidad` = '" + carrera.getModalidad() + "',`campus` = '"
+ carrera.getCampus() + "', `costo` = '" + carrera.getCosto() + "' WHERE `id` = '"
+ carrera.getId() + "';";
stm = conn.prepareStatement(sql);
stm.executeUpdate();
verificacion = true;
} catch (SQLException ex) {
System.err.println(ex);
} finally {
cerrarConexiones(stm, conn);
cn.cerrarConexion();
}
return verificacion;
}*/
/*
* public static boolean editarCarrera(Carrera carrera) {
* PreparedStatement stm = null;
* Connection conn = null;
* boolean verificacion = false;
* conn = cn.conectar();
*
* try {
* String sql = "UPDATE `alumno` SET `area` = '" + carrera.getArea() +
* "',`nombre` = '" + carrera.getNombre()
* + "',`modalidad` = '" + carrera.getModalidad() + "',`campus` = '"
* + carrera.getCampus() + "', `costo` = '" + carrera.getCosto() +
* "' WHERE `id` = '"
* + carrera.getId() + "';";
* stm = conn.prepareStatement(sql);
* stm.executeUpdate();
* verificacion = true;
* } catch (SQLException ex) {
* System.err.println(ex);
* } finally {
* cerrarConexiones(stm, conn);
* cn.cerrarConexion();
* }
* return verificacion;
* }
*/
}

View File

@ -10,10 +10,11 @@ public class Carrera {
private String vision;
private String objetivo;
public Carrera(int id, String nombre, String campus, String descripcion, String mision, String vision,
public Carrera(int id, String nombre, String area, String campus, String descripcion, String mision, String vision,
String objetivo) {
this.id = id;
this.nombre = nombre;
this.area = area;
this.campus = campus;
this.descripcion = descripcion;
this.mision = mision;

View File

@ -0,0 +1,43 @@
#labelSelect {
margin-right: 10px;
font-size: x-large;
color: #55574f;
font-weight: bold;
}
#informacion {
margin-left: 5%;
margin-right: 5%;
}
#subtitulo {
font-size: x-large;
font-weight: bold;
}
#grupoP {
margin-bottom: 2%;
}
#subtituloIngreso {
font-size: 20px;
}
#subtituloTexto {
font-size: large;
font-weight: 100;
}
.btnElegirCarrera {
display: flex;
justify-content: center;
font-family: Georgia, 'Times New Roman', Times, serif;
font-weight: bold;
font-size: x-large;
color: #D5EEBB;
background-color: #474941;
}
.btnElegirCarrera:hover {
background-color: #55574f;
}

View File

@ -1,15 +1,16 @@
import React from 'react'
import { useState, useEffect } from 'react';
import { sendRequest } from "../funciones";
import React, { useState, useEffect } from 'react';
import axios from 'axios';
import '../Styles/Informacion.css';
const Informacion = () => {
const [productosData, setProductosData] = useState([]);
const [carrerasData, setCarrerasData] = useState([]);
const [selectedCarrera, setSelectedCarrera] = useState(null);
useEffect(() => {
const fetchData = async () => {
try {
const res = await axios.get("/carreras");
setProductosData(res.data);
setCarrerasData(res.data);
} catch (error) {
console.error(error);
}
@ -18,46 +19,60 @@ const Informacion = () => {
fetchData();
}, []);
const Picture = (parametros) => {
const id = parametros.id;
const nombre = parametros.nombre;
const area = parametros.area;
const campus = parametros.campus;
const descripcion = parametros.descripcion;
const mision = parametros.mision;
const vision = parametros.vision;
const objetivo = parametros.objetivo;
return (
<a>
<div key={id}>
<div >
<div >
<h1 >{nombre}</h1>
<h2 >{area}</h2>
<h2 >{campus}</h2>
<h2 >{descripcion}</h2>
<h2 >{mision}</h2>
<h2 >{vision}</h2>
<h2 >{objetivo}</h2>
</div>
</div>
</div>
</a>
);
const handleSelectChange = (event) => {
const carreraId = parseInt(event.target.value, 10);
const carrera = carrerasData.find(carrera => carrera.id === carreraId);
setSelectedCarrera(carrera);
};
return (
<>
<div >
<div >
{productosData.map((producto) => (
<Picture key={producto.id} {...producto} />
<div className="container mt-5">
<div className="form-group">
<label htmlFor="carreraSelect" id="labelSelect">Selecciona una carrera</label>
<select id="carreraSelect" className="form-control" onChange={handleSelectChange} defaultValue="">
<option value="" disabled>Selecciona una carrera</option>
{carrerasData.map((carrera) => (
<option key={carrera.id} value={carrera.id}>{carrera.nombre}</option>
))}
</div>
</select>
</div>
</>
<div id="informacion" className="mt-4">
{selectedCarrera ? (
<>
<div id="grupoP">
<span id="subtitulo">Nombre: {selectedCarrera.nombre}</span>
</div>
<div id="grupoP">
<span id="subtitulo">Área: {selectedCarrera.area}</span>
</div>
<div id="grupoP">
<span id="subtitulo">Campus: {selectedCarrera.campus}</span>
</div>
<div id="grupoP">
<span id="subtitulo">Descripción:</span>
<div id="subtituloTexto">{selectedCarrera.descripcion}</div>
</div>
<div id="grupoP">
<span id="subtitulo">Perfil de ingreso:</span>
<ul>
<li id="subtituloIngreso">
Misión: <span id="subtituloTexto">{selectedCarrera.mision}</span>
</li>
<li id="subtituloIngreso">
Visión: <span id="subtituloTexto">{selectedCarrera.vision}</span>
</li>
<li id="subtituloIngreso">
Objetivos: <span id="subtituloTexto">{selectedCarrera.objetivo}</span>
</li>
</ul>
</div>
</>
) : (
<h2 id="subtitulo">Ninguna carrera seleccionada</h2>
)}
</div>
</div>
);
}
export default Informacion
export default Informacion;

View File

@ -1,4 +1,8 @@
import React from 'react';
import { useNavigate, NavLink } from "react-router-dom";
import { sendRequest } from "../funciones";
import DivInput from "../Components/divInput";
import storage from "../Storage/storage";
const Inscripcion = () => {
return (
@ -7,15 +11,119 @@ const Inscripcion = () => {
<form>
<div className="mb-4">
<h5>Datos Personales</h5>
{/* Campos del formulario para Datos Personales */}
<DivInput
type="text"
name="nombre"
className="form-control mb-3"
placeholder="Nombre"
required
/>
<DivInput
type="text"
name="apellido"
className="form-control mb-3"
placeholder="Apellido"
required
/>
<DivInput
type="email"
name="correo"
className="form-control mb-3"
placeholder="Correo Electrónico"
required
/>
<DivInput
type="text"
name="nacionalidad"
className="form-control mb-3"
placeholder="Nacionalidad"
required
/>
<DivInput
type="text"
name="tipoSangre"
className="form-control mb-3"
placeholder="Tipo de Sangre"
required
/>
<h7>Fecha de Nacimiento</h7>
<DivInput
type="date"
name="fechaNacimiento"
className="form-control mb-3"
placeholder="Fecha de Nacimiento"
required
/>
<DivInput
type="text"
name="curp"
className="form-control mb-3"
placeholder="CURP"
required
/>
</div>
<div className="mb-4">
<h5>Datos del Tutor</h5>
{/* Campos del formulario para Datos del Tutor */}
<DivInput
type="text"
name="nombreTutor"
className="form-control mb-3"
placeholder="Nombre"
required
/>
<DivInput
type="text"
name="apellidoTutor"
className="form-control mb-3"
placeholder="Apellidos"
required
/>
<DivInput
type="tel"
name="numeroDeTelefono"
className="form-control mb-3"
placeholder="Número de Teléfono"
required
/>
</div>
<div className="mb-4">
<h5>Documentación</h5>
{/* Campos del formulario para Documentación */}
<h6>Acta De Nacimiento</h6>
<input
type="file"
name="actaDeNacimiento"
className="form-control mb-3"
accept=".pdf"
placeholder="Acta de Nacimiento"
required
/>
<h6>Constancia De Estudio</h6>
<input
type="file"
name="constanciaDeEstudios"
className="form-control mb-3"
accept=".pdf"
placeholder="Constancia de Estudios"
required
/>
<h6>Fotografia</h6>
<input
type="file"
name="fotografia"
className="form-control mb-3"
accept=".pdf"
placeholder="Fotografía"
required
/>
<h6>Certificado Medico</h6>
<input
type="file"
name="certificadoMedico"
className="form-control mb-3"
accept=".pdf"
placeholder="Certificado Médico"
required
/>
</div>
</form>
</div>

View File

@ -10,41 +10,35 @@ const OfertaEducativa = () => {
<div className="row gy-5">
<div className="col-md-6 col-lg-3">
<div className="border border-primary p-3 h-100">
<h2 className="text-warning">Área Técnica</h2>
<h2 className="text-warning">Ciencias Sociales</h2>
<ul className="list-unstyled text-secondary">
<li>Licenciatura en Matemáticas</li>
<li>Licenciatura en Física</li>
<li>Licenciatura en Arquitectura</li>
<li>Derecho</li>
<li>Administración de Empresas</li>
<li>Psicología</li>
</ul>
</div>
</div>
<div className="col-md-6 col-lg-3">
<div className="border border-primary p-3 h-100">
<h2 className="text-warning">Área Económico-Administrativo</h2>
<h2 className="text-warning">Tecnología</h2>
<ul className="list-unstyled text-secondary">
<li>Licenciatura en Contabilidad</li>
<li>Licenciatura en Economía</li>
<li>Licenciatura en Administración</li>
<li>Ingeniería de Sistemas</li>
</ul>
</div>
</div>
<div className="col-md-6 col-lg-3">
<div className="border border-primary p-3 h-100">
<h2 className="text-warning">Área de Humanidades</h2>
<h2 className="text-warning">Salud</h2>
<ul className="list-unstyled text-secondary">
<li>Licenciatura en Historia</li>
<li>Licenciatura en Antropología</li>
<li>Licenciatura en Pedagogía</li>
<li>Medicina</li>
</ul>
</div>
</div>
<div className="col-md-6 col-lg-3">
<div className="border border-primary p-3 h-100">
<h2 className="text-warning">Área de Biológicas y Agropecuarias</h2>
<h2 className="text-warning">Arte y Diseño</h2>
<ul className="list-unstyled text-secondary">
<li>Licenciatura en Biología</li>
<li>Ingeniería Química</li>
<li>Ingeniero Agrónomo</li>
<li>Arquitectura</li>
</ul>
</div>
</div>