コード例 #1
0
        //CitasExp CRUD local

        public string AddCitaExp(CitaExp citaEx)
        {
            conn.Insert(citaEx);
            return("success :3");
        }
コード例 #2
0
        public void CheckCitas()
        {
            Debug.WriteLine("-------------------------------------Eventos checados------------------------------------");
            // Handle when your app sleeps
            List <Cita> citas    = memberDatabase.GetCitasL();
            int         citCount = citas.Count();

            foreach (Cita ct in citas)
            {
                var dt    = ct.fecha;
                var ft    = ct.hora;
                var idx   = ct.ID;
                var razon = ct.razon;
                var desc  = ct.descripcion;

                //  string ft_f = TimeSpan.Parse(ft).ToString();


                if (ft == "11:0")
                {
                    ft = ft + "0";
                }
                int ft_len = ft.Length;

                switch (ft_len)
                {
                case (5):
                    if (DateTime.TryParseExact(dt, "yyyy-MM-dd", null, DateTimeStyles.AssumeLocal, out DateTime datetime_))
                    {
                        dt = datetime_.ToString("dd-MM-yyyy");     //hay que probar este y el de 4
                    }
                    var      chckdrx = dt + " " + ft;
                    DateTime dtchckx = DateTime.ParseExact(chckdrx.Trim(), "dd-MM-yyyy HH:mm",
                                                           System.Globalization.CultureInfo.InvariantCulture);



                    DateTime nowx      = DateTime.Now;
                    var      result_tx = DateTime.Compare(dtchckx, nowx);

                    var tm10x = dtchckx - nowx;
                    var tmm   = tm10x.Minutes;
                    if (tmm < 0)
                    {
                        memberDatabase.DeleteCita(idx);
                        Debug.WriteLine("---------------------------------------Alarma eliminada -------------------------------------");
                    }
                    else
                    {
                        if (tmm <= 5)
                        {
                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(3));
                            CrossLocalNotifications.Current.Show("Faltan " + tmm + " minutos para tu cita " + ct.razon, "Gracias");
                        }

                        if (tmm == 0)
                        {
                            //var ctI = new CitaInfo(idx);
                            //ctI.RingAlarm();


                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(12));
                            Debug.WriteLine("-----------------------------------------------Alarma Sonando-------------------------------------");
                            CrossLocalNotifications.Current.Show("Tú cita " + razon + " es ahora !!!", "Entiendo");

                            DependencyService.Get <IAudio>().PlayAudioFile("softAlarm.mp3");


                            try
                            {
                                Debug.WriteLine("-----------------------------------------------Expirando cita-------------------------------------");
                                var ctExp = new CitaExp();
                                ctExp.descripcion = desc;
                                ctExp.fecha       = dt;
                                ctExp.hora        = ft;
                                ctExp.ID          = idx;
                                ctExp.razon       = razon;

                                memberDatabase.AddCitaExp(ctExp);
                                memberDatabase.DeleteCita(idx);
                            }
                            catch (Exception ex)
                            {
                                Debug.WriteLine("--------------------------Error_" + ex.ToString() + "-------------------------------------");
                                throw;
                            }
                        }
                    }



                    break;

                case (3):

                    string outputdt = ft.Substring(ft.Length - 1, 1);
                    if (outputdt == "0")
                    {
                        ft = ft + "0";
                    }

                    if (DateTime.TryParseExact(dt, "yyyy-MM-dd", null, DateTimeStyles.AssumeLocal, out DateTime datetime))
                    {
                        dt = datetime.ToString("dd-MM-yyyy");
                    }
                    var      chckdr = dt + " " + ft;
                    DateTime dtchck = DateTime.ParseExact(chckdr.Trim(), "dd-MM-yyyy H:mm",
                                                          System.Globalization.CultureInfo.InvariantCulture);



                    DateTime now      = DateTime.Now;
                    var      result_t = DateTime.Compare(dtchck, now);

                    var tm10 = dtchck - now;
                    var tmmi = tm10.Minutes;
                    if (tmmi < 0)
                    {
                        memberDatabase.DeleteCita(idx);
                        Debug.WriteLine("---------------------------------------Alarma eliminada -------------------------------------");
                    }
                    else
                    {
                        if (tmmi <= 5)
                        {
                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(3));
                            CrossLocalNotifications.Current.Show("Faltan " + tmmi + " minutos para tu cita " + ct.razon, "Gracias");
                        }

                        if (tmmi == 0)
                        {
                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(12));
                            Debug.WriteLine("-----------------------------------------------Alarma Sonando-------------------------------------");
                            CrossLocalNotifications.Current.Show("Tú cita " + razon + " es ahora !!!", "Entiendo");

                            DependencyService.Get <IAudio>().PlayAudioFile("softAlarm.mp3");


                            try
                            {
                                Debug.WriteLine("-----------------------------------------------Expirando cita-------------------------------------");
                                var ctExp = new CitaExp();
                                ctExp.descripcion = desc;
                                ctExp.fecha       = dt;
                                ctExp.hora        = ft;
                                ctExp.ID          = idx;
                                ctExp.razon       = razon;

                                memberDatabase.AddCitaExp(ctExp);
                                memberDatabase.DeleteCita(idx);
                            }
                            catch (Exception ex)
                            {
                                Debug.WriteLine("--------------------------Error_" + ex.ToString() + "-------------------------------------");

                                throw;
                            }
                        }
                    }

                    break;

                case (4):

                    //string outputdtx = ft.Substring(ft.Length - 1, 1);
                    //if (outputdtx == "0")
                    //{
                    //    ft = ft + "0";
                    //}

                    if (DateTime.TryParseExact(dt, "yyyy-MM-dd", null, DateTimeStyles.AssumeLocal, out DateTime datetimex))
                    {
                        dt = datetimex.ToString("dd-MM-yyyy");
                    }
                    var      chckdrxx = dt + " " + ft;
                    DateTime dtchckxx = DateTime.ParseExact(chckdrxx.Trim(), "dd-MM-yyyy H:mm",
                                                            System.Globalization.CultureInfo.InvariantCulture);



                    DateTime nowxx      = DateTime.Now;
                    var      result_txx = DateTime.Compare(dtchckxx, nowxx);

                    var tm10xx = dtchckxx - nowxx;
                    var tmmix  = tm10xx.Minutes;
                    if (tmmix < 0)
                    {
                        memberDatabase.DeleteCita(idx);
                        Debug.WriteLine("---------------------------------------Alarma eliminada -------------------------------------");
                    }
                    else
                    {
                        if (tmmix <= 5)
                        {
                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(3));
                            CrossLocalNotifications.Current.Show("Faltan " + tmmix + " minutos para tu cita " + ct.razon, "Gracias");
                        }

                        if (tmmix == 0)
                        {
                            var v = CrossVibrate.Current;
                            v.Vibration(TimeSpan.FromSeconds(12));
                            Debug.WriteLine("-----------------------------------------------Alarma Sonando-------------------------------------");
                            CrossLocalNotifications.Current.Show("Tú cita " + razon + " es ahora !!!", "Entiendo");

                            DependencyService.Get <IAudio>().PlayAudioFile("softAlarm.mp3");


                            try
                            {
                                Debug.WriteLine("-----------------------------------------------Expirando cita-------------------------------------");
                                var ctExp = new CitaExp();
                                ctExp.descripcion = desc;
                                ctExp.fecha       = dt;
                                ctExp.hora        = ft;
                                ctExp.ID          = idx;
                                ctExp.razon       = razon;

                                memberDatabase.AddCitaExp(ctExp);
                                memberDatabase.DeleteCita(idx);
                            }
                            catch (Exception ex)
                            {
                                Debug.WriteLine("--------------------------Error_" + ex.ToString() + "-------------------------------------");

                                throw;
                            }
                        }
                    }



                    break;
                }
            }
        }