public Contactos() { try { InitializeComponent(); rvm = new RecargasViewModel(); ls = new List <Contacto>(); Title = "Contactos"; ToolbarItems.Add(new ToolbarItem("Ayuda", "ayuda2.png", () => { var page = new InfoAyuda("infocontactos.html"); Navigation.PushPopupAsync(page); })); LeeContactos(); } catch (Exception e) { } }
public NuevaTarjeta(TipoAnadidor tipo, TarjetasViewModel _t, RecargasViewModel _r) { try { InitializeComponent(); Title = "Nueva tarjeta"; ToolbarItems.Add(new ToolbarItem("Ayuda", "ayuda2.png", () => { var page = new InfoAyuda("nuevat.html"); Navigation.PushPopupAsync(page); })); #if __IOS__ grdScanner.IsVisible = false; #endif tvm = _t; rvm = _r; this.BindingContext = tvm; Refresh(); tvm.Idusuario = App.usr.idusuario; if (App.usr.idpais != 0) { tvm.idpais = App.usr.idpais; } txtNum.Completed += (s, e) => txtMes.Focus(); txtMes.Completed += (s, e) => txtAno.Focus(); txtAno.Completed += (s, e) => txtCvc.Focus(); txtCvc.Completed += (s, e) => txtTitularFN.Focus(); txtTitularFN.Completed += (s, e) => txtTitularLN.Focus(); txtTitularLN.Completed += (s, e) => txtCalleNum.Focus(); txtCalleNum.Completed += (s, e) => txtCP.Focus(); tvm.TarjetaIncompleta += (s, e) => { if (e.estaincompleta) { if (tvm.idpais == 0 || tvm.IdEstado == 0 || tvm.IdCiudad == 0) { lblvalGeo.IsVisible = true; } else { lblvalGeo.IsVisible = false; } btnGuardar.IsEnabled = false; } else { lblvalGeo.IsVisible = false; btnGuardar.IsEnabled = true; } }; txtNum.TextChanged += (sender, e) => { if (!String.IsNullOrEmpty(txtNum.Text)) { if (cardval.IsValid) { CreditCardDetector det = new CreditCardDetector(txtNum.Text); tvm.idemisor = SetEmisor(det.Brand); tvm.NumeroTarjeta = txtNum.Text; lblvalCard.IsVisible = false; //.Text = ""; } else { CreditCardDetector det = new CreditCardDetector(txtNum.Text); tvm.idemisor = SetEmisor(det.Brand); tvm.NumeroTarjeta = ""; lblvalCard.IsVisible = true; //.Text = "El numero de tarjeta es obligatorio, y tal cual aparece en la tarjeta"; } } }; txtMes.TextChanged += Valfecha; txtAno.TextChanged += Valfecha; txtCvc.TextChanged += Valfecha; txtTitularFN.TextChanged += (s, e) => { if (valTitulFN.IsValid) { lblvalTitular.IsVisible = false; //.Text = ""; tvm.TitularFN = CleanString.UseRegex(txtTitularFN.Text); } else { lblvalTitular.IsVisible = true; //.Text = "El nombre del titular es obligatorio y tal cual aparece en la tarjeta"; tvm.TitularFN = ""; } }; txtTitularLN.TextChanged += (s, e) => { if (valTitulLN.IsValid) { lblvalTitular.IsVisible = false; //.Text = ""; tvm.TitularLN = CleanString.UseRegex(txtTitularLN.Text); } else { lblvalTitular.IsVisible = true; //.Text = "El nombre del titular es obligatorio y tal cual aparece en la tarjeta"; tvm.TitularLN = ""; } }; txtCalleNum.TextChanged += (s, e) => { if (valCalle.IsValid) { lblvalCalle.IsVisible = false; //.Text = ""; tvm.CalleyNum = CleanString.UseRegex(txtCalleNum.Text); } else { lblvalCalle.IsVisible = true; //.Text = "El nombre del titular es obligatorio y tal cual aparece en la tarjeta"; tvm.CalleyNum = ""; } }; txtCP.TextChanged += (s, e) => { if (cpval.IsValid) { lblvalCP.IsVisible = false; //.Text = ""; tvm.CP = check.SafeSqlLiteral(txtCP.Text); } else { lblvalCP.IsVisible = true; //.Text = "El nombre del titular es obligatorio y tal cual aparece en la tarjeta"; tvm.CP = ""; } }; string title = ""; ListaOpciones lo; //grdPais.Tapped += async (object sender, EventArgs e) => TapGestureRecognizer tapgrdPais = new TapGestureRecognizer(); tapgrdPais.Tapped += async(s, e) => { grdPais.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdPais.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Seleccione un país"; ls = tvm.lsPais().Select(x => new Opcion { idopc = x.idpais, opc = x.pais, imgopc = x.img }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 2); lo.IdOpc = 1; await App.Nav.PushAsync(lo, Constantes.animated); }; grdPais.GestureRecognizers.Add(tapgrdPais); TapGestureRecognizer tapgrdTipo = new TapGestureRecognizer(); tapgrdTipo.Tapped += async(s, e) => //grdTipo.Tapped += async (object sender, EventArgs e) => { grdTipo.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdTipo.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Seleccione emisor"; ls = tvm.LsEmisores().Select(x => new Opcion { idopc = x.idemisor, opc = x.emisor, imgopc = x.img }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 2); lo.IdOpc = 2; await App.Nav.PushAsync(lo, Constantes.animated); }; grdTipo.GestureRecognizers.Add(tapgrdTipo); TapGestureRecognizer tapgrdScanner = new TapGestureRecognizer(); tapgrdScanner.Tapped += async(s, e) => //vclScanner.Tapped += (s, e) => { grdScanner.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdScanner.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; #if __ANDROID__ var plataforma = DependencyService.Get <ICardReader>(); if (plataforma != null) { plataforma.CardFound = delegate(string FormattedCardNumber, int ExpiryMonth, int ExpiryYear, string CardholderName, Card.IO.CardType CardType) { txtNum.Text = FormattedCardNumber; //txtTitular.Text = CardholderName; txtMes.Text = (ExpiryMonth > 0 ? ExpiryMonth.ToString() : ""); if (ExpiryYear > 0) { if (ExpiryYear.ToString().Length > 2) { txtAno.Text = ExpiryYear.ToString().Substring(2, 2); } else { txtAno.Text = ExpiryYear.ToString(); } } else { txtAno.Text = ""; } }; plataforma.ReadCard(); } #endif #if __IOS__ //var plataforma = DependencyService.Get<ICardReader>(); //if (plataforma != null) //{ // plataforma.CardFound = delegate (string FormattedCardNumber, int ExpiryMonth, int ExpiryYear, string CardholderName, Card.IO.CreditCardType CardType) // { // txtNum.Text = FormattedCardNumber; // //txtTitular.Text = CardholderName; // txtMes.Text = (ExpiryMonth > 0 ? ExpiryMonth.ToString() : ""); // if (ExpiryYear > 0) // { // if (ExpiryYear.ToString().Length > 2) // txtAno.Text = ExpiryYear.ToString().Substring(2, 2); // else // txtAno.Text = ExpiryYear.ToString(); // } // else // txtAno.Text = ""; // }; // plataforma.ReadCard(); //} #endif }; grdScanner.GestureRecognizers.Add(tapgrdScanner); TapGestureRecognizer tapgrdEstado = new TapGestureRecognizer(); tapgrdEstado.Tapped += async(s, e) => //grdEstado.Tapped += async (object sender, EventArgs e) => { grdEstado.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdEstado.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Seleccione estado"; ls = tvm.lsEstados(tvm.idpais).Select(x => new Opcion { idopc = x.idestado, opc = x.estado, }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 2); lo.IdOpc = 3; await App.Nav.PushAsync(lo, Constantes.animated); }; grdEstado.GestureRecognizers.Add(tapgrdEstado); TapGestureRecognizer tapgrdCiudad = new TapGestureRecognizer(); tapgrdCiudad.Tapped += async(s, e) => //btnCiudad.Clicked += async (s,e) => //vclCiudad.Tapped += async (s, e) => { grdCiudad.BackgroundColor = Color.FromHex("#e5e5e5"); await Task.Delay(100); grdCiudad.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Seleccione ciudad"; ls = tvm.lsMunicipios(tvm.IdEstado).OrderBy(x => x.municipio).Select(x => new Opcion { idopc = x.idmunicipio, opc = x.municipio, }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 2); lo.IdOpc = 4; await App.Nav.PushAsync(lo, Constantes.animated); }; grdCiudad.GestureRecognizers.Add(tapgrdCiudad); btnGuardar.Clicked += async(sender, e) => { if (tvm.EsIncompleta()) { await DisplayAlert("Error", "Faltan capturar o seleccionar algunos campos", "OK"); } else { if (txtAno.Text.Trim().Length < 2 || txtMes.Text.Trim().Length < 2) { await DisplayAlert("Error", "Revise mes y año de expiración", "OK"); } else { int mm = int.Parse(txtMes.Text.Trim()); int yy = int.Parse(txtAno.Text.Trim()); if (mm < 1 || mm > 12 || yy < DateTime.Now.Year - 2000) { await DisplayAlert("Error", "Revise mes y año de expiración", "OK"); } else { if (App.usr == null || (App.usr != null && (App.usr.email == null || App.usr.idusuario == 0))) { var login = new Login(App.Current); await App.Nav.PushAsync(login, Constantes.animated); } else { btnGuardar.IsEnabled = false; //tvm.TarjetaAlta += async (s, ea) => //{ // UserDialogs.Instance.HideLoading(); // if (ea.Error != null || ea.Cancelled) // await DisplayAlert("Error", "Ocurrio un error, vuelva a intentar", "OK"); // else // await App.Nav.PopAsync(Constantes.animated); //}; //UserDialogs.Instance.ShowLoading("Guardando..."); //tvm.Alta(); rvm.idFormaPago = 2; //tarjeta rvm.TipoTrans = TipoTransaccion.PrimeraVez; rvm.IdTarjeta = 0; Procesar pro = App.Nav.NavigationStack.OfType <Procesar>().FirstOrDefault(); if (pro == null) { await App.Nav.PushAsync(new Procesar(rvm, tvm, TipoTransaccion.PrimeraVez), Constantes.animated); } else { pro.Refresh(rvm, tvm, TipoTransaccion.PrimeraVez); await App.Nav.PopAsync(Constantes.animated); //boto nueva tarjeta (this) await App.Nav.PopAsync(Constantes.animated); //boto medios pago } } } } } }; tvm.ChecaIncompleta(); } catch (Exception e) { } }
public Registro(ILoginManager ilm) { try { InitializeComponent(); Title = "Registro"; _ilm = ilm; if (App.usr == null) { Usuario u = new Usuario() { //id = "1", registrado = false, }; } edtNombre.Completed += (s, e) => edtCorreo.Focus(); edtCorreo.Completed += (s, e) => edtNumCto.Focus(); edtNumCto.Completed += (s, e) => nipCapture.SetFocus(); UserDialogs.Instance.HideLoading(); //var fs = new FormattedString(); //fs.Spans.Add(new Span { Text = "Al hacer click en ", ForegroundColor = Color.Black, Font = Font.SystemFontOfSize(12) }); //fs.Spans.Add(new Span { Text = " Entrar ", ForegroundColor = Color.FromHex("#e35102"), FontAttributes = FontAttributes.Bold, Font = Font.SystemFontOfSize(14) }); //fs.Spans.Add(new Span { Text = " usted acepta la ", ForegroundColor = Color.Black, Font = Font.SystemFontOfSize(12) }); //fs.Spans.Add(new Span { Text = " politica de privacidad ", ForegroundColor = Color.FromHex("#553191"), FontAttributes = FontAttributes.Bold, Font = Font.SystemFontOfSize(14) }); //fs.Spans.Add(new Span { Text = "y los ", ForegroundColor = Color.Black, Font = Font.SystemFontOfSize(12) }); //fs.Spans.Add(new Span { Text = "Terminos y condiciones", ForegroundColor = Color.FromHex("#553191"), FontAttributes = FontAttributes.Bold, Font = Font.SystemFontOfSize(14) }); ////lblPolitica.FormattedText = fs; TapGestureRecognizer tappoliticas = new TapGestureRecognizer(); tappoliticas.Tapped += (s, e) => { var page = new InfoAyuda("politica.html"); Navigation.PushPopupAsync(page); }; lblPoliticas.GestureRecognizers.Add(tappoliticas); TapGestureRecognizer tapterminos = new TapGestureRecognizer(); tapterminos.Tapped += (s, e) => { var page = new InfoAyuda("terminos.html"); Navigation.PushPopupAsync(page); }; lblTerminos.GestureRecognizers.Add(tapterminos); if (App.usr != null) { if (!String.IsNullOrEmpty(App.usr.picture)) { imgFoto.Source = ImageSource.FromUri(new Uri(App.usr.picture)); imgFoto.IsVisible = true; } if (!String.IsNullOrEmpty(App.usr.email)) { edtCorreo.Text = App.usr.email; } if (!String.IsNullOrEmpty(App.usr.first_name)) { edtNombre.Text = App.usr.first_name + (!String.IsNullOrEmpty(App.usr.last_name) ? " " + App.usr.last_name : ""); } } btnLogin.Clicked += async(sender, ea) => { int idusrreferido = App.WSc.ExisteCodigoReferidoUsr(txtCodigo.Text.Trim()); if (!String.IsNullOrEmpty(txtCodigo.Text.Trim()) && idusrreferido == 0) { await DisplayAlert("Error", "El codigo promocional que capturo es incorrecto, revise por favor", "OK"); return; } if (!check.ValidaNip(nipCapture.Nip)) { await DisplayAlert("Error", "Revise el NIP. (No se permiten consecutivos ni que todos los digitos sean iguales)", "OK"); } else { btnLogin.IsEnabled = false; UserDialogs.Instance.ShowLoading("Cargando..."); string json = App.WSc.GetUser(0, check.SafeSqlLiteral(edtCorreo.Text.Trim()), ""); List <Usuario> lu = JsonConvert.DeserializeObject <List <Usuario> >(json); if (lu.Count > 0) { btnLogin.IsEnabled = true; UserDialogs.Instance.HideLoading(); await DisplayAlert("Error", "Ya existe un usuario con este correo. Utilice el boton \"Ya tengo cuenta\"", "OK"); /*App.usr = lu.FirstOrDefault(); * json = ""; * json = App.WSc.GetCatalogo(9, "where idusuario = " + App.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, numero = x.numero, expiramm = x.expiramm, expirayy = x.expirayy, titularFN = x.titularFN, titularLN = x.titularLN, calleynumero = x.calleynumero, idciudad = x.idciudad, codigopostal = x.codigopostal, idestado = x.idestado, idusuario = x.idusuario, cvv = Crypto.EncryptAes(x.cvv, Settings.PwdCrypto, Crypto.String2ByteArray(Settings.SaltCrypto)) }).ToList(); * App.db.DescargaTarjetas(lt); * json = ""; * json = App.WSc.GetCatalogo(11, "where idusuario = " + App.usr.idusuario.ToString()); * List<Recarga> lr = JsonConvert.DeserializeObject<List<Recarga>>(json); * App.db.DescargaRecargas(lr); * json = ""; * json = App.WSc.GetCatalogo(12, "where idusuario = " + App.usr.idusuario.ToString()); * List<SaldoMonedero> sm = JsonConvert.DeserializeObject<List<SaldoMonedero>>(json); * if (sm.Count() > 0) * App.db.DescargaSaldo(sm.FirstOrDefault()); * json = ""; * json = App.WSc.GetCatalogo(13, "where idusuario = " + App.usr.idusuario.ToString()); * List<RecargaProg> lrp = JsonConvert.DeserializeObject<List<RecargaProg>>(json); * App.db.DescargaRecargasProg(lrp); * //cerro sesion, y ahora entra, si no existe en db local debo dar de alta * if (App.db.SelUsr(App.usr.email) == null) * App.db.AltaUsr(lu.FirstOrDefault()); * var nva = App.Nav.NavigationStack.OfType<NuevaTarjeta>().FirstOrDefault(); * if (nva != null) * { * ((App.Current.MainPage as MasterDetailPage).Master as menu).Refrescamenu(); * if (App.master == null) * App.master = (App.Current.MainPage as MasterDetailPage); * UserDialogs.Instance.HideLoading(); * await App.Nav.PopAsync(Constantes.animated); * nva.AltaEnPrimeraVez(); * } * else { * UserDialogs.Instance.HideLoading(); * App.Current.MainPage = new MainPage(); * }*/ } else { App.usr.email = check.SafeSqlLiteral(edtCorreo.Text); App.usr.name = check.SafeSqlLiteral(edtNombre.Text); App.usr.idpais = cvwPais.IdPais; App.usr.nip = nipCapture.Nip; App.usr.registrado = true; App.usr.numerocontacto = check.SafeSqlLiteral(edtNumCto.Text); App.usr.fechaalta = DateTime.Now; UserDialogs.Instance.ShowLoading("Registrando..."); EventHandler <AltaUsrCompletedEventArgs> auc = null; auc = (s, e) => { App.WS.AltaUsrCompleted -= auc; Device.BeginInvokeOnMainThread(async() => { UserDialogs.Instance.HideLoading(); if (e.Error != null || e.Cancelled) { await DisplayAlert("Error", "Ocurrio un error, vuelva a intentar", "OK"); btnLogin.IsEnabled = true; } if (e.Error == null && !e.Cancelled) { if (e.Result > 0) { App.usr.idusuario = e.Result; App.db.AltaUsr(App.usr); var nva = App.Nav.NavigationStack.OfType <NuevaTarjeta>().FirstOrDefault(); if (nva != null) { ((App.Current.MainPage as MasterDetailPage).Master as menu).Refrescamenu(); if (App.master == null) { App.master = (App.Current.MainPage as MasterDetailPage); } await App.Nav.PopAsync(Constantes.animated); await App.Nav.PopAsync(Constantes.animated); nva.AltaEnPrimeraVez(); } else { UserDialogs.Instance.HideLoading(); App.Current.MainPage = new MainPage(); } } else { await DisplayAlert("Error", "Ocurrio un error, vuelva a intentar", "OK"); } } }); }; App.WS.AltaUsrCompleted += auc; App.WS.AltaUsrAsync(ConvertUsuarioToTemp(App.usr), (!String.IsNullOrEmpty(txtCodigo.Text.Trim()) ? idusrreferido : 0)); } } }; } catch (Exception e) { } }
public RegPago(RecargasViewModel _r = null) { try { InitializeComponent(); App.db.IniciaMonedero(); montomax = App.WSc.GetMontoMax(); Title = "Medios de pago"; rvm = _r; tvm = new TarjetasViewModel(); tvm.idpais = rvm.idpais; this.BindingContext = tvm; NavigationPage.SetBackButtonTitle(this, ""); ToolbarItems.Add(new ToolbarItem("Ayuda", "ayuda2.png", () => { var page = new InfoAyuda("mediosdepago.html"); Navigation.PushPopupAsync(page); })); grptipos = new ObservableCollection <Grupo>(); gMonedero = new Grupo("Tu monedero", 1, tvm.lm); gTarjetas = new Grupo("Tus tarjetas", 2, tvm.lt); if (rvm.Tiporecarga == TipoRecarga.RecargaTA) { slMonedero.IsVisible = false; grptipos.Add(gMonedero); } if (rvm.Tiporecarga == TipoRecarga.Monedero) { slMonedero.IsVisible = true; lblSaldo.Text = "Saldo: " + tvm.lm[0].saldo.ToString("c", new System.Globalization.CultureInfo("es-MX")); } grptipos.Add(gTarjetas); lvRegPagos.ItemSelected += async(sender, e) => { if (e.SelectedItem == null) { return; } if (rvm.EdicionOnly) //no se recarga, son programadas solo se modifica { TipoPago tp = (e.SelectedItem as TipoPago); rvm.idFormaPago = tp.idtipo; rvm.TipoTrans = TipoTransaccion.SegundaVez; if (tp.idtipo == 1) //monedero { rvm.IdTarjeta = -1; } else { rvm.IdTarjeta = tp.extra; } await App.Nav.PushAsync(new Programar(rvm)); } else { if (!rvm.ReadOnly)//mis tarjetas { if (rvm.Tiporecarga == TipoRecarga.Monedero) { if (phvalNum.IsValid && phvalNum.Valor > 0M) { if (phvalNum.Valor > montomax) { await DisplayAlert("Error", "Solamente le es permitido agregar " + montomax.ToString("c", new System.Globalization.CultureInfo("es-MX")) + " por cada evento", "OK"); ((ListView)sender).SelectedItem = null; return; } else { rvm.MontoRecargaMonedero = phvalNum.Valor; } } else { await DisplayAlert("Error", "Para seleccionar una tarjeta tiene que capturar el monto a comprar", "OK"); ((ListView)sender).SelectedItem = null; return; //((ListView)sender).SelectedItem = null; } } TipoPago tp = (e.SelectedItem as TipoPago); rvm.idFormaPago = tp.idtipo; rvm.TipoTrans = TipoTransaccion.SegundaVez; if (tp.idtipo == 1) //monedero { if (rvm.LsPaquetes(rvm.idoperadora).Where(x => x.idpaquete == rvm.idpaquete).FirstOrDefault().monto > App.db.SelSaldo().saldo) { await DisplayAlert("Error", "No tiene suficiente saldo", "Ok"); ((ListView)sender).SelectedItem = null; return; } else { rvm.IdTarjeta = -1; } } else { rvm.IdTarjeta = tp.extra; } Procesar pro = App.Nav.NavigationStack.OfType <Procesar>().FirstOrDefault(); if (pro == null) { await App.Nav.PushAsync(new Procesar(rvm, tvm, TipoTransaccion.SegundaVez), Constantes.animated); } else { pro.Refresh(rvm, tvm, TipoTransaccion.SegundaVez); await App.Nav.PopAsync(Constantes.animated); } } } ((ListView)sender).SelectedItem = null; }; tvm.NuevaTarjeta += (s, e) => { if (rvm.Tiporecarga == TipoRecarga.Monedero) { gTarjetas = grptipos[0]; gTarjetas = new Grupo("Tus tarjetas", 2, e.lista); grptipos[0] = gTarjetas; } if (rvm.Tiporecarga == TipoRecarga.RecargaTA) { gTarjetas = grptipos[1]; gTarjetas = new Grupo("Tus tarjetas", 2, e.lista); grptipos[1] = gTarjetas; } lvRegPagos.BeginRefresh(); lvRegPagos.ItemsSource = null; lvRegPagos.ItemsSource = grptipos; lvRegPagos.EndRefresh(); if (rvm.Tiporecarga == TipoRecarga.RecargaTA) { if ((grptipos[0].FirstOrDefault().saldo == 0M) && (grptipos[1].Count() == 0)) { slMonedero.IsVisible = false; lvRegPagos.IsVisible = false; svMsgNoTarj.IsVisible = true; } else { slMonedero.IsVisible = false; lvRegPagos.IsVisible = true; svMsgNoTarj.IsVisible = false; } } if (rvm.Tiporecarga == TipoRecarga.Monedero) { //if (grptipos[0].Count() == 0) //{ // slMonedero.IsVisible = false; // lvRegPagos.IsVisible = false; // svMsgNoTarj.IsVisible = true; //} //else //{ slMonedero.IsVisible = true; lvRegPagos.IsVisible = true; svMsgNoTarj.IsVisible = false; //} } }; btnNuevo.Clicked += async(sender, ea) => { if (rvm.Tiporecarga == TipoRecarga.Monedero) { if (phvalNum.IsValid && phvalNum.Valor > 0M) { if (phvalNum.Valor > montomax) { await DisplayAlert("Error", "Solamente le es permitido agregar " + montomax.ToString("c", new System.Globalization.CultureInfo("es-MX")) + " por cada evento", "OK"); } else { rvm.MontoRecargaMonedero = phvalNum.Valor; await App.Nav.PushAsync(new NuevaTarjeta(TipoAnadidor.RegistroPago, tvm, rvm), Constantes.animated); } } else { await DisplayAlert("Error", "Para agregar una nueva tarjeta tiene que capturar el monto a comprar", "OK"); } } if (rvm.Tiporecarga == TipoRecarga.RecargaTA) { await App.Nav.PushAsync(new NuevaTarjeta(TipoAnadidor.RegistroPago, tvm, rvm), Constantes.animated); } }; if (rvm.Tiporecarga == TipoRecarga.RecargaTA) { if ((grptipos[0].FirstOrDefault().saldo == 0M) && (grptipos[1].Count() == 0)) { slMonedero.IsVisible = false; lvRegPagos.IsVisible = false; svMsgNoTarj.IsVisible = true; } else { slMonedero.IsVisible = false; lvRegPagos.IsVisible = true; svMsgNoTarj.IsVisible = false; } } if (rvm.Tiporecarga == TipoRecarga.Monedero) { //if (grptipos[0].Count() == 0) //{ // slMonedero.IsVisible = false; // lvRegPagos.IsVisible = false; // svMsgNoTarj.IsVisible = true; //} //else //{ slMonedero.IsVisible = true; lvRegPagos.IsVisible = true; svMsgNoTarj.IsVisible = false; //} } } catch (Exception e) { } }
public Miperfil() { InitializeComponent(); NavigationPage.SetBackButtonTitle(this, ""); cvwPerfil.BindingContext = App.usr; TapGestureRecognizer tapgrdMonedero = new TapGestureRecognizer(); tapgrdMonedero.Tapped += async (s, e) => { grdMonedero.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdMonedero.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; RecargasViewModel rvm = new RecargasViewModel(); rvm.Tiporecarga = TipoRecarga.Monedero; await App.Nav.PushAsync(new RegPago(rvm), Constantes.animated); }; grdMonedero.GestureRecognizers.Add(tapgrdMonedero); //int hab = App.WSc.GetMonederoHab(); //if (hab == 1) // grdMonedero.IsVisible = true; //else grdMonedero.IsVisible = false; //TapGestureRecognizer tapgrdMedios = new TapGestureRecognizer(); //tapgrdMedios.Tapped += async (s, e) => //{ // grdMedios.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; // await Task.Delay(100); // grdMedios.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; // RecargasViewModel rvm = new RecargasViewModel(); // rvm.ReadOnly = true; // await App.Nav.PushAsync(new RegPago(rvm), Constantes.animated); //}; //grdMedios.GestureRecognizers.Add(tapgrdMedios); TapGestureRecognizer tapgrdChat = new TapGestureRecognizer(); tapgrdChat.Tapped += async (s, e) => { grdChat.BackgroundColor = Color.FromHex("#e5e5e5"); await Task.Delay(100); grdChat.BackgroundColor = Color.Transparent; //await App.Nav.PushAsync(new MainChatPage(), Constantes.animated); await App.Nav.PushAsync(new webchat(), Constantes.animated); //await App.Nav.PushAsync(new ChatPage()); }; grdChat.GestureRecognizers.Add(tapgrdChat); TapGestureRecognizer tapgrdTuto = new TapGestureRecognizer(); tapgrdTuto.Tapped += async (s, e) => { grdTuto.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdTuto.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; await App.Nav.PushAsync(new Tuto(App.Current), Constantes.animated); }; grdTuto.GestureRecognizers.Add(tapgrdTuto); TapGestureRecognizer tappoliticas = new TapGestureRecognizer(); tappoliticas.Tapped += async (s, e) => { grdPolitica.BackgroundColor = Color.FromHex("#e5e5e5"); await Task.Delay(100); grdPolitica.BackgroundColor = Color.Transparent; var page = new InfoAyuda("politica.html"); Navigation.PushPopupAsync(page); }; grdPolitica.GestureRecognizers.Add(tappoliticas); TapGestureRecognizer tapterminos = new TapGestureRecognizer(); tapterminos.Tapped += async (s, e) => { grdTerminos.BackgroundColor = Color.FromHex("#e5e5e5"); await Task.Delay(100); grdTerminos.BackgroundColor = Color.Transparent; var page = new InfoAyuda("terminos.html"); Navigation.PushPopupAsync(page); }; grdTerminos.GestureRecognizers.Add(tapterminos); }
public void CargarInicia(Recarga rec) { InitializeComponent(); Title = "Cargar Saldo"; rvm = new RecargasViewModel(); this.BindingContext = rvm; rvm.Tiporecarga = TipoRecarga.RecargaTA; NavigationPage.SetBackButtonTitle(this, ""); if (rec != null) { if (rec is RecargaProg) { rvm.EdicionOnly = true; } if (App.usr.idpais != 0) { rvm.idpais = App.usr.idpais; } else { rvm.idpais = 1; //default Mexico } rvm.IdUsuario = App.usr.idusuario; mirec = new Recarga(); mirec = rec; } else { Refresh(); if (App.usr.idpais != 0) { rvm.idpais = App.usr.idpais; } else { rvm.idpais = 1; //default Mexico } } ToolbarItems.Add(new ToolbarItem("Ayuda", "ayuda2.png", () => { var page = new InfoAyuda("cargarsaldo.html"); Navigation.PushPopupAsync(page); })); lsC.Clear(); rvm.RecargaIncompleta += (s, e) => { if (e.estaincompleta) { if (rvm.idoperadora == 0 || rvm.idpaquete == 0) { lblvalOpePaq.IsVisible = true; } else { lblvalOpePaq.IsVisible = false; } btnAplicar.IsEnabled = false; } else { btnAplicar.IsEnabled = true; } }; if (mirec != null) { rvm.idpais = mirec.idpais; rvm.idoperadora = mirec.idoperadora; rvm.idpaquete = mirec.idpaquete; rvm.NumeroRecarga = mirec.numerorecarga; rvm.ContactoRecarga = (!String.IsNullOrEmpty(mirec.contactorecarga) ? CleanString.UseRegex(mirec.contactorecarga) : ""); rvm.idFormaPago = mirec.idformapago; rvm.IdTarjeta = mirec.idtarjeta; if (rvm.idFormaPago == 2 && rvm.IdTarjeta > 0) { rvm.TipoTrans = TipoTransaccion.SegundaVez; } } if (rvm.EdicionOnly) { btnAplicar.Text = "Comprar"; } else { if (rvm.idFormaPago == 2 && rvm.IdTarjeta > 0 && App.db.SelTarjetas(rvm.IdTarjeta) != null) { btnAplicar.Text = "Confirmar"; } else { btnAplicar.Text = "Comprar"; } } string title = ""; ListaOpciones lo; TapGestureRecognizer tapgrdPais = new TapGestureRecognizer(); tapgrdPais.Tapped += async(s, e) => //vclPais.Tapped += async (object sender, EventArgs e) => { grdPais.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdPais.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Selecciona un pais"; ls = rvm.lsPais().Select(x => new Opcion { idopc = x.idpais, opc = x.pais, imgopc = x.img }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 1); lo.IdOpc = 1; await App.Nav.PushAsync(lo, Constantes.animated); }; grdPais.GestureRecognizers.Add(tapgrdPais); TapGestureRecognizer tapgrdOperadora = new TapGestureRecognizer(); tapgrdOperadora.Tapped += async(s, e) => //vclOperadora.Tapped += async (object sender, EventArgs e) => { grdOperadora.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdOperadora.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Selecciona una compañía"; ls = rvm.LsOperadoras(rvm.idpais).Select(x => new Opcion { idopc = x.idoperadora, opc = x.operadora, imgopc = x.img }).ToObservableCollection(); lo = new ListaOpciones(ls, title, 1); lo.IdOpc = 2; await App.Nav.PushAsync(lo, Constantes.animated); }; grdOperadora.GestureRecognizers.Add(tapgrdOperadora); if (mirec != null) { txtNum.Text = mirec.numerorecarga; lblContacto.Text = (!String.IsNullOrEmpty(mirec.contactorecarga) ? CleanString.UseRegex(mirec.contactorecarga) : ""); } TapGestureRecognizer tapgrdSaldo = new TapGestureRecognizer(); tapgrdSaldo.Tapped += async(s, e) => //vclSaldo.Tapped += async (object sender, EventArgs e) => { grdSaldo.BackgroundColor = Color.FromHex("#e5e5e5"); //Color.FromHex((App.Current.Resources["ButtonRojo"] as Style).Setters.Where(x => x.Property == BackgroundColorProperty).FirstOrDefault().Value.ToString()); //.Opacity = .5; await Task.Delay(100); grdSaldo.BackgroundColor = Color.Transparent; //grdEstado.Opacity = 1; ls.Clear(); title = "Selecciona monto"; ObservableCollection <catPaquete> lpq = rvm.LsPaquetes(rvm.idoperadora); ls = lpq.OrderBy(x => x.tipo).Select(x => new Opcion { idopc = x.idpaquete, opc = x.monto.ToString("c", new System.Globalization.CultureInfo("es-MX")) + " " + x.paquete, idagrupador = x.tipo, agrupador = (x.tipo == 0 ? "Tiempo aire" : "Paquetes de datos") }).ToObservableCollection(); if (ls.Select(x => x.idagrupador).Distinct().Count() > 1) { lo = new ListaOpciones(ls, title, 1, true); //hay TA y datos } else { lo = new ListaOpciones(ls, title, 1); //solo TA } lo.IdOpc = 4; await App.Nav.PushAsync(lo, Constantes.animated); }; grdSaldo.GestureRecognizers.Add(tapgrdSaldo); TapGestureRecognizer tapgrdLimpiar = new TapGestureRecognizer(); tapgrdLimpiar.Tapped += async(s, e) => { grdLimpiar.BackgroundColor = Color.FromHex("#e5e5e5"); await Task.Delay(100); grdLimpiar.BackgroundColor = Color.Transparent; rvm.Refresh(); txtNum.Text = ""; lblContacto.Text = ""; }; grdLimpiar.GestureRecognizers.Add(tapgrdLimpiar); btnAplicar.Clicked += async(sender, ea) => { if (rvm.EsIncompleta()) { await DisplayAlert("Error", "Faltan capturar o seleccionar algunos campos", "OK"); } else { btnAplicar.IsEnabled = false; rvm.NumeroRecarga = check.SafeSqlLiteral(txtNum.Text.Trim()); if (rvm.EdicionOnly) { await App.Nav.PushAsync(new RegPago(rvm), Constantes.animated); } else { if (rvm.idFormaPago == 2 && rvm.IdTarjeta > 0 && App.db.SelTarjetas(rvm.IdTarjeta) != null) { //vamos a cargar el tvm desde una tarjeta (no se como?) TarjetasViewModel tvm = new TarjetasViewModel(); await App.Nav.PushAsync(new Procesar(rvm, tvm, TipoTransaccion.SegundaVez), Constantes.animated); } else { await App.Nav.PushAsync(new RegPago(rvm), Constantes.animated); } } } }; phvalNum.PropertyChanged += (object sender, PropertyChangedEventArgs e) => { if (phvalNum.IsValid) { rvm.NumeroRecarga = check.SafeSqlLiteral(txtNum.Text); } else { rvm.NumeroRecarga = ""; } }; btnContactos.Clicked += async(sender, e) => { vwContactos = new Contactos(); await App.Nav.PushAsync(vwContactos); lsC = vwContactos.GetLista(); }; txtNum.TextChanged += (s, e) => { if (lsC.Count > 0) { IEnumerable <Contacto> tmp = lsC.Where(x => Regex.Replace(x.Number, @"\s+", "").Contains(e.NewTextValue)); if (tmp.Count() > 0) { lblContacto.Text = CleanString.UseRegex(tmp.FirstOrDefault().Name); rvm.ContactoRecarga = lblContacto.Text; } else { lblContacto.Text = ""; rvm.ContactoRecarga = ""; } } }; }