Funcionalidad primera parte Eliminar Receta
This commit is contained in:
parent
25f72e59f0
commit
9c7d539484
|
@ -3,7 +3,20 @@
|
|||
<component name="deploymentTargetDropDown">
|
||||
<value>
|
||||
<entry key="app">
|
||||
<State />
|
||||
<State>
|
||||
<runningDeviceTargetSelectedWithDropDown>
|
||||
<Target>
|
||||
<type value="RUNNING_DEVICE_TARGET" />
|
||||
<deviceKey>
|
||||
<Key>
|
||||
<type value="SERIAL_NUMBER" />
|
||||
<value value="ZX1D9224Q7" />
|
||||
</Key>
|
||||
</deviceKey>
|
||||
</Target>
|
||||
</runningDeviceTargetSelectedWithDropDown>
|
||||
<timeTargetWasSelectedWithDropDown value="2024-05-08T23:05:47.315686700Z" />
|
||||
</State>
|
||||
</entry>
|
||||
</value>
|
||||
</component>
|
||||
|
|
|
@ -15,6 +15,9 @@
|
|||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.MedicalHealth"
|
||||
tools:targetApi="31">
|
||||
<activity
|
||||
android:name=".EliminarRecetaActivity"
|
||||
android:exported="false" />
|
||||
<activity
|
||||
android:name=".PrincipalActivity"
|
||||
android:exported="false"
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
package Adapters
|
||||
|
||||
import Data.Receta
|
||||
import android.content.Context
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.ArrayAdapter
|
||||
import android.widget.TextView
|
||||
import android.view.ViewGroup
|
||||
|
||||
class RecetaAdapter(context: Context, private val recetas: List<Receta>) : ArrayAdapter<Receta>(context, 0, recetas) {
|
||||
|
||||
override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {
|
||||
var itemView = convertView
|
||||
if (itemView == null) {
|
||||
itemView = LayoutInflater.from(context).inflate(android.R.layout.simple_list_item_2, parent, false)
|
||||
}
|
||||
|
||||
val receta = recetas[position]
|
||||
|
||||
// Buscar los TextView dentro del layout simple_list_item_2
|
||||
val text1 = itemView?.findViewById<TextView>(android.R.id.text1)
|
||||
val text2 = itemView?.findViewById<TextView>(android.R.id.text2)
|
||||
|
||||
// Establecer el nombre del paciente y la fecha de la receta en los TextView
|
||||
text1?.text = "Paciente: ${receta.NombrePaciente}"
|
||||
text2?.text = "Fecha: ${receta.fecha}"
|
||||
|
||||
return itemView!!
|
||||
}
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package Adapters
|
||||
|
||||
import Data.Receta
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.ContentValues
|
||||
import android.content.Context
|
||||
import android.database.sqlite.SQLiteDatabase
|
||||
|
@ -46,4 +47,30 @@ class RecetaDataBaseHelper(context: Context) : SQLiteOpenHelper(context, DATABAE
|
|||
db.insert(TABLE_NAME, null, values)
|
||||
db.close()
|
||||
}
|
||||
|
||||
@SuppressLint("Range")
|
||||
fun obtenerTodasRecetas(): List<Receta> {
|
||||
val recetas = mutableListOf<Receta>()
|
||||
val db = readableDatabase
|
||||
val cursor = db.rawQuery("SELECT * FROM $TABLE_NAME", null)
|
||||
while (cursor.moveToNext()) {
|
||||
val nombrePaciente = cursor.getString(cursor.getColumnIndex(COLUMN_NOMBRE_PACIENTE))
|
||||
val edadPaciente = cursor.getInt(cursor.getColumnIndex(COLUMN_EDAD_PACIENTE))
|
||||
val pesoPaciente = cursor.getDouble(cursor.getColumnIndex(COLUMN_PESO_PACIENTE))
|
||||
val medicamento = cursor.getString(cursor.getColumnIndex(COLUMN_MEDICAMENTO))
|
||||
val fecha = cursor.getString(cursor.getColumnIndex(COLUMN_FECHA))
|
||||
val dosis = cursor.getString(cursor.getColumnIndex(COLUMN_DOSIS_PACIENTE))
|
||||
val duracion = cursor.getString(cursor.getColumnIndex(DURACION_MEDICAMENTO))
|
||||
val receta = Receta(nombrePaciente, edadPaciente, pesoPaciente, medicamento, fecha, dosis, duracion)
|
||||
recetas.add(receta)
|
||||
}
|
||||
cursor.close()
|
||||
return recetas
|
||||
}
|
||||
|
||||
fun eliminarReceta(receta: Receta) {
|
||||
val db = writableDatabase
|
||||
db.delete(TABLE_NAME, "$COLUMN_NOMBRE_PACIENTE = ? AND $COLUMN_FECHA = ?", arrayOf(receta.NombrePaciente, receta.fecha))
|
||||
db.close()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
package com.terratenientes.medicalhealth
|
||||
|
||||
import Adapters.RecetaAdapter
|
||||
import Adapters.RecetaDataBaseHelper
|
||||
import Data.Receta
|
||||
import android.os.Bundle
|
||||
import android.widget.Toast
|
||||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import com.terratenientes.medicalhealth.databinding.ActivityEliminarPacienteBinding
|
||||
import com.terratenientes.medicalhealth.databinding.ActivityEliminarRecetaBinding
|
||||
import android.widget.ListView
|
||||
|
||||
|
||||
class EliminarRecetaActivity : AppCompatActivity() {
|
||||
|
||||
private lateinit var binding: ActivityEliminarRecetaBinding
|
||||
private lateinit var dbReceta: RecetaDataBaseHelper
|
||||
private lateinit var recetaAdapter: RecetaAdapter
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
binding = ActivityEliminarRecetaBinding.inflate(layoutInflater)
|
||||
val view = binding.root
|
||||
setContentView(view)
|
||||
|
||||
dbReceta = RecetaDataBaseHelper(this)
|
||||
|
||||
// Configurar el ListView y el adaptador
|
||||
val recetas = obtenerListaRecetas()
|
||||
recetaAdapter = RecetaAdapter(this, recetas)
|
||||
binding.listaRecetas.adapter = recetaAdapter
|
||||
|
||||
// Manejar el evento de clic en el botón para eliminar receta
|
||||
binding.btnEliminarReceta.setOnClickListener {
|
||||
val posicionSeleccionada = binding.listaRecetas.selectedItemPosition
|
||||
if (posicionSeleccionada != ListView.INVALID_POSITION) {
|
||||
val recetaSeleccionada = recetas[posicionSeleccionada]
|
||||
eliminarReceta(recetaSeleccionada)
|
||||
recetaAdapter.remove(recetaSeleccionada)
|
||||
Toast.makeText(this, "Receta eliminada correctamente", Toast.LENGTH_SHORT).show()
|
||||
} else {
|
||||
Toast.makeText(this, "Por favor, seleccione una receta para eliminar", Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun obtenerListaRecetas(): List<Receta> {
|
||||
return dbReceta.obtenerTodasRecetas() // Implementa este método en tu RecetaDataBaseHelper para obtener todas las recetas
|
||||
}
|
||||
|
||||
private fun eliminarReceta(receta: Receta) {
|
||||
dbReceta.eliminarReceta(receta) // Implementa este método en tu RecetaDataBaseHelper para eliminar una receta
|
||||
}
|
||||
}
|
|
@ -0,0 +1,53 @@
|
|||
<?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=".EliminarRecetaActivity">
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="20dp"
|
||||
android:textSize="32dp"
|
||||
android:textStyle="bold"
|
||||
android:textColor="@color/primaryColor"
|
||||
android:text="@string/eliminar_receta_tittle"
|
||||
android:gravity="center"
|
||||
/>
|
||||
|
||||
<ListView
|
||||
android:id="@+id/lista_recetas"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="195dp"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginEnd="5dp"
|
||||
android:listSelector="@drawable/list_item_selected_background"/>
|
||||
|
||||
<Button
|
||||
android:id="@+id/btn_eliminar_receta"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="50dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginEnd="50dp"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold"
|
||||
android:background="@drawable/radius_btn"
|
||||
android:text="@string/bt_eliminar" />
|
||||
|
||||
<Button
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/bt_cancelar"
|
||||
android:layout_marginTop="5dp"
|
||||
android:layout_marginStart="50dp"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold"
|
||||
android:background="@drawable/radius_btn"
|
||||
android:layout_marginEnd="50dp"/>
|
||||
|
||||
</LinearLayout>
|
|
@ -52,4 +52,8 @@
|
|||
<string name="title_dashboard">Dashboard</string>
|
||||
<string name="title_notifications">Notifications</string>
|
||||
|
||||
|
||||
<!--Eliminar Receta Activity-->
|
||||
<string name="eliminar_receta_tittle">Eliminar Receta Médica</string>
|
||||
|
||||
</resources>
|
Loading…
Reference in New Issue