NuevoPacientePresenter

com.uva.rafael.tfg_goniometer.presenter

## Class NuevoPacientePresenter

- java.lang.Object
- - com.uva.rafael.tfg_goniometer.presenter.NuevoPacientePresenter

- All Implemented Interfaces:
    PresenterFunctions, PresenterFunctions.NuevoPacienteFunctions

      public class NuevoPacientePresenter
      extends java.lang.Object
      implements PresenterFunctions, PresenterFunctions.NuevoPacienteFunctions

  Este es el Presentador asociado al `Fragment NuevoPacienteFragment` de la aplicacion. Se encarga de llevar a cabo toda la logica asociada a las acciones del usuario realizadas en la IU.

  En concreto, se encarga de filtrar toda la informacion introducida por el usuario con respecto al nuevo paciente y se la envia al Modelo, con el fin de introducirla finalmente en la Base de Datos. Tambien se encarga de indicar a la Vista que muestre al usuario si se ha producido algun error durante el filtrado o almacenamiento de esta informacion.

  Esta clase forma parte de la aplicacion TFG-Goniometer, desarrollada para el Trabajo de Fin de Grado - Grado en Ingenieria Informatica (Universidad de Valladolid)

  Version:
    1.0
  Author:
    Rafael Matamoros Luque
  See Also:
    `NuevoPacienteFragment`, `MainModel`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.uva.rafael.tfg_goniometer.interfaces.PresenterFunctions

      `PresenterFunctions.HomeFunctions, PresenterFunctions.MainFunctions, PresenterFunctions.MedicionFunctions, PresenterFunctions.NuevaMedicionFunctions, PresenterFunctions.NuevoPacienteFunctions, PresenterFunctions.PacientesFunctions, PresenterFunctions.PerfilPacienteFunctions, PresenterFunctions.SobreAppFunctions, PresenterFunctions.UltimasMedicionesFunctions`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NuevoPacientePresenter(android.app.Fragment fragment, MainModel model)` Constructor principal de la clase

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `onDestroy()` Perform any final cleanup before an activity is destroyed.

    `void`

    `onSaveClicked(java.lang.String nombre_editText, java.lang.String edad_editText, int sexo_radioGroup, java.lang.String id_editText, java.lang.String telefono_editText, java.lang.String direccion_editText, java.lang.String sintomas_editText, java.lang.String diagnostico_editText, java.lang.String tratamiento_previo_editText, java.lang.String tratamiento_actual_editText, java.lang.String comentarios_adicionales_editText, java.lang.String tags_editText)`
    Evento `ClickListener` que se llama cuando el usuario ha pulsado sobre el boton "GUARDAR" en `NuevoPacienteFragment`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### NuevoPacientePresenter

          public NuevoPacientePresenter(android.app.Fragment fragment,
                                        MainModel model)

      Constructor principal de la clase
      Parameters:
        `fragment` - Fragmento (Vista) con la que mantiene una relacion 1-a-1.
        `model` - Modelo (unico) de la aplicacion.

  - ### Method Detail

    - #### onSaveClicked

          public void onSaveClicked(java.lang.String nombre_editText,
                                    java.lang.String edad_editText,
                                    int sexo_radioGroup,
                                    java.lang.String id_editText,
                                    java.lang.String telefono_editText,
                                    java.lang.String direccion_editText,
                                    java.lang.String sintomas_editText,
                                    java.lang.String diagnostico_editText,
                                    java.lang.String tratamiento_previo_editText,
                                    java.lang.String tratamiento_actual_editText,
                                    java.lang.String comentarios_adicionales_editText,
                                    java.lang.String tags_editText)

      Evento `ClickListener` que se llama cuando el usuario ha pulsado sobre el boton "GUARDAR" en `NuevoPacienteFragment`.

      Se encarga de:

      1.- Verificar que el usuario ha introducido toda la informacion obligatoria (marcada con *). 2.- Filtrar la informacion a un formato que se pueda utilizar para introducirla en la Base de Datos. 3.- Enviar la informacion, una vez filtrada, al Modelo para que sea introducida en la Base de Datos. 4.- Solicitar a la Vista (`NuevoPacienteFragment`) que muestre un mensaje dependiendo de si la insercion en la Base de Datos ha sido exitosa o no. 5.- Si la insercion se realizo con exito, borrar el `Fragment` actual y mostrar el listado de pacientes actualizado con el nuevo paciente ya almacenado.

      Specified by:
        `onSaveClicked` in interface `PresenterFunctions.NuevoPacienteFunctions`
      Parameters:
        `nombre_editText` - Nombre del paciente (Obligatorio)
        `edad_editText` - Edad del paciente (Obligatorio)
        `sexo_radioGroup` - Sexo del paciente (Obligatorio)
        `id_editText` - ID del paciente (Opcional)
        `telefono_editText` - Telefono del paciente (Opcional)
        `direccion_editText` - Direccion del paciente (Opcional)
        `sintomas_editText` - Sintomas del paciente (Opcional)
        `diagnostico_editText` - Diagnostico del paciente (Obligatorio)
        `tratamiento_previo_editText` - Tratamiento previo que ha estado siguiendo el paciente (Opcional)
        `tratamiento_actual_editText` - Tratamiento que esta siguiendo actualmente el paciente (Opcional)
        `comentarios_adicionales_editText` - Comentarios adicionales que se necesiten introducir (Opcional)
        `tags_editText` - Etiquetas para recuperar facilmente la informacion del paciente al buscarlo en el listado de pacientes (Obligatorio)

    - #### onDestroy

          public void onDestroy()

      Perform any final cleanup before an activity is destroyed. Se encarga de liberar la referencia al `Fragment` con el que esta asociado.
      Specified by:
        `onDestroy` in interface `PresenterFunctions`