示例#1
0
        private void RemovePaciente(int id)
        {
            // Instanciamos
            _listaMedicamentos  = new List <Medicamento>();
            _listaRotaciones    = new List <Rotacion>();
            _medicamentoService = new MedicamentoService();
            _rotacionService    = new RotacionService();

            // Consultamos
            _listaMedicamentos = _medicamentoService.getMedicamentosPacienteById(id); // Devuelve lista medicamentos por Id paciente
            _listaRotaciones   = _rotacionService.getRotacionesPacienteById(id);      // Devuelve lista rotaciones por Id paciente

            // Si no hay registros de medicamentos y rotaciones. Se elimina el paciente
            if (!_listaMedicamentos.Any() && !_listaRotaciones.Any())
            {
                // Eliminar el registro en la base de datos
                _pacienteService.deletePaciente(id);

                // Mensaje
                Toast.MakeText(this, "Se ha eliminado el paciente", ToastLength.Short).Show();

                // Acción redireccionar a otra activity
                StartActivity(new Intent(this, typeof(PacienteList)));
                Finish();
            }
            else
            {
                // Mensaje
                Toast.MakeText(this, "No se puede eliminar el paciente", ToastLength.Short).Show();
            }
        }
        // Cuando la actividad ha sido creada, este metodo se ejecutara cuando la actividad que contiene este fragmento sea creado
        public override void OnActivityCreated(Bundle savedInstanceState)
        {
            base.OnActivityCreated(savedInstanceState);

            ConfigurarVistas();

            _rotacionService = new RotacionService();              // Instanciamos
            _listRotacion    = _rotacionService.getListRotacion(); // Devuelve lista

            // Si hay registros, mostrar lista
            if (_listRotacion.Count > 0)
            {
                // Adaptador
                _listView.Adapter = new RecordRotacionAdapter(Activity, _listRotacion);

                // Lista Items Click
                _listView.ItemClick += List_ItemClick;
            }
            else
            {
                _listView.Visibility   = ViewStates.Gone; // ListView Invisible
                _txtMensaje.Visibility = View.Visibility; // TextView Visible
                _txtMensaje.Text       = "No hay registros";
            }
        }
示例#3
0
        private void updateAlertRotacion(object sender, EventArgs e)
        {
            // Recibimos el Id Rotación
            var id = Intent.Extras.GetInt(KEY_ID);

            // Cargamos los datos
            _rotacion.Id         = id;
            _rotacion.comun      = _radioComun.Checked == true ? true : false;
            _rotacion.aire       = _radioAire.Checked == true ? true : false;
            _rotacion.lateralIzq = _radio1.Checked == true ? true : false;
            _rotacion.lateralDer = _radio2.Checked == true ? true : false;
            _rotacion.supina     = _radio3.Checked == true ? true : false;
            _rotacion.prono      = _radio4.Checked == true ? true : false;
            _rotacion.confirmar  = false; // Por defecto es false

            // Validacion
            if (Validate())
            {
                DateTime now        = DateTime.Now;                                               // Fecha y hora actual
                DateTime selectedDT = Convert.ToDateTime(_rotacion.fecha + " " + _rotacion.hora); // Fecha y hora seleccionado

                // No debe aplicarse en la fecha pasada. Debe ser mayor a la fecha y hora seleccionada
                if (selectedDT > now)
                {
                    _rotacionService = new RotacionService();                           // Instanciamos
                    _rotacionService.updateRotacion(_rotacion);                         // Actualizar el registro en la base de datos

                    _paciente = new Paciente();                                         // Instanciamos
                    _paciente = _rotacionService.getPacienteByIdRotacion(_rotacion.Id); // Devuelve paciente por id rotación

                    AlarmRotacion(_rotacion);

                    // Mensaje
                    Toast.MakeText(this, "Se ha actualizado la rotación", ToastLength.Short).Show();

                    // Acción redireccionar a otra activity
                    Intent otroActivity = new Intent(this, typeof(RotacionList));
                    otroActivity.PutExtra("KEY_ID", _paciente.Id); // Pasamos el Id Paciente
                    StartActivity(otroActivity);
                }
                else
                {
                    Toast.MakeText(this, "Esta es una selección no válida de fecha y hora", ToastLength.Short).Show();
                }
            }
        }
        public override void OnReceive(Context context, Intent intent)
        {
            // Instanciamos
            _rotacion        = new Rotacion();
            _rotacionService = new RotacionService();
            _rotacion        = _rotacionService.selectRotacion(); // Selecciona la rotacion

            if (_rotacion != null)
            {
                Intent newIntent = new Intent(context, typeof(RotacionAlert));

                // Agrega la siguiente tarea a la pila
                TaskStackBuilder stackBuilder = TaskStackBuilder.Create(context);
                stackBuilder.AddParentStack(Java.Lang.Class.FromType(typeof(RotacionAlert)));
                stackBuilder.AddNextIntent(newIntent);

                // Establecer la intencion que se abrira cuando un clic en la notificación
                PendingIntent notificationIntent = stackBuilder.GetPendingIntent(0, (int)PendingIntentFlags.UpdateCurrent);

                // Define bitmap para LargeIcon
                Bitmap bitmap = ((BitmapDrawable)ContextCompat.GetDrawable(context, Resource.Drawable.logo)).Bitmap;

                // Define sound
                Uri soundUri = RingtoneManager.GetDefaultUri(RingtoneType.Alarm);

                // Creamos la Notificacion
                var builder = new NotificationCompat.Builder(context)
                              .SetContentIntent(notificationIntent)
                              .SetSmallIcon(Resource.Drawable.logo)          // Icono pequeño
                              .SetLargeIcon(bitmap)                          // Icono grande
                              .SetContentTitle("Recordar Rotación")          // Titulo
                              .SetContentText("Ver detalles..")              // Contenido
                              .SetSound(soundUri)                            // Sonido
                              .SetVibrate(new long[] { 100, 250, 100, 500 }) // Vibración
                              .SetAutoCancel(true);

                // Mostrar Notificacion
                var manager = (NotificationManager)context.GetSystemService(Context.NotificationService);

                Random random       = new Random(); // id random para notificacion
                int    randomNumber = random.NextInt(9999 - 1000) + 1000;
                manager.Notify(randomNumber, builder.Build());
            }
        }
