From c92885fac74f11424f6c82a69ccb83a9458fbdd5 Mon Sep 17 00:00:00 2001 From: vicsash Date: Mon, 6 May 2024 20:48:52 +0200 Subject: [PATCH] Introduciendo otro dropdown para introducion de campo secundario por cual buscamos las cosas en base de datos. Empresas parcialmente hecho, peude hacer todos y sectores. Para este creamos mas interfaces especificos para cada entidad --- .../controllers/BuscadorController.java | 127 +++++++++----- .../IPagination.java | 3 +- .../interfaces/IPaginationStrategy.java | 8 + .../specific/IEmpresaSpecificPagination.java | 13 ++ .../empresas/EmpressaRepository.java | 5 + .../servicios/EmpresaService.java | 26 ++- .../servicios/implemetations/IAlumno.java | 1 + .../servicios/implemetations/ICiclos.java | 1 + .../servicios/implemetations/IContactos.java | 1 + .../servicios/implemetations/IEmpresa.java | 3 +- .../servicios/implemetations/IFamilia.java | 1 + .../servicios/implemetations/IOferta.java | 1 + .../servicios/implemetations/ISector.java | 1 + .../servicios/implemetations/ISkill.java | 4 +- .../servicios/implemetations/ISucursal.java | 1 + .../resources/templates/buscador_admin.html | 166 ++++++++++++++++-- .../resources/templates/list/empresas.html | 2 +- 17 files changed, 297 insertions(+), 67 deletions(-) rename src/main/java/com/example/proyectofinal/{servicios/implemetations => interfaces}/IPagination.java (74%) create mode 100644 src/main/java/com/example/proyectofinal/interfaces/IPaginationStrategy.java create mode 100644 src/main/java/com/example/proyectofinal/interfaces/specific/IEmpresaSpecificPagination.java diff --git a/src/main/java/com/example/proyectofinal/controllers/BuscadorController.java b/src/main/java/com/example/proyectofinal/controllers/BuscadorController.java index 9fbf63c..a76f79c 100644 --- a/src/main/java/com/example/proyectofinal/controllers/BuscadorController.java +++ b/src/main/java/com/example/proyectofinal/controllers/BuscadorController.java @@ -4,7 +4,7 @@ package com.example.proyectofinal.controllers; import com.example.proyectofinal.models.empresas.*; import com.example.proyectofinal.repositories.empresas.*; import com.example.proyectofinal.servicios.*; -import com.example.proyectofinal.servicios.implemetations.IPagination; +import com.example.proyectofinal.interfaces.IPagination; import org.springframework.data.domain.Page; import org.springframework.http.ResponseEntity; import org.springframework.ui.Model; @@ -52,40 +52,61 @@ public class BuscadorController { } @GetMapping("/empresas/page/{pageNum}") - public String seachEmpresasList(@PathVariable int pageNum, + public String searchEmpresasList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir){ - - String[] word = query.split("\\b(y|o)\\b|[,/]"); + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam String secondaryOption, + Model model){ + System.out.println("Selected option TEST: " + secondaryOption); + Page page = empresaService.getPage(pageNum, size, sortField, sortDir, query, secondaryOption); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { - sortField = "nombre"; - sortDir = "asc"; - } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, empresaService, itemsPage); - for (Map.Entry entry : attributes.entrySet()) { - model.addAttribute(entry.getKey(), entry.getValue()); + if(page!=null){ + List empresas = page.getContent(); + model.addAttribute("currentPage", pageNum); + model.addAttribute("totalPages", page.getTotalPages()); + model.addAttribute("totalItems", page.getTotalElements()); + model.addAttribute("empresas", empresas); + + model.addAttribute("sortField", sortField); + model.addAttribute("sortDir", sortDir); + model.addAttribute("reverseSortDir", sortDir.equals("asc") ? "desc" : "asc"); + + model.addAttribute("query", query); + model.addAttribute("secondaryOption", secondaryOption); + + model.addAttribute("itemsPage", itemsPage); + model.addAttribute("currentSize", size); + + }else{ + System.out.println("No se encontraron empresas"); } + +// List models = model.asMap().values().stream().toList(); +// for(Object m : models){ +// System.out.println(m); +// } return "/list/empresas"; } @GetMapping("/sectores/page/{pageNum}") public String searchSectoresList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir){ + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model){ String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, sectorService, itemsPage); + for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -96,17 +117,20 @@ public class BuscadorController { @GetMapping("/contactos/page/{pageNum}") public String searchContactosList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir) { + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model) { String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes =new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, contactosService, itemsPage); + for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -116,17 +140,19 @@ public class BuscadorController { @GetMapping("/sucursales/page/{pageNum}") public String searchSucursalesList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir){ + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model){ String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, sucursalService, itemsPage); for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -136,17 +162,19 @@ public class BuscadorController { @GetMapping("/ofertas/page/{pageNum}") public String searchOfertasList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir){ + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model){ String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, ofertasService, itemsPage); for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -156,17 +184,19 @@ public class BuscadorController { @GetMapping("/familias/page/{pageNum}") public String searchFamiliasList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir) { + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model) { String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, familiaService, itemsPage); for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -176,17 +206,19 @@ public class BuscadorController { @GetMapping("/ciclos/page/{pageNum}") public String searchCiclosList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir) { + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model) { String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, cicloService, itemsPage); for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -196,18 +228,20 @@ public class BuscadorController { @GetMapping("/alumnos/page/{pageNum}") public String searchAlumnosList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir) { + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model) { String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, alumnoService, itemsPage); for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } @@ -217,17 +251,20 @@ public class BuscadorController { @GetMapping("/skills/page/{pageNum}") public String searchSkillsList(@PathVariable int pageNum, @RequestParam(defaultValue = "") String query, - Model model, @RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "nombre") String sortField, - @RequestParam(defaultValue = "asc") String sortDir) { + @RequestParam(defaultValue = "asc") String sortDir, + @RequestParam(defaultValue = "") String secondaryOption, + Model model) { String[] word = query.split("\\b(y|o)\\b|[,/]"); List itemsPage = Arrays.asList(5, 10, 15, 20, 25, 50); - if (word.length == 1 && (word[0].equalsIgnoreCase("all") || word[0].equalsIgnoreCase("todas"))) { + Map attributes = new HashMap<>(); + if (secondaryOption.equalsIgnoreCase("Todo")) { sortField = "nombre"; sortDir = "asc"; + attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, skillService, itemsPage); } - Map attributes = getPaginatedAttributes(pageNum, query, size, sortField, sortDir, skillService, itemsPage); + for (Map.Entry entry : attributes.entrySet()) { model.addAttribute(entry.getKey(), entry.getValue()); } diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IPagination.java b/src/main/java/com/example/proyectofinal/interfaces/IPagination.java similarity index 74% rename from src/main/java/com/example/proyectofinal/servicios/implemetations/IPagination.java rename to src/main/java/com/example/proyectofinal/interfaces/IPagination.java index 3d093b8..0ade10b 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IPagination.java +++ b/src/main/java/com/example/proyectofinal/interfaces/IPagination.java @@ -1,8 +1,9 @@ -package com.example.proyectofinal.servicios.implemetations; +package com.example.proyectofinal.interfaces; import org.springframework.data.domain.Page; public interface IPagination { Page findAllPaginated(int pageNum, int size, String sortField, String sortDir); + } diff --git a/src/main/java/com/example/proyectofinal/interfaces/IPaginationStrategy.java b/src/main/java/com/example/proyectofinal/interfaces/IPaginationStrategy.java new file mode 100644 index 0000000..b088e9b --- /dev/null +++ b/src/main/java/com/example/proyectofinal/interfaces/IPaginationStrategy.java @@ -0,0 +1,8 @@ +package com.example.proyectofinal.interfaces; + +import org.springframework.data.domain.Page; + +public interface IPaginationStrategy { + + Page getPage(int pageNum, int size, String sortField, String sortDir, String query, IPagination service); +} diff --git a/src/main/java/com/example/proyectofinal/interfaces/specific/IEmpresaSpecificPagination.java b/src/main/java/com/example/proyectofinal/interfaces/specific/IEmpresaSpecificPagination.java new file mode 100644 index 0000000..a0bfbd9 --- /dev/null +++ b/src/main/java/com/example/proyectofinal/interfaces/specific/IEmpresaSpecificPagination.java @@ -0,0 +1,13 @@ +package com.example.proyectofinal.interfaces.specific; + +import com.example.proyectofinal.interfaces.IPagination; +import com.example.proyectofinal.models.empresas.Empresa; +import org.springframework.data.domain.Page; + +import java.util.List; + +public interface IEmpresaSpecificPagination extends IPagination { + + Page findEmpresasBySectorPaginated(Long sectorId, int pageNum, int size, String sortField, String sortDir); + +} diff --git a/src/main/java/com/example/proyectofinal/repositories/empresas/EmpressaRepository.java b/src/main/java/com/example/proyectofinal/repositories/empresas/EmpressaRepository.java index f77e949..7d23b19 100644 --- a/src/main/java/com/example/proyectofinal/repositories/empresas/EmpressaRepository.java +++ b/src/main/java/com/example/proyectofinal/repositories/empresas/EmpressaRepository.java @@ -30,6 +30,11 @@ public interface EmpressaRepository extends JpaRepository, JpaSpe @Query("SELECT e FROM Empresa e WHERE e.cif = :cif") Empresa existsCif(@Param("cif") String empresaName); + @Query(value = "SELECT * FROM empresas u WHERE u.fk_sector = :sectorId", nativeQuery = true) + Page empresaBySector(@Param("sectorId") Long sectorId, Pageable pageable); + // In EmpressaRepository.java + @Query("SELECT e FROM Empresa e WHERE e.sector.nombre = :sectorName") + Page findEmpresasBySectorName(@Param("sectorName") String sectorName, Pageable pageable); } diff --git a/src/main/java/com/example/proyectofinal/servicios/EmpresaService.java b/src/main/java/com/example/proyectofinal/servicios/EmpresaService.java index 3d05ba1..aac2bba 100644 --- a/src/main/java/com/example/proyectofinal/servicios/EmpresaService.java +++ b/src/main/java/com/example/proyectofinal/servicios/EmpresaService.java @@ -1,7 +1,9 @@ package com.example.proyectofinal.servicios; +import com.example.proyectofinal.interfaces.specific.IEmpresaSpecificPagination; import com.example.proyectofinal.models.empresas.Empresa; import com.example.proyectofinal.models.empresas.Oferta; +import com.example.proyectofinal.models.empresas.Sector; import com.example.proyectofinal.models.empresas.Sucursal; import com.example.proyectofinal.repositories.empresas.EmpressaRepository; import com.example.proyectofinal.repositories.empresas.OfertaRepository; @@ -12,10 +14,11 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; + import java.util.List; @Service -public class EmpresaService implements IEmpresa { +public class EmpresaService implements IEmpresa, IEmpresaSpecificPagination { @Autowired private EmpressaRepository empresaRepository; @@ -28,7 +31,16 @@ public class EmpresaService implements IEmpresa { @Autowired private OfertaRepository ofertaRepository; + public Page getPage(int pageNum, int size, String sortField, String sortDir, String query, String secondaryOption) { + if(secondaryOption.equalsIgnoreCase("Todo")){ + return findAllPaginated(pageNum, size, sortField, sortDir); + }else if (secondaryOption.equals("Sector")) { + return empresaRepository.findEmpresasBySectorName(query, PageRequest.of(pageNum - 1, size, Sort.by(sortField).ascending())); + } else { + return null; + } + } @Override public List findAll() { return empresaRepository.findAll(); @@ -41,6 +53,13 @@ public class EmpresaService implements IEmpresa { Page result = empresaRepository.findAll(pageRequest); return result; } + @Override + public Page findEmpresasBySectorPaginated(Long sectorId, int pageNum, int pageSize, String sortField, String sortDir) { + Sort sort = sortDir.equalsIgnoreCase(Sort.Direction.ASC.name()) ? Sort.by(sortField).ascending() : Sort.by(sortField).descending(); + PageRequest pageRequest = PageRequest.of(pageNum - 1, pageSize, sort); + Page result = empresaRepository.empresaBySector(sectorId, pageRequest); + return result; + } @Override public Empresa findById(Long id) { @@ -72,7 +91,7 @@ public class EmpresaService implements IEmpresa { } @Override - public List search(String query ) { + public List search(String query) { return empresaRepository.search(query); } @@ -87,6 +106,5 @@ public class EmpresaService implements IEmpresa { return empresaRepository.findBySector(id); } - - } + diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IAlumno.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/IAlumno.java index e828375..cfabbba 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IAlumno.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/IAlumno.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Alumno; import java.util.List; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/ICiclos.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/ICiclos.java index 9be82a3..c41f86d 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/ICiclos.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/ICiclos.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Ciclo; import com.example.proyectofinal.models.empresas.Familia; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IContactos.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/IContactos.java index b79b627..047e08c 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IContactos.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/IContactos.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Contacto; import com.example.proyectofinal.models.empresas.Empresa; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IEmpresa.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/IEmpresa.java index c8d06d2..e950467 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IEmpresa.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/IEmpresa.java @@ -1,5 +1,7 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; +import com.example.proyectofinal.interfaces.specific.IEmpresaSpecificPagination; import com.example.proyectofinal.models.empresas.Empresa; import java.util.List; @@ -8,7 +10,6 @@ public interface IEmpresa extends IPagination { List findAll(); - Empresa findById(Long id); Empresa save(Empresa empresa); diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IFamilia.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/IFamilia.java index fbdcb7f..25f3334 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IFamilia.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/IFamilia.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Familia; import java.util.List; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/IOferta.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/IOferta.java index 960b5fc..b17eb71 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/IOferta.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/IOferta.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Oferta; import com.example.proyectofinal.models.empresas.Sucursal; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISector.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISector.java index 562b200..28db6d1 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISector.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISector.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Sector; import java.util.List; diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISkill.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISkill.java index df43451..0d6414b 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISkill.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISkill.java @@ -1,12 +1,12 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Skill; -import org.springframework.data.domain.Page; import java.util.List; import java.util.Set; -public interface ISkill extends IPagination{ +public interface ISkill extends IPagination { List findAll(); Skill findById(Long id); diff --git a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISucursal.java b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISucursal.java index ee17596..526e1d1 100644 --- a/src/main/java/com/example/proyectofinal/servicios/implemetations/ISucursal.java +++ b/src/main/java/com/example/proyectofinal/servicios/implemetations/ISucursal.java @@ -1,5 +1,6 @@ package com.example.proyectofinal.servicios.implemetations; +import com.example.proyectofinal.interfaces.IPagination; import com.example.proyectofinal.models.empresas.Empresa; import com.example.proyectofinal.models.empresas.Sucursal; diff --git a/src/main/resources/templates/buscador_admin.html b/src/main/resources/templates/buscador_admin.html index 404d379..137ab5a 100644 --- a/src/main/resources/templates/buscador_admin.html +++ b/src/main/resources/templates/buscador_admin.html @@ -4,6 +4,7 @@ + Buscador @@ -55,29 +61,163 @@ - - - - - - + + + + + - + + + + + + diff --git a/src/main/resources/templates/list/empresas.html b/src/main/resources/templates/list/empresas.html index 369e59d..f5d1d7e 100644 --- a/src/main/resources/templates/list/empresas.html +++ b/src/main/resources/templates/list/empresas.html @@ -58,7 +58,7 @@ - + [[${empresa.nombre}]]