Ejemplo n.º 1
0
        private async void BuscarPromocion()
        {
            SalesEstado resultado = SalesEstado.ErrorSistema;
            await Task.Run(() =>
            {
                TSSalesApp.SalesVerificarPromocion += TSSalesApp_SalesVerificarPromocion;
                resultado = TSSalesApp.VerificarPrecioArticulo(new TS_BEPromotionInput()
                {
                    cdarticulo  = TSSalesApp.vArticuloSeleccionado.cdarticulo,
                    cantidad    = TSSalesApp.CantidadProducto,
                    precio      = TSSalesApp.vArticuloSeleccionado.precio,
                    precio_orig = TSSalesApp.vArticuloSeleccionado.precio_orig,
                    total       = Math.Round(TSSalesApp.CantidadProducto * (decimal)TSSalesApp.vArticuloSeleccionado.precio, 2),
                    cdcliente   = TSCustomerApp.ClientOuput == null ? "" : (TSCustomerApp.ClientOuput.cdcliente ?? "").Trim(),
                    isCredito   = TSCustomerApp.TipoComprobante == TSSalesInput.NotaDeDespacho()
                }).Result;
            });

            if (resultado != SalesEstado.EsperandoRespuesta)
            {
                switch (resultado)
                {
                case SalesEstado.ErrorInternet:
                    await DisplayAlert("Aviso", "Su dispositivo no cuenta con internet en estos momentos.", "Aceptar");

                    break;

                case SalesEstado.ErrorSistema:
                    await DisplayAlert("Aviso", "Hubo un problema de comunicación con el servidor, por favor intente después.", "Aceptar");

                    break;
                }
            }
        }
 private void LoadDocumentos()
 {
     TSSalesApp.vTipoDocuments = new ObservableCollection <TipoComprobate>
     {
         new TipoComprobate()
         {
             Nombre = TSSalesInput.Boleta().Nombre,
             Nro    = TSSalesInput.Boleta().Nro
         },
         new TipoComprobate()
         {
             Nombre = TSSalesInput.Factura().Nombre,
             Nro    = TSSalesInput.Factura().Nro
         },
         new TipoComprobate()
         {
             Nombre = TSSalesInput.NotaDeDespacho().Nombre,
             Nro    = TSSalesInput.NotaDeDespacho().Nro
         },
         new TipoComprobate()
         {
             Nombre = TSSalesInput.Serafin().Nombre,
             Nro    = TSSalesInput.Serafin().Nro
         },
     };
 }
Ejemplo n.º 3
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();
            if (Cargado)
            {
                return;
            }

            List <TS_BEPagoInput> cPago = ObtenerPago();

            TSSalesApp.cPagoInput         = new TS_BEPagoInput[] { };
            TSSalesApp.cPagoInput         = cPago.ToArray();
            TSSalesApp.TipoVenta          = "";
            IndicadorDeCarga.IsVisible    = true;
            TSCustomerApp.TipoComprobante = TSSalesInput.NotaDeDespacho();
            SalesEstado resultado = SalesEstado.ErrorSistema;
            await Task.Run(() =>
            {
                TSSalesApp.SalesGrabarVenta += _SalesGrabarVenta;;
                resultado = TSSalesApp.GrabarVenta(false, false, false).Result;
            });

            if (resultado != SalesEstado.EsperandoRespuesta)
            {
                switch (resultado)
                {
                case SalesEstado.ErrorInternet:
                    await DisplayAlert("Aviso", "Su dispositivo no cuenta con internet en estos momentos.", "Aceptar");

                    break;

                case SalesEstado.ErrorSistema:
                    await DisplayAlert("Aviso", "Hubo un problema de comunicación con el servidor, por favor intente después.", "Aceptar");

                    break;
                }
            }
        }
