Beispiel #1
0
        private async void generarPaginasCarrusel()
        {
            List <OnOffData> lstResult = new List <OnOffData>();

            // DialogoLoadingBcoSecurityActivity.mostrarViewLoadingSecurity(Activity);
            try{
                JsonValue jsonResponseAccessToken = await WebServiceSecurity.ServiciosSecurity.CallRESTaccessToken();

                if (!string.IsNullOrEmpty(jsonResponseAccessToken.ToString()))
                {
                    JsonValue token = jsonResponseAccessToken["access_token"];

                    JsonValue jsonResponseConsultaProductoNotificaciones = await WebServiceSecurity.ServiciosSecurity.CallRESTConsultaProductoNotificaciones(token, SecurityEndpoints.flagInicio, SecurityEndpoints.tamanoBloque, SecurityEndpoints.paginaConsultar, SecurityEndpoints.numeroRegistros, SecurityEndpoints.totalPaginas, SecurityEndpoints.ultimoRegistro, UtilAndroid.getRut(), parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(this.Activity)), ParametriaLogUtil.GetIpLocal());

                    if (!string.IsNullOrEmpty(jsonResponseConsultaProductoNotificaciones.ToString()))
                    {
                        string jcpnStatus = jsonResponseConsultaProductoNotificaciones["statusCode"];

                        if (jcpnStatus.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS))
                        {
                            JsonValue     productosBcoSecurity = jsonResponseConsultaProductoNotificaciones["ProductosNotificaciones"];
                            int           tarjetaProducto      = 0;
                            JArray        arregloProductos     = JArray.Parse(productosBcoSecurity.ToString());
                            List <JToken> listadoProductosBco  = arregloProductos.Children().ToList();
                            ProductoCard  pc = new ProductoCard();

                            foreach (var items in listadoProductosBco)
                            {
                                string    numeroProducto             = Convert.ToString(JObject.Parse(items.ToString())["numeroProducto"]).Trim();
                                string    codigoTipoProducto         = Convert.ToString(JObject.Parse(items.ToString())["codigoTipoProducto"]).Trim();
                                string    tipoProducto               = Convert.ToString(JObject.Parse(items.ToString())["tipoProducto"]).Trim();
                                string    glosaProducto              = Convert.ToString(JObject.Parse(items.ToString())["glosaProducto"]).Trim();
                                string    estadoNotificacionProducto = Convert.ToString(JObject.Parse(items.ToString())["estadoNotificacionProducto"]);
                                string    montoPesos           = Convert.ToString(JObject.Parse(items.ToString())["montoPesos"]);
                                string    montoDolar           = Convert.ToString(JObject.Parse(items.ToString())["montoDolar"]);
                                string    nombreTarjeta        = Convert.ToString(JObject.Parse(items.ToString())["nombreTarjeta"]).Trim();
                                JsonValue estadoTarjetaCredito = null;
                                JsonValue estadoTarjetaDebito  = null;

                                bool validadorAgregar = false;

                                if (tipoProducto.Equals("TARJETA DEBITO"))
                                {
                                    tarjetaProducto = Resource.Drawable.td;
                                    string pan           = numeroProducto;
                                    int    contadorFinal = pan.Length - 3;
                                    pan = pan.Substring(3, contadorFinal); // para redbank no se envia los ceros del comienzo.

                                    estadoTarjetaDebito = WebServiceSecurity.ServiciosSecurity.CallRESTCheckCardStatus(token, SecurityEndpoints.cceFi, SecurityEndpoints.cceAbaBranch, pan,
                                                                                                                       SecurityEndpoints.cceAccountType, UtilAndroid.getRut(),
                                                                                                                       parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(this.Activity)),
                                                                                                                       ParametriaLogUtil.GetIpLocal());


                                    string codigoEstadoDebito = estadoTarjetaDebito["statusCode"];
                                    if (codigoEstadoDebito != null && codigoEstadoDebito.Equals(TEXTO_ESTADO_SUCCESS))
                                    {
                                        validadorAgregar = true;
                                    }
                                }
                                else if (tipoProducto.Equals("TARJETA CREDITO"))
                                {
                                    if (glosaProducto.Equals("MASTER BLACK"))
                                    {
                                        tarjetaProducto = Resource.Drawable.tcb;//imagen
                                    }
                                    else if (glosaProducto.Equals("MASTER GOLD"))
                                    {
                                        tarjetaProducto = Resource.Drawable.tc;//imagen
                                    }
                                    estadoTarjetaCredito = WebServiceSecurity.ServiciosSecurity.CallRESTGetCardData(token, UtilAndroid.getRut(), numeroProducto,
                                                                                                                    parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(this.Activity)), ParametriaLogUtil.GetIpLocal());

                                    string codigoEstadoCredito = estadoTarjetaCredito["statusCode"];
                                    if (codigoEstadoCredito != null && codigoEstadoCredito.Equals(TEXTO_ESTADO_SUCCESS))
                                    {
                                        validadorAgregar = true;
                                    }
                                }

                                if (validadorAgregar == true)
                                {
                                    lstResult.Add(new OnOffData()
                                    {
                                        Pan                        = numeroProducto,
                                        ImageId                    = tarjetaProducto,
                                        TipoProducto               = tipoProducto,
                                        CodigoTipoProducto         = codigoTipoProducto,
                                        GlosaProducto              = glosaProducto,
                                        EstadoNotificacionProducto = estadoNotificacionProducto,
                                        MontoPesos                 = montoPesos,
                                        MontoDolar                 = montoDolar,
                                        NombreTarjeta              = nombreTarjeta,
                                        estadoTarjetaCredito       = estadoTarjetaCredito,
                                        estadoTarjetaDebito        = estadoTarjetaDebito
                                    });
                                }
                            }
                            DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                        }
                        else
                        {
                            DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                            //DialogoErrorActivity.mostrarViewErrorHome(this.Activity);
                        }
                    }
                    else
                    {
                        //DialogoErrorActivity.mostrarViewErrorLoginEnrolado(this.Activity);
                    }
                }
                else
                {
                    //DialogoErrorActivity.mostrarViewErrorLoginEnrolado(this.Activity);
                }
            }
            catch (System.Exception ex)
            {
                DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                //DialogoErrorActivity.mostrarViewErrorHome(this.Activity);
                Console.WriteLine(ex.Message);
            }

            adapterCarrusel            = new OnOffAdapter(this.Activity, lstResult, componenteCarrusel);
            componenteCarrusel.Adapter = adapterCarrusel;
            DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
        }
