Modificación y borrado de especialidades

This commit is contained in:
dalvarezgon
2019-12-21 23:10:13 +01:00
parent b815680649
commit 4aeec0c31b
4 changed files with 96 additions and 10 deletions

View File

@@ -8,7 +8,7 @@
<ui:define name="content">
<h:form id="frmManageSpecialties">
<p:growl id="mesgs" showDetail="true" closable="true" autoupdate="true" />
<p:panel id="PanelMS" header="Página Gestión de Especialidades">
<p:panel id="PanelMS" header="Modificación y borrado de especialidades">
<div class="ui-g ui-fluid">
<div class="ui-g-2 ui-md-2">
<p:outputLabel for="ms"/>
@@ -20,19 +20,42 @@
</p:selectOneMenu>
</div>
<div class="ui-g-1 ui-md-1" >
<p:outputLabel value="Editar nombre" for="name"/>
<p:outputLabel value="Nombre: " for="name"/>
</div>
<div class="ui-g-2 ui-md-2">
<p:inputText id="name" value="#{ManageSpecialities.medicalSpecialty.name}" readonly="false" required="true" requiredMessage="Es necesario un nombre" />
</div>
<div class="ui-g-1 ui-md-1">
<p:outputLabel value="Editar descripción" for="description" />
<p:outputLabel value="Descripción: " for="description" />
</div>
<div class="ui-g-4 ui-md-4">
<p:inputText id="description" value="#{ManageSpecialities.medicalSpecialty.description}" readonly="false" required="true" requiredMessage="Es necesaria una descripción" />
</div>
<div class="ui-g-1 ui-md-1 ">
<p:commandButton validateClient="true" value="Guardar" update="mesgs" action="#{ManageSpecialities.saveData}" icon="pi pi-save" />
</div>
<div class="ui-g-1 ui-md-1 ">
<p:commandButton validateClient="true" value="Borrar" update="mesgs" action="#{ManageSpecialities.deleteData}" icon="fa fa-remove" />
</div>
</div>
</p:panel>
<p:panel id="PanelNewMS" header="Alta de especialidades">
<div class="ui-g ui-fluid">
<div class="ui-g-1 ui-md-1" >
<p:outputLabel value="Nombre: " for="nameNew"/>
</div>
<div class="ui-g-2 ui-md-2">
<p:inputText id="nameNew" value="#{ManageSpecialities.name}" readonly="false" required="ManageSpecialities.medicalSpecialty.name eq null" requiredMessage="Es necesario un nombre" />
</div>
<div class="ui-g-1 ui-md-1">
<p:outputLabel value="Descripción: " for="descriptionNew" />
</div>
<div class="ui-g-6 ui-md-6">
<p:inputText id="descriptionNew" value="#{ManageSpecialities.description}" readonly="false" required="ManageSpecialities.medicalSpecialty.description eq null" requiredMessage="Es necesaria una descripción" />
</div>
<div class="ui-g-2 ui-md-2 ">
<p:commandButton validateClient="true" value="Guardar" update="mesgs" action="#{ManageSpecialities.saveData}" icon="pi pi-check" />
<p:commandButton validateClient="true" value="Crear" update="mesgs" action="#{ManageSpecialities.insertData}" icon="pi pi-check" />
</div>
</div>
</p:panel>

View File

@@ -16,7 +16,6 @@ import common.UserType;
import ejb.common.CommonFacadeLocal;
import jpa.AdministratorJPA;
import jpa.MedicalSpecialtyJPA;
import jpa.PatientJPA;
/**
*
@@ -126,4 +125,24 @@ public class SystemAdminFacadeBean implements SystemAdminFacadeRemote {
return this.commonServices.getPOJOforMedicalSpecialtyJPA(ms);
}
@Override
public void deleteSpecialtyData(int id, String name, String description) throws Exception {
MedicalSpecialtyJPA ms = entman.find(MedicalSpecialtyJPA.class, id);
if (ms == null) {
throw new Exception("No se puede borrar la especialidad porque no se encuentra en la base de datos ningún registro con id: " + String.valueOf(id));
}
entman.remove(ms);
}
@Override
public MedicalSpecialtyTO insertSpecialtyData(String name, String description) throws Exception {
MedicalSpecialtyJPA ms = new MedicalSpecialtyJPA(name, description);
entman.persist(ms);
return this.commonServices.getPOJOforMedicalSpecialtyJPA(ms);
}
}

View File

@@ -1,13 +1,9 @@
package ejb.systemAdmin;
import java.util.Collection;
import javax.ejb.Remote;
import TO.LoggedUserTO;
import TO.MedicalSpecialtyTO;
import TO.PatientTO;
import TO.PrimaryHealthCareCenterTO;
/**
*
@@ -23,4 +19,8 @@ public interface SystemAdminFacadeRemote {
public LoggedUserTO login(String id, String pwd);
public MedicalSpecialtyTO updateSpecialtyData(int id, String name, String description) throws Exception;
public void deleteSpecialtyData(int id, String name, String description) throws Exception;
public MedicalSpecialtyTO insertSpecialtyData(String name, String description) throws Exception;
}

View File

@@ -6,7 +6,6 @@ import java.util.List;
import javax.annotation.PostConstruct;
import javax.enterprise.context.RequestScoped;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.inject.Named;
import TO.LoggedUserTO;
@@ -115,4 +114,49 @@ public class ManageSpecialitiesMBean extends ManagedBeanBase implements Serializ
}
}
}
public void deleteData() {
int error = 0;
if (this.medicalSpecialty.getName() == null) {
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Nombre no relleno", "Por favor, escriba un nombre de especialidad.");
error++;
}
if (this.medicalSpecialty.getDescription() == null) {
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Descripción no rellena", "Por favor, escriba una descripción.");
error++;
}
if (error == 0) {
try {
this.getRemoteManagerSystemAdmin().deleteSpecialtyData(this.medicalSpecialty.getId(), this.medicalSpecialty.getName(), this.medicalSpecialty.getDescription());
this.addFacesMessage(FacesMessage.SEVERITY_INFO, "Los especialidad se ha borrado", "Los datos de la especialidad se han borrado correctamente.");
} catch (Exception e) {
this.manageException(e);
}
}
}
public void insertData() {
int error = 0;
if (name == null || name.trim().length() == 0) {
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Nombre no relleno", "Por favor, escriba un nombre de especialidad.");
error++;
}
if (description == null || description.trim().length() == 0) {
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Descripción no rellena", "Por favor, escriba una descripción.");
error++;
}
if (error == 0) {
try {
MedicalSpecialtyTO ms = this.getRemoteManagerSystemAdmin().insertSpecialtyData(name, description);
this.setSpecialtyData(ms);
this.addFacesMessage(FacesMessage.SEVERITY_INFO, "Los datos se han guardado", "Los datos de la especialidad se han guardado correctamente.");
} catch (Exception e) {
this.manageException(e);
}
}
}
}