Actividad Consultar (Completa) y Actividad Modificar Paciente (Incompleta)

This commit is contained in:
AngelSuarez03 2024-04-21 19:13:46 -06:00
parent 0280d87198
commit 61d7116023
10 changed files with 228 additions and 29 deletions

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" >
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true"
@ -11,7 +11,10 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.MedicalHealth"
tools:targetApi="31" >
tools:targetApi="31">
<activity
android:name=".ConsultarPacientesActivity"
android:exported="false" />
<activity
android:name=".EliminarActivity"
android:exported="false" />
@ -23,7 +26,7 @@
android:exported="false" />
<activity
android:name=".MainActivity"
android:exported="true" >
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

View File

@ -0,0 +1,70 @@
package com.terratenientes.medicalhealth
import android.annotation.SuppressLint
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.terratenientes.medicalhealth.databinding.ActivityConsultarPacientesBinding
class ConsultarPacientesActivity : AppCompatActivity() {
private lateinit var binding : ActivityConsultarPacientesBinding
private lateinit var db: DoctorDataBaseHelper
private lateinit var pacientesList: MutableList<Paciente>
private var pacienteSeleccionado: Paciente? = null
private lateinit var infoPaciente : Array<String>
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityConsultarPacientesBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
db = DoctorDataBaseHelper(this@ConsultarPacientesActivity)
cargarListaPacientes()
binding.listaPacientes.setOnItemClickListener { _, _, position, _ ->
pacienteSeleccionado = pacientesList[position]
val intent = Intent(this@ConsultarPacientesActivity, ModificarActivity::class.java)
intent.putExtra("Id", pacienteSeleccionado!!.id)
intent.putExtra("Nombre Paciente", pacienteSeleccionado!!.nombre)
intent.putExtra("Apellido Paterno", pacienteSeleccionado!!.apellidoPaterno)
intent.putExtra("Apellido Materno", pacienteSeleccionado!!.apellidoMaterno)
intent.putExtra("Domicilio", pacienteSeleccionado!!.domicilio)
intent.putExtra("Edad", pacienteSeleccionado!!.edad)
intent.putExtra("Sexo", pacienteSeleccionado!!.sexo)
startActivity(intent)
}
}
private fun cargarListaPacientes() {
pacientesList = obtenerListaPacientes()
val adapter = PacienteAdapter(this, pacientesList)
binding.listaPacientes.adapter = adapter
}
@SuppressLint("Range")
private fun obtenerListaPacientes(): MutableList<Paciente> {
val pacientes = mutableListOf<Paciente>()
val db = db.readableDatabase
val cursor = db.rawQuery("SELECT * FROM ${DoctorDataBaseHelper.TABLE_PACIENTES}", null)
while (cursor.moveToNext()) {
val id = cursor.getInt(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_ID_PACIENTE))
val nombre = cursor.getString(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_NOMBRE_PACIENTE))
val apellidoPaterno = cursor.getString(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_APELLIDO_PATERNO_PACIENTE))
val apellidoMaterno = cursor.getString(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_APELLIDO_MATERNO_PACIENTE))
val edad = cursor.getInt(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_EDAD))
val sexo = cursor.getString(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_SEXO))
val domicilio = cursor.getString(cursor.getColumnIndex(DoctorDataBaseHelper.COLUMN_DOMICILIO))
val paciente = Paciente(id, nombre, apellidoPaterno, apellidoMaterno, edad, sexo, domicilio)
pacientes.add(paciente)
}
cursor.close()
return pacientes
}
private fun guardarDatosPaciente(paciente : Paciente){
infoPaciente = arrayOf(paciente.nombre.toString(), paciente.apellidoPaterno.toString(), paciente.apellidoMaterno.toString(), paciente.domicilio.toString(), paciente.edad.toString(), paciente.sexo.toString())
}
}

View File