Beispiel #2
0
        /// Metodo que envia los rescursos de la lista al adaptador.
        public async override void OnActivityCreated(Bundle savedInstanceState)
        {
            base.OnActivityCreated(savedInstanceState);
            setUpViews();
            dialogoLoadingBcoSecurityActivity.mostrarViewLoadingSecurity();
            await notificacionesUtil.Llamarservicio(this.Activity, UtilAndroid.getRut());

            DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
            var agrupacion = notificacionesUtil.NotificacionesPorFecha();

            listadoFinal = new List <Notificacion>();
            foreach (var grupo in agrupacion)
            {
                var notifFecha = new Notificacion();
                notifFecha.esFecha = true;
                DateTime fecha       = DateTime.Parse(grupo.Key, CultureInfo.CurrentCulture);
                var      mes         = NombreMes(fecha.Month);
                var      fechaFormat = fecha.Day + " " + mes;
                notifFecha.mensajeNotificacion = fechaFormat;

                listadoFinal.Add(notifFecha);
                listadoFinal.AddRange(grupo.ToList());
            }
            adapterHistoricoNotificaciones = new NotificacionesAdapter(Activity, listadoFinal);
            NotificacionesListView.Adapter = adapterHistoricoNotificaciones;

            NotificacionesListView.ItemClick += (sender, e) => {
                Bean.Notificacion notiSelected = adapterHistoricoNotificaciones.GetNotificacion(e.Position);
                foreach (var notificacion in listadoFinal)
                {
                    if (notificacion.idNotificacion == notiSelected.idNotificacion)
                    {
                        if (notificacion.estado)
                        {
                            notificacion.estado = false;
                        }
                        else
                        {
                            notificacion.estado = true;
                        }
                    }
                }
                listNotificacionLeidas = preferenciasNotificacionesLeidas.obneterListadoDeNotificacionesLeidas(Activity);
                if (listNotificacionLeidas.Count == 0)
                {
                    if (listNotificacionLeidas == null)
                    {
                        listNotificacionLeidas.Remove(null);
                    }
                    preferenciasNotificacionesLeidas.guardarPreferencia(Activity, notiSelected.idNotificacion);
                }
                else
                {
                    foreach (string notificacionLeida in listNotificacionLeidas)
                    {
                        if (!notificacionLeida.Equals(notiSelected.idNotificacion))
                        {
                            preferenciasNotificacionesLeidas.guardarPreferencia(Activity, notiSelected.idNotificacion);
                        }
                    }
                }

                if (listNotificacionLeidas != null || listNotificacionLeidas.Count != 0)
                {
                    int contadorDeNotificacionesRefrescado = preferenciasNotificacionesLeidas.getContadorNotificacionesNoLeidas(Activity, listadoFinal);
                    lblContadorNotificacionesNoLeidas      = Activity.FindViewById <TextView>(Resource.Id.lblContadorNotificacionesNoLeidas);
                    lblContadorNotificacionesNoLeidas.Text = contadorDeNotificacionesRefrescado + string.Empty;
                }
                adapterHistoricoNotificaciones.NotifyDataSetChanged();
            };

            lblMarcarComoLeida.Click += delegate {
                foreach (var notificacion in listadoFinal)
                {
                    listNotificacionLeidas = preferenciasNotificacionesLeidas.obneterListadoDeNotificacionesLeidas(Activity);
                    if (listNotificacionLeidas.Count == 0)
                    {
                        if (listNotificacionLeidas == null)
                        {
                            listNotificacionLeidas.Remove(null);
                        }
                        preferenciasNotificacionesLeidas.guardarPreferencia(Activity, notificacion.idNotificacion);
                    }
                    else
                    {
                        preferenciasNotificacionesLeidas.guardarPreferencia(Activity, notificacion.idNotificacion);
                    }
                    notificacion.estado = true;
                }

                relativeLayoutCampanaNotificacionesContador.Visibility = ViewStates.Gone;
                btnCamapanaNotificaciones.Visibility = ViewStates.Visible;

                adapterHistoricoNotificaciones.NotifyDataSetChanged();
            };
        }
