Añado nuevas funciones al servicio y controlo parte de las relaciones entre clases

parent 75239913
...@@ -37,7 +37,8 @@ public class Reserva { ...@@ -37,7 +37,8 @@ public class Reserva {
@NotNull @NotNull
private boolean reservaConcluida; private boolean reservaConcluida;
@Transient @OneToOne(fetch = FetchType.EAGER, cascade=CascadeType.ALL)
@JoinColumn(name="idReserva")
private Viaje viaje; private Viaje viaje;
@Transient @Transient
SistemaCarPooling sistema; SistemaCarPooling sistema;
......
...@@ -321,4 +321,5 @@ public class Usuario { ...@@ -321,4 +321,5 @@ public class Usuario {
} }
} }
...@@ -2,6 +2,8 @@ package com.carpooling.carpoolingaoraha.services; ...@@ -2,6 +2,8 @@ package com.carpooling.carpoolingaoraha.services;
import com.carpooling.carpoolingaoraha.entidades.Reserva; import com.carpooling.carpoolingaoraha.entidades.Reserva;
import com.carpooling.carpoolingaoraha.entidades.Usuario; import com.carpooling.carpoolingaoraha.entidades.Usuario;
import com.carpooling.carpoolingaoraha.excepciones.ReservaNoRegistrada;
import com.carpooling.carpoolingaoraha.excepciones.UsuarioNoRegistrado;
import com.carpooling.carpoolingaoraha.excepciones.UsuarioYaRegistrado; import com.carpooling.carpoolingaoraha.excepciones.UsuarioYaRegistrado;
import com.carpooling.carpoolingaoraha.repositorios.ReservaRepository; import com.carpooling.carpoolingaoraha.repositorios.ReservaRepository;
import com.carpooling.carpoolingaoraha.repositorios.UsuarioRepository; import com.carpooling.carpoolingaoraha.repositorios.UsuarioRepository;
...@@ -16,6 +18,7 @@ import org.springframework.validation.annotation.Validated; ...@@ -16,6 +18,7 @@ import org.springframework.validation.annotation.Validated;
import javax.validation.Valid; import javax.validation.Valid;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Optional; import java.util.Optional;
@Service @Service
...@@ -66,15 +69,25 @@ public class ServicioCarPooling { ...@@ -66,15 +69,25 @@ public class ServicioCarPooling {
return usuarioLogin; return usuarioLogin;
} }
@CacheEvict(value="clientes", key = "#dni") @CacheEvict(value="usuarios", key = "#dni")
public Reserva crearReserva(@NotBlank String dni) { public Reserva crearReserva(@NotBlank String dni) {
Cliente cliente = repositorioClientes.buscar(dni).orElseThrow(ClienteNoRegistrado::new); Usuario usuario = repositorioUsuario.buscar(dni).orElseThrow(UsuarioNoRegistrado::new);
//correcto??
Reserva reserva = new Reserva();
repositorioReservas.guardar(reserva);
Cuenta cuenta = crearCuenta(cliente); return reserva;
repositorioCuentas.guardar(cuenta); }
/**
@Transactional
public List<Reserva> verReserva (@NotBlank String idReserva) {
Reserva r = repositorioReservas.buscar(idReserva).orElseThrow(ReservaNoRegistrada::new);
return cuenta; // Precargar a memoria la relación lazy de cuentas del cliente antes de devolver
//cliente.verCuentas().size();
return r.;
} }
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment