Package com.gestorrh.api.controller
Class TurnoController
java.lang.Object
com.gestorrh.api.controller.TurnoController
Controlador REST para la gestión del catálogo de Turnos.
Proporciona endpoints para crear, listar, actualizar y eliminar los diferentes turnos de trabajo que una empresa puede asignar a sus empleados.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<RespuestaTurnoDTO> actualizarTurno(Long id, @Valid PeticionTurnoDTO peticion) Endpoint para modificar la información de un turno ya existente en la base de datos.org.springframework.http.ResponseEntity<RespuestaTurnoDTO> crearTurno(@Valid PeticionTurnoDTO peticion) Endpoint para la creación de un nuevo tipo de turno en el sistema.org.springframework.http.ResponseEntity<Void> eliminarTurno(Long id) Endpoint para proceder a la eliminación física de un turno del catálogo de la empresa.org.springframework.http.ResponseEntity<List<RespuestaTurnoDTO>> Endpoint para obtener el listado completo de todos los turnos configurados por la empresa autenticada.
-
Field Details
-
turnoService
-
-
Constructor Details
-
TurnoController
public TurnoController()
-
-
Method Details
-
crearTurno
@PostMapping @PreAuthorize("hasRole(\'EMPRESA\')") public org.springframework.http.ResponseEntity<RespuestaTurnoDTO> crearTurno(@Valid @RequestBody @Valid PeticionTurnoDTO peticion) Endpoint para la creación de un nuevo tipo de turno en el sistema.Este recurso es de acceso restringido únicamente para usuarios que posean el rol de 'EMPRESA'.
URL de acceso:
POST http://localhost:8080/api/turnos- Parameters:
peticion- DTO que contiene los detalles del turno a crear, incluyendo descripción, hora de inicio y hora de fin.- Returns:
- ResponseEntity con el objeto
RespuestaTurnoDTOque representa el turno recién creado y el código de estado HTTP 201 (Created).
-
listarTurnos
@GetMapping @PreAuthorize("hasAnyRole(\'EMPRESA\', \'SUPERVISOR\')") public org.springframework.http.ResponseEntity<List<RespuestaTurnoDTO>> listarTurnos()Endpoint para obtener el listado completo de todos los turnos configurados por la empresa autenticada.Este recurso es accesible para usuarios con los roles 'EMPRESA' o 'SUPERVISOR'.
URL de acceso:
GET http://localhost:8080/api/turnos- Returns:
- ResponseEntity que contiene una lista de objetos
RespuestaTurnoDTOy el código de estado HTTP 200 (OK).
-
actualizarTurno
@PutMapping("/{id}") @PreAuthorize("hasRole(\'EMPRESA\')") public org.springframework.http.ResponseEntity<RespuestaTurnoDTO> actualizarTurno(@PathVariable("id") Long id, @Valid @RequestBody @Valid PeticionTurnoDTO peticion) Endpoint para modificar la información de un turno ya existente en la base de datos.Este recurso es de acceso restringido únicamente para usuarios con el rol de 'EMPRESA'.
URL de acceso:
PUT http://localhost:8080/api/turnos/{id}- Parameters:
id- Identificador único y numérico del turno que se desea modificar.peticion- DTO que contiene los nuevos datos que se asignarán al turno especificado.- Returns:
- ResponseEntity con el objeto
RespuestaTurnoDTOactualizado y el código de estado HTTP 200 (OK).
-
eliminarTurno
@DeleteMapping("/{id}") @PreAuthorize("hasRole(\'EMPRESA\')") public org.springframework.http.ResponseEntity<Void> eliminarTurno(@PathVariable("id") Long id) Endpoint para proceder a la eliminación física de un turno del catálogo de la empresa.Este recurso es de acceso restringido únicamente para usuarios con el rol de 'EMPRESA'.
URL de acceso:
DELETE http://localhost:8080/api/turnos/{id}- Parameters:
id- Identificador único y numérico del turno que se desea eliminar de forma permanente.- Returns:
- ResponseEntity con cuerpo vacío y el código de estado HTTP 204 (No Content) tras una ejecución exitosa.
-