Beispiel #3
0
        protected async override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.Home);
            nombreConocido          = MainActivity.returnNombreConsultaEnrolado();
            nombreDesdeConfirmacion = ConfirmacionEnroladoActivity.returnNombreConsultaEnroladoConocido();
            // NotificacionesFragment NotificacionesFragment = new NotificacionesFragment();
            nombreTitulo = nombreConocido;
            if (string.IsNullOrEmpty(nombreTitulo))
            {
                nombreTitulo = nombreDesdeConfirmacion;
            }
            string nombreLogin = nombreTitulo;

            nombreUsuario        = nombreLogin.Split(' ');
            primerNombreUsuario  = nombreUsuario[0].ToLower();
            segundoNombreUsuario = nombreUsuario[1].ToLower();
            string primeraLetraPrimerNombre    = primerNombreUsuario.Substring(0, 1).ToUpper();
            string restoPrimernombreFormateado = primerNombreUsuario.Substring(1, primerNombreUsuario.Length - 1);

            primerNombreFormateado = primeraLetraPrimerNombre + restoPrimernombreFormateado;
            if (!string.IsNullOrEmpty(segundoNombreUsuario))
            {
                string primeraLetraSegundoNombre    = segundoNombreUsuario.Substring(0, 1).ToUpper();
                string restoSegundonombreFormateado = segundoNombreUsuario.Substring(1, segundoNombreUsuario.Length - 1);
                segundoNombreFormateado = primeraLetraSegundoNombre + restoSegundonombreFormateado;
            }
            string nombreUserFormateado = primerNombreFormateado + " " + segundoNombreFormateado;

            drawerLayout = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
            btnBurger    = FindViewById <ImageView>(Resource.Id.btnBurger);
            btnCamapanaNotificaciones                   = FindViewById <ImageView>(Resource.Id.btnCamapanaNotificaciones);
            btnCamapanaNotificacionesNoLeida            = FindViewById <ImageView>(Resource.Id.btnCamapanaNotificacionesNoLeida);
            lblContadorNotificacionesNoLeidas           = FindViewById <TextView>(Resource.Id.lblContadorNotificacionesNoLeidas);
            relativeLayoutCampanaNotificacionesContador = FindViewById <RelativeLayout>(Resource.Id.relativeLayoutCampanaNotificacionesContador);
            notificacionesUtil = new NotificacionesUtil(this);
            preferenciasNotificacionesLeidas = new PreferenciasNotificacionesLeidas();
            listadoFinal = await notificacionesUtil.Llamarservicio(this, UtilAndroid.getRut());

            int contadorNotificaciones = preferenciasNotificacionesLeidas.getContadorNotificacionesNoLeidas(this, listadoFinal);

            if (contadorNotificaciones == 0)
            {
                relativeLayoutCampanaNotificacionesContador.Visibility = ViewStates.Gone;
                btnCamapanaNotificaciones.Visibility = ViewStates.Visible;
                btnCamapanaNotificaciones.Click     += BtnCamapanaNotificaciones_Click;
            }
            else
            {
                lblContadorNotificacionesNoLeidas.Text = contadorNotificaciones + string.Empty;
                relativeLayoutCampanaNotificacionesContador.Visibility = ViewStates.Visible;
                btnCamapanaNotificaciones.Visibility    = ViewStates.Gone;
                btnCamapanaNotificacionesNoLeida.Click += BtnCamapanaNotificacionesNoLeida_Click;
            }
            btnBurger.Click += BtnBurger_Click;
            var navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);

            navigationView.NavigationItemSelected += NavigationView_NavigationItemSelected;
            View hView = navigationView.GetHeaderView(cero);

            lblUsuarioMenu      = hView.FindViewById <TextView>(Resource.Id.lblUsuarioMenu);
            lblUsuarioMenu.Text = nombreUserFormateado;
            var fontRegular = Typeface.CreateFromAsset(Assets, rutaFuenteTitilium);
            var fontBold    = Typeface.CreateFromAsset(Assets, rutaFuenteTitiliumBold);

            lblUsuarioMenu.Typeface = fontRegular;
            cambiarFuenteMenu();
            var fragmentOnOff = FragmentManager.BeginTransaction();

            fragmentOnOff.AddToBackStack(null);
            fragmentOnOff.Add(Resource.Id.HomeLayout, new OnOffFragment());
            fragmentOnOff.Commit();
            dialogoLoadingBcoSecurityActivity = new DialogoLoadingBcoSecurityActivity(this);
        }
