This commit is contained in:
Alejandro Linares Amado
2019-12-28 20:59:14 +01:00
11 changed files with 539 additions and 175 deletions

View File

@@ -60,7 +60,7 @@
<p:menubar model="#{menuView.model}">
<f:facet name="options">
<ui:fragment rendered="#{home.logedIn}">
<h:outputText value="logeado como #{home.userName} (#{home.userType}) " />
<h:outputText value="Bienvenido, #{home.userDisplayName} (#{home.userType}) " />
<p:commandButton value="Logout" icon="pi pi-sign-out" action="#{loginView.logout}" />
</ui:fragment>
<ui:fragment rendered="#{not home.logedIn}">

View File

@@ -8,6 +8,9 @@
<h:form>
<p:panel header="Pagina principal">
<div class="ui-g ui-fluid">
<div class="ui-g-12 ui-md-12">
Logeado como: <h:outputLabel value="#{home.userDisplayName}" style="font-weight: bold;" />
</div>
<div class="ui-g-2 ui-md-2">
<p:outputLabel for="selectorTema" value="Cambio de tema" />
</div>
@@ -22,32 +25,6 @@
<p:commandButton value="Usar tema" update="messages" action="#{sessionPreferences.updateCurrentTheme}" icon="pi pi-save" />
</div>
<div class="ui-g-5 ui-md-5" />
<div class="ui-g-2 ui-md-2">
<div class="ui-inputgroup">
<p:calendar pattern="dd/MM/yyyy" showButtonPanel="true" autocomplete="true" />
<p:commandButton value="Fecha" />
</div>
</div>
<div class="ui-g-10 ui-md-10" />
<div class="ui-g-2 ui-md-2">
<h:outputLabel value="Fecha" />
<p:calendar pattern="dd/MM/yyyy" showButtonPanel="true" autocomplete="true" />
</div>
<div class="ui-g-10 ui-md-10" />
<div class="ui-g-12">
<h:outputLabel value="Rich Text Editor" />
</div>
<div class="ui-g-12 ui-md-12">
<p:editor />
</div>
<div class="ui-g-12 ui-md-12">
<h:outputLabel value="Logeado como:" />
<p:inputText readonly="true" value="#{home.userName}" />
</div>
</div>
</p:panel>
</h:form>

View File

@@ -67,7 +67,7 @@
<div class="ui-g-4 ui-md-4">
<div class="ui-inputgroup">
<p:inputText id="nif" value="#{RegisterUser.nif}" validator="nifValidator" maxlength="20" required="true" requiredMessage="Por favor, indque su NIF">
<p:ajax event="blur" update="nifmsg" listener="#{RegisterUser.hadleNIFValueChange}" oncomplete="handleNIFResponse(xhr, status, args)" />
<p:ajax event="blur" update="nifmsg" listener="#{RegisterUser.handleNIFValueChange}" oncomplete="handleNIFResponse(xhr, status, args)" />
</p:inputText>
<p:commandButton widgetVar="nifButton" icon="pi pi-times" styleClass="red-button" />
</div>

View File

@@ -42,7 +42,7 @@
<div class="ui-g-4 ui-md-4">
<div class="ui-inputgroup">
<p:inputText id="nif" value="#{UpdateProfile.nif}" validator="nifValidator" maxlength="20" required="true" requiredMessage="Por favor, indque su NIF">
<p:ajax event="blur" update="nifmsg" listener="#{UpdateProfile.hadleNIFValueChange}" oncomplete="handleNIFResponse(xhr, status, args)" />
<p:ajax event="blur" update="nifmsg" listener="#{UpdateProfile.handleNIFValueChange}" oncomplete="handleNIFResponse(xhr, status, args)" />
</p:inputText>
<p:commandButton widgetVar="nifButton" icon="pi pi-check" styleClass="green-button" />
</div>

View File