Ejemplo n.º 4
0
        private async void BtnSaveCredito_Clicked(object sender, EventArgs e)
        {
            int isBuscada = 0;

            foreach (string tarjeta in TarjetasBuscadas)
            {
                if ((tarjeta ?? "").Trim().Equals((contexto.Codigo_cliente ?? "").Trim()))
                {
                    isBuscada++;
                }
            }
            if (isBuscada == 0)
            {
                await DisplayAlert("Aviso", "Por favor debe procesar la busqueda de la tarjeta seleccionada correctamente, verifique que no este bloqueada o sin saldo", "Aceptar");

                return;
            }

            if (TSCustomerApp.ClientOuput.mtodisponible <= 0 || TSCustomerApp.ClientOuput.mtodisponible == null)
            {
                await DisplayAlert("Aviso", "Cliente no tiene saldo, no puede continuar la venta.", "Aceptar");

                return;
            }

            if (String.IsNullOrEmpty(contexto.Chofer))
            {
                await DisplayAlert("Aviso", "Ingrese datos del chofer.", "Aceptar");

                return;
            }
            if (String.IsNullOrEmpty(contexto.Placa))
            {
                await DisplayAlert("Aviso", "Ingrese número de placa.", "Aceptar");

                return;
            }
            if (String.IsNullOrEmpty(contexto.Odometro))
            {
                await DisplayAlert("Aviso", "Ingrese datos del Odómetro.", "Aceptar");

                return;
            }
            if (IsEvent)
            {
                SaveEvent(new Lado()
                {
                    Cara               = this.Cara,
                    Placa              = this.txtPlaca.Text,
                    Chofer             = this.txtChofer.Text,
                    Codigo             = this.txtCodigoCliente.Text,
                    Tarjeta_afiliacion = "",
                    Ruc              = "",
                    RazonSocial      = contexto.Razon_social_cliente,
                    Direccion        = "",
                    Correo           = "",
                    Tarjeta          = contexto.Tarjeta,
                    Telefono         = "",
                    Odometro         = this.txtOdoMetro.Text,
                    Marca            = "",
                    Modelo           = "",
                    Fecha_Nacimiento = null,
                    Pago             = "NOTA DESPACHO",
                    Documento        = EDocumento.NotaDespacho,
                });
                await Navigation.PopAsync();

                return;
            }
            TSSalesApp.vCabecera.nroplaca        = contexto.Placa;
            TSSalesApp.vCabecera.chofer          = contexto.Chofer;
            TSSalesApp.vCabecera.odometro        = contexto.Odometro;
            TSSalesApp.vCabecera.nrotarjeta      = contexto.Tarjeta;
            TSCustomerApp.ClientOuput.nroTarjeta = contexto.Tarjeta;
            TSCustomerApp.CdCliente           = contexto.Codigo_cliente;
            TSCustomerApp.ClientOuput.tipocli = "";
            TSCustomerApp.TipoComprobante     = TSSalesInput.NotaDeDespacho();
            TSCustomerApp.FlagSearch          = true;

            await Navigation.PopAsync();
        }
        protected override void OnAppearing()
        {
            base.OnAppearing();
            this.labelRuc.Text = "Ruc";
            this.Title         = ("FACTURACIÓN -  " + (TSSalesApp.vTerminal.nropos ?? "").Trim() + ", Turno: " + TSSalesApp.vTerminal.turno + ", VENDEDOR:" + (TSSalesApp.vVendedor.dsvendedor ?? "").Trim()).ToUpper();
            if (TSCustomerApp.TipoComprobante != null)
            {
                txtTipoComprobante.Text = TSCustomerApp.TipoComprobante.Nombre;
            }
            else
            {
                txtTipoComprobante.Text       = TSSalesInput.Boleta().Nombre;
                TSCustomerApp.TipoComprobante = TSSalesInput.Boleta();
            }
            if (TSCustomerApp.FlagSearch)
            {
                if (!TSCustomerApp.FlagArticuloSearch)
                {
                    ClearDetalles();
                }
                if (TSCustomerApp.ClientOuput != null)
                {
                    if (TSCustomerApp.ClientOuput.isafiliacion)
                    {
                        txtPuntosDisponible.Text = TSCustomerApp.ClientOuput.puntos.ToString();
                        txtValorAcumulado.Text   = TSCustomerApp.ClientOuput.valoracumula.ToString(CultureInfo.CreateSpecificCulture("en-GB"));
                    }
                    if (TSCustomerApp.ClientOuput.Saldos == null)
                    {
                        btnAutomatic.IsEnabled = false; btnCredito.IsEnabled = false; btnCliente.IsEnabled = false; btnSerafin.IsEnabled = false; btnEfectivo.IsEnabled = true; btnTarjeta.IsEnabled = true;
                    }
                    if (TSCustomerApp.ClientOuput.Saldos != null)
                    {
                        btnAutomatic.IsEnabled = false; btnCredito.IsEnabled = false; btnCliente.IsEnabled = false; btnTranfGrat.IsEnabled = false; btnSerafin.IsEnabled = false; btnEfectivo.IsEnabled = false; btnTarjeta.IsEnabled = false;
                    }
                }
                if (TSCustomerApp.TipoComprobante == TSSalesInput.NotaDeDespacho())
                {
                    this.labelRuc.Text = "Código";
                }
                if (TSCustomerApp.TipoComprobante != TSSalesInput.NotaDeDespacho())
                {
                    this.labelRuc.Text = (TSCustomerApp.ClientOuput.ruccliente ?? "").Trim().Length == 11 ? "Ruc" : "Código";
                }
            }
            if (flagArticulo)
            {
                PrintTotales();
                flagArticulo = false;
            }
            if (TSSalesApp.ArticleAdd)
            {
                PrintTotales();
                TSSalesApp.ArticleAdd = false;
            }

            txtRuc.Text         = (TSCustomerApp.ClientOuput.ruccliente ?? "").Trim().Length == 11 ? (TSCustomerApp.ClientOuput.ruccliente ?? "").Trim() : (TSCustomerApp.ClientOuput.cdcliente ?? "").Trim();
            txtRazonSocial.Text = (TSCustomerApp.ClientOuput.rscliente ?? "").Trim();
            flagCliente         = false;
            flagbtnInferior     = false;
            flagbtnCaras        = false;
            TSCustomerApp.FlagArticuloSearch = false;
            TSCustomerApp.FlagSearch         = false;
            SalesCaras();
            isCarasSearch = true;
            if (Cargado)
            {
                return;
            }
            SalesCorrelativo();
            PrintTotales();
        }