Beispiel #4
0
        // GUARDAR ESTADO CANALES
        private async void guardarDatosCanales(string token, string pan, string cpcEstadoPos, string cpcEstadoAtm, string cpcEstadoEcom, string cpcEstadoMoto, int positionActual)
        {
            try
            {
                JsonValue jsonResponseOnOffCardStatus = await WebServiceSecurity.ServiciosSecurity.CallRESTChangePaymentChannels
                                                            (token, pan, cpcEstadoPos, cpcEstadoAtm, cpcEstadoEcom, cpcEstadoMoto, UtilAndroid.getRut(), parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(activity)), ParametriaLogUtil.GetIpLocal());

                if (!string.IsNullOrEmpty(jsonResponseOnOffCardStatus.ToString()))
                {
                    string codigoRespuesta = jsonResponseOnOffCardStatus["statusCode"];

                    if (codigoRespuesta.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS))
                    {
                        OnOffData elementoActual = datosTarjeta[positionActual];
                        elementoActual.estadoTarjetaCredito["estadoPos"]  = cpcEstadoPos;
                        elementoActual.estadoTarjetaCredito["estadoEcom"] = cpcEstadoEcom;
                        elementoActual.estadoTarjetaCredito["estadoAtm"]  = cpcEstadoAtm;
                        elementoActual.estadoTarjetaCredito["estadoMoto"] = cpcEstadoMoto;
                    }
                    else
                    {
                        DialogoErrorActivity.mostrarViewErrorHome(activity);
                    }
                }
                else
                {
                    DialogoErrorActivity.mostrarViewErrorHome(activity);
                }
            }
            catch (System.Exception x)
            {
                Console.WriteLine(x);
                DialogoErrorActivity.mostrarViewError(activity);
            }
        }
Beispiel #5
0
        private async void guardarEstadoTarjetaDebito(int position, bool estadoTarjeta, string estadoTarjetaRequest, string token, string pan)
        {
            dialogoLoadingBcoSecurityActivity.mostrarViewLoadingSecurity();
            View     view          = listadoItemsView[position];
            TextView statusCard    = view.FindViewById <TextView>(Resource.Id.lblStatusCard);
            TextView lblInfo       = view.FindViewById <TextView>(Resource.Id.lblInfo);
            int      contadorFinal = pan.Length - 3;

            pan = pan.Substring(3, contadorFinal); // para redbank no se envia los ceros del comienzo.
            try
            {
                JsonValue jsonResponseOnOffCardStatus = await WebServiceSecurity.ServiciosSecurity.CallRESTOnOffCardStatus
                                                            (token, SecurityEndpoints.oceFi, SecurityEndpoints.oceAbaBranch, pan, SecurityEndpoints.oceAccountType, estadoTarjetaRequest, UtilAndroid.getRut(), parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(activity)), ParametriaLogUtil.GetIpLocal());

                if (!string.IsNullOrEmpty(jsonResponseOnOffCardStatus.ToString()))
                {
                    string codigoRespuesta = jsonResponseOnOffCardStatus["statusCode"];
                    if (codigoRespuesta.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS) && estadoTarjeta)
                    {
                        statusCard.Text = ConstantesOnOff.TEXTO_ESTADO_ON;
                        statusCard.SetTextColor(statusCard.Context.Resources.GetColor(Resource.Color.green));
                        lblInfo.Text = ConstantesOnOff.GLOSA_DEBITO_ON;
                        DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                    }
                    else if (codigoRespuesta.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS) && !estadoTarjeta)
                    {
                        statusCard.Text = ConstantesOnOff.TEXTO_ESTADO_OFF;
                        statusCard.SetTextColor(statusCard.Context.Resources.GetColor(Resource.Color.red));
                        lblInfo.Text = ConstantesOnOff.GLOSA_DEBITO_OFF;
                        DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                    }
                    else
                    {
                        DialogoErrorActivity.mostrarViewErrorHome(activity);
                    }
                }
                else
                {
                    DialogoErrorActivity.mostrarViewErrorHome(activity);
                }
            }
            catch (System.Exception x)
            {
                Console.WriteLine(x);
                DialogoErrorActivity.mostrarViewError(activity);
            }
        }
Beispiel #6
0
        // GUARDAR ESTADOS TARJETA
        private async void guardarEstadoTarjetaCredito(int position, bool estadoTarjeta, string estadoTarjetaRequest, string token, string pan)
        {
            dialogoLoadingBcoSecurityActivity.mostrarViewLoadingSecurity();
            View     view       = listadoItemsView[position];
            TextView statusCard = view.FindViewById <TextView>(Resource.Id.lblStatusCard);
            TextView lblInfo    = view.FindViewById <TextView>(Resource.Id.lblInfo);

            try
            {
                JsonValue jsonResponseOnOffCardStatus = await WebServiceSecurity.ServiciosSecurity.CallRESTSetEnable(token, pan, estadoTarjetaRequest, UtilAndroid.getRut(), parametriaLogUtil.getIdDispositivoParaLog(UtilAndroid.getIMEI(activity)), ParametriaLogUtil.GetIpLocal());

                if (!string.IsNullOrEmpty(jsonResponseOnOffCardStatus.ToString()))
                {
                    string codigoRespuesta = jsonResponseOnOffCardStatus["statusCode"];

                    if (codigoRespuesta.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS) && estadoTarjeta)
                    {
                        statusCard.Text = ConstantesOnOff.TEXTO_ESTADO_ON;
                        statusCard.SetTextColor(statusCard.Context.Resources.GetColor(Resource.Color.green));
                        lblInfo.Text = ConstantesOnOff.GLOSA_CREDITO_ON;
                        OnOffData elementoActual = datosTarjeta[position];
                        elementoActual.estadoTarjetaCredito["estado"] = ConstantesOnOff.ESTADO_ACTIVADO_1;
                        cambiarEstadoPanelCanales(position, statusCard.Text);
                        DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                    }
                    else if (codigoRespuesta.Equals(ConstantesOnOff.TEXTO_ESTADO_SUCCESS) && !estadoTarjeta)
                    {
                        statusCard.Text = ConstantesOnOff.TEXTO_ESTADO_OFF;
                        statusCard.SetTextColor(statusCard.Context.Resources.GetColor(Resource.Color.red));
                        lblInfo.Text = ConstantesOnOff.GLOSA_CREDITO_OFF;
                        OnOffData elementoActual = datosTarjeta[position];
                        elementoActual.estadoTarjetaCredito["estado"] = ConstantesOnOff.ESTADO_DESACTIVADO_0;
                        cambiarEstadoPanelCanales(position, statusCard.Text);
                        DialogoLoadingBcoSecurityActivity.ocultarLoadingSecurity();
                    }
                    else
                    {
                        DialogoErrorActivity.mostrarViewErrorHome(activity);
                    }
                }
                else
                {
                    DialogoErrorActivity.mostrarViewErrorHome(activity);
                }
            }
            catch (System.Net.WebException ex)
            {
                Console.WriteLine(ex);
                DialogoErrorActivity.mostrarViewErrorHome(activity);
            }
            catch (ArgumentException ax)
            {
                Console.WriteLine(ax);
                DialogoErrorActivity.mostrarViewErrorHome(activity);
            }
        }