Terminando con las busquedas simples, tambien puedes acceder a contactos de una empresa, empresas de un sector. Tambien cambiamos de checkboxes a un drop down scroll que es mas comodo para usar. Preparamos el menu de administrador para hace cambios a entidaes que tiene la base de datos
parent
4d8902df1c
commit
d638d2321e
@ -0,0 +1,28 @@
|
||||
package com.example.proyectofinal.controllers;
|
||||
|
||||
import com.example.proyectofinal.models.empresas.Contacto;
|
||||
import com.example.proyectofinal.models.empresas.Empresa;
|
||||
import com.example.proyectofinal.repositories.empresas.ContactoRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/empresa")
|
||||
public class EmpressaController {
|
||||
@Autowired
|
||||
private ContactoRepository contactoRepository;
|
||||
|
||||
@GetMapping("/{id}")
|
||||
public String getEmpressaBySector(@PathVariable Long id, Model model) {
|
||||
Set<Contacto> contactoSet = new HashSet<>(contactoRepository.findBySector(id));
|
||||
model.addAttribute("contactos", contactoSet);
|
||||
return "/list/specific/list_empresa_contactos";
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.example.proyectofinal.controllers;
|
||||
|
||||
import com.example.proyectofinal.models.empresas.Empresa;
|
||||
import com.example.proyectofinal.repositories.empresas.EmpressaRepository;
|
||||
import com.example.proyectofinal.repositories.empresas.SectorRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/sector")
|
||||
public class SectorController {
|
||||
@Autowired
|
||||
private SectorRepository sectorRepository;
|
||||
@Autowired
|
||||
private EmpressaRepository empressaRepository;
|
||||
|
||||
@GetMapping("/{id}")
|
||||
public String getEmpressaBySector(@PathVariable Long id, Model model) {
|
||||
Set<Empresa> empresaSet = new HashSet<>(empressaRepository.findBySector(id));
|
||||
model.addAttribute("empresas", empresaSet);
|
||||
return "/list/specific/list_sector_empresas";
|
||||
}
|
||||
}
|
@ -1,7 +1,15 @@
|
||||
package com.example.proyectofinal.repositories.empresas;
|
||||
|
||||
import com.example.proyectofinal.models.empresas.Empresa;
|
||||
import com.example.proyectofinal.models.empresas.Sucursal;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public interface SucursalRepository extends JpaRepository<Sucursal, Long> {
|
||||
|
||||
//there is value = and nativeQuery = true so the query is written in SQL refering to the table in the database
|
||||
@Query(value = "SELECT * FROM sucursales u WHERE MATCH(u.nombre, u.localidad,u.direccion) AGAINST(?1 IN BOOLEAN MODE)", nativeQuery = true)
|
||||
public ArrayList<Sucursal> getSucursalByKeywordsOrName(String word);
|
||||
}
|
||||
|
@ -0,0 +1,53 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>EDITOR DE INFORMACIÓN</title>
|
||||
<style>
|
||||
.back-button {
|
||||
width: 200px; /* Adjust as needed */
|
||||
height: 50px; /* Adjust as needed */
|
||||
font-size: 20px; /* Adjust as needed */
|
||||
background-color: blue;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
justify-content: center; /* Add this line */
|
||||
align-items: center; /* Add this line */
|
||||
}
|
||||
.grid-container {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3,100px);
|
||||
grid-gap: 2px; /* Reduced from 5px to 2px */
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 50vh;
|
||||
}
|
||||
a {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-size: 20px;
|
||||
background-color: #f0f0f0;
|
||||
border: 1px solid black;
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="grid-container">
|
||||
<a>Empresa</a>
|
||||
<a>Alumno</a>
|
||||
<a>Oferta</a>
|
||||
<a>Sector</a>
|
||||
<a>Sucursal</a>
|
||||
<a>Skill</a>
|
||||
<a>Contactos</a>
|
||||
<a>Ciclo</a>
|
||||
<a>Familia</a>
|
||||
</div>
|
||||
|
||||
<a href="/buscador" class="back-button">Atras</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,10 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>ERROR</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,71 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Alumnos</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
<th>Apellido 1</th>
|
||||
<th>Apellido 2</th>
|
||||
<th>Correo</th>
|
||||
<th>Telefono</th>
|
||||
<th>Empressa</th>
|
||||
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="contacto :${contactos}">
|
||||
<td>[[${contacto.id}]]</td>
|
||||
<td>[[${contacto.nombre}]]</td>
|
||||
<td>[[${contacto.apellido}]]</td>
|
||||
<td>[[${contacto.apellido2}]]</td>
|
||||
<td>[[${contacto.correo}]]</td>
|
||||
<td>[[${contacto.telefono}]]</td>
|
||||
<td>[[${contacto.empresa.nombre}]]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a href="/buscador" class="back-button">Back to Buscador</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,60 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Skills</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="skill :${skills}">
|
||||
<td>[[${skill.id}]]</td>
|
||||
<td>[[${skill.nombre}]]</td>
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a href="/buscador" class="back-button">Atras</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,67 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Sucursales</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
<th>Localidad</th>
|
||||
<th>Dirección</th>
|
||||
<th>SedeCentral</th>
|
||||
<th>Empressa</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="sucursal :${sucursales}">
|
||||
<td>[[${sucursal.id}]]</td>
|
||||
<td>[[${sucursal.nombre}]]</td>
|
||||
<td>[[${sucursal.localidad}]]</td>
|
||||
<td>[[${sucursal.direccion}]]</td>
|
||||
<td>[[${sucursal.sedeCentral}]]</td>
|
||||
<td>[[${sucursal.empresa.nombre}]]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a href="/buscador" class="back-button">Atras</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,71 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Contactos</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
<th>Apellido 1</th>
|
||||
<th>Apellido 2</th>
|
||||
<th>Correo</th>
|
||||
<th>Telefono</th>
|
||||
<th>Empressa</th>
|
||||
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="contacto :${contactos}">
|
||||
<td>[[${contacto.id}]]</td>
|
||||
<td>[[${contacto.nombre}]]</td>
|
||||
<td>[[${contacto.apellido}]]</td>
|
||||
<td>[[${contacto.apellido2}]]</td>
|
||||
<td>[[${contacto.correo}]]</td>
|
||||
<td>[[${contacto.telefono}]]</td>
|
||||
<td>[[${contacto.empresa.nombre}]]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a th:href="@{/buscador/search(query=${session.query}, searchOption=${session.searchOption})}" class="back-button">Atras a empressas</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,71 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Empresas</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
<th>Cif</th>
|
||||
<th>Correo</th>
|
||||
<th>Telefono</th>
|
||||
<th class="keywords-cell">Keywords</th>
|
||||
<th>Sector</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="empresa :${empresas}">
|
||||
<td>[[${empresa.id}]]</td>
|
||||
<td>[[${empresa.nombre}]]</td>
|
||||
<td>[[${empresa.cif}]]</td>
|
||||
<td>[[${empresa.correo}]]</td>
|
||||
<td>[[${empresa.telefono}]]</td>
|
||||
<td class="keywords-cell">
|
||||
<div th:each="keyword : ${#strings.arraySplit(empresa.keywords, ',')}">[[${keyword}]]</div>
|
||||
</td>
|
||||
<td>[[${empresa.sector.nombre}]]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a th:href="@{/buscador/search(query=${session.query}, searchOption=${session.searchOption})}" class="back-button">Atras a sectores</a>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,59 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
.empresa-cell {
|
||||
max-height: 10px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.cell{
|
||||
height: 10px;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.back-button {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
padding: 10px 20px;
|
||||
background-color: #007BFF;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.table {
|
||||
border: 1px solid black;
|
||||
height: 75vh; /* Default height */
|
||||
max-height: 100vh; /* Maximum height */
|
||||
overflow-y: auto; /* Enable vertical scrolling */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" crossorigin="anonymous"></script>
|
||||
<h1>Listado de Ofertas</h1>
|
||||
<div class="table">
|
||||
<table class ="table table-hover table-responsive-xl">
|
||||
<thead class="thread-light">
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="cell" th:each="sector :${sectores}">
|
||||
<td>[[${sector.id}]]</td>
|
||||
<td><a th:href="@{/sector/{id}(id=${sector.id})}">[[${sector.nombre}]]</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a href="/buscador" class="back-button">Back to Buscador</a>
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in new issue