Añadir metodos addVisit, updateVisit y remove
This commit is contained in:
@@ -2,6 +2,7 @@ package ejb.visit;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.time.LocalTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.ejb.EJB;
|
import javax.ejb.EJB;
|
||||||
@@ -12,11 +13,13 @@ import javax.persistence.TypedQuery;
|
|||||||
|
|
||||||
import TO.VisitTO;
|
import TO.VisitTO;
|
||||||
import ejb.common.CommonFacadeLocal;
|
import ejb.common.CommonFacadeLocal;
|
||||||
|
import jpa.PatientJPA;
|
||||||
import jpa.VisitJPA;
|
import jpa.VisitJPA;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* EJB Session Bean Class para la Practica 2, Ejercicio 1 (ISCSD) Implementa los métodos de la capa de negocio que implementan la logica de negocio y la interacción con la capa de
|
* EJB Session Bean Class para la Practica 2, Ejercicio 1 (ISCSD) Implementa los
|
||||||
* persistencia.
|
* métodos de la capa de negocio que implementan la logica de negocio y la
|
||||||
|
* interacción con la capa de persistencia.
|
||||||
*
|
*
|
||||||
* @author mark
|
* @author mark
|
||||||
*
|
*
|
||||||
@@ -31,7 +34,8 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
CommonFacadeLocal commonServices;
|
CommonFacadeLocal commonServices;
|
||||||
|
|
||||||
public Long getScheduledVisitsCount(int familyDoctorId, Date date) {
|
public Long getScheduledVisitsCount(int familyDoctorId, Date date) {
|
||||||
TypedQuery<Long> query = entman.createQuery("SELECT count(1) from VisitJPA v where v.date=:date and v.familyDoctor.id=:docId", Long.class);
|
TypedQuery<Long> query = entman.createQuery(
|
||||||
|
"SELECT count(1) from VisitJPA v where v.date=:date and v.familyDoctor.id=:docId", Long.class);
|
||||||
query.setParameter("date", date);
|
query.setParameter("date", date);
|
||||||
query.setParameter("docId", familyDoctorId);
|
query.setParameter("docId", familyDoctorId);
|
||||||
|
|
||||||
@@ -39,7 +43,9 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public List<VisitTO> listAllScheduledVisitsPaged(int familyDoctorId, Date date, int pageNumber, int pageSize) {
|
public List<VisitTO> listAllScheduledVisitsPaged(int familyDoctorId, Date date, int pageNumber, int pageSize) {
|
||||||
TypedQuery<VisitJPA> query = entman.createQuery("SELECT v from VisitJPA v where v.date=:date and v.familyDoctor.id=:docId order by v.date, v.time", VisitJPA.class);
|
TypedQuery<VisitJPA> query = entman.createQuery(
|
||||||
|
"SELECT v from VisitJPA v where v.date=:date and v.familyDoctor.id=:docId order by v.date, v.time",
|
||||||
|
VisitJPA.class);
|
||||||
query.setParameter("date", date);
|
query.setParameter("date", date);
|
||||||
query.setParameter("docId", familyDoctorId);
|
query.setParameter("docId", familyDoctorId);
|
||||||
|
|
||||||
@@ -57,7 +63,7 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
|
|
||||||
return listTO;
|
return listTO;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getVisitsCount(Integer patientId, Date date) {
|
public Long getVisitsCount(Integer patientId, Date date) {
|
||||||
String strQuery = "SELECT count(1) from VisitJPA v %s";
|
String strQuery = "SELECT count(1) from VisitJPA v %s";
|
||||||
String strFilter = "";
|
String strFilter = "";
|
||||||
@@ -80,7 +86,7 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
|
|
||||||
return query.getSingleResult();
|
return query.getSingleResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<VisitTO> listVisitsPaged(Integer patientId, Date date, int pageNumber, int pageSize) {
|
public List<VisitTO> listVisitsPaged(Integer patientId, Date date, int pageNumber, int pageSize) {
|
||||||
String strQuery = "SELECT v from VisitJPA v %s order by v.patient, v.date";
|
String strQuery = "SELECT v from VisitJPA v %s order by v.patient, v.date";
|
||||||
String strFilter = "";
|
String strFilter = "";
|
||||||
@@ -93,7 +99,7 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
strFilter = "WHERE 1=1 " + strFilter;
|
strFilter = "WHERE 1=1 " + strFilter;
|
||||||
}
|
}
|
||||||
strQuery = String.format(strQuery, strFilter);
|
strQuery = String.format(strQuery, strFilter);
|
||||||
|
|
||||||
TypedQuery<VisitJPA> query = entman.createQuery(strQuery, VisitJPA.class);
|
TypedQuery<VisitJPA> query = entman.createQuery(strQuery, VisitJPA.class);
|
||||||
|
|
||||||
if (patientId != null)
|
if (patientId != null)
|
||||||
@@ -105,7 +111,7 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
query.setFirstResult(pageNumber * pageSize);
|
query.setFirstResult(pageNumber * pageSize);
|
||||||
query.setMaxResults(pageSize);
|
query.setMaxResults(pageSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
List<VisitJPA> allJPA = query.getResultList();
|
List<VisitJPA> allJPA = query.getResultList();
|
||||||
List<VisitTO> listTO = new ArrayList<VisitTO>();
|
List<VisitTO> listTO = new ArrayList<VisitTO>();
|
||||||
|
|
||||||
@@ -116,7 +122,6 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
return listTO;
|
return listTO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public VisitTO getVisit(int id) throws Exception {
|
public VisitTO getVisit(int id) throws Exception {
|
||||||
VisitJPA vi = entman.find(VisitJPA.class, id);
|
VisitJPA vi = entman.find(VisitJPA.class, id);
|
||||||
if (vi == null) {
|
if (vi == null) {
|
||||||
@@ -125,4 +130,33 @@ public class VisitFacadeBean implements VisitFacadeRemote {
|
|||||||
|
|
||||||
return this.commonServices.getPOJOforVisitJPA(vi, 1);
|
return this.commonServices.getPOJOforVisitJPA(vi, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void addResultToVisit(int id, String result) {
|
||||||
|
VisitJPA vi = entman.find(VisitJPA.class, id);
|
||||||
|
|
||||||
|
vi.setResult(result);
|
||||||
|
entman.persist(vi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void removeVisit(int id) {
|
||||||
|
VisitJPA vi = entman.find(VisitJPA.class, id);
|
||||||
|
entman.remove(vi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void updateVisit(int id, Date date, LocalTime time) {
|
||||||
|
VisitJPA vi = entman.find(VisitJPA.class, id);
|
||||||
|
vi.setDate(date);
|
||||||
|
vi.setTime(time);
|
||||||
|
entman.persist(vi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public VisitTO addVisit(int patientId, Date date, LocalTime time, String observations) {
|
||||||
|
|
||||||
|
PatientJPA pat = entman.find(PatientJPA.class, patientId);
|
||||||
|
|
||||||
|
VisitJPA vi = new VisitJPA(date, time, observations, "", pat, pat.getFamilyDoctor());
|
||||||
|
entman.persist(vi);
|
||||||
|
|
||||||
|
return this.commonServices.getPOJOforVisitJPA(vi, 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package ejb.visit;
|
package ejb.visit;
|
||||||
|
|
||||||
|
import java.time.LocalTime;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -8,9 +9,10 @@ import javax.ejb.Remote;
|
|||||||
import TO.VisitTO;
|
import TO.VisitTO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interfaz remota del EJB Definimos los métodos que estarán disponibles para los clientes del EJB
|
* Interfaz remota del EJB Definimos los métodos que estarán disponibles para
|
||||||
|
* los clientes del EJB
|
||||||
*
|
*
|
||||||
* @author mark
|
* @author alina
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Remote
|
@Remote
|
||||||
@@ -28,4 +30,13 @@ public interface VisitFacadeRemote {
|
|||||||
public List<VisitTO> listVisitsPaged(Integer patientId, Date date, int pageNumber, int pageSize);
|
public List<VisitTO> listVisitsPaged(Integer patientId, Date date, int pageNumber, int pageSize);
|
||||||
|
|
||||||
public VisitTO getVisit(int id) throws Exception;
|
public VisitTO getVisit(int id) throws Exception;
|
||||||
|
|
||||||
|
public void addResultToVisit(int id, String result);
|
||||||
|
|
||||||
|
public void removeVisit(int id);
|
||||||
|
|
||||||
|
public void updateVisit(int id, Date date, LocalTime time);
|
||||||
|
|
||||||
|
public VisitTO addVisit(int patientId, Date date, LocalTime time, String observations);
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user