예제 #1
0
        private void TSSalesApp_ClientSearch(TSCustomer respuesta)
        {
            TSCustomerApp.ClienteByCodigo -= TSSalesApp_ClientSearch;
            Device.BeginInvokeOnMainThread(async() =>
            {
                contexto.IsSearch = false;
                if (respuesta.EstadoRespuesta == CustomerEstado.ClienteConSaldo)
                {
                    if (respuesta.vClientOuput.Saldos == null)
                    {
                        await DisplayAlert("Aviso", "El código descrito no es un cliente de credito", "Aceptar");
                        return;
                    }

                    TarjetasBuscadas.Add(respuesta.vClientOuput.Saldos.cdcliente);
                    TSCustomerApp.ClientOuput = respuesta.vClientOuput;
                    TSCustomerApp.ClientOuput.mtodisponible = (TSCustomerApp.ClientOuput.Saldos.limitemto - TSCustomerApp.ClientOuput.Saldos.consumto);
                    contexto.Tarjeta              = TSCustomerApp.ClientOuput.Saldos.nrotarjeta;
                    contexto.Codigo_cliente       = TSCustomerApp.ClientOuput.Saldos.cdcliente;
                    contexto.Razon_social_cliente = TSCustomerApp.ClientOuput.rscliente;
                    contexto.Placa             = TSCustomerApp.ClientOuput.Saldos.nroplaca;
                    contexto.Saldo             = "S/. " + (Math.Round(Convert.ToDouble(TSCustomerApp.ClientOuput.Saldos.limitemto - TSCustomerApp.ClientOuput.Saldos.consumto), 2)).ToString();
                    contexto.IsChoferVisible   = respuesta.vClientOuput.Saldos.campos.chofer.visible;
                    contexto.IsChoferEnabled   = respuesta.vClientOuput.Saldos.campos.chofer.disabled;
                    contexto.IsPlacaVisible    = respuesta.vClientOuput.Saldos.campos.placa.visible;
                    contexto.IsPlacaEnabled    = respuesta.vClientOuput.Saldos.campos.placa.disabled;
                    contexto.IsOdometroEnabled = respuesta.vClientOuput.Saldos.campos.odometro.disabled;
                    contexto.IsOdometroVisible = respuesta.vClientOuput.Saldos.campos.odometro.visible;
                    contexto.Odometro          = "0";

                    if (contexto.IsClosed == false)
                    {
                        this.txtChofer.Focus();
                    }
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.ClienteSinSaldo)
                {
                    await DisplayAlert("Aviso", respuesta.vClientOuput.Mensaje, "Aceptar");
                    return;
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.ErrorSistema)
                {
                    await DisplayAlert("Aviso", "Hubo un problema en la comunicación con el servidor, por favor intente después.", "Aceptar");
                    return;
                }
            });
        }
 private void _ClienteAlls(TSCustomer respuesta)
 {
     TSCustomerApp.ClienteAlls -= _ClienteAlls;
     Device.BeginInvokeOnMainThread(async() =>
     {
         if (respuesta.EstadoRespuesta == CustomerEstado.ErrorSistema)
         {
             await DisplayAlert("Aviso", "Hubo un problema en la comunicación con el servidor, por favor intente después.", "Aceptar");
             return;
         }
         if (respuesta.EstadoRespuesta == CustomerEstado.InformacionObtenida)
         {
             foreach (var item in respuesta.vClient)
             {
                 TSCustomerApp.vListClientes.Add(item);
             }
         }
     });
 }
 private void _ClienteAlls(TSCustomer respuesta)
 {
     Device.BeginInvokeOnMainThread(async() =>
     {
         if (respuesta.EstadoRespuesta == CustomerEstado.InformacionNoObtenida)
         {
             await DisplayAlert("Aviso", respuesta.vSales.Mensaje, "Aceptar");
             return;
         }
         if (respuesta.EstadoRespuesta == CustomerEstado.ErrorSistema)
         {
             await DisplayAlert("Aviso", "Hubo un problema en la comunicación con el servidor, por favor intente después.", "Aceptar");
             return;
         }
         if (respuesta.EstadoRespuesta == CustomerEstado.InformacionObtenida)
         {
             InsertItems(respuesta.vClient);
         }
     });
 }
        private void TSSalesApp_ClientSearch(TSCustomer respuesta)
        {
            TSCustomerApp.ClientSearch -= TSSalesApp_ClientSearch;
            Device.BeginInvokeOnMainThread(async() =>
            {
                if (respuesta.EstadoRespuesta == CustomerEstado.InformacionObtenida)
                {
                    TS_BEClienteOutput cliente = respuesta.vClientOuput;

                    if (cliente.Saldos != null)
                    {
                        TSCustomerApp.vCodigoBloqueado.Add(TSCustomerApp.ClientOuput.Saldos.nrotarjeta);
                        await DisplayAlert("Aviso", "No se puede ingresar una tarjeta de creditos en ventas al contado", "Aceptar");
                        contexto.IsSearch = false;
                        return;
                    }
                    if (cliente.isafiliacion)
                    {
                        TSCustomerApp.vTarjetasBloqueadas.Clear();
                        TSCustomerApp.vTarjetasBuscadas.Clear();
                        if (cliente.bloqueado)
                        {
                            TSCustomerApp.vTarjetasBloqueadas.Add(txtTarjetaAfiliacion.Text);
                            await DisplayAlert("Aviso", "La tarjeta descrita esta bloqueada", "Aceptar");
                            contexto.IsSearch = false;
                            return;
                        }
                        if (cliente.baja)
                        {
                            TSCustomerApp.vTarjetasBloqueadas.Add(txtTarjetaAfiliacion.Text);
                            await DisplayAlert("Aviso", "La tarjeta descrita esta dada de baja por lo cual no puede acumular puntos", "Aceptar");
                            contexto.IsSearch = false;
                            return;
                        }
                        TSCustomerApp.vTarjetasBuscadas.Add(txtTarjetaAfiliacion.Text);
                    }
                    if (cliente.Saldos != null)
                    {
                        await DisplayAlert("Aviso", "No se puede ingresar una tarjeta de creditos en ventas al contado", "Aceptar");
                        contexto.IsSearch = false;
                        return;
                    }

                    if (!String.IsNullOrEmpty(cliente.cdcliente))
                    {
                        contexto.Codigo_cliente = (cliente.cdcliente ?? "").Trim();
                    }
                    contexto.Ruc_cliente          = (cliente.ruccliente ?? "").Trim();
                    contexto.Razon_social_cliente = (cliente.rscliente ?? "").Trim();
                    contexto.Direccion_cliente    = (cliente.drcliente ?? "").Trim();
                    contexto.IsSearch             = false;
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.InformacionNoObtenida)
                {
                    await DisplayAlert("Aviso", respuesta.vClientOuput.Mensaje, "Aceptar");
                    contexto.IsSearch = false;
                    return;
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.ErrorSistema)
                {
                    await DisplayAlert("Aviso", "Hubo un problema en la comunicación con el servidor, por favor intente después.", "Aceptar");
                    contexto.IsSearch = false;
                    return;
                }
            });
        }
        private void TSSalesApp_ClientSearch(TSCustomer respuesta)
        {
            TSCustomerApp.ClientSearch -= TSSalesApp_ClientSearch;
            Device.BeginInvokeOnMainThread(async() =>
            {
                Contexto.IsSearch = false;
                Contexto.IsBusy   = false;
                if (respuesta.EstadoRespuesta == CustomerEstado.InformacionObtenida)
                {
                    Contexto.Cliente = respuesta.vClientOuput;

                    if (Contexto.SelectedItemTipoOperacion.Equals("Nueva tarjeta"))
                    {
                        await DisplayAlert("Aviso", "La tarjeta ya existe debe usar un código diferente", "Aceptar");
                        return;
                    }
                    if (Contexto.SelectedItemTipoOperacion.Equals("Traspaso de tarjeta"))
                    {
                    }
                    if (Contexto.SelectedItemTipoOperacion.Equals("Edición de información"))
                    {
                        if (Contexto.Cliente.Saldos != null)
                        {
                            await DisplayAlert("Aviso", "No se puede ingresar una tarjeta de creditos en ventas al contado", "Aceptar");
                            return;
                        }
                        if (Contexto.Cliente.isafiliacion)
                        {
                            if (Contexto.Cliente.baja)
                            {
                                await DisplayAlert("Aviso", "La tarjeta descrita esta dada de baja por lo cual no puede acumular puntos, solo desde oficina pueden realizar cambios", "Aceptar");
                                return;
                            }
                            if (Contexto.Cliente.bloqueado)
                            {
                                await DisplayAlert("Aviso", "La tarjeta descrita esta bloqueada, tenga en cuenta que cualquier cambio que realize quedara registrado", "Aceptar");
                                this.Contexto.SelectedItem     = "Bloqueado";
                                this.Contexto.DesactivarEstado = true;
                            }
                            else if (!Contexto.Cliente.bloqueado)
                            {
                                this.Contexto.DesactivarEstado = false;
                                this.Contexto.SelectedItem     = "Activo";
                            }
                            Contexto.Puntos        = Contexto.Cliente.puntos.ToString();
                            Contexto.Acumulado     = Contexto.Cliente.valoracumula.ToString();
                            Contexto.Tarjeta       = (Contexto.Cliente.tarjafiliacion ?? "").Trim();
                            Contexto.CodigoCliente = (Contexto.Cliente.cdcliente ?? "").Trim();
                            Contexto.Ruc           = (Contexto.Cliente.ruccliente ?? "").Trim();
                            Contexto.RazonSocial   = (Contexto.Cliente.rscliente ?? "").Trim();
                            Contexto.Direccion     = (Contexto.Cliente.drcliente ?? "").Trim();
                            Contexto.Correo        = (Contexto.Cliente.emcliente ?? "").Trim();
                            if (Contexto.Cliente.ArticulosTarjeta != null)
                            {
                                Contexto.ArticulosTarjeta.Clear();
                                Contexto.Cliente.ArticulosTarjeta.ToList().ForEach((Item) => Contexto.ArticulosTarjeta.Add(Item));
                            }
                            if (Contexto.Cliente.ArticulosPrefijo != null)
                            {
                                Contexto.ArticulosPrefijo.Clear();
                                Contexto.Cliente.ArticulosPrefijo.ToList().ForEach((Item) => Contexto.ArticulosPrefijo.Add(Item));
                            }
                            Contexto.IsVisiblePanelEdicion = true;
                        }
                    }
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.InformacionNoObtenida)
                {
                    if (Contexto.SelectedItemTipoOperacion.Equals("Nueva tarjeta"))
                    {
                        Contexto.CodigoCliente = "";
                        Contexto.Tarjeta       = Contexto.Codigo;
                        Contexto.Ruc           = "";
                        Contexto.RazonSocial   = "";
                        Contexto.Direccion     = "";
                        Contexto.Puntos        = "0.00";
                        Contexto.Acumulado     = "0.00";
                        Contexto.SelectedItem  = "Activo";
                        Contexto.ArticulosPrefijo.Clear();
                        Contexto.ArticulosTarjeta.Clear();
                        Contexto.IsVisiblePanelEdicion = true;
                    }
                    else
                    {
                        await DisplayAlert("Aviso", respuesta.vClientOuput == null ? "La tarjeta no existe" : respuesta.vClientOuput.Mensaje, "Aceptar");
                        return;
                    }
                }
                if (respuesta.EstadoRespuesta == CustomerEstado.ErrorSistema)
                {
                    await DisplayAlert("Aviso", "Hubo un problema en la comunicación con el servidor, por favor intente después.", "Aceptar");
                    return;
                }
            });
        }