//--------------------------------------------------------------- public void AltaConfig(catConfig item) { lock (locker) { if ((from i in database.Table <catConfig>() where i.idconfig == item.idconfig select i).Count() > 0) { database.Update(item); } else { database.Insert(item); } } }
public BD() { database = new SQLiteConnection(DatabasePath, true); // create the tables database.CreateTable <Usuario>(); database.CreateTable <RecargaFrecuente>(); database.CreateTable <SaldoMonedero>(); database.CreateTable <Tarjeta>(); database.CreateTable <Recarga>(); database.CreateTable <RecargaMonedero>(); database.CreateTable <RecargaProg>(); database.CreateTable <catPais>(); database.CreateTable <catEstado>(); database.CreateTable <catMunicipio>(); database.CreateTable <catEmisorTC>(); database.CreateTable <catConfig>(); database.CreateTable <catOperadora>(); database.CreateTable <catPaquete>(); database.CreateTable <catErrores>(); database.CreateTable <msgreferidos>(); if (database.Table <SaldoMonedero>().Count() == 0) { SaldoMonedero mon = new SaldoMonedero() { idmonedero = 1, saldo = 0M, caducidad = DateTime.Now.AddYears(2) }; database.Insert(mon); } if (database.Table <catConfig>().Count() == 0) { catConfig cfg = new catConfig() { idconfig = 1, config = "Ultima vez que actualizo catPaquetes", }; database.Insert(cfg); cfg = new catConfig() { idconfig = 2, config = "Alguna vez loggeo", valor = "0" }; database.Insert(cfg); } }
public async Task <bool> Descarga() { bool err = false; string json = ""; try { await Task.Run(() => { if (App.db.SelPais().Count() == 0) { lserrores = new ObservableCollection <catErrores>(); json = App.WSc.GetCatalogo(6, ""); lserrores = JsonConvert.DeserializeObject <ObservableCollection <catErrores> >(json); App.db.DescargaErrores(lserrores.ToList()); lspais = new ObservableCollection <catPais>(); json = App.WSc.GetCatalogo(2, ""); lspais = JsonConvert.DeserializeObject <ObservableCollection <catPais> >(json); App.db.DescargaPais(lspais.ToList()); lsestados = new ObservableCollection <catEstado>(); json = App.WSc.GetCatalogo(7, ""); lsestados = JsonConvert.DeserializeObject <ObservableCollection <catEstado> >(json); App.db.DescargaEstado(lsestados.ToList()); lsmunicipios = new ObservableCollection <catMunicipio>(); json = App.WSc.GetCatalogo(8, ""); lsmunicipios = JsonConvert.DeserializeObject <ObservableCollection <catMunicipio> >(json); App.db.DescargaMunicipio(lsmunicipios.ToList()); lsemisores = new ObservableCollection <catEmisorTC>(); json = App.WSc.GetCatalogo(4, ""); lsemisores = JsonConvert.DeserializeObject <ObservableCollection <catEmisorTC> >(json); App.db.DescargaEmisorTC(lsemisores.ToList()); } catConfig cfg = App.db.SelcatConfig().Where(x => x.idconfig == 1).FirstOrDefault(); string fechaant = cfg.valor; DateTime dt = DateTime.MinValue; DateTime.TryParseExact(fechaant, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out dt); //if (dt.Date < DateTime.Now.Date) //{ lsoperadoras = new ObservableCollection <catOperadora>(); json = App.WSc.GetCatalogo(1, ""); lsoperadoras = JsonConvert.DeserializeObject <ObservableCollection <catOperadora> >(json); App.db.DescargaOperadora(lsoperadoras.ToList()); lspaquetes = new ObservableCollection <catPaquete>(); json = App.WSc.GetCatalogo(3, ""); lspaquetes = JsonConvert.DeserializeObject <ObservableCollection <catPaquete> >(json); App.db.DescargaPaquete(lspaquetes.ToList()); cfg.valor = DateTime.Now.ToString("yyyyMMdd"); App.db.AltaConfig(cfg); //} }); } catch (Exception ex) { err = true; } return(err); }
async void Descarga() { MainPage = new Cargando(); bool err = false; var canReach = await App.HayCnxSrv(Settings.WebServiceCat); if (!App.HayCnx() || !canReach) { //Page p = new Page(); UserDialogs.Instance.HideLoading(); await MainPage.DisplayAlert("Aviso", "No hay conexion a internet o el servicio no esta disponible. Consulte con soporte tecnico", "OK"); MainPage = Reintentar(); } else { CatalogosViewModel cvm = new CatalogosViewModel(); //MainPage = new Cargando(); err = await cvm.Descarga(); if (err) { Page p = new Page(); UserDialogs.Instance.HideLoading(); await p.DisplayAlert("Aviso", "No hay conexion a internet o el servicio no esta disponible. Consulte con soporte tecnico", "OK"); MainPage = Reintentar(); } else { usr = db.SelUsr(); if (usr != null) { string json = ""; json = App.WSc.GetCatalogo(9, "where idusuario = " + usr.idusuario.ToString()); List <Tarjeta> lt = JsonConvert.DeserializeObject <List <tempuri.org.Tarjeta> >(json).Select(x => new Tarjeta { idtarjeta = x.idtarjeta, idpais = x.idpais, idemisor = x.idemisor, idusuario = x.idusuario, Last4 = x.Last4 }).ToList(); db.DescargaTarjetas(lt); json = ""; json = App.WSc.GetCatalogo(11, "where idusuario = " + usr.idusuario.ToString()); List <Recarga> lr = JsonConvert.DeserializeObject <List <Recarga> >(json); db.DescargaRecargas(lr); json = ""; json = App.WSc.GetCatalogo(12, "where idusuario = " + usr.idusuario.ToString()); List <SaldoMonedero> sm = JsonConvert.DeserializeObject <List <SaldoMonedero> >(json); if (sm.Count() > 0) { db.DescargaSaldo(sm.FirstOrDefault()); } json = ""; json = App.WSc.GetCatalogo(13, "where idusuario = " + usr.idusuario.ToString()); List <RecargaProg> lrp = JsonConvert.DeserializeObject <List <RecargaProg> >(json); db.DescargaRecargasProg(lrp); // Se bajan los msgs si hay recargas a monedero x referidos json = ""; json = App.WSc.GetMsgReferidosPUsr(App.usr.idusuario); msgreferidos msg = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault(); App.db.AltaMsgRef(msg); json = ""; json = App.WSc.GetMsgReferidosPRef(App.usr.idusuario); msg = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault(); App.db.AltaMsgRef(msg); } UserDialogs.Instance.HideLoading(); if (usr == null) { usr = new Usuario(); if (Settings.TutoVisto1aVez) { catConfig cfg = App.db.SelcatConfig().Where(x => x.idconfig == 2).FirstOrDefault(); if (cfg == null || (cfg != null && cfg.valor == "0")) //1a vez { //var det = new NavigationPage(new CargarSaldo(null)) //{ // BarTextColor = Color.White, // BarBackgroundColor = Color.FromHex("#e35102"), // Title = "Así Compras", //}; //intnav = det.Navigation; //MainPage = det; MainPage = new MainPage(); } else //cerre sesion y vuelvo a entrar { var det = new NavigationPage(new Login(this)) { BarTextColor = Color.White, BarBackgroundColor = Color.FromHex("#e35102"), Title = "Así compras", }; intnav = det.Navigation; MainPage = det; } } else { MainPage = new Tuto(this); } } else { MainPage = new MainPage(); //ShowMainPage(); } } } }