src/main/java/org/springframework/samples/petclinic/web/AnuncioController.java
@GetMapping("/beavers/{beaverId}/anuncios/{anuncioId}")
	public ModelAndView mostrarAnuncio(@PathVariable("anuncioId") final int anuncioId, final ModelMap model) {

		final ModelAndView vista = new ModelAndView("anuncios/anunciosDetails");
		final Anuncio anuncio = this.anuncioService.findAnuncioById(anuncioId);
		model.addAttribute("anuncio", anuncio);

		Beaver beaver = this.beaverService.getCurrentBeaver(); //Necesario para ver el id y usar las url
		Boolean esAdmin = false;

		if(beaver != null){
		model.addAttribute("myBeaverId", beaver.getId());

		User user = beaver.getUser();
		List<Authorities> auth = this.beaverService.findUserAuthorities(user);
		esAdmin = auth.get(0).getAuthority().equals("admin");
		}
		if (esAdmin) {
			model.addAttribute("esAdmin", true); //Este parámetro es la condicion para ver el boton de delete sin ser el creador
		}

		model.addAttribute("promocionado", anuncio.getDestacado());

		if (this.beaverService.getCurrentBeaver() == anuncio.getBeaver()) {
			model.addAttribute("createdByUser", true); //TODO: Front: Sólo quien creó el anuncio puede actualizarlo. Mostrad el botón sólo en este caso.
			model.addAttribute("authenticated", true);
		} else if(beaver == null){
			model.addAttribute("authenticated", false);
		} else {
			model.addAttribute("createdByUser", false);
			model.addAttribute("authenticated", true); //TODO: Front: Controla que el usuario que está viendo la vista es el mismo que creó el anuncio.
			//TODO: Front: El creador del anuncio NO puede crear solicitudes, mostrad el botón si este atributo es false.
		}
		return vista;
	}
// MOSTRAR LOS DETALLES DE UN ANUNCIO
MOSTRAR LOS DETALLES DE UN ANUNCIO
MOSTRAR LOS DETALLES DE UN ANUNCIO
@GetMapping("/beavers/{beaverId}/anuncios/{anuncioId}")
	public ModelAndView mostrarAnuncio(@PathVariable("anuncioId") final int anuncioId, final ModelMap model) {
		final ModelAndView vista = new ModelAndView("anuncios/anunciosDetails");
		final Anuncio anuncio = this.anuncioService.findAnuncioById(anuncioId);
		model.addAttribute("anuncio", anuncio);
		Beaver beaver = this.beaverService.getCurrentBeaver(); 
		Boolean esAdmin = false;
		if(beaver != null){
		model.addAttribute("myBeaverId", beaver.getId());
		User user = beaver.getUser();
		List<Authorities> auth = this.beaverService.findUserAuthorities(user);
		esAdmin = auth.get(0).getAuthority().equals("admin");
		}
		if (esAdmin) {
			model.addAttribute("esAdmin", true); 
		}
		model.addAttribute("promocionado", anuncio.getDestacado());
		if (this.beaverService.getCurrentBeaver() == anuncio.getBeaver()) {
			model.addAttribute("createdByUser", true); 
			model.addAttribute("authenticated", true);
		} else if(beaver == null){
			model.addAttribute("authenticated", false);
		} else {
			model.addAttribute("createdByUser", false);
			model.addAttribute("authenticated", true); 
		}
		return vista;
	}
@ GetMapping ( "/beavers/{beaverId}/anuncios/{anuncioId}" ) public ModelAndView mostrarAnuncio ( @ PathVariable ( "anuncioId" ) final int anuncioId , final ModelMap model ) { final ModelAndView vista = new ModelAndView ( "anuncios/anunciosDetails" ) ; final Anuncio anuncio = this . anuncioService . findAnuncioById ( anuncioId ) ; model . addAttribute ( "anuncio" , anuncio ) ; Beaver beaver = this . beaverService . getCurrentBeaver ( ) ; Boolean esAdmin = false ; if ( beaver != null ) { model . addAttribute ( "myBeaverId" , beaver . getId ( ) ) ; User user = beaver . getUser ( ) ; List < Authorities > auth = this . beaverService . findUserAuthorities ( user ) ; esAdmin = auth . get ( 0 ) . getAuthority ( ) . equals ( "admin" ) ; } if ( esAdmin ) { model . addAttribute ( "esAdmin" , true ) ; } model . addAttribute ( "promocionado" , anuncio . getDestacado ( ) ) ; if ( this . beaverService . getCurrentBeaver ( ) == anuncio . getBeaver ( ) ) { model . addAttribute ( "createdByUser" , true ) ; model . addAttribute ( "authenticated" , true ) ; } else if ( beaver == null ) { model . addAttribute ( "authenticated" , false ) ; } else { model . addAttribute ( "createdByUser" , false ) ; model . addAttribute ( "authenticated" , true ) ; } return vista ; }
MOSTRAR LOS DETALLES DE UN ANUNCIO
MOSTRAR LOS DETALLES DE UN ANUNCIO
//Necesario para ver el id y usar las url //Este parámetro es la condicion para ver el boton de delete sin ser el creador //TODO: Front: Sólo quien creó el anuncio puede actualizarlo. Mostrad el botón sólo en este caso. //TODO: Front: Controla que el usuario que está viendo la vista es el mismo que creó el anuncio. //TODO: Front: El creador del anuncio NO puede crear solicitudes, mostrad el botón si este atributo es false.