@ -19,14 +19,14 @@ class DoctorDataBaseHelper (context: Context) : SQLiteOpenHelper(context, DATABA
private const val COLUMN_TELEFONO="Telefono"
private const val COLUMN_CONSULTORIO="Consultorio"
private const val COLUMN_CONTRASENA="Contrasena"
const val TABLE_PACIENTES = "Pacientes"
const val COLUMN_ID_PACIENTE = "IdPaciente"
const val COLUMN_NOMBRE_PACIENTE = "NombrePaciente"
const val COLUMN_APELLIDO_PATERNO_PACIENTE = "ApellidoPaternoPaciente"
const val COLUMN_APELLIDO_MATERNO_PACIENTE = "ApellidoMaternoPaciente"
const val COLUMN_EDAD = "Edad"
const val COLUMN_SEXO = "Sexo"
const val COLUMN_DOMICILIO = "Domicilio"
const val TABLE_PACIENTES = "Pacientes"
const val COLUMN_ID_PACIENTE = "IdPaciente"
const val COLUMN_NOMBRE_PACIENTE = "NombrePaciente"
const val COLUMN_APELLIDO_PATERNO_PACIENTE = "ApellidoPaternoPaciente"
const val COLUMN_APELLIDO_MATERNO_PACIENTE = "ApellidoMaternoPaciente"
const val COLUMN_EDAD = "Edad"
const val COLUMN_SEXO = "Sexo"
const val COLUMN_DOMICILIO = "Domicilio"
}
@SuppressLint("SuspiciousIndentation")
override fun onCreate(db: SQLiteDatabase?) {
@ -75,6 +75,24 @@ class DoctorDataBaseHelper (context: Context) : SQLiteOpenHelper(context, DATABA
db.insert(TABLE_PACIENTES, null, values)
db.close()
}
fun modificarPaciente(paciente: Paciente){
val db = writableDatabase
val values = ContentValues().apply {
put(COLUMN_NOMBRE_PACIENTE, paciente.nombre)
put(COLUMN_APELLIDO_PATERNO_PACIENTE, paciente.apellidoPaterno)
put(COLUMN_APELLIDO_MATERNO_PACIENTE, paciente.apellidoMaterno)
put(COLUMN_DOMICILIO, paciente.domicilio)
put(COLUMN_EDAD, paciente.edad)
put(COLUMN_SEXO, paciente.sexo)
}
val whereClause = "$COLUMN_NOMBRE_PACIENTE = ? and $COLUMN_APELLIDO_PATERNO_PACIENTE = ? and $COLUMN_APELLIDO_MATERNO_PACIENTE = ?"
//val whereArgs = arrayOf(paciente.id.toString())
val whereArgs = arrayOf(paciente.nombre, paciente.apellidoPaterno, paciente.apellidoMaterno)
db.update(TABLE_PACIENTES, values, whereClause, whereArgs)
db.close()
}
fun createTable(){
val db=writableDatabase
val crearTablaDoctores="CREATE TABLE $TABLE_NAME($COLUMN_CEDULA VARCHAR(30) PRIMARY KEY, $COLUMN_NOMBRE VARCHAR(30)," +

View File

@ -32,6 +32,11 @@ class MainActivity : AppCompatActivity() {
val intent = Intent(this@MainActivity, AgregarActivity::class.java)
startActivity(intent)
}
binding.btnPrueba2.setOnClickListener {
val intent = Intent(this@MainActivity, ConsultarPacientesActivity::class.java)
startActivity(intent)
}
}
@SuppressLint("SuspiciousIndentation")
private fun cargarDatos(){

View File

@ -2,14 +2,41 @@ package com.terratenientes.medicalhealth
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Toast
import com.terratenientes.medicalhealth.databinding.ActivityModificarBinding
class ModificarActivity : AppCompatActivity() {
lateinit var binding : ActivityModificarBinding
private lateinit var paciente : Paciente
private lateinit var db: DoctorDataBaseHelper
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityModificarBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
db = DoctorDataBaseHelper(this@ModificarActivity)
paciente = Paciente(intent.getIntExtra("Id",0),intent.getStringExtra("Nombre Paciente").toString(),intent.getStringExtra("Apellido Paterno").toString(), intent.getStringExtra("Apellido Materno").toString(), intent.getIntExtra("Edad", 20), intent.getStringExtra("Sexo").toString(), intent.getStringExtra("Domicilio").toString())
llenarCampos()
binding.btnModificar.setOnClickListener {
actualizarPaciente(paciente)
}
}
private fun actualizarPaciente(paciente : Paciente) : Unit {
db.modificarPaciente(paciente)
finish()
Toast.makeText(this@ModificarActivity, "Información Actualizada UwU", Toast.LENGTH_LONG).show()
}
private fun llenarCampos() : Unit {
binding.etNombre.setText(paciente.nombre)
binding.etApellidoPaterno.setText(paciente.apellidoPaterno)
binding.etApellidoMaterno.setText(paciente.apellidoMaterno)
binding.etDomicilio.setText(paciente.domicilio)
binding.tvEdad.setText("Edad: ${paciente.edad}")
binding.tvSexo.setText("Sexo: ${paciente.sexo}")
}
}

View File

@ -21,14 +21,14 @@
<ImageView
android:layout_width="200dp"
android:layout_height="150dp"
android:layout_marginTop="5dp"
android:layout_marginTop="25dp"
android:layout_gravity="center_horizontal"
android:src="@drawable/image_area"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="0dp"
android:layout_marginTop="35dp"
android:orientation="horizontal"
tools:ignore="ExtraText">
@ -67,34 +67,47 @@
<EditText
android:id="@+id/edtx_nombre"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_height="50sp"
android:layout_marginStart="40dp"
android:layout_marginTop="28dp"
android:layout_marginEnd="40dp"
android:hint="@string/ht_nombre"/>
android:background="@drawable/radius_tv"
android:hint="@string/ht_nombre"
android:textColor="#212121"
android:paddingStart="10dp" />
<EditText
android:id="@+id/edtx_apellidoPat"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_height="50sp"
android:layout_marginTop="28dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:background="@drawable/radius_tv"
android:textColor="#212121"
android:hint="@string/ht_apellido_paterno"/>
<EditText
android:id="@+id/edtx_apellidoMat"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_height="50sp"
android:layout_marginTop="28dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:textColor="#212121"
android:background="@drawable/radius_tv"
android:hint="@string/ht_apellido_materno"/>
<EditText
android:id="@+id/edtx_domicilio"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_height="50sp"
android:layout_marginTop="28dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:textColor="#212121"
android:background="@drawable/radius_tv"
android:hint="@string/ht_domicilio"/>
<Button
@ -102,7 +115,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="50dp"
android:layout_marginTop="5dp"
android:layout_marginTop="25dp"
android:layout_marginEnd="50dp"
android:text="@string/bt_agregar" />

View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ConsultarPacientesActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:textSize="32dp"
android:textStyle="bold"
android:textColor="@color/tv_titulo"
android:text="@string/tv_titulo_consultar"
android:gravity="center"
/>
<ListView
android:id="@+id/lista_pacientes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="5dp"
android:listSelector="@drawable/list_item_selected_background"/>
</LinearLayout>

View File

@ -68,6 +68,17 @@
android:backgroundTint="@color/tv_titulo"
/>
<Button
android:id="@+id/btn_prueba2"
android:layout_marginTop="25dp"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:text="Prueba2"
android:layout_gravity="center_horizontal"
android:background="@drawable/radius_btn"
android:backgroundTint="@color/tv_titulo"
/>
<TextView
android:layout_marginTop="25dp"
android:id="@+id/tv_registrarme"

View File

@ -32,49 +32,68 @@
android:orientation="horizontal">
<TextView
android:id="@+id/tv_edad"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="65dp"
android:layout_marginStart="40dp"
android:text="@string/et_modificar_edad"/>
<TextView
android:id="@+id/tv_sexo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="180dp"
android:layout_marginStart="179dp"
android:text="@string/et_modificar_sexo"/>
</LinearLayout>
<EditText
android:id="@+id/et_nombre"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="50sp"
android:layout_marginTop="40dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:background="@drawable/radius_tv"
android:textColor="#212121"
android:hint="@string/ht_nombre"/>
<EditText
android:id="@+id/et_apellido_paterno"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="50sp"
android:layout_marginTop="25dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:background="@drawable/radius_tv"
android:textColor="#212121"
android:hint="@string/ht_apellido_paterno"/>
<EditText
android:id="@+id/et_apellido_materno"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="50sp"
android:layout_marginTop="25dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:background="@drawable/radius_tv"
android:textColor="#212121"
android:hint="@string/ht_apellido_materno"/>
<EditText
android:id="@+id/et_domicilio"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="50sp"
android:layout_marginTop="25dp"
android:layout_marginStart="40dp"
android:layout_marginEnd="40dp"
android:paddingStart="10dp"
android:background="@drawable/radius_tv"
android:textColor="#212121"
android:hint="@string/ht_domicilio"/>
<Button
android:id="@+id/btn_modificar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/bt_modificar"

View File

@ -22,4 +22,7 @@
<string name="btn_iniciar_sesion">Iniciar Sesion</string>
<string name="txt_registrarme">Registrarme</string>
<!-- Consultar Pacientes Activity -->
<string name="tv_titulo_consultar">Pacientes</string>
</resources>