diff --git a/domain/src/main/java/es/uvigo/esei/xcs/domain/entities/Pet.java b/domain/src/main/java/es/uvigo/esei/xcs/domain/entities/Pet.java index c344c92ae380c549ddd3b6a9afca404a348b8741..53adddf74e4e9b5b5ce55491ce2b68c94caf6fd5 100644 --- a/domain/src/main/java/es/uvigo/esei/xcs/domain/entities/Pet.java +++ b/domain/src/main/java/es/uvigo/esei/xcs/domain/entities/Pet.java @@ -221,6 +221,10 @@ public class Pet implements Serializable { this.vaccinations.remove(vaccination); } + public Collection getIdentifiers() { + return this.identifiers; + } + public void addIdentifier(Identifier identifier) { requireNonNull(identifier, "Identifier can't be null"); identifier.setPet(this); diff --git a/jsf/src/main/java/es/uvigo/esei/xcs/jsf/PetDetailsManagedBean.java b/jsf/src/main/java/es/uvigo/esei/xcs/jsf/PetDetailsManagedBean.java index 2515eb6bc75f9d532cfda1adec384aa028a2cdcf..beb99483faa7364c0835d315c65438553e1a7cd3 100644 --- a/jsf/src/main/java/es/uvigo/esei/xcs/jsf/PetDetailsManagedBean.java +++ b/jsf/src/main/java/es/uvigo/esei/xcs/jsf/PetDetailsManagedBean.java @@ -18,6 +18,7 @@ import java.util.Map; import es.uvigo.esei.xcs.domain.entities.Pet; import es.uvigo.esei.xcs.domain.entities.Vaccine; import es.uvigo.esei.xcs.domain.entities.Vaccination; +import es.uvigo.esei.xcs.service.EmailService; import es.uvigo.esei.xcs.service.PetService; import es.uvigo.esei.xcs.service.VaccinationService; import es.uvigo.esei.xcs.service.VaccineService; @@ -36,6 +37,9 @@ public class PetDetailsManagedBean implements Serializable{ @Inject private VaccinationService vaccinationService; + + @Inject + private EmailService emailService; private Pet pet; diff --git a/jsf/src/main/webapp/vet/petDetails.xhtml b/jsf/src/main/webapp/vet/petDetails.xhtml index d5bc8ffbda46ea835103720965f16b59c1e71402..dd4aec7296aa60ffcabf29d6fae535667123cd9f 100644 --- a/jsf/src/main/webapp/vet/petDetails.xhtml +++ b/jsf/src/main/webapp/vet/petDetails.xhtml @@ -25,6 +25,9 @@ + + +

Vacunas

diff --git a/service/src/main/java/es/uvigo/esei/xcs/service/PetService.java b/service/src/main/java/es/uvigo/esei/xcs/service/PetService.java index 47bd9eb0c5682d1e6e3114d340ef34c00efcb018..6ea6125357e0fab8de01d0a52f8d9abdc7569982 100644 --- a/service/src/main/java/es/uvigo/esei/xcs/service/PetService.java +++ b/service/src/main/java/es/uvigo/esei/xcs/service/PetService.java @@ -8,6 +8,7 @@ import java.util.List; import javax.annotation.security.PermitAll; import javax.annotation.security.RolesAllowed; +import javax.ejb.EJB; import javax.ejb.EJBAccessException; import javax.ejb.Stateless; import javax.inject.Inject; @@ -32,6 +33,9 @@ public class PetService { @Inject private Principal currentUser; + @EJB + private EmailService emailService; + @PersistenceContext private EntityManager em; @@ -242,6 +246,5 @@ public class PetService { return count > 0; } - } diff --git a/service/src/main/java/es/uvigo/esei/xcs/service/VaccinationService.java b/service/src/main/java/es/uvigo/esei/xcs/service/VaccinationService.java index 55b7fa3a6b0dbfd079e6957adb1d30961eecc2d6..70b5c98ed432cda78c0fc4ec9a2aeef3d47ee3a1 100644 --- a/service/src/main/java/es/uvigo/esei/xcs/service/VaccinationService.java +++ b/service/src/main/java/es/uvigo/esei/xcs/service/VaccinationService.java @@ -8,6 +8,7 @@ import java.text.SimpleDateFormat; import java.util.List; import javax.annotation.security.PermitAll; +import javax.ejb.EJB; import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; @@ -24,6 +25,8 @@ public class VaccinationService { @PersistenceContext EntityManager em; + @EJB + private EmailService emailService; public Vaccination get(int vaccinationId) { return em.find(Vaccination.class, vaccinationId); @@ -72,6 +75,11 @@ public class VaccinationService { Vaccination vaccination = new Vaccination(pet, vaccine, date); em.persist(vaccination); + emailService.send( + pet.getOwner().getLogin(), + pet.getName() + " ha sido vacunado con " + vaccine.getName(), + pet.getName() + " ha sido vacunado con " + vaccine.getName() + ); return vaccination; }