Beispiel #1
0
        //cuando se navega hacia aqui
        //los parametros que son objetos deben ser copias, no referencias
        public override void OnNavigatingTo(NavigationParameters parameters)
        {
            Operacion   = parameters["Operacion"] as Operacion;
            IdOperacion = parameters["IdOperacion"] as string;

            ListaSuboperaciones = OperacionService.ListarSubOperaciones(Operacion.Id);
        }
        async void ExecuteAccionCompletarIC()
        {
            try
            {
                if (string.IsNullOrEmpty(Clave))
                {
                    await UserDialogs.AlertAsync("Ingrese una clave válida", "Mensaje", "OK");

                    return;
                }

                Cuenta  cta      = RefNavParameters["CtaCargo"] as Cuenta;
                string  montoStr = RefNavParameters["monto"] as string;
                decimal monto    = decimal.Parse(montoStr);

                string rpta = CuentaService.efectuarMovimiento(cta, monto, "PEN", false);

                if (rpta != "")
                {
                    await UserDialogs.AlertAsync(rpta, Constantes.MSJ_INFO, Constantes.MSJ_BOTON_OK);
                }
                else
                {
                    if (IsOperacionFrecuente)
                    {
                        //RefNavParameters["suboperacionActual"] as SubOperacion;
                        SubOperacion       subope  = RefNavParameters["SubOperacion"] as SubOperacion;
                        Catalogo           empresa = RefNavParameters["Empresa"] as Catalogo;
                        OperacionFrecuente opeFrec = new OperacionFrecuente
                        {
                            FechaOperacion  = DateTime.Now,
                            SubOperacion    = subope,
                            Operacion       = OperacionService.BuscarOperacion(subope.IdOperacion),
                            Servicio        = RefNavParameters["Servicio"] as Servicio,
                            NombreFrecuente = subope.Nombre + ": " + empresa.Nombre
                        };

                        OperacionService.AgregarOperacionFrecuente(opeFrec);
                        EventAggregator.GetEvent <OpeFrecuenteAddedEvent>().Publish();
                    }
                    await UserDialogs.AlertAsync(Constantes.msjExito, "Mensaje", "OK");

                    await NavigationService.GoBackToRootAsync();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
        async void ExecuteAccionConfirmarIC()
        {
            try
            {
                string msj = ValidarCampos();
                if (msj != "")
                {
                    await DialogService.DisplayAlertAsync("Validación", msj, "OK");

                    return;
                }

                decimal montoDec = decimal.Parse(Monto);

                string rptaTrx = CuentaService.efectuarMovimiento(Cuenta, montoDec, Moneda.Codigo, false);

                if (rptaTrx != "")
                {
                    await DialogService.DisplayAlertAsync(Constantes.MSJ_INFO, rptaTrx, Constantes.MSJ_BOTON_OK);
                }
                else
                {
                    if (IsOperacionFrecuente)
                    {
                        //TODO
                        SubOperacion subope = RefNavParameters["SubOperacion"] as SubOperacion;

                        string pageOrigen = RefNavParameters[Constantes.pageOrigen] as string;

                        OperacionFrecuente opeFrec = new OperacionFrecuente
                        {
                            FechaOperacion  = DateTime.Now,
                            SubOperacion    = subope,
                            Operacion       = RefNavParameters["Operacion"] as Operacion,
                            NombreFrecuente = subope.Nombre + ": " + LblDatos1
                        };

                        if (pageOrigen == Constantes.pageDatosPagoTarjeta)
                        {
                            opeFrec.Picker1         = RefNavParameters["TipoTarjeta"] as Catalogo;
                            opeFrec.Picker2         = Moneda;
                            opeFrec.parametro1      = RefNavParameters["NumTarjeta"] as string;
                            opeFrec.NombreFrecuente = subope.Nombre + ": " + opeFrec.Picker1.Nombre;
                        }
                        else if (pageOrigen == Constantes.pageRecargaCelular)
                        {
                            opeFrec.Picker1    = RefNavParameters["Operador"] as Catalogo;
                            opeFrec.parametro1 = RefNavParameters["NumCelular"] as string;
                        }
                        else if (pageOrigen == Constantes.pageRecargaBim)
                        {
                            opeFrec.parametro1      = RefNavParameters["NumBim"] as string;
                            opeFrec.NombreFrecuente = subope.Nombre;
                        }

                        OperacionService.AgregarOperacionFrecuente(opeFrec);
                        EventAggregator.GetEvent <OpeFrecuenteAddedEvent>().Publish();
                    }
                    await DialogService.DisplayAlertAsync(Constantes.MSJ_INFO, Constantes.MSJ_EXITO, Constantes.MSJ_BOTON_OK);

                    await NavigationService.GoBackToRootAsync();
                }

                //parametros.Add("Monto", Monto);
                //parametros.Add("NumTarjeta", NumTarjeta);
                //parametros.Add("Moneda", CatalogoService.BuscarMonedaPorNombre(NomMoneda));

                //await NavigationService.NavigateAsync(Constantes.pageConfDatosPago, parametros);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
 public void ActualizarListaOpeFrecuentes()
 {
     ListaOpeFrecuentes = OperacionService.ListarOperacionesFrecuentes();
 }