Añadido mensaje de información adicional sobre los datos.
This commit is contained in:
@@ -35,6 +35,7 @@ public class UpdateVisitMBean extends ManagedBeanBase implements Serializable {
|
||||
private boolean readOnly;
|
||||
private UserType userType;
|
||||
private String fromPage;
|
||||
private String infoMessage;
|
||||
|
||||
public UpdateVisitMBean() {
|
||||
}
|
||||
@@ -70,20 +71,40 @@ public class UpdateVisitMBean extends ManagedBeanBase implements Serializable {
|
||||
this.result = vi.getResult();
|
||||
this.patient = vi.getPatient();
|
||||
this.familyDoctor = vi.getFamilyDoctor();
|
||||
|
||||
this.setInfoMessage();
|
||||
} else {
|
||||
this.addFacesMessage(FacesMessage.SEVERITY_ERROR, "Identificador de visita no válido",
|
||||
"No se ha podido recuperar el identificador de visita especificado. Por favor, vuelva a intentarlo seleccionando de nuevo la visita.");
|
||||
}
|
||||
}
|
||||
|
||||
private void setInfoMessage() {
|
||||
switch (this.userType) {
|
||||
case ADMINISTRATOR:
|
||||
case PATIENT:
|
||||
if (this.result != null && this.result.trim().equals("") == false)
|
||||
this.infoMessage = "La cita ya tiene un resultado y no es editable.";
|
||||
break;
|
||||
case FAMILY_DOCTOR:
|
||||
// El médico de familia solo puede actualizar el resultado.
|
||||
if (this.date.isAfter(LocalDate.now()))
|
||||
this.infoMessage = "La cita es posterior a la fecha actual y no se puede actualizar el resultado.";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public void saveData() {
|
||||
int error = 0;
|
||||
|
||||
try {
|
||||
switch (this.userType) {
|
||||
case ADMINISTRATOR:
|
||||
case PATIENT:
|
||||
// Administrador y paciente pueden actualizar la fecha y hora de la visita (excepto el resultado)
|
||||
// Comprobamos que la fecha fijada para la visita no sea anterior a la actual
|
||||
int error = 0;
|
||||
LocalDate today = LocalDate.now();
|
||||
|
||||
if (this.date.isBefore(today)) {
|
||||
@@ -101,9 +122,14 @@ public class UpdateVisitMBean extends ManagedBeanBase implements Serializable {
|
||||
break;
|
||||
case FAMILY_DOCTOR:
|
||||
// El médico de familia solo puede actualizar el resultado.
|
||||
// TODO: implementar método EJB para actualizar el resultado.
|
||||
this.getRemoteManagerVisit().addResultToVisit(this.id, this.result);
|
||||
this.addFacesMessage(FacesMessage.SEVERITY_INFO, "Resultado actualizado", "El resultado de la visita se ha actualizado correctamente.");
|
||||
if (this.date.isAfter(LocalDate.now())) {
|
||||
this.addFacesMessage(FacesMessage.SEVERITY_ERROR, "Fecha incorrecta", "La cita fijada es posterior a la fecha actual y no se puede actualizar el resultado.");
|
||||
error++;
|
||||
}
|
||||
if (error == 0) {
|
||||
this.getRemoteManagerVisit().addResultToVisit(this.id, this.result);
|
||||
this.addFacesMessage(FacesMessage.SEVERITY_INFO, "Resultado actualizado", "El resultado de la visita se ha actualizado correctamente.");
|
||||
}
|
||||
break;
|
||||
case SPECIALIST_DOCTOR:
|
||||
this.addFacesMessage(FacesMessage.SEVERITY_INFO, "Acesso denegado", "Su perfil de usuario no está autorizado acceder a esta página.");
|
||||
@@ -204,4 +230,7 @@ public class UpdateVisitMBean extends ManagedBeanBase implements Serializable {
|
||||
this.fromPage = fromPage;
|
||||
}
|
||||
|
||||
public String getInfoMessage() {
|
||||
return infoMessage;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user