示例#5
0
        private void BindData()
        {
            _rotacionService = new RotacionService();                 // Instanciamos
            _listRotacion    = _rotacionService.getListRotacionNow(); // Devuelve lista

            // Si hay registros
            if (_listRotacion.Any())
            {
                _listView.Adapter = new RecordRotacionAdapter(this, _listRotacion);

                // Lista items click
                _listView.ItemClick += List_ItemClick;
            }
            else
            {
                this.FinishAffinity();
                Finish();
                Android.OS.Process.KillProcess(Android.OS.Process.MyPid());
            }
        }
        // Cuando la actividad ha sido creada, este metodo se ejecutara cuando la actividad que contiene este fragmento sea creado
        public override void OnActivityCreated(Bundle savedInstanceState)
        {
            base.OnActivityCreated(savedInstanceState);

            // Verificar si hay rotacion
            if (!_rotacionList.Any())
            {
                // Recibimos el Id paciente
                var idPaciente = this.Activity.Intent.Extras.GetInt(KEY_ID);

                // Consultamos la lista rotación en el paciente
                _rotacionService = new RotacionService();
                _rotacionList    = _rotacionService.getRotacionesPacienteById(idPaciente);
            }

            ConfigurarVistas();
            ConfigurarEventos();

            // Adaptador
            _rotacionListView.Adapter = new RotacionListAdapter(Activity, _rotacionList);
        }
示例#7
0
        private void ViewRotacionDetail(int id)
        {
            // Instanciamos
            _rotacion        = new Rotacion();
            _rotacionService = new RotacionService();

            // Consultamos la lista rotación de paciente por Id
            _rotacion = _rotacionService.getRotacionPacienteById(id);

            // Mostramos los datos
            if (_rotacion.comun == true)
            {
                _txtTipoColchon.Text = "Común";
            }
            if (_rotacion.aire == true)
            {
                _txtTipoColchon.Text = "Aíre";
            }
            if (_rotacion.lateralIzq == true)
            {
                _txtPosicion.Text = "Lateral Izquierdo";
            }
            if (_rotacion.lateralDer == true)
            {
                _txtPosicion.Text = "Lateral Derecho";
            }
            if (_rotacion.supina == true)
            {
                _txtPosicion.Text = "Supino";
            }
            if (_rotacion.prono == true)
            {
                _txtPosicion.Text = "Prono";
            }
            _txtFecha.Text = _rotacion.fecha;
            _txtHora.Text  = _rotacion.hora;
        }