@@ -222,10 +222,26 @@ public class CommonFacadeBean implements CommonFacadeRemote, CommonFacadeLocal {
return allFDTOs;
}
/**
* Método que devuelve una lista con todos los pacientes registrados en el sistema de forma paginada.
*
* Si pageSize == 0 no se realiza paginación y se devuelven todos los resultados.
*
* @return Devuelve una Lista de PatientTO (Transfer Objects).
*/
public List<PatientTO> listPatientsPaged(int pageNumber, int pageSize) {
return this.listPatientsFiltered(null, pageNumber, pageSize);
}
/**
* Método que devuelve una lista de pacientes que tienen una coincidencia parcial en el nombre o en los apellidos con el termino de búsqueda (searchTerm) especificado.
*
* Además permite la paginacción de datos. Si pageSize == 0 no se realiza paginación y se devuelven todos los resultados.
*
* Si serachTerm es nulo o cadena vacía entonces no se tiene en cuenta el parámetro y devuelven todos los registros existentes.
*
* @return Devuelve una Lista de PatientTO (Transfer Objects).
*/
public List<PatientTO> listPatientsFiltered(String searchTerm, int pageNumber, int pageSize) {
String strQuery = "SELECT p FROM PatientJPA p %s order by p.name, p.surname";
String strFilter = "";
@@ -476,7 +492,7 @@ public class CommonFacadeBean implements CommonFacadeRemote, CommonFacadeLocal {
/**
* Método que recupera un médico especialista a partir de su NIF
*
* @return SpecialistDoctorTO (Transfer Object del objeto recuperado) o null si no se encuentra el objeto buscado
* @return SpecialistDoctorTO (Transfer Object del objeto recuperado) o null si el objeto JPA es nulo
*/
public SpecialistDoctorTO findSpecialistDoctorByNif(String searchedNIF) {
TypedQuery<SpecialistDoctorJPA> query = entman.createQuery("from SpecialistDoctorJPA d where d.nif=:nif", SpecialistDoctorJPA.class);
@@ -496,7 +512,7 @@ public class CommonFacadeBean implements CommonFacadeRemote, CommonFacadeLocal {
* El parámetro nestedProps es un valor entero que indica a que nivel de profundidad se debe navegar a través de las propiedades relacionadas para convertirlas de JPA a TO. Un
* valor 0 indica que no se convertirá ninguna propiedad que tenga un entidad JPA relacionada (tendrá valor null en el objeto TO).
*
* @return QuestionTO (Transfer Object del objeto recuperado) o null si no se encuentra el objeto buscado
* @return QuestionTO (Transfer Object del objeto recuperado) o null si el objeto JPA es nulo
*/
public QuestionTO getPOJOforQuestionJPA(QuestionJPA qs, int nestedProps) {
QuestionTO qsTO = null;
@@ -517,6 +533,14 @@ public class CommonFacadeBean implements CommonFacadeRemote, CommonFacadeLocal {
return qsTO;
}
/**
* Método que converite un objeto de tipo VisitJPA a su equivalente VisitTO (Transfer Object)
*
* El parámetro nestedProps es un valor entero que indica a que nivel de profundidad se debe navegar a través de las propiedades relacionadas para convertirlas de JPA a TO. Un
* valor 0 indica que no se convertirá ninguna propiedad que tenga un entidad JPA relacionada (tendrá valor null en el objeto TO).
*
* @return VisitTO (Transfer Object del objeto recuperado) o null si el objeto JPA es nulo
*/
public VisitTO getPOJOforVisitJPA(VisitJPA vi, int nestedProps) {
VisitTO qsTO = null;

View File

@@ -4,8 +4,8 @@ import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.enterprise.context.RequestScoped;
import javax.faces.application.FacesMessage;
import javax.faces.view.ViewScoped;
import javax.inject.Named;
import common.UserType;
@@ -16,22 +16,23 @@ import common.UserType;
*
*/
@Named("home")
@RequestScoped
@ViewScoped
public class homeMBean extends ManagedBeanBase implements Serializable {
private static final long serialVersionUID = 1L;
private boolean isLogedIn;
private String userId;
private String userName;
private String userDisplayName;
private UserType userType;
private int refresh;
@PostConstruct
public void init() {
isLogedIn = SessionUtils.isLogedIn();
userName = SessionUtils.getUserName();
userId = SessionUtils.getUserId();
userType = SessionUtils.getUserType();
this.isLogedIn = SessionUtils.isLogedIn();
this.userName = SessionUtils.getUserName();
this.userDisplayName = SessionUtils.getUserDisplayName();
this.userId = SessionUtils.getUserId();
this.userType = SessionUtils.getUserType();
FacesMessage message = SessionUtils.getMessage();
@@ -55,6 +56,13 @@ public class homeMBean extends ManagedBeanBase implements Serializable {
return this.userName;
}
public String getUserDisplayName() {
if (this.isLogedIn == false)
return "Invitado";
else
return this.userDisplayName;
}
public String getUserId() {
return this.userId;
}
@@ -63,14 +71,6 @@ public class homeMBean extends ManagedBeanBase implements Serializable {
return this.userType.getUserTypename();
}
public int getRefresh() {
return refresh;
}
public void setRefresh(int refresh) {
this.refresh = refresh;
}
public boolean isPatient() {
return (this.userType == UserType.PATIENT);
}

View File

@@ -17,6 +17,7 @@ import managedbean.common.ManagedBeanBase;
import managedbean.common.SessionUtils;
/***
* ManageBean que gestiona la vista para el cambio de médico de familia para un paciente
*
* @author Marcos García Núñez (mgarcianun@uoc.edu)
*
@@ -36,6 +37,14 @@ public class ChangeFamilyDoctorMBean extends ManagedBeanBase implements Serializ
}
/**
* Inicializa el managed Bean
*
* Si el usuario logeado es nulo devuelve un error indicando que la sesión actual no es válida.
*
* Recupera el id del usuario actual desde la sesión. Dado que solo los pacientes pueden seleccionar un médico de familia, si el usuario es de otro tipo se muestra un mensaje
* de error.
*/
@PostConstruct
public void init() {
// Recuperamos el usuario logeado actual
@@ -54,8 +63,9 @@ public class ChangeFamilyDoctorMBean extends ManagedBeanBase implements Serializ
this.familyDoctorList = this.getRemoteManagerCommon().listFamilyDoctorsPaged(0, Constants.MAX_ITEMS_AUTOCOMPLETE_SEARCH);
PatientTO pat = this.getRemoteManagerCommon().findPatientById(this.id);
this.setCurrentFamilyDoctor(pat.getFamilyDoctor());
}
this.currentFamilyDoctor = pat.getFamilyDoctor();
} else
this.addFacesMessage(FacesMessage.SEVERITY_ERROR, "Perfil no válido", "Su tipo de usuario no permite que pueda tener acceso a esta página.");
}
} catch (Exception e) {
this.manageException(e);
@@ -63,23 +73,47 @@ public class ChangeFamilyDoctorMBean extends ManagedBeanBase implements Serializ
}
/**
* Devuelve la lista de médicos de familia para el combo de selección.
*
* @return Lista de médicos de familia.
*/
public List<FamilyDoctorTO> getFamilyDoctorList() {
return familyDoctorList;
}
/**
* Método que permite relizar búsqueda de tipo "typeAhead" en la lista de selección de médico.
*
* Recibe como parámetro el testo tecleado por el usuario
*
* @param query Texto tecleado por el usuario
* @return Retorna la lista de médicos de familia coincidentes con el termino buscado.
*/
public List<FamilyDoctorTO> completeFamilyDoctor(String query) {
if (query != null && query.equals(this.lastUIQuery) == false) {
this.lastUIQuery = query;
// Recuperamos las 200 primeras coincidencias
// Recuperamos las primeras ~30 coincidencias, según constante
this.familyDoctorList = this.getRemoteManagerCommon().listFamilyDoctorsFiltered(query, 0, Constants.MAX_ITEMS_AUTOCOMPLETE_SEARCH);
}
return this.familyDoctorList;
}
// Id del usuario actual, obtenido de la sessión del usuario logeado.
public int getId() {
return id;
}
/**
* Método que realiza la persistencia del cambio de médico de familia. a través de la invocación al método EJB correspondiente.
*
* Se realizan 2 comprobaciones adicionales:
*
* 1. Se ha seleccionado un nuevo médico de familia
*
* 2. El médico de familia nuevo es diferente al actual
*
*/
public void saveData() {
int error = 0;

View File

@@ -17,6 +17,7 @@ import managedbean.common.ManagedBeanBase;
import managedbean.common.SessionUtils;
/***
* ManagedBean que gestiona la vista para el cambio del centro de atención primaria para los médicos de familia
*
* @author Marcos García Núñez (mgarcianun@uoc.edu)
*
@@ -36,6 +37,12 @@ public class ChangePrimaryHealthCareCenterMBean extends ManagedBeanBase implemen
}
/**
* Inicializa el managed Bean.
*
* Si el usuario atual no se puede recupear de la sesión o si no es un perfil de tipo médicos de familia se muestra un mensaje de error.
*
*/
@PostConstruct
public void init() {
// Recuperamos el usuario logeado actual
@@ -52,11 +59,13 @@ public class ChangePrimaryHealthCareCenterMBean extends ManagedBeanBase implemen
this.id = Integer.valueOf(usr.getId());
if (usr.getUserType() == UserType.FAMILY_DOCTOR) {
// Recupera la lista de CAPs inicial desde el EJB.
this.primaryHealthCareCentersList = this.getRemoteManagerCommon().listCAPsPaged(0, Constants.MAX_ITEMS_AUTOCOMPLETE_SEARCH);
FamilyDoctorTO fd = this.getRemoteManagerCommon().findFamilyDoctorById(this.id);
this.setCurrentCenter(fd.getPrimaryHealthCareCenter());
}
} else
this.addFacesMessage(FacesMessage.SEVERITY_ERROR, "Perfil no válido", "Su tipo de usuario no permite que pueda tener acceso a esta página.");
}
} catch (Exception e) {
this.manageException(e);
@@ -68,6 +77,12 @@ public class ChangePrimaryHealthCareCenterMBean extends ManagedBeanBase implemen
return primaryHealthCareCentersList;
}
/**
* Método que implementa la búsqueda de un CAP a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de CAPs que coinciden con el termino búscado por el usuario.
*/
public List<PrimaryHealthCareCenterTO> completePrimaryHealCareCenter(String query) {
if (query != null && query.equals(this.lastUIQuery) == false) {
this.lastUIQuery = query;
@@ -81,16 +96,24 @@ public class ChangePrimaryHealthCareCenterMBean extends ManagedBeanBase implemen
return id;
}
/**
* Método que realiza el guardado de los cambios a través de la invocación del método del EJB correspondiente.
*
* El método realiza dos verificaciones previas: Que se haya seleccionado un CAP y que este sea diferente del asignado actualmente.
*
*/
public void saveData() {
int error = 0;
if (this.getNewCenter() == null) {
this.addFacesMessage("frmChangePHCC:newCenter", FacesMessage.SEVERITY_WARN, "Centro de atención primaria no seleccionado", "Por favor, especifique un nuevvo centro de atención primaria.");
this.addFacesMessage("frmChangePHCC:newCenter", FacesMessage.SEVERITY_WARN, "Centro de atención primaria no seleccionado",
"Por favor, especifique un nuevvo centro de atención primaria.");
error++;
}
if (this.getNewCenter().getName().equals(this.getCurrentCenter().getName())) {
this.addFacesMessage("frmChangePHCC:newCenter", FacesMessage.SEVERITY_WARN, "El centro de atención primeria debe ser diferente", "Por favor, seleccione un centro de atención primaria diferente al cual está actualmente asignado.");
this.addFacesMessage("frmChangePHCC:newCenter", FacesMessage.SEVERITY_WARN, "El centro de atención primeria debe ser diferente",
"Por favor, seleccione un centro de atención primaria diferente al cual está actualmente asignado.");
error++;
}

View File

@@ -24,8 +24,7 @@ import managedbean.common.ManagedBeanBase;
import managedbean.common.ValidationUtils;
/**
* ManagedBEan que gestiona el registro de usuarios: Usuarios de tipo "Paciente"
* Usuarios de tipo "Médico de Familia" usuarios de tipo "Médico especialista"
* ManagedBEan que gestiona el registro de usuarios: Usuarios de tipo "Paciente" Usuarios de tipo "Médico de Familia" usuarios de tipo "Médico especialista"
*
* @author Marcos García Núñez (mgarcianun@uoc.edu)
*
@@ -59,6 +58,11 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
}
/**
* Inicializa el managedBean actual.
*
* Carga los tipos de usuario disponibles. Carga la lista de CAPs. Carga la lista de especialidades médicas.
*/
@PostConstruct
public void init() {
this.availableUserTypes = new ArrayList<UserType>();
@@ -79,10 +83,17 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
return availableUserTypes;
}
/**
* Gestiona el evento de cambio de tipo de usuario. El usuario que está intentando registrarse en el sistema ha cambiado el tipo de perfil (usuario) con el cual desea
* registrarse.
*
*/
public void onUserTypeChange() {
switch (this.userType) {
case SPECIALIST_DOCTOR:
try {
// El usuario queire registrarse como médico especialista, lanzamos un evento AJAX de cliente para que la interfaz refleje el cambio en el tipo de usuario
// seleccionado: Se muestra la lista de especialidades médicas para obligar a seleccionar una.
PrimeFaces.current().ajax().addCallbackParam("specs", true);
} catch (Exception e) {
this.manageException(e);
@@ -90,6 +101,8 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
break;
case FAMILY_DOCTOR:
try {
// El usuario queire registrarse como médico especialista, lanzamos un evento AJAX de cliente para que la interfaz refleje el cambio en el tipo de usuario
// seleccionado: Se muestra la lista de CAPs para obligar a seleccionar uno.
PrimeFaces.current().ajax().addCallbackParam("caps", true);
} catch (Exception e) {
this.manageException(e);
@@ -97,6 +110,8 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
break;
case ADMINISTRATOR:
case PATIENT:
// El usuario queire registrarse como médico especialista, lanzamos un evento AJAX de cliente para que la interfaz refleje el cambio en el tipo de usuario
// seleccionado: Se ocultará la lista de selección de CAP o Especialidad médica
PrimeFaces.current().ajax().addCallbackParam("pats", true);
break;
}
@@ -110,6 +125,12 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
return primaryHealthCareCentersList;
}
/**
* Método que implementa la búsqueda de un CAP a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de CAPs que coinciden con el termino búscado por el usuario.
*/
public List<PrimaryHealthCareCenterTO> completePrimaryHealCareCenter(String query) {
if (query != null && query.equals(this.lastUIQueryPH) == false) {
this.lastUIQueryPH = query;
@@ -119,6 +140,12 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
return this.primaryHealthCareCentersList;
}
/**
* Método que implementa la búsqueda de una especialidad a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de especialidades que coinciden con el termino búscado por el usuario.
*/
public List<MedicalSpecialtyTO> completeMedicalSpecialty(String query) {
if (query != null && query.equals(this.lastUIQueryMS) == false) {
this.lastUIQueryMS = query;
@@ -128,7 +155,13 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
return this.medicalSpecialitiesList;
}
public void hadleNIFValueChange() {
/**
* Gestióna el evento de modficación del NIF del usuario actual. Búsca si el NIF ya está en uso para otro usuario. Solo se permite que el mismo NIF se refistro como paciente y
* como médico (especialista o de familia, pero no como ambos).
*
* Un Médico puede estar registrado como paciente con el mismo NIF, pero como médico de familia y especialista al mismo tiempo.
*/
public void handleNIFValueChange() {
boolean isDupe = false;
if (ValidationUtils.checkIfNifAlreadyRegistered(this.getRemoteManagerCommon(), this.userType, this.nif, null) == true) {
isDupe = true;
@@ -194,11 +227,27 @@ public class RegisterUserMBean extends ManagedBeanBase implements Serializable {
this.nif = nif;
}
/**
* Método que realiza la persistencia de los datos en la base de datos a través de la invocación de los métodos del EJB correspondiente.
*
* Se realizan comprobaciones adicionales para asegurar que:
*
* Si el tipo de usuario que se está registrando es un méidco de familia, obliga a seleccionar un CAP para el usuario.
*
* Si el tipo de usuario que está registrando es un médico especialista, obliga a seleccionar una especialidad médica al usuario.
*
* Si el tipo de usuario que está registrando es un paciente, no obliga a seleccionar un médicos de familia (puede ser nulo) será necesario que el usuario lo seleccione a
* posteriori, una vez logeado en el sistema, a través de la opción de menú correspondiente.
*
* No se permite el registro de administradores a través de la página de registro pública.
*
*/
public void addNewUser() {
int error = 0;
if (this.isFamilyDoctor() && this.primaryHealthCareCenter == null) {
this.addFacesMessage("frmRegisterUser:selPHC", FacesMessage.SEVERITY_WARN, "Centro de atención primaria no seleccionado", "Por favor, especifique un centro de atención primaria.");
this.addFacesMessage("frmRegisterUser:selPHC", FacesMessage.SEVERITY_WARN, "Centro de atención primaria no seleccionado",
"Por favor, especifique un centro de atención primaria.");
error++;
}
if (this.isSpecialistDoctor() && this.medicalSpecialty == null) {

View File

@@ -63,6 +63,12 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
}
/**
* Inicializa el Bean:
*
* Carga la lsita de tipos de usuario (perfiles) Recupera los datos del usuario logeado actualmente, y los asigna a las propiedades del managedBean.
*
*/
@PostConstruct
public void init() {
this.userTypes = new ArrayList<UserType>();
@@ -109,6 +115,11 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
}
}
/**
* Establece los valores de las propiedades del managedBean a partir de los datos de un Transfer Object de un paciente
*
* @param pat Paciente que está editando su perfil, y cuyos datos deben mostrarse en la vista.
*/
private void setPatientData(PatientTO pat) {
this.id = pat.getId();
this.cipCode = pat.getPersonalIdentificationCode();
@@ -120,6 +131,11 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
this.familyDoctor = pat.getFamilyDoctor();
}
/**
* Establece los valores de las propiedades del managedBean a partir de los datos de un Transfer Object de un médico de familia
*
* @param fd FamilyDoctor que está editando su perfil, y cuyos datos deben mostrarse en la vista.
*/
private void setFamilyDoctorData(FamilyDoctorTO fd) {
this.id = fd.getId();
this.cipCode = fd.getProfessionalNumber();
@@ -131,6 +147,11 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
this.primaryHealthCareCenter = fd.getPrimaryHealthCareCenter();
}
/**
* Establece los valores de las propiedades del managedBean a partir de los datos de un Transfer Object de un médico especialista
*
* @param sd SpecialistDoctor que está editando su perfil, y cuyos datos deben mostrarse en la vista.
*/
private void setSpecialistDoctorData(SpecialistDoctorTO sd) {
this.id = sd.getId();
this.cipCode = sd.getProfessionalNumber();
@@ -154,25 +175,43 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
return primaryHealthCareCentersList;
}
/**
* Método que implementa la búsqueda de un CAP a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de CAPs que coinciden con el termino búscado por el usuario.
*/
public List<PrimaryHealthCareCenterTO> completePrimaryHealCareCenter(String query) {
if (query != null && query.equals(this.lastUIQueryPH) == false) {
this.lastUIQueryPH = query;
// Recuperamos las 200 primeras coincidencias
// Recuperamos las XXX primeras coincidencias
this.primaryHealthCareCentersList = this.getRemoteManagerCommon().listCAPsFiltered(query, 0, Constants.MAX_ITEMS_AUTOCOMPLETE_SEARCH);
}
return this.primaryHealthCareCentersList;
}
/**
* Método que implementa la búsqueda de una especialidad a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de especialidades que coinciden con el termino búscado por el usuario.
*/
public List<MedicalSpecialtyTO> completeMedicalSpecialty(String query) {
if (query != null && query.equals(this.lastUIQueryMS) == false) {
this.lastUIQueryMS = query;
// Recuperamos las 200 primeras coincidencias
// Recuperamos las XXX primeras coincidencias
this.medicalSpecialitiesList = this.getRemoteManagerCommon().listMedicalSpecialitiesFiltered(query, 0, Constants.MAX_ITEMS_AUTOCOMPLETE_SEARCH);
}
return this.medicalSpecialitiesList;
}
public void hadleNIFValueChange() {
/**
* Gestióna el evento de modficación del NIF del usuario actual. Búsca si el NIF ya está en uso para otro usuario. Solo se permite que el mismo NIF se refistro como paciente y
* como médico (especialista o de familia, pero no como ambos).
*
* Un Médico puede estar registrado como paciente con el mismo NIF, pero como médico de familia y especialista al mismo tiempo.
*/
public void handleNIFValueChange() {
boolean isDupe = false;
if (ValidationUtils.checkIfNifAlreadyRegistered(this.getRemoteManagerCommon(), this.userType, this.nif, this.id) == true) {
isDupe = true;
@@ -186,6 +225,12 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
return familyDoctorList;
}
/**
* Método que implementa la búsqueda de un médico de familia a través del termino tecleado por el usuario en la lista de selección
*
* @param query Termino tecleado por el usuario
* @return Lista de médicos de familia que coinciden con el termino búscado por el usuario.
*/
public List<FamilyDoctorTO> completeFamilyDoctor(String query) {
if (query != null && query.equals(this.lastUIQueryFD) == false) {
this.lastUIQueryFD = query;
@@ -255,6 +300,18 @@ public class UpdateProfileMBean extends ManagedBeanBase implements Serializable
return id;
}
/**
* Método que guarda los datos realizados en la modificación del perfil.
* Tiene en cuenta el tipo de usuario que está editando su perfil.
*
* Si el usuario es un médico de familia requiere que se seleccione un CAP para el usuario.
* Si el usuario es un médico especialista requiere que se seleccione una especialidad médica para el usuario.
* Se comprueba que el NIF especificado sea válido y no pertenezca a otro usuario registrado (ver relgas de NIF permitidos para usuarios en el método handleNIFValueChange)
*
* Si se especifica una nueva contraseña, entonces se realiz un cambio de contraseña, y se requiere además: Que la nueva contraseña sea diferente a la anterior.
*
* Después de guardar los datos, se actualizan los datos guardados en la sesión actual para reflejar un posible cambio de nombre y/o apellidos.
*/
public void saveData() {
int error = 0;

View File

@@ -150,16 +150,216 @@ insert into MyHealth.MedicalSpecialty(name, description) values
-- Insertar médicos de familia
INSERT INTO myhealth.familydoctor(professionalnumber, password, nif, surname, email, name, primaryhealthcarecenterid) VALUES
('PRO#100','912EC803B2CE49E4A541068D495AB570','95874388S','Moran Ortiz', 'Xian@example.com','Xian', 1)
,('PRO#101','912EC803B2CE49E4A541068D495AB570','59546140Z','Zambrano Rivas', 'Belen@example.com','Belen', 2)
,('PRO#102','912EC803B2CE49E4A541068D495AB570','16354100L','Cuevas Luque', 'Fernando@example.com','Fernando', 3)
,('PRO#103','912EC803B2CE49E4A541068D495AB570','32662259M','Becerra Muñiz', 'Luis@example.com','Luis', 4)
,('PRO#104','912EC803B2CE49E4A541068D495AB570','70600712G','Aznar Silva', 'Ana@example.com','Ana', 5)
,('PRO#105','912EC803B2CE49E4A541068D495AB570','08003806J','Galvez Sancho', 'Alfonso@example.com','Alfonso', 6)
,('PRO#106','912EC803B2CE49E4A541068D495AB570','19567288S','Criado Marti', 'Jordi@example.com','Jordi', 7)
,('PRO#107','912EC803B2CE49E4A541068D495AB570','95413653Q','Estevez Mena', 'Barbara@example.com','Barbara', 8)
,('PRO#108','912EC803B2CE49E4A541068D495AB570','90914444K','Godoy Alcaide', 'Amalia@example.com','Amalia', 9)
,('PRO#109','912EC803B2CE49E4A541068D495AB570','05709869G','Lucas Wang', 'Carmelo@example.com','Carmelo', 10);
('PRO#100','912EC803B2CE49E4A541068D495AB570','95874388S','Moran Ortiz', 'Xian@example.com','Xian', 1),
('PRO#101','912EC803B2CE49E4A541068D495AB570','59546140Z','Zambrano Rivas', 'Belen@example.com','Belen', 2),
('PRO#102','912EC803B2CE49E4A541068D495AB570','16354100L','Cuevas Luque', 'Fernando@example.com','Fernando', 3),
('PRO#103','912EC803B2CE49E4A541068D495AB570','32662259M','Becerra Muñiz', 'Luis@example.com','Luis', 4),
('PRO#104','912EC803B2CE49E4A541068D495AB570','70600712G','Aznar Silva', 'Ana@example.com','Ana', 5),
('PRO#105','912EC803B2CE49E4A541068D495AB570','08003806J','Galvez Sancho', 'Alfonso@example.com','Alfonso', 6),
('PRO#106','912EC803B2CE49E4A541068D495AB570','19567288S','Criado Marti', 'Jordi@example.com','Jordi', 7),
('PRO#107','912EC803B2CE49E4A541068D495AB570','95413653Q','Estevez Mena', 'Barbara@example.com','Barbara', 8),
('PRO#108','912EC803B2CE49E4A541068D495AB570','90914444K','Godoy Alcaide', 'Amalia@example.com','Amalia', 9),
('PRO#109','912EC803B2CE49E4A541068D495AB570','05709869G','Lucas Wang', 'Carmelo@example.com','Carmelo', 10),
('PRO#321','912EC803B2CE49E4A541068D495AB570','83450147Y','Zambrano Gonzalez', 'Teodoro@example.com',' Teodoro', 1),
('PRO#322','912EC803B2CE49E4A541068D495AB570','82460286L','Melero Vaquero', 'Manuel Jose@example.com',' Manuel Jose', 2),
('PRO#323','912EC803B2CE49E4A541068D495AB570','66027106V','Amaya Juarez', 'Gustavo@example.com',' Gustavo', 3),
('PRO#324','912EC803B2CE49E4A541068D495AB570','35535426N','Santos Carmona', 'Gemma@example.com',' Gemma', 4),
('PRO#325','912EC803B2CE49E4A541068D495AB570','03169193T','Lin Gracia', 'Ramiro@example.com',' Ramiro', 5),
('PRO#326','912EC803B2CE49E4A541068D495AB570','65718014E','Pacheco Gonzalo', 'Maria Yolanda@example.com',' Maria Yolanda', 6),
('PRO#327','912EC803B2CE49E4A541068D495AB570','29571200P','Calero Duarte', 'Rosalia@example.com',' Rosalia', 7),
('PRO#328','912EC803B2CE49E4A541068D495AB570','73755195Z','Andres Ros', 'Jessica@example.com',' Jessica', 8),
('PRO#329','912EC803B2CE49E4A541068D495AB570','71593467X','Sanz Palomo', 'Adolfo@example.com',' Adolfo', 9),
('PRO#330','912EC803B2CE49E4A541068D495AB570','85689934F','Cabello Molina', 'Mar@example.com',' Mar', 10),
('PRO#331','912EC803B2CE49E4A541068D495AB570','05118688S','Domingo Diez', 'Felicidad@example.com',' Felicidad', 11),
('PRO#332','912EC803B2CE49E4A541068D495AB570','59057948C','Fernandez Medina', 'Amador@example.com',' Amador', 12),
('PRO#333','912EC803B2CE49E4A541068D495AB570','84861480J','De La Torre Arranz', 'Magdalena@example.com',' Magdalena', 13),
('PRO#334','912EC803B2CE49E4A541068D495AB570','77743570M','Mohamed Carmona', 'Oscar@example.com',' Oscar', 14),
('PRO#335','912EC803B2CE49E4A541068D495AB570','86346483K','Camacho Valle', 'Julio@example.com',' Julio', 15),
('PRO#336','912EC803B2CE49E4A541068D495AB570','56743696M','Gimenez Bartolome', 'Maria Asuncion@example.com',' Maria Asuncion', 16),
('PRO#337','912EC803B2CE49E4A541068D495AB570','67594210Q','Carbonell Piñeiro', 'Almudena@example.com',' Almudena', 1),
('PRO#338','912EC803B2CE49E4A541068D495AB570','32394018J','Bonet Bermejo', 'Marcelino@example.com',' Marcelino', 2),
('PRO#339','912EC803B2CE49E4A541068D495AB570','93248168G','Carrera Ortiz', 'Alexandre@example.com',' Alexandre', 3),
('PRO#340','912EC803B2CE49E4A541068D495AB570','45633960M','Crespo Abad', 'Santos@example.com',' Santos', 4),
('PRO#341','912EC803B2CE49E4A541068D495AB570','44975754J','Ocaña Medina', 'Ines@example.com',' Ines', 5),
('PRO#342','912EC803B2CE49E4A541068D495AB570','66498632C','Suarez Recio', 'Pedro@example.com',' Pedro', 6),
('PRO#343','912EC803B2CE49E4A541068D495AB570','83283712E','Saenz Carballo', 'Roser@example.com',' Roser', 7),
('PRO#344','912EC803B2CE49E4A541068D495AB570','22460230V','Menendez Alcantara', 'Carlos Alberto@example.com',' Carlos Alberto', 8),
('PRO#345','912EC803B2CE49E4A541068D495AB570','40900569Z','Jurado Carrion', 'Moises@example.com',' Moises', 9),
('PRO#346','912EC803B2CE49E4A541068D495AB570','47264240E','Alvarez Blasco', 'Adrian@example.com',' Adrian', 10),
('PRO#347','912EC803B2CE49E4A541068D495AB570','74061660G','Brito Molina', 'Jesus@example.com',' Jesus', 11),
('PRO#348','912EC803B2CE49E4A541068D495AB570','07432923J','Miralles Leal', 'Hector@example.com',' Hector', 12),
('PRO#349','912EC803B2CE49E4A541068D495AB570','56260234A','Chamorro Heras', 'Erik@example.com',' Erik', 13),
('PRO#350','912EC803B2CE49E4A541068D495AB570','37425385S','Arevalo Iglesias', 'Cristian@example.com',' Cristian', 14),
('PRO#351','912EC803B2CE49E4A541068D495AB570','38629626E','Polo Moral', 'Ivan@example.com',' Ivan', 15),
('PRO#352','912EC803B2CE49E4A541068D495AB570','40325942L','Pozo Gonzalez', 'Gregorio@example.com',' Gregorio', 16),
('PRO#353','912EC803B2CE49E4A541068D495AB570','48070502L','Salas Lozano', 'Elsa@example.com',' Elsa', 1),
('PRO#354','912EC803B2CE49E4A541068D495AB570','22743402J','Rosado Toledo', 'Carolina@example.com',' Carolina', 2),
('PRO#355','912EC803B2CE49E4A541068D495AB570','99704244A','Salazar Conde', 'Luis Angel@example.com',' Luis Angel', 3),
('PRO#356','912EC803B2CE49E4A541068D495AB570','31213766Y','Prado Maldonado', 'Pere@example.com',' Pere', 4),
('PRO#357','912EC803B2CE49E4A541068D495AB570','97558390A','Lin Poveda', 'Isidoro@example.com',' Isidoro', 5),
('PRO#358','912EC803B2CE49E4A541068D495AB570','20032738Z','Cuadrado Costa', 'Claudia@example.com',' Claudia', 6),
('PRO#359','912EC803B2CE49E4A541068D495AB570','01694490B','Melero Castellanos', 'Enric@example.com',' Enric', 7),
('PRO#360','912EC803B2CE49E4A541068D495AB570','59261456R','Domenech Gamez', 'Adriana@example.com',' Adriana', 8),
('PRO#361','912EC803B2CE49E4A541068D495AB570','26604091Z','Domingo Singh', 'Luis Antonio@example.com',' Luis Antonio', 9),
('PRO#362','912EC803B2CE49E4A541068D495AB570','81656673A','Sastre Frias', 'Candido@example.com',' Candido', 10),
('PRO#363','912EC803B2CE49E4A541068D495AB570','29212812Y','Palma Mohamed', 'Pilar@example.com',' Pilar', 11),
('PRO#364','912EC803B2CE49E4A541068D495AB570','95125089X','Pino Aguilar', 'Adolfo@example.com',' Adolfo', 12),
('PRO#365','912EC803B2CE49E4A541068D495AB570','38877119N','Martinez Galvan', 'Jimena@example.com',' Jimena', 13),
('PRO#366','912EC803B2CE49E4A541068D495AB570','40405748S','Sola Bermejo', 'Eloy@example.com',' Eloy', 14),
('PRO#367','912EC803B2CE49E4A541068D495AB570','27910288H','Fuentes Lorenzo', 'Maria Consuelo@example.com',' Maria Consuelo', 15),
('PRO#368','912EC803B2CE49E4A541068D495AB570','51584830Q','Aragon Royo', 'Ruth@example.com',' Ruth', 16),
('PRO#369','912EC803B2CE49E4A541068D495AB570','06962730D','Alcalde Velez', 'Rafaela@example.com',' Rafaela', 1),
('PRO#370','912EC803B2CE49E4A541068D495AB570','80990695J','Bermejo Blasco', 'Cristian@example.com',' Cristian', 2),
('PRO#371','912EC803B2CE49E4A541068D495AB570','16082754G','Guerrero Santiago', 'Carla@example.com',' Carla', 3),
('PRO#372','912EC803B2CE49E4A541068D495AB570','21789241F','Acosta Trujillo', 'Antonio Jesus@example.com',' Antonio Jesus', 4),
('PRO#373','912EC803B2CE49E4A541068D495AB570','21110391W','Villar Bonet', 'Abraham@example.com',' Abraham', 5),
('PRO#374','912EC803B2CE49E4A541068D495AB570','71926018G','Caceres Aznar', 'Africa@example.com',' Africa', 6),
('PRO#375','912EC803B2CE49E4A541068D495AB570','02983300Q','Estevez Marrero', 'Pablo@example.com',' Pablo', 7),
('PRO#376','912EC803B2CE49E4A541068D495AB570','79922817W','Carrion Delgado', 'Alba@example.com',' Alba', 8),
('PRO#377','912EC803B2CE49E4A541068D495AB570','63817139M','Miguel Wang', 'Cesar@example.com',' Cesar', 9),
('PRO#378','912EC803B2CE49E4A541068D495AB570','26667496P','Serna Godoy', 'Rafael@example.com',' Rafael', 10),
('PRO#379','912EC803B2CE49E4A541068D495AB570','34667199N','Iglesias Mateo', 'Carmen Maria@example.com',' Carmen Maria', 11),
('PRO#380','912EC803B2CE49E4A541068D495AB570','97436006W','Chacon Mohamed', 'Isidro@example.com',' Isidro', 12),
('PRO#381','912EC803B2CE49E4A541068D495AB570','72203762T','Cordero Olivares', 'Ramon@example.com',' Ramon', 13),
('PRO#382','912EC803B2CE49E4A541068D495AB570','33218652M','Padilla Casas', 'Soledad@example.com',' Soledad', 14),
('PRO#383','912EC803B2CE49E4A541068D495AB570','75011128D','Jimenez Burgos', 'Mohammed@example.com',' Mohammed', 15),
('PRO#384','912EC803B2CE49E4A541068D495AB570','31299876G','Figueroa Naranjo', 'Ana Belen@example.com',' Ana Belen', 16),
('PRO#385','912EC803B2CE49E4A541068D495AB570','57748477P','Vidal Roldan', 'Josefina@example.com',' Josefina', 1),
('PRO#386','912EC803B2CE49E4A541068D495AB570','99198742H','Rosa Andres', 'Aurora@example.com',' Aurora', 2),
('PRO#387','912EC803B2CE49E4A541068D495AB570','65340851J','Castellanos Vergara', 'Juan Jesus@example.com',' Juan Jesus', 3),
('PRO#388','912EC803B2CE49E4A541068D495AB570','67858714C','Alcaraz Solano', 'Emilio Jose@example.com',' Emilio Jose', 4),
('PRO#389','912EC803B2CE49E4A541068D495AB570','34364420M','Huerta Rico', 'Noemi@example.com',' Noemi', 5),
('PRO#390','912EC803B2CE49E4A541068D495AB570','47372815Z','Soto Calvo', 'Nicolas@example.com',' Nicolas', 6),
('PRO#391','912EC803B2CE49E4A541068D495AB570','81695922Z','Saenz Arevalo', 'Ana Rosa@example.com',' Ana Rosa', 7),
('PRO#392','912EC803B2CE49E4A541068D495AB570','20870549G','Navarrete Villalba', 'Natividad@example.com',' Natividad', 8),
('PRO#393','912EC803B2CE49E4A541068D495AB570','30140343Q','Gracia Galindo', 'Matias@example.com',' Matias', 9),
('PRO#394','912EC803B2CE49E4A541068D495AB570','57107502C','Piñero Correa', 'Rosario@example.com',' Rosario', 10),
('PRO#395','912EC803B2CE49E4A541068D495AB570','31599091N','Clemente Frias', 'Susana@example.com',' Susana', 11),
('PRO#396','912EC803B2CE49E4A541068D495AB570','78191056A','Miguel Aguirre', 'Sergio@example.com',' Sergio', 12),
('PRO#397','912EC803B2CE49E4A541068D495AB570','94696539L','Vazquez Toro', 'Mohamed@example.com',' Mohamed', 13),
('PRO#398','912EC803B2CE49E4A541068D495AB570','74130059R','Ojeda Blasco', 'Francisco Javier@example.com',' Francisco Javier', 14),
('PRO#399','912EC803B2CE49E4A541068D495AB570','54263073R','Calleja Flores', 'Teodoro@example.com',' Teodoro', 15),
('PRO#400','912EC803B2CE49E4A541068D495AB570','64905450W','Martinez Olmedo', 'Eloisa@example.com',' Eloisa', 16),
('PRO#401','912EC803B2CE49E4A541068D495AB570','04669076F','Blasco Melero', 'Leonor@example.com',' Leonor', 1),
('PRO#402','912EC803B2CE49E4A541068D495AB570','53157751J','Freire Ferrer', 'Ana Isabel@example.com',' Ana Isabel', 2),
('PRO#403','912EC803B2CE49E4A541068D495AB570','84275316G','Figueroa Salgado', 'Ricardo@example.com',' Ricardo', 3),
('PRO#404','912EC803B2CE49E4A541068D495AB570','47424325G','Rebollo Pineda', 'Gerardo@example.com',' Gerardo', 4),
('PRO#405','912EC803B2CE49E4A541068D495AB570','53099713G','Martinez Solis', 'Maria Purificacion@example.com',' Maria Purificacion', 5),
('PRO#406','912EC803B2CE49E4A541068D495AB570','09794229R','Flores Guijarro', 'Israel@example.com',' Israel', 6),
('PRO#407','912EC803B2CE49E4A541068D495AB570','74409378P','Bosch Zapata', 'Daniel@example.com',' Daniel', 7),
('PRO#408','912EC803B2CE49E4A541068D495AB570','18863538L','Carmona Sastre', 'Margarita@example.com',' Margarita', 8),
('PRO#409','912EC803B2CE49E4A541068D495AB570','66477577X','Rovira Cuevas', 'Jose Carlos@example.com',' Jose Carlos', 9),
('PRO#410','912EC803B2CE49E4A541068D495AB570','35967055T','Aranda Valls', 'Florentina@example.com',' Florentina', 10),
('PRO#411','912EC803B2CE49E4A541068D495AB570','98404637B','Redondo Peinado', 'Joana@example.com',' Joana', 11),
('PRO#412','912EC803B2CE49E4A541068D495AB570','55337416Z','Robles Ramon', 'Bruno@example.com',' Bruno', 12),
('PRO#413','912EC803B2CE49E4A541068D495AB570','39043197F','Campo Asensio', 'Maria Gracia@example.com',' Maria Gracia', 13),
('PRO#414','912EC803B2CE49E4A541068D495AB570','61113485R','Millan Melero', 'Jaime@example.com',' Jaime', 14),
('PRO#415','912EC803B2CE49E4A541068D495AB570','88756716S','Gil Pastor', 'Jan@example.com',' Jan', 15),
('PRO#416','912EC803B2CE49E4A541068D495AB570','61608684X','Del Valle Villa', 'Consolacion@example.com',' Consolacion', 16),
('PRO#417','912EC803B2CE49E4A541068D495AB570','46601056C','Varela Alarcon', 'Felipe@example.com',' Felipe', 1),
('PRO#418','912EC803B2CE49E4A541068D495AB570','80611975B','Vega Molina', 'Roberto@example.com',' Roberto', 2),
('PRO#419','912EC803B2CE49E4A541068D495AB570','95160642M','Calvo Luis', 'Guillermo@example.com',' Guillermo', 3),
('PRO#420','912EC803B2CE49E4A541068D495AB570','88511050N','Caballero Duarte', 'Oliver@example.com',' Oliver', 4),
('PRO#421','912EC803B2CE49E4A541068D495AB570','41289667K','Davila Blanco', 'Albert@example.com',' Albert', 1),
('PRO#422','912EC803B2CE49E4A541068D495AB570','20430184C','Vives Cordero', 'Jose Manuel@example.com',' Jose Manuel', 2),
('PRO#423','912EC803B2CE49E4A541068D495AB570','85921489K','Mateo Rico', 'Carmelo@example.com',' Carmelo', 3),
('PRO#424','912EC803B2CE49E4A541068D495AB570','31634396N','Macias Prieto', 'Jose Antonio@example.com',' Jose Antonio', 4),
('PRO#425','912EC803B2CE49E4A541068D495AB570','53781842E','Lazaro Villegas', 'Maria Purificacion@example.com',' Maria Purificacion', 5),
('PRO#426','912EC803B2CE49E4A541068D495AB570','03396741D','Frias Abad', 'Juan Luis@example.com',' Juan Luis', 6),
('PRO#427','912EC803B2CE49E4A541068D495AB570','30561128Q','Carrasco Luis', 'Gregoria@example.com',' Gregoria', 7),
('PRO#428','912EC803B2CE49E4A541068D495AB570','06994306Y','Mateos Amaya', 'Pedro@example.com',' Pedro', 8),
('PRO#429','912EC803B2CE49E4A541068D495AB570','61950502W','Macias Cuevas', 'Juan Carlos@example.com',' Juan Carlos', 9),
('PRO#430','912EC803B2CE49E4A541068D495AB570','07916216F','Fajardo Rodrigo', 'Josep@example.com',' Josep', 10),
('PRO#431','912EC803B2CE49E4A541068D495AB570','56885913J','Leal Soria', 'Juliana@example.com',' Juliana', 11),
('PRO#432','912EC803B2CE49E4A541068D495AB570','84206156M','Miranda Luque', 'Vicenta@example.com',' Vicenta', 12),
('PRO#433','912EC803B2CE49E4A541068D495AB570','37898942W','Sainz Baena', 'Aroa@example.com',' Aroa', 13),
('PRO#434','912EC803B2CE49E4A541068D495AB570','19268095Y','Fraile Latorre', 'Isabel Maria@example.com',' Isabel Maria', 14),
('PRO#435','912EC803B2CE49E4A541068D495AB570','53006303C','Iglesias Padilla', 'Maria Rosario@example.com',' Maria Rosario', 15),
('PRO#436','912EC803B2CE49E4A541068D495AB570','86009326K','Mendez Alfaro', 'Encarnacion@example.com',' Encarnacion', 16),
('PRO#437','912EC803B2CE49E4A541068D495AB570','76519090E','Sole Calderon', 'Jesus Angel@example.com',' Jesus Angel', 1),
('PRO#438','912EC803B2CE49E4A541068D495AB570','87397882K','Villegas Piñeiro', 'Natalia@example.com',' Natalia', 2),
('PRO#439','912EC803B2CE49E4A541068D495AB570','52855443V','Amaya Vela', 'Maria Nieves@example.com',' Maria Nieves', 3),
('PRO#440','912EC803B2CE49E4A541068D495AB570','96626367D','Sevilla Pena', 'Jaume@example.com',' Jaume', 4),
('PRO#441','912EC803B2CE49E4A541068D495AB570','08466139T','Bernal Palacios', 'Juan Jesus@example.com',' Juan Jesus', 5),
('PRO#442','912EC803B2CE49E4A541068D495AB570','89892351W','Coll Calleja', 'Natalia@example.com',' Natalia', 6),
('PRO#443','912EC803B2CE49E4A541068D495AB570','41130356P','Jorge Salvador', 'Gines@example.com',' Gines', 7),
('PRO#444','912EC803B2CE49E4A541068D495AB570','65624256N','Amaya Prado', 'Eric@example.com',' Eric', 8),
('PRO#445','912EC803B2CE49E4A541068D495AB570','25492168A','Toro Lozano', 'Sebastian@example.com',' Sebastian', 9),
('PRO#446','912EC803B2CE49E4A541068D495AB570','00150656Y','Campos Araujo', 'Armando@example.com',' Armando', 10),
('PRO#447','912EC803B2CE49E4A541068D495AB570','98059584G','Alcala Sala', 'Gemma@example.com',' Gemma', 11),
('PRO#448','912EC803B2CE49E4A541068D495AB570','97579373X','Polo Corrales', 'Jacobo@example.com',' Jacobo', 12),
('PRO#449','912EC803B2CE49E4A541068D495AB570','69669161E','Merino Vicente', 'Antonio Miguel@example.com',' Antonio Miguel', 13),
('PRO#450','912EC803B2CE49E4A541068D495AB570','86338060Q','Borrego Carballo', 'Sheila@example.com',' Sheila', 14),
('PRO#451','912EC803B2CE49E4A541068D495AB570','62730348X','Pineda Rosado', 'Eulalia@example.com',' Eulalia', 15),
('PRO#452','912EC803B2CE49E4A541068D495AB570','80566269Y','Estevez Izquierdo', 'Victoriano@example.com',' Victoriano', 16),
('PRO#453','912EC803B2CE49E4A541068D495AB570','78274293A','Cuenca Lorente', 'Isaac@example.com',' Isaac', 1),
('PRO#454','912EC803B2CE49E4A541068D495AB570','73356975Q','Rovira Calero', 'Tamara@example.com',' Tamara', 2),
('PRO#455','912EC803B2CE49E4A541068D495AB570','79912367V','Mena Bravo', 'Adela@example.com',' Adela', 3),
('PRO#456','912EC803B2CE49E4A541068D495AB570','06382429K','Barragan Sanchez', 'Pedro Manuel@example.com',' Pedro Manuel', 4),
('PRO#457','912EC803B2CE49E4A541068D495AB570','37448458L','Carrion Palomo', 'Alicia@example.com',' Alicia', 1),
('PRO#458','912EC803B2CE49E4A541068D495AB570','75923674F','Rodrigo Ramos', 'Paula@example.com',' Paula', 2),
('PRO#459','912EC803B2CE49E4A541068D495AB570','74322757M','Estevez Ventura', 'Gloria@example.com',' Gloria', 3),
('PRO#460','912EC803B2CE49E4A541068D495AB570','49838470T','Galvez Amaya', 'Manuel@example.com',' Manuel', 4),
('PRO#461','912EC803B2CE49E4A541068D495AB570','63831045L','Pujol Oliver', 'Sheila@example.com',' Sheila', 5),
('PRO#462','912EC803B2CE49E4A541068D495AB570','18375822H','Corral Ruano', 'Maria Esperanza@example.com',' Maria Esperanza', 6),
('PRO#463','912EC803B2CE49E4A541068D495AB570','73127729B','Iglesias Lobato', 'Enriqueta@example.com',' Enriqueta', 7),
('PRO#464','912EC803B2CE49E4A541068D495AB570','93813178L','Lin Cabrera', 'Nerea@example.com',' Nerea', 8),
('PRO#465','912EC803B2CE49E4A541068D495AB570','49476995Q','Barbero Mateu', 'Matias@example.com',' Matias', 9),
('PRO#466','912EC803B2CE49E4A541068D495AB570','46787648J','Dorado Luna', 'Juan Jesus@example.com',' Juan Jesus', 10),
('PRO#467','912EC803B2CE49E4A541068D495AB570','17059489K','Pacheco Solano', 'Isabel@example.com',' Isabel', 11),
('PRO#468','912EC803B2CE49E4A541068D495AB570','68753335X','Jurado Herranz', 'Victoriano@example.com',' Victoriano', 12),
('PRO#469','912EC803B2CE49E4A541068D495AB570','56146157Y','Sanchez Marco', 'Julio@example.com',' Julio', 13),
('PRO#470','912EC803B2CE49E4A541068D495AB570','28895880Z','Ferrero Bermudez', 'Noelia@example.com',' Noelia', 14),
('PRO#471','912EC803B2CE49E4A541068D495AB570','95804647X','Morillo Valero', 'Trinidad@example.com',' Trinidad', 15),
('PRO#472','912EC803B2CE49E4A541068D495AB570','01548835S','Carrion Arranz', 'Itziar@example.com',' Itziar', 16),
('PRO#473','912EC803B2CE49E4A541068D495AB570','11620234J','Caballero Arranz', 'Maite@example.com',' Maite', 1),
('PRO#474','912EC803B2CE49E4A541068D495AB570','01205009Q','Gracia Carrion', 'Alfredo@example.com',' Alfredo', 2),
('PRO#475','912EC803B2CE49E4A541068D495AB570','19652249Z','Suarez Muñiz', 'Avelino@example.com',' Avelino', 3),
('PRO#476','912EC803B2CE49E4A541068D495AB570','36983526D','Gimenez Romera', 'Margarita@example.com',' Margarita', 4),
('PRO#477','912EC803B2CE49E4A541068D495AB570','13116881G','Guerra Aviles', 'Susana@example.com',' Susana', 5),
('PRO#478','912EC803B2CE49E4A541068D495AB570','00743418N','Ortiz Pizarro', 'Ricardo@example.com',' Ricardo', 6),
('PRO#479','912EC803B2CE49E4A541068D495AB570','49532302P','Pereira Leon', 'Diana@example.com',' Diana', 7),
('PRO#480','912EC803B2CE49E4A541068D495AB570','29019974T','Barrera Gomez', 'Candido@example.com',' Candido', 8),
('PRO#481','912EC803B2CE49E4A541068D495AB570','54059624X','Aznar Rico', 'Maria Eugenia@example.com',' Maria Eugenia', 9),
('PRO#482','912EC803B2CE49E4A541068D495AB570','50099259S','Ocaña Salas', 'Adelaida@example.com',' Adelaida', 10),
('PRO#483','912EC803B2CE49E4A541068D495AB570','10034450X','Cid Calvo', 'Roger@example.com',' Roger', 11),
('PRO#484','912EC803B2CE49E4A541068D495AB570','39781057G','Silva Piñero', 'Maria Luisa@example.com',' Maria Luisa', 12),
('PRO#485','912EC803B2CE49E4A541068D495AB570','30250717J','Pinto Anton', 'Fatima@example.com',' Fatima', 13),
('PRO#486','912EC803B2CE49E4A541068D495AB570','54326793B','Escudero Guerra', 'Jose Andres@example.com',' Jose Andres', 14),
('PRO#487','912EC803B2CE49E4A541068D495AB570','12077553T','Marin Portillo', 'Ignacio@example.com',' Ignacio', 15),
('PRO#488','912EC803B2CE49E4A541068D495AB570','81173756V','Singh Agudo', 'Emiliano@example.com',' Emiliano', 16),
('PRO#489','912EC803B2CE49E4A541068D495AB570','18965821K','Cobos Merino', 'Eloy@example.com',' Eloy', 1),
('PRO#490','912EC803B2CE49E4A541068D495AB570','90888158R','Heras Pulido', 'Manuel Antonio@example.com',' Manuel Antonio', 2),
('PRO#491','912EC803B2CE49E4A541068D495AB570','10769780F','Exposito Riera', 'Aleix@example.com',' Aleix', 3),
('PRO#492','912EC803B2CE49E4A541068D495AB570','50993180H','Becerra Abad', 'Felisa@example.com',' Felisa', 4),
('PRO#493','912EC803B2CE49E4A541068D495AB570','60112400Z','Criado Pizarro', 'Rocio@example.com',' Rocio', 1),
('PRO#494','912EC803B2CE49E4A541068D495AB570','24121440Y','Tapia Aznar', 'Maria Begoña@example.com',' Maria Begoña', 2),
('PRO#495','912EC803B2CE49E4A541068D495AB570','14182618J','Rojas Ferrero', 'Daniel@example.com',' Daniel', 3),
('PRO#496','912EC803B2CE49E4A541068D495AB570','51057632R','Linares Marcos', 'Jose Andres@example.com',' Jose Andres', 4),
('PRO#497','912EC803B2CE49E4A541068D495AB570','74414073B','Rueda Caceres', 'Isaac@example.com',' Isaac', 5),
('PRO#498','912EC803B2CE49E4A541068D495AB570','33474231P','Guerrero Rosa', 'Ruth@example.com',' Ruth', 6),
('PRO#499','912EC803B2CE49E4A541068D495AB570','33127256B','Corrales Palacios', 'Irene@example.com',' Irene', 7),
('PRO#500','912EC803B2CE49E4A541068D495AB570','35105963M','Guzman Pinto', 'Aina@example.com',' Aina', 8),
('PRO#501','912EC803B2CE49E4A541068D495AB570','26500674M','Catalan Wang', 'Alexandre@example.com',' Alexandre', 9),
('PRO#502','912EC803B2CE49E4A541068D495AB570','68092329R','Lago Arce', 'Maria Cruz@example.com',' Maria Cruz', 10),
('PRO#503','912EC803B2CE49E4A541068D495AB570','79438264J','Casanova Gracia', 'Jose Javier@example.com',' Jose Javier', 11),
('PRO#504','912EC803B2CE49E4A541068D495AB570','09814614P','Velazquez Brito', 'Fidel@example.com',' Fidel', 12),
('PRO#505','912EC803B2CE49E4A541068D495AB570','32685364H','Pavon Peña', 'Eloy@example.com',' Eloy', 13),
('PRO#506','912EC803B2CE49E4A541068D495AB570','27256245A','De Miguel Mateos', 'Ali@example.com',' Ali', 14),
('PRO#507','912EC803B2CE49E4A541068D495AB570','94699844N','Cebrian Rodriguez', 'Marco@example.com',' Marco', 15),
('PRO#508','912EC803B2CE49E4A541068D495AB570','41767128W','Ros Recio', 'Marco@example.com',' Marco', 16),
('PRO#509','912EC803B2CE49E4A541068D495AB570','77614691H','Moya Mata', 'Felipe@example.com',' Felipe', 1),
('PRO#510','912EC803B2CE49E4A541068D495AB570','71675632L','Bonilla Lago', 'Mariana@example.com',' Mariana', 2),
('PRO#511','912EC803B2CE49E4A541068D495AB570','76463200E','Real Hernando', 'Simon@example.com',' Simon', 3),
('PRO#512','912EC803B2CE49E4A541068D495AB570','56824919S','Cabezas Brito', 'Gabriela@example.com',' Gabriela', 4),
('PRO#513','912EC803B2CE49E4A541068D495AB570','41512704G','Rueda Izquierdo', 'Alex@example.com',' Alex', 5),
('PRO#514','912EC803B2CE49E4A541068D495AB570','28007231Q','Menendez Bermejo', 'Carolina@example.com',' Carolina', 6),
('PRO#515','912EC803B2CE49E4A541068D495AB570','99792430F','Beltran Caro', 'Joel@example.com',' Joel', 7),
('PRO#516','912EC803B2CE49E4A541068D495AB570','32636037A','Mateu Roman', 'Inmaculada@example.com',' Inmaculada', 8),
('PRO#517','912EC803B2CE49E4A541068D495AB570','00051095N','Mohamed Linares', 'Angel@example.com',' Angel', 9),
('PRO#518','912EC803B2CE49E4A541068D495AB570','34352497L','Fernandez Exposito', 'Judit@example.com',' Judit', 10),
('PRO#519','912EC803B2CE49E4A541068D495AB570','91654122L','Sanchez Rivas', 'Saray@example.com',' Saray', 11),
('PRO#520','912EC803B2CE49E4A541068D495AB570','56772751B','Gomez Galan', 'Maria Eugenia@example.com',' Maria Eugenia', 12);
-- Insertar médicos especialistas
INSERT INTO myhealth.specialistdoctor(professionalnumber, password, nif, surname, email, name, medicalspecialtyid) VALUES
@@ -274,106 +474,106 @@ INSERT INTO myhealth.specialistdoctor(professionalnumber, password, nif, surname
('PRO#218','912EC803B2CE49E4A541068D495AB570','25565275Q','Pujol Martos', 'Juan Carlos@example.com',' Juan Carlos', 8),
('PRO#219','912EC803B2CE49E4A541068D495AB570','01595202Z','Rios Caballero', 'Jose Miguel@example.com',' Jose Miguel', 9),
('PRO#220','912EC803B2CE49E4A541068D495AB570','00718730A','Alba Pons', 'Luis Fernando@example.com',' Luis Fernando', 10),
('PRO#221','912EC803B2CE49E4A541068D495AB571','65948971J','Arranz Pizarro', 'Marco@example.com',' Marco', 1),
('PRO#222','912EC803B2CE49E4A541068D495AB572','88780772J','Simon Belmonte', 'Marcelino@example.com',' Marcelino', 2),
('PRO#223','912EC803B2CE49E4A541068D495AB573','32650799E','Leal Pelaez', 'Herminia@example.com',' Herminia', 3),
('PRO#224','912EC803B2CE49E4A541068D495AB574','49117288Y','Clemente Correa', 'Monica@example.com',' Monica', 4),
('PRO#225','912EC803B2CE49E4A541068D495AB575','95122904X','Esteve Herrero', 'Luis Angel@example.com',' Luis Angel', 5),
('PRO#226','912EC803B2CE49E4A541068D495AB576','10964026H','Casado Cortes', 'Andrea@example.com',' Andrea', 6),
('PRO#227','912EC803B2CE49E4A541068D495AB577','07091205Y','Cardona Collado', 'Alexandre@example.com',' Alexandre', 7),
('PRO#228','912EC803B2CE49E4A541068D495AB578','26701814X','Palacios Llorens', 'Manuel@example.com',' Manuel', 8),
('PRO#229','912EC803B2CE49E4A541068D495AB579','20559173W','Blanco Alfonso', 'Susana@example.com',' Susana', 9),
('PRO#230','912EC803B2CE49E4A541068D495AB580','96827228B','Montes Nieto', 'Gabriela@example.com',' Gabriela', 10),
('PRO#231','912EC803B2CE49E4A541068D495AB581','49564891Y','Valle Velazquez', 'Candida@example.com',' Candida', 11),
('PRO#232','912EC803B2CE49E4A541068D495AB582','68577188C','Ferrero Bonet', 'Cristian@example.com',' Cristian', 12),
('PRO#233','912EC803B2CE49E4A541068D495AB583','32618741A','Villanueva Aguilera', 'Jose Ramon@example.com',' Jose Ramon', 13),
('PRO#234','912EC803B2CE49E4A541068D495AB584','05786389A','Carrasco Alcazar', 'Andreu@example.com',' Andreu', 14),
('PRO#235','912EC803B2CE49E4A541068D495AB585','11934523F','Sevilla Llorens', 'Paola@example.com',' Paola', 15),
('PRO#236','912EC803B2CE49E4A541068D495AB586','03671173M','Villa Ariza', 'Mariana@example.com',' Mariana', 1),
('PRO#237','912EC803B2CE49E4A541068D495AB587','36355996B','Ferreira Correa', 'Maria Inmaculada@example.com',' Maria Inmaculada', 2),
('PRO#238','912EC803B2CE49E4A541068D495AB588','70144741P','Duque Salcedo', 'Alejandra@example.com',' Alejandra', 3),
('PRO#239','912EC803B2CE49E4A541068D495AB589','20728375Q','Benito Barbero', 'Maria Remedios@example.com',' Maria Remedios', 4),
('PRO#240','912EC803B2CE49E4A541068D495AB590','58422506E','Domenech Rey', 'Victoriano@example.com',' Victoriano', 5),
('PRO#241','912EC803B2CE49E4A541068D495AB591','66656308P','Ferreira Maldonado', 'Borja@example.com',' Borja', 6),
('PRO#242','912EC803B2CE49E4A541068D495AB592','03565527K','Galan Noguera', 'Jonathan@example.com',' Jonathan', 7),
('PRO#243','912EC803B2CE49E4A541068D495AB593','46864009Z','Castilla Carbonell', 'Maria Magdalena@example.com',' Maria Magdalena', 8),
('PRO#244','912EC803B2CE49E4A541068D495AB594','42051358K','Cuesta Serrano', 'Ildefonso@example.com',' Ildefonso', 9),
('PRO#245','912EC803B2CE49E4A541068D495AB595','42447337D','Jorge Torres', 'Rogelio@example.com',' Rogelio', 10),
('PRO#246','912EC803B2CE49E4A541068D495AB596','28652129V','Marquez Santiago', 'Maria Esther@example.com',' Maria Esther', 11),
('PRO#247','912EC803B2CE49E4A541068D495AB597','73947592Q','Miranda Salvador', 'Florencio@example.com',' Florencio', 12),
('PRO#248','912EC803B2CE49E4A541068D495AB598','44582874L','Leon Miranda', 'Barbara@example.com',' Barbara', 13),
('PRO#249','912EC803B2CE49E4A541068D495AB599','49952746N','Pino Zamora', 'Nuria@example.com',' Nuria', 14),
('PRO#250','912EC803B2CE49E4A541068D495AB600','83786322J','Contreras Sosa', 'Raquel@example.com',' Raquel', 15),
('PRO#251','912EC803B2CE49E4A541068D495AB601','04318133K','Ojeda Heredia', 'Fernando@example.com',' Fernando', 1),
('PRO#252','912EC803B2CE49E4A541068D495AB602','49063200Z','Galvez Salvador', 'Isidro@example.com',' Isidro', 2),
('PRO#253','912EC803B2CE49E4A541068D495AB603','65897164W','Ariza Criado', 'Estrella@example.com',' Estrella', 3),
('PRO#254','912EC803B2CE49E4A541068D495AB604','69191544T','Olivares Pazos', 'Luis Antonio@example.com',' Luis Antonio', 4),
('PRO#255','912EC803B2CE49E4A541068D495AB605','89558955Z','Barragan Calvo', 'Carolina@example.com',' Carolina', 5),
('PRO#256','912EC803B2CE49E4A541068D495AB606','71426861Q','Lin Lopez', 'Begoña@example.com',' Begoña', 6),
('PRO#257','912EC803B2CE49E4A541068D495AB607','30012665B','Cebrian Singh', 'Ezequiel@example.com',' Ezequiel', 7),
('PRO#258','912EC803B2CE49E4A541068D495AB608','16498815H','Lara Sola', 'Alfonso@example.com',' Alfonso', 8),
('PRO#259','912EC803B2CE49E4A541068D495AB609','15562370H','Arroyo Montes', 'Jose Andres@example.com',' Jose Andres', 9),
('PRO#260','912EC803B2CE49E4A541068D495AB610','66463342N','Ordoñez Duarte', 'Eugenio@example.com',' Eugenio', 10),
('PRO#261','912EC803B2CE49E4A541068D495AB611','14744481D','Abad Ochoa', 'Maria Consuelo@example.com',' Maria Consuelo', 11),
('PRO#262','912EC803B2CE49E4A541068D495AB612','53480443S','Rebollo Llorente', 'Maria Mar@example.com',' Maria Mar', 12),
('PRO#263','912EC803B2CE49E4A541068D495AB613','92028592A','Corrales Valls', 'Maria Begoña@example.com',' Maria Begoña', 13),
('PRO#264','912EC803B2CE49E4A541068D495AB614','70140762P','Lazaro Olivares', 'Eva@example.com',' Eva', 14),
('PRO#265','912EC803B2CE49E4A541068D495AB615','13666514Y','Barragan Brito', 'Hassan@example.com',' Hassan', 15),
('PRO#266','912EC803B2CE49E4A541068D495AB616','91860648M','Sola Cabello', 'Carolina@example.com',' Carolina', 1),
('PRO#267','912EC803B2CE49E4A541068D495AB617','81967550N','Brito Castilla', 'Paloma@example.com',' Paloma', 2),
('PRO#268','912EC803B2CE49E4A541068D495AB618','12780784Y','Gomez Contreras', 'Francisco Jose@example.com',' Francisco Jose', 3),
('PRO#269','912EC803B2CE49E4A541068D495AB619','32916744H','Davila Grau', 'Asier@example.com',' Asier', 4),
('PRO#270','912EC803B2CE49E4A541068D495AB620','55885029C','Anton Arranz', 'Jose Juan@example.com',' Jose Juan', 5),
('PRO#271','912EC803B2CE49E4A541068D495AB621','80583716L','Mateo Saiz', 'Estela@example.com',' Estela', 6),
('PRO#272','912EC803B2CE49E4A541068D495AB622','53325940A','Roldan Madrid', 'Caridad@example.com',' Caridad', 7),
('PRO#273','912EC803B2CE49E4A541068D495AB623','06748487B','Vazquez Del Valle', 'Estefania@example.com',' Estefania', 8),
('PRO#274','912EC803B2CE49E4A541068D495AB624','09042179M','Aguirre Casas', 'Leo@example.com',' Leo', 9),
('PRO#275','912EC803B2CE49E4A541068D495AB625','31618057A','Agudo Cervera', 'Roger@example.com',' Roger', 10),
('PRO#276','912EC803B2CE49E4A541068D495AB626','91690066Z','Palomo Solis', 'Marco Antonio@example.com',' Marco Antonio', 11),
('PRO#277','912EC803B2CE49E4A541068D495AB627','90043496Z','Quesada Ferreiro', 'Sagrario@example.com',' Sagrario', 12),
('PRO#278','912EC803B2CE49E4A541068D495AB628','39047783Q','Villa Granados', 'Aranzazu@example.com',' Aranzazu', 13),
('PRO#279','912EC803B2CE49E4A541068D495AB629','38357589Y','Montero Mesa', 'Ian@example.com',' Ian', 14),
('PRO#280','912EC803B2CE49E4A541068D495AB630','59233949W','Valle Galindo', 'Aina@example.com',' Aina', 15),
('PRO#281','912EC803B2CE49E4A541068D495AB631','96370632B','Valverde Marquez', 'Esther@example.com',' Esther', 1),
('PRO#282','912EC803B2CE49E4A541068D495AB632','70570638Z','Roig Gonzalez', 'Leticia@example.com',' Leticia', 2),
('PRO#283','912EC803B2CE49E4A541068D495AB633','42627271Z','Molina Alonso', 'Maria Purificacion@example.com',' Maria Purificacion', 3),
('PRO#284','912EC803B2CE49E4A541068D495AB634','68067563Y','Alcaide Bonilla', 'Rocio@example.com',' Rocio', 4),
('PRO#285','912EC803B2CE49E4A541068D495AB635','57280486K','Gordillo Vives', 'Fidel@example.com',' Fidel', 5),
('PRO#286','912EC803B2CE49E4A541068D495AB636','25001934Z','Iglesias Huertas', 'Jose Javier@example.com',' Jose Javier', 6),
('PRO#287','912EC803B2CE49E4A541068D495AB637','17084953R','Paniagua Arias', 'Ander@example.com',' Ander', 7),
('PRO#288','912EC803B2CE49E4A541068D495AB638','43949222V','Ramos Sosa', 'Maria Montserrat@example.com',' Maria Montserrat', 8),
('PRO#289','912EC803B2CE49E4A541068D495AB639','06951384W','Varela Perez', 'Aurelia@example.com',' Aurelia', 9),
('PRO#290','912EC803B2CE49E4A541068D495AB640','09702609J','Lobato Llorens', 'Maria Inmaculada@example.com',' Maria Inmaculada', 10),
('PRO#291','912EC803B2CE49E4A541068D495AB641','13463437L','Santana Pereira', 'Nerea@example.com',' Nerea', 11),
('PRO#292','912EC803B2CE49E4A541068D495AB642','41872706X','Clemente Ocaña', 'Margarita@example.com',' Margarita', 12),
('PRO#293','912EC803B2CE49E4A541068D495AB643','22477540P','Pavon Contreras', 'Jose Angel@example.com',' Jose Angel', 13),
('PRO#294','912EC803B2CE49E4A541068D495AB644','72650618N','Silva De La Torre', 'Ismael@example.com',' Ismael', 14),
('PRO#295','912EC803B2CE49E4A541068D495AB645','31857829T','Wang Bonilla', 'Rosario@example.com',' Rosario', 15),
('PRO#296','912EC803B2CE49E4A541068D495AB646','15902914R','Pelaez Barrio', 'Maria Mar@example.com',' Maria Mar', 1),
('PRO#297','912EC803B2CE49E4A541068D495AB647','79159517A','Correa Casado', 'Iñigo@example.com',' Iñigo', 2),
('PRO#298','912EC803B2CE49E4A541068D495AB648','22669136Z','Casas Carvajal', 'Raul@example.com',' Raul', 3),
('PRO#299','912EC803B2CE49E4A541068D495AB649','51991129C','Ruiz Garrido', 'Eva Maria@example.com',' Eva Maria', 4),
('PRO#300','912EC803B2CE49E4A541068D495AB650','22250791Q','Pardo Frias', 'Aranzazu@example.com',' Aranzazu', 5),
('PRO#301','912EC803B2CE49E4A541068D495AB651','49206646D','Domingo Bueno', 'Rosa Maria@example.com',' Rosa Maria', 6),
('PRO#302','912EC803B2CE49E4A541068D495AB652','80621576K','Burgos Bueno', 'Igor@example.com',' Igor', 7),
('PRO#303','912EC803B2CE49E4A541068D495AB653','73047658A','Gil Pino', 'Benjamin@example.com',' Benjamin', 8),
('PRO#304','912EC803B2CE49E4A541068D495AB654','72128948M','Duarte Ortiz', 'Adrian@example.com',' Adrian', 9),
('PRO#305','912EC803B2CE49E4A541068D495AB655','24282032N','Velasco Moran', 'Lidia@example.com',' Lidia', 10),
('PRO#306','912EC803B2CE49E4A541068D495AB656','07606725G','Granados Cardona', 'Vasile@example.com',' Vasile', 11),
('PRO#307','912EC803B2CE49E4A541068D495AB657','31186730H','Aragon Arranz', 'Alexandra@example.com',' Alexandra', 12),
('PRO#308','912EC803B2CE49E4A541068D495AB658','43619490J','Bonilla Lago', 'Alexis@example.com',' Alexis', 13),
('PRO#309','912EC803B2CE49E4A541068D495AB659','17935762V','Juan Aznar', 'Elias@example.com',' Elias', 14),
('PRO#310','912EC803B2CE49E4A541068D495AB660','19653102Q','Martin Hurtado', 'Maria Manuela@example.com',' Maria Manuela', 15),
('PRO#311','912EC803B2CE49E4A541068D495AB661','87495503F','Cordero Campos', 'Naiara@example.com',' Naiara', 6),
('PRO#312','912EC803B2CE49E4A541068D495AB662','38673770Y','Del Rio Fraile', 'Kevin@example.com',' Kevin', 7),
('PRO#313','912EC803B2CE49E4A541068D495AB663','00840863Y','Abad Wang', 'Igor@example.com',' Igor', 8),
('PRO#314','912EC803B2CE49E4A541068D495AB664','92404967Y','Galvez Blasco', 'Alberto@example.com',' Alberto', 9),
('PRO#315','912EC803B2CE49E4A541068D495AB665','62521101V','Ramirez Ochoa', 'Albert@example.com',' Albert', 10),
('PRO#316','912EC803B2CE49E4A541068D495AB666','37944035S','Hernando Cordero', 'Maria Belen@example.com',' Maria Belen', 11),
('PRO#317','912EC803B2CE49E4A541068D495AB667','67045193D','Alfaro Barreiro', 'Samuel@example.com',' Samuel', 12),
('PRO#318','912EC803B2CE49E4A541068D495AB668','68481931Y','Cardona Huerta', 'Rafael@example.com',' Rafael', 13),
('PRO#319','912EC803B2CE49E4A541068D495AB669','75627578J','Lobato Brito', 'Paulino@example.com',' Paulino', 14),
('PRO#320','912EC803B2CE49E4A541068D495AB670','66946733N','Cervera Estrada', 'Aranzazu@example.com',' Aranzazu', 15);
('PRO#221','912EC803B2CE49E4A541068D495AB570','65948971J','Arranz Pizarro', 'Marco@example.com',' Marco', 1),
('PRO#222','912EC803B2CE49E4A541068D495AB570','88780772J','Simon Belmonte', 'Marcelino@example.com',' Marcelino', 2),
('PRO#223','912EC803B2CE49E4A541068D495AB570','32650799E','Leal Pelaez', 'Herminia@example.com',' Herminia', 3),
('PRO#224','912EC803B2CE49E4A541068D495AB570','49117288Y','Clemente Correa', 'Monica@example.com',' Monica', 4),
('PRO#225','912EC803B2CE49E4A541068D495AB570','95122904X','Esteve Herrero', 'Luis Angel@example.com',' Luis Angel', 5),
('PRO#226','912EC803B2CE49E4A541068D495AB570','10964026H','Casado Cortes', 'Andrea@example.com',' Andrea', 6),
('PRO#227','912EC803B2CE49E4A541068D495AB570','07091205Y','Cardona Collado', 'Alexandre@example.com',' Alexandre', 7),
('PRO#228','912EC803B2CE49E4A541068D495AB570','26701814X','Palacios Llorens', 'Manuel@example.com',' Manuel', 8),
('PRO#229','912EC803B2CE49E4A541068D495AB570','20559173W','Blanco Alfonso', 'Susana@example.com',' Susana', 9),
('PRO#230','912EC803B2CE49E4A541068D495AB570','96827228B','Montes Nieto', 'Gabriela@example.com',' Gabriela', 10),
('PRO#231','912EC803B2CE49E4A541068D495AB570','49564891Y','Valle Velazquez', 'Candida@example.com',' Candida', 11),
('PRO#232','912EC803B2CE49E4A541068D495AB570','68577188C','Ferrero Bonet', 'Cristian@example.com',' Cristian', 12),
('PRO#233','912EC803B2CE49E4A541068D495AB570','32618741A','Villanueva Aguilera', 'Jose Ramon@example.com',' Jose Ramon', 13),
('PRO#234','912EC803B2CE49E4A541068D495AB570','05786389A','Carrasco Alcazar', 'Andreu@example.com',' Andreu', 14),
('PRO#235','912EC803B2CE49E4A541068D495AB570','11934523F','Sevilla Llorens', 'Paola@example.com',' Paola', 15),
('PRO#236','912EC803B2CE49E4A541068D495AB570','03671173M','Villa Ariza', 'Mariana@example.com',' Mariana', 1),
('PRO#237','912EC803B2CE49E4A541068D495AB570','36355996B','Ferreira Correa', 'Maria Inmaculada@example.com',' Maria Inmaculada', 2),
('PRO#238','912EC803B2CE49E4A541068D495AB570','70144741P','Duque Salcedo', 'Alejandra@example.com',' Alejandra', 3),
('PRO#239','912EC803B2CE49E4A541068D495AB570','20728375Q','Benito Barbero', 'Maria Remedios@example.com',' Maria Remedios', 4),
('PRO#240','912EC803B2CE49E4A541068D495AB570','58422506E','Domenech Rey', 'Victoriano@example.com',' Victoriano', 5),
('PRO#241','912EC803B2CE49E4A541068D495AB570','66656308P','Ferreira Maldonado', 'Borja@example.com',' Borja', 6),
('PRO#242','912EC803B2CE49E4A541068D495AB570','03565527K','Galan Noguera', 'Jonathan@example.com',' Jonathan', 7),
('PRO#243','912EC803B2CE49E4A541068D495AB570','46864009Z','Castilla Carbonell', 'Maria Magdalena@example.com',' Maria Magdalena', 8),
('PRO#244','912EC803B2CE49E4A541068D495AB570','42051358K','Cuesta Serrano', 'Ildefonso@example.com',' Ildefonso', 9),
('PRO#245','912EC803B2CE49E4A541068D495AB570','42447337D','Jorge Torres', 'Rogelio@example.com',' Rogelio', 10),
('PRO#246','912EC803B2CE49E4A541068D495AB570','28652129V','Marquez Santiago', 'Maria Esther@example.com',' Maria Esther', 11),
('PRO#247','912EC803B2CE49E4A541068D495AB570','73947592Q','Miranda Salvador', 'Florencio@example.com',' Florencio', 12),
('PRO#248','912EC803B2CE49E4A541068D495AB570','44582874L','Leon Miranda', 'Barbara@example.com',' Barbara', 13),
('PRO#249','912EC803B2CE49E4A541068D495AB570','49952746N','Pino Zamora', 'Nuria@example.com',' Nuria', 14),
('PRO#250','912EC803B2CE49E4A541068D495AB570','83786322J','Contreras Sosa', 'Raquel@example.com',' Raquel', 15),
('PRO#251','912EC803B2CE49E4A541068D495AB570','04318133K','Ojeda Heredia', 'Fernando@example.com',' Fernando', 1),
('PRO#252','912EC803B2CE49E4A541068D495AB570','49063200Z','Galvez Salvador', 'Isidro@example.com',' Isidro', 2),
('PRO#253','912EC803B2CE49E4A541068D495AB570','65897164W','Ariza Criado', 'Estrella@example.com',' Estrella', 3),
('PRO#254','912EC803B2CE49E4A541068D495AB570','69191544T','Olivares Pazos', 'Luis Antonio@example.com',' Luis Antonio', 4),
('PRO#255','912EC803B2CE49E4A541068D495AB570','89558955Z','Barragan Calvo', 'Carolina@example.com',' Carolina', 5),
('PRO#256','912EC803B2CE49E4A541068D495AB570','71426861Q','Lin Lopez', 'Begoña@example.com',' Begoña', 6),
('PRO#257','912EC803B2CE49E4A541068D495AB570','30012665B','Cebrian Singh', 'Ezequiel@example.com',' Ezequiel', 7),
('PRO#258','912EC803B2CE49E4A541068D495AB570','16498815H','Lara Sola', 'Alfonso@example.com',' Alfonso', 8),
('PRO#259','912EC803B2CE49E4A541068D495AB570','15562370H','Arroyo Montes', 'Jose Andres@example.com',' Jose Andres', 9),
('PRO#260','912EC803B2CE49E4A541068D495AB570','66463342N','Ordoñez Duarte', 'Eugenio@example.com',' Eugenio', 10),
('PRO#261','912EC803B2CE49E4A541068D495AB570','14744481D','Abad Ochoa', 'Maria Consuelo@example.com',' Maria Consuelo', 11),
('PRO#262','912EC803B2CE49E4A541068D495AB570','53480443S','Rebollo Llorente', 'Maria Mar@example.com',' Maria Mar', 12),
('PRO#263','912EC803B2CE49E4A541068D495AB570','92028592A','Corrales Valls', 'Maria Begoña@example.com',' Maria Begoña', 13),
('PRO#264','912EC803B2CE49E4A541068D495AB570','70140762P','Lazaro Olivares', 'Eva@example.com',' Eva', 14),
('PRO#265','912EC803B2CE49E4A541068D495AB570','13666514Y','Barragan Brito', 'Hassan@example.com',' Hassan', 15),
('PRO#266','912EC803B2CE49E4A541068D495AB570','91860648M','Sola Cabello', 'Carolina@example.com',' Carolina', 1),
('PRO#267','912EC803B2CE49E4A541068D495AB570','81967550N','Brito Castilla', 'Paloma@example.com',' Paloma', 2),
('PRO#268','912EC803B2CE49E4A541068D495AB570','12780784Y','Gomez Contreras', 'Francisco Jose@example.com',' Francisco Jose', 3),
('PRO#269','912EC803B2CE49E4A541068D495AB570','32916744H','Davila Grau', 'Asier@example.com',' Asier', 4),
('PRO#270','912EC803B2CE49E4A541068D495AB570','55885029C','Anton Arranz', 'Jose Juan@example.com',' Jose Juan', 5),
('PRO#271','912EC803B2CE49E4A541068D495AB570','80583716L','Mateo Saiz', 'Estela@example.com',' Estela', 6),
('PRO#272','912EC803B2CE49E4A541068D495AB570','53325940A','Roldan Madrid', 'Caridad@example.com',' Caridad', 7),
('PRO#273','912EC803B2CE49E4A541068D495AB570','06748487B','Vazquez Del Valle', 'Estefania@example.com',' Estefania', 8),
('PRO#274','912EC803B2CE49E4A541068D495AB570','09042179M','Aguirre Casas', 'Leo@example.com',' Leo', 9),
('PRO#275','912EC803B2CE49E4A541068D495AB570','31618057A','Agudo Cervera', 'Roger@example.com',' Roger', 10),
('PRO#276','912EC803B2CE49E4A541068D495AB570','91690066Z','Palomo Solis', 'Marco Antonio@example.com',' Marco Antonio', 11),
('PRO#277','912EC803B2CE49E4A541068D495AB570','90043496Z','Quesada Ferreiro', 'Sagrario@example.com',' Sagrario', 12),
('PRO#278','912EC803B2CE49E4A541068D495AB570','39047783Q','Villa Granados', 'Aranzazu@example.com',' Aranzazu', 13),
('PRO#279','912EC803B2CE49E4A541068D495AB570','38357589Y','Montero Mesa', 'Ian@example.com',' Ian', 14),
('PRO#280','912EC803B2CE49E4A541068D495AB570','59233949W','Valle Galindo', 'Aina@example.com',' Aina', 15),
('PRO#281','912EC803B2CE49E4A541068D495AB570','96370632B','Valverde Marquez', 'Esther@example.com',' Esther', 1),
('PRO#282','912EC803B2CE49E4A541068D495AB570','70570638Z','Roig Gonzalez', 'Leticia@example.com',' Leticia', 2),
('PRO#283','912EC803B2CE49E4A541068D495AB570','42627271Z','Molina Alonso', 'Maria Purificacion@example.com',' Maria Purificacion', 3),
('PRO#284','912EC803B2CE49E4A541068D495AB570','68067563Y','Alcaide Bonilla', 'Rocio@example.com',' Rocio', 4),
('PRO#285','912EC803B2CE49E4A541068D495AB570','57280486K','Gordillo Vives', 'Fidel@example.com',' Fidel', 5),
('PRO#286','912EC803B2CE49E4A541068D495AB570','25001934Z','Iglesias Huertas', 'Jose Javier@example.com',' Jose Javier', 6),
('PRO#287','912EC803B2CE49E4A541068D495AB570','17084953R','Paniagua Arias', 'Ander@example.com',' Ander', 7),
('PRO#288','912EC803B2CE49E4A541068D495AB570','43949222V','Ramos Sosa', 'Maria Montserrat@example.com',' Maria Montserrat', 8),
('PRO#289','912EC803B2CE49E4A541068D495AB570','06951384W','Varela Perez', 'Aurelia@example.com',' Aurelia', 9),
('PRO#290','912EC803B2CE49E4A541068D495AB570','09702609J','Lobato Llorens', 'Maria Inmaculada@example.com',' Maria Inmaculada', 10),
('PRO#291','912EC803B2CE49E4A541068D495AB570','13463437L','Santana Pereira', 'Nerea@example.com',' Nerea', 11),
('PRO#292','912EC803B2CE49E4A541068D495AB570','41872706X','Clemente Ocaña', 'Margarita@example.com',' Margarita', 12),
('PRO#293','912EC803B2CE49E4A541068D495AB570','22477540P','Pavon Contreras', 'Jose Angel@example.com',' Jose Angel', 13),
('PRO#294','912EC803B2CE49E4A541068D495AB570','72650618N','Silva De La Torre', 'Ismael@example.com',' Ismael', 14),
('PRO#295','912EC803B2CE49E4A541068D495AB570','31857829T','Wang Bonilla', 'Rosario@example.com',' Rosario', 15),
('PRO#296','912EC803B2CE49E4A541068D495AB570','15902914R','Pelaez Barrio', 'Maria Mar@example.com',' Maria Mar', 1),
('PRO#297','912EC803B2CE49E4A541068D495AB570','79159517A','Correa Casado', 'Iñigo@example.com',' Iñigo', 2),
('PRO#298','912EC803B2CE49E4A541068D495AB570','22669136Z','Casas Carvajal', 'Raul@example.com',' Raul', 3),
('PRO#299','912EC803B2CE49E4A541068D495AB570','51991129C','Ruiz Garrido', 'Eva Maria@example.com',' Eva Maria', 4),
('PRO#300','912EC803B2CE49E4A541068D495AB570','22250791Q','Pardo Frias', 'Aranzazu@example.com',' Aranzazu', 5),
('PRO#301','912EC803B2CE49E4A541068D495AB570','49206646D','Domingo Bueno', 'Rosa Maria@example.com',' Rosa Maria', 6),
('PRO#302','912EC803B2CE49E4A541068D495AB570','80621576K','Burgos Bueno', 'Igor@example.com',' Igor', 7),
('PRO#303','912EC803B2CE49E4A541068D495AB570','73047658A','Gil Pino', 'Benjamin@example.com',' Benjamin', 8),
('PRO#304','912EC803B2CE49E4A541068D495AB570','72128948M','Duarte Ortiz', 'Adrian@example.com',' Adrian', 9),
('PRO#305','912EC803B2CE49E4A541068D495AB570','24282032N','Velasco Moran', 'Lidia@example.com',' Lidia', 10),
('PRO#306','912EC803B2CE49E4A541068D495AB570','07606725G','Granados Cardona', 'Vasile@example.com',' Vasile', 11),
('PRO#307','912EC803B2CE49E4A541068D495AB570','31186730H','Aragon Arranz', 'Alexandra@example.com',' Alexandra', 12),
('PRO#308','912EC803B2CE49E4A541068D495AB570','43619490J','Bonilla Lago', 'Alexis@example.com',' Alexis', 13),
('PRO#309','912EC803B2CE49E4A541068D495AB570','17935762V','Juan Aznar', 'Elias@example.com',' Elias', 14),
('PRO#310','912EC803B2CE49E4A541068D495AB570','19653102Q','Martin Hurtado', 'Maria Manuela@example.com',' Maria Manuela', 15),
('PRO#311','912EC803B2CE49E4A541068D495AB570','87495503F','Cordero Campos', 'Naiara@example.com',' Naiara', 6),
('PRO#312','912EC803B2CE49E4A541068D495AB570','38673770Y','Del Rio Fraile', 'Kevin@example.com',' Kevin', 7),
('PRO#313','912EC803B2CE49E4A541068D495AB570','00840863Y','Abad Wang', 'Igor@example.com',' Igor', 8),
('PRO#314','912EC803B2CE49E4A541068D495AB570','92404967Y','Galvez Blasco', 'Alberto@example.com',' Alberto', 9),
('PRO#315','912EC803B2CE49E4A541068D495AB570','62521101V','Ramirez Ochoa', 'Albert@example.com',' Albert', 10),
('PRO#316','912EC803B2CE49E4A541068D495AB570','37944035S','Hernando Cordero', 'Maria Belen@example.com',' Maria Belen', 11),
('PRO#317','912EC803B2CE49E4A541068D495AB570','67045193D','Alfaro Barreiro', 'Samuel@example.com',' Samuel', 12),
('PRO#318','912EC803B2CE49E4A541068D495AB570','68481931Y','Cardona Huerta', 'Rafael@example.com',' Rafael', 13),
('PRO#319','912EC803B2CE49E4A541068D495AB570','75627578J','Lobato Brito', 'Paulino@example.com',' Paulino', 14),
('PRO#320','912EC803B2CE49E4A541068D495AB570','66946733N','Cervera Estrada', 'Aranzazu@example.com',' Aranzazu', 15);
-- Insertar Pacientes
INSERT INTO myhealth.patient(personalidentificationcode, password, nif, surname, email, name, familydoctorid) VALUES