Example #1
0
        /// <summary>
        /// Obtiene datos del pais.
        /// </summary>
        public void GetDataPais()
        {
            // Pais
            Pais p;

            // Obtengo pais
            p = SQLiteManager.Connection().GetProvincia(ID_Pais);

            // Compruebo datos
            if (p == null)
            {
                // Obtengo pais del servidor
                RestManager.Connection().GetData((int)URIS.GetPais, new string[] { ID_Pais.ToString() }, null, (arg) =>
                {
                    // Compruebo datos
                    if (!string.IsNullOrWhiteSpace(arg))
                    {
                        // Deserializo JSON
                        NSDictionary data = (NSDictionary)NSJsonSerialization.Deserialize(arg, 0, out NSError e);

                        // Leo datos
                        foreach (NSString key in data.Keys)
                        {
                            switch (key.ToString().ToLower())
                            {
                            case "id_pais":
                                ID_Pais = (int)(NSNumber)data.ValueForKey(key);
                                break;

                            case "nombre":
                                Nombre_Pais = data.ValueForKey(key).ToString();
                                break;
                            }
                        }

                        // Guardo en SQLite
                        SQLiteManager.Connection().SetPais(this);
                    }

                    // Continuo
                    lock (l)
                    {
                        Monitor.Pulse(l);
                    }
                });

                // Espero
                lock (l)
                {
                    Monitor.Wait(l);
                }
            }
            else
            {
                // Cargo nombre
                Nombre_Pais = p.Nombre_Pais;
            }
        }
Example #2
0
        /// <summary>
        /// Touch boton desconectar.
        /// </summary>
        /// <param name="sender"></param>
        partial void btnDesconectar_touch(UIButton sender)
        {
            // Elimino base de datos
            SQLiteManager.Connection().Eliminar();

            // Elimino datos usuario
            UserDataDefaults.Eliminar();

            // Desconecto
            (UIApplication.SharedApplication.Delegate as AppDelegate).Desconectar();
        }
Example #3
0
        /// <summary>
        /// Obtengo direccion cliente.
        /// </summary>
        public void GetDireccionData()
        {
            // Obtengo direccion de SQLite
            Direccion d = null;

            // Compruebo datos
            if (d == null)
            {
                // Obtengo direccion del servidor
                RestManager.Connection().GetData((int)URIS.GetDireccionCliente, new string[] { ID_Cliente.ToString() }, null, (arg) =>
                {
                    // Compruebo datos
                    if (!string.IsNullOrWhiteSpace(arg))
                    {
                        // Deserializo JSON
                        NSDictionary data = (NSDictionary)NSJsonSerialization.Deserialize(arg, 0, out NSError e);

                        // Cargo datos
                        d = Direccion = new Direccion(data);

                        // Guardo en SQLite
                        SQLiteManager.Connection().SetDireccion(d);
                    }

                    // Continuo
                    lock (l)
                    {
                        Monitor.Pulse(l);
                    }
                });

                // Espero a obtener datos
                lock (l)
                {
                    Monitor.Wait(l);
                }
            }

            // Obtengo datos ciudad
            d.GetDataCiudad();

            // Cargo direccion
            Direccion = d;
        }
Example #4
0
 /// <summary>
 /// Obtiene el nombre de usuario que creo la tarea.
 /// </summary>
 public void GetUserCompletada()
 {
     // Obtiene ID usuario
     ID_Usuario = SQLiteManager.Connection().GetUserCompletada(ID_Tarea);
 }
Example #5
0
        /// <summary>
        /// Obtengo tareas.
        /// </summary>
        private void ObtengoTareas()
        {
            // Inicio carga de datos
            InitCarga();

            // Lista tareas
            tareas = null;

            // Elimino tareas SQLite
            SQLiteManager.Connection().DeleteTareas();

            // Obtengo datos servidor
            RestManager.Connection().GetData((int)URIS.TareasNuevas, new string[] { "1972-01-01 00:00:01" }, null, (arg) =>
            {
                // Compruebo datos
                if (!string.IsNullOrWhiteSpace(arg))
                {
                    // JSON
                    if (!arg.Equals("[]"))
                    {
                        // Leo JSON
                        tareas = JSONManager.DeserializeTareas(arg);

                        // Recorro tareas
                        foreach (Tarea t in tareas)
                        {
                            // Obtengo datos
                            InvokeOnMainThread(() =>
                            {
                                // Datos direccion
                                t.GetDireccionData();

                                // Guardo tarea
                                SQLiteManager.Connection().SetTarea(t);
                            });
                        }
                    }
                }

                InvokeOnMainThread(() =>
                {
                    // Obtengo tareas SQLite
                    tareas = SQLiteManager.Connection().GetTareas();

                    // Obtengo datos
                    if (tareas != null)
                    {
                        // Recorro tareas
                        foreach (Tarea t in tareas)
                        {
                            // Obtiene direccion
                            t.GetDireccionData();

                            // Obtiene usuario
                            t.GetUserCompletada();
                        }
                    }

                    // Cargo tabla
                    table.Source = new Lista_Tareas_TableSource(this);
                    table.ReloadData();

                    // Compruebo si no hay tareas
                    if (tareas == null)
                    {
                        // Creo alerta
                        UIAlertController alert = UIAlertController.Create("Sin datos", "No existen tareas", UIAlertControllerStyle.Alert);

                        // AƱado accion
                        alert.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Default, null));

                        // Muestro alerta
                        PresentViewController(alert, true, null);
                    }

                    // Detengo titulo carga
                    FlagCarga = false;
                });
            });
        }
Example #6
0
        /// <summary>
        /// Obtengo ciudad de SQLite o del servidor.
        /// </summary>
        public void GetDataCiudad()
        {
            // Ciudad
            Ciudad c;

            // Obtengo ciudad
            c = SQLiteManager.Connection().GetCiudad(ID_Ciudad);

            // Compruebo datos
            if (c == null)
            {
                // Obtengo ciudad del servidor
                RestManager.Connection().GetData((int)URIS.GetCiudad, new string[] { ID_Ciudad.ToString() }, null, (arg) =>
                {
                    // Compruebo datos
                    if (!string.IsNullOrWhiteSpace(arg))
                    {
                        // Deserializo JSON
                        NSDictionary data = (NSDictionary)NSJsonSerialization.Deserialize(arg, 0, out NSError e);

                        // Leo datos
                        foreach (NSString key in data.Keys)
                        {
                            switch (key.ToString().ToLower())
                            {
                            case "id_ciudad":
                                ID_Ciudad = (int)(NSNumber)data.ValueForKey(key);
                                break;

                            case "id_provincia":
                                ID_Provincia = (int)(NSNumber)data.ValueForKey(key);
                                break;

                            case "nombre":
                                Nombre_Ciudad = data.ValueForKey(key).ToString();
                                break;
                            }
                        }

                        // Guardo en SQLite
                        SQLiteManager.Connection().SetCiudad(this);
                    }

                    // Continuo
                    lock (l)
                    {
                        Monitor.Pulse(l);
                    }
                });

                // Espero
                lock (l)
                {
                    Monitor.Wait(l);
                }
            }
            else
            {
                // Cargo nombre
                Nombre_Ciudad = c.Nombre_Ciudad;

                // Cargo ID provincia
                ID_Provincia = c.ID_Provincia;
            }

            // Obtengo datos provincia
            GetDataProvincia();
        }