public ConfiguracionLimitesImportesViewModel(System.Windows.Threading.Dispatcher dispatcher)
     : base(dispatcher)
 {
     this._limitesActuales = new DtoConsultarLimitesActuales();
     this._limitesImportesItems = new ObservableCollection<ConfiguracionLimitesItemsViewModel>();
 }
 void _vm_ConsultarLimitesComplete(DtoConsultarLimitesActuales e)
 {
     Progress.Hide();
     if (this._vm.ReestablecerLimites)
     {
         btnRestablecerLimites.Visibility = System.Windows.Visibility.Visible;
     }
 }
        private void resConsultarLimitesActuales(ServiceEventArgs<DtoConsultarLimitesActuales> e)
        {
            if (!e.ErrorInMakingRequest)
            {
                if (e.Error.clave.Is(Errors.Generic.OK))
                {
                    this._limitesActuales = e.Dto;
                    string nuevoLimite = String.Empty;
                    string nuevoImporteTransaccion = String.Empty;
                    this.LimitesImportesItems.Clear();

                    if (!String.IsNullOrEmpty(e.Dto.nuevoLimiteImporte_transf3rosMismoBanco))
                    {
                        if (Convert.ToDouble(e.Dto.nuevoLimiteImporte_transf3rosMismoBanco) != ConfiguracionLimitesImportesParams.importeDefault
                              && Convert.ToDouble(e.Dto.nuevoLimiteImporte_transf3rosMismoBanco) != Convert.ToDouble(e.Dto.limiteImporte_transf3rosMismoBanco))
                        {
                            nuevoLimite = e.Dto.nuevoLimiteImporte_transf3rosMismoBanco;
                            nuevoImporteTransaccion = TextosPantallas.tNuevoLimite + e.Dto.fecha_transf3rosMismoBanco;
                        }
                    }
                    ConfiguracionLimitesItemsViewModel _item;
                    _item = new ConfiguracionLimitesItemsViewModel()
                    {
                        LimiteActual = e.Dto.limiteImporte_transf3rosMismoBanco,
                        TipoTransaccion = TextosPantallas.tTransferenciaTerceros,
                        NuevoLimite = nuevoLimite,
                        NuevoLimiteTransaccion = nuevoImporteTransaccion
                    };

                    nuevoLimite = String.Empty;
                    nuevoImporteTransaccion = String.Empty;

                    this._limitesImportesItems.Add(_item);

                    if (!String.IsNullOrEmpty(e.Dto.nuevoLimiteImporte_transfInterbancaria))
                    {
                        if (Convert.ToDouble(e.Dto.nuevoLimiteImporte_transfInterbancaria) != ConfiguracionLimitesImportesParams.importeDefault
                              && Convert.ToDouble(e.Dto.nuevoLimiteImporte_transfInterbancaria) != Convert.ToDouble(e.Dto.limiteImporte_transfInterbancaria))
                        {
                            nuevoLimite = e.Dto.nuevoLimiteImporte_transfInterbancaria;
                            nuevoImporteTransaccion = TextosPantallas.tNuevoLimite + e.Dto.fecha_transfInterbancaria;
                        }
                    }

                    _item = new ConfiguracionLimitesItemsViewModel()
                    {
                        LimiteActual = e.Dto.limiteImporte_transfInterbancaria,
                        TipoTransaccion = TextosPantallas.tTransferenciaInterbancaria,
                        NuevoLimite = nuevoLimite,
                        NuevoLimiteTransaccion = nuevoImporteTransaccion
                    };

                    nuevoLimite = String.Empty;
                    nuevoImporteTransaccion = String.Empty;

                    this._limitesImportesItems.Add(_item);

                    if (!String.IsNullOrEmpty(e.Dto.nuevoLimiteImporte_pagoServicios))
                    {
                        if (Convert.ToDouble(e.Dto.nuevoLimiteImporte_pagoServicios) != ConfiguracionLimitesImportesParams.importeDefault
                              && Convert.ToDouble(e.Dto.nuevoLimiteImporte_pagoServicios) != Convert.ToDouble(e.Dto.limiteImporte_pagoServicios))
                        {
                            nuevoLimite = e.Dto.nuevoLimiteImporte_pagoServicios;
                            nuevoImporteTransaccion = TextosPantallas.tNuevoLimite + e.Dto.fecha_pagoServicios;
                        }
                    }

                    _item = new ConfiguracionLimitesItemsViewModel()
                    {
                        LimiteActual = e.Dto.limiteImporte_pagoServicios,
                        TipoTransaccion = TextosPantallas.tPagoServicios,
                        NuevoLimite = nuevoLimite,
                        NuevoLimiteTransaccion = nuevoImporteTransaccion
                    };

                    nuevoLimite = String.Empty;
                    this._limitesImportesItems.Add(_item);

                    if (
                          (!string.IsNullOrEmpty(e.Dto.fecha_pagoServicios) && !e.Dto.nuevoLimiteImporte_pagoServicios.Equals(e.Dto.limiteImporte_pagoServicios)) ||
                          (!string.IsNullOrEmpty(e.Dto.fecha_transf3rosMismoBanco) && !e.Dto.nuevoLimiteImporte_transf3rosMismoBanco.Equals(e.Dto.limiteImporte_transf3rosMismoBanco)) ||
                          (!string.IsNullOrEmpty(e.Dto.fecha_transfInterbancaria) && !e.Dto.nuevoLimiteImporte_transfInterbancaria.Equals(e.Dto.limiteImporte_transfInterbancaria)))
                    {
                        this._reestablecerLimites = true;
                    }

                    if (ConsultarLimitesComplete != null)
                    {
                        this._dispatcher.BeginInvoke(() => { ConsultarLimitesComplete(e.Dto); });
                    }

                }
            }

            if (ViewModelLoaded != null)
            {
                this._dispatcher.BeginInvoke(() =>
                {
                    ViewModelLoaded(new Global.ViewModelEventArgs()
                    {
                        ErrorInMakingRequest = e.ErrorInMakingRequest,
                        Error = e.Error
                    });
                });
            }
        }