示例#8
0
        // GetView para mostrar cada una de las filas de la lista
        public override View GetView(int position, View convertView, ViewGroup parent)
        {
            if (convertView == null)
            {
                convertView = context.LayoutInflater.Inflate(Resource.Layout.recordRotacionListRow, parent, false);
            }

            Rotacion item = this[position];

            _paciente        = new Paciente();                                    // Instanciamos Paciente
            _rotacionService = new RotacionService();                             // Instanciamos PacienteService
            _paciente        = _rotacionService.getPacienteByIdRotacion(item.Id); // Devuelve un paciente

            DateTime nowDate    = DateTime.Now.Date;                              // Fecha actual
            DateTime selectedDT = Convert.ToDateTime(item.fecha);                 // Fecha registrado

            if (item.confirmar == true)
            {
                // Si la fecha registrada es mayor a la actual
                if (selectedDT > nowDate)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtFechaHorario).Text = item.fecha + " " + item.hora; // Mostrar Fecha/Hora
                }
                else
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtFechaHorario).Text = item.hora; // Mostrar Hora
                }

                // Mostrar
                if (item.lateralIzq == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Lateral Izquierdo";
                }
                if (item.lateralDer == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Lateral Derecho";
                }
                if (item.supina == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Decúbito supino";
                }
                if (item.prono == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Decúbito prono";
                }

                convertView.FindViewById <TextView>(Resource.Id.txtHabiCama).Text   = "Habitación N°" + _paciente.NroHabitacion.ToString() + " - " + "Cama: " + _paciente.NroCama;
                convertView.FindViewById <TextView>(Resource.Id.txtConfirmado).Text = "Confirmado";
                convertView.FindViewById <TextView>(Resource.Id.txtNomApe).Text     = _paciente.Nombre + " " + _paciente.Apellido;
            }
            else
            {
                // Si la fecha registrada es mayor a la actual
                if (selectedDT > nowDate)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtFechaHorario).Text = item.fecha + " " + item.hora; // Mostrar Fecha/Hora
                }
                else
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtFechaHorario).Text = item.hora; // Mostrar Hora
                }

                // Mostrar
                if (item.lateralIzq == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Lateral Izquierdo";
                }
                if (item.lateralDer == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Lateral Derecho";
                }
                if (item.supina == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Decúbito supino";
                }
                if (item.prono == true)
                {
                    convertView.FindViewById <TextView>(Resource.Id.txtPosicion).Text = "Decúbito prono";
                }

                convertView.FindViewById <TextView>(Resource.Id.txtHabiCama).Text     = "Habitación N°" + _paciente.NroHabitacion.ToString() + " - " + "Cama: " + _paciente.NroCama;
                convertView.FindViewById <TextView>(Resource.Id.txtNomApe).Text       = _paciente.Nombre + " " + _paciente.Apellido;
                convertView.FindViewById <TextView>(Resource.Id.txtNoConfirmado).Text = "Pendiente";
            }

            return(convertView);
        }
 public RecordRotacionFragment()
 {
     // Instanciamos
     _listRotacion    = new List <Rotacion>();
     _rotacionService = new RotacionService();
 }
示例#10
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.RotacionEdit);

            Toolbar toolbar = FindViewById <Toolbar>(Resource.Id.toolbar);

            SetSupportActionBar(toolbar);

            // Una marca atrás en el icono en ActionBar
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);

            _radioComun = FindViewById <RadioButton>(Resource.Id.radioComun); // Común
            _radioAire  = FindViewById <RadioButton>(Resource.Id.radioAire);  // Aíre
            _radio1     = FindViewById <RadioButton>(Resource.Id.radio1);     // Lateral Izquierdo
            _radio2     = FindViewById <RadioButton>(Resource.Id.radio2);     // Lateral Derecho
            _radio3     = FindViewById <RadioButton>(Resource.Id.radio3);     // Supino
            _radio4     = FindViewById <RadioButton>(Resource.Id.radio4);     // Prono
            _edtFecha   = FindViewById <EditText>(Resource.Id.edtFecha);      // Fecha
            _edtHora    = FindViewById <EditText>(Resource.Id.edtHora);       // Hora
            _btnEdit    = FindViewById <Button>(Resource.Id.btnEdit);         // Botón

            // Instanciamos
            _rotacion = new Rotacion();

            // Click Fecha
            _edtFecha.Click += delegate
            {
                DatePickerFragment frag = DatePickerFragment.NewInstance(delegate(DateTime time)
                {
                    _edtFecha.Text  = time.ToShortDateString(); // Mostrar la fecha seleccionada en el edittext
                    _rotacion.fecha = _edtFecha.Text;           // Cargamos la fecha
                });
                frag.Show(FragmentManager, DatePickerFragment.TAG);
            };

            // Click Hora
            _edtHora.Click += delegate
            {
                TimePickerFragment frag = TimePickerFragment.NewInstance(delegate(DateTime time)
                {
                    _edtHora.Text  = time.ToShortTimeString(); // Mostrar la hora seleccionada en el edittext
                    _rotacion.hora = _edtHora.Text;            // Cargamos la hora
                });

                frag.Show(FragmentManager, TimePickerFragment.TAG);
            };

            // Recibimos el Id Rotación
            var id = Intent.Extras.GetInt(KEY_ID);

            _rotacion        = new Rotacion();
            _rotacionService = new RotacionService();

            // Consultamos la lista rotación de paciente pot Id
            _rotacion = _rotacionService.getRotacionPacienteById(id);

            // Mostramos los datos
            if (_rotacion.comun == true)
            {
                _radioComun.Checked = true;
            }
            if (_rotacion.aire == true)
            {
                _radioAire.Checked = true;
            }
            if (_rotacion.lateralIzq == true)
            {
                _radio1.Checked = true;
            }
            if (_rotacion.lateralDer == true)
            {
                _radio2.Checked = true;
            }
            if (_rotacion.supina == true)
            {
                _radio3.Checked = true;
            }
            if (_rotacion.prono == true)
            {
                _radio4.Checked = true;
            }
            _edtFecha.Text = _rotacion.fecha;
            _edtHora.Text  = _rotacion.hora;

            // Click Alertar
            _btnEdit.Click += updateAlertRotacion;
        }
示例#11
0
 public RotacionFragment()
 {
     // Instanciamos
     _rotacionList    = new List <Rotacion>();
     _rotacionService = new RotacionService();
 }