Exemplo n.º 1
0
        public ActionResult <IEnumerable <EstadoVueltoResp> > EstadoDeVuelto([FromBody] EstadoVuelto VueltoInfo)
        {
            var resultado           = pagoservice.EstadoDelVuelto(VueltoInfo);
            EstadoVueltoResp estado = new EstadoVueltoResp();

            estado = resultado;
            return(Ok(estado));
        }
Exemplo n.º 2
0
        protected void Timer_VueltoMonedas(object sender, ElapsedEventArgs e)// timer ingresado cuando se ingresan monedas o billetes de mas
        {
            EsperarMonedas.Enabled = false;
            EsperarMonedas.Stop();


            try
            {
                EstadoVueltoResp estadovuelto = new EstadoVueltoResp();
                //var auxvuelto = Globals.Vuelto;
                estadovuelto = EstadoDelVuelto(montodeVuelto);
                if (estadovuelto.data.VueltoFinalizado == false)// si el vuelto no se finaliza el timer se reinicia
                {
                    //Globals.Vuelto = auxvuelto;
                    Globals.EstadodeCancelacion.CancelacionCompleta = false;
                    Globals.EstadodeCancelacion.EntregandoVuelto    = true;
                    EsperarVueltoMonedas = new System.Timers.Timer()
                    {
                        AutoReset = false
                    };
                    EsperarVueltoMonedas.Elapsed  += new ElapsedEventHandler(Timer_VueltoMonedas);
                    EsperarVueltoMonedas.AutoReset = false;
                    EsperarVueltoMonedas.Interval  = 2000;
                    EsperarVueltoMonedas.Enabled   = true;
                    EsperarVueltoMonedas.Start();
                }
                else
                {// si el vuelto esta listo se apaga la maquina  y se actualizan los estados correspondientes
                    var finalizar = FinalizarPago();
                    if (finalizar == true)
                    {
                        //Globals.Vuelto = auxvuelto;
                        Globals.EstadodeCancelacion.CancelacionCompleta = true;
                        Globals.EstadodeCancelacion.EntregandoVuelto    = false;
                        EsperarVueltoMonedas.Enabled = false;
                        EsperarVueltoMonedas.Stop();
                        EsperarMonedas.Enabled = false;
                        EsperarMonedas.Stop();
                    }
                    else
                    {
                        montodeVuelto          = new EstadoVuelto();
                        montoapagar            = new EstadoPago();
                        EsperarMonedas.Enabled = false;
                        EsperarMonedas.Stop();
                        EsperarVueltoMonedas.Enabled = false;
                        EsperarVueltoMonedas.Stop();
                    }
                }
            }
            catch (Exception ex)
            {
                //throw;
            }
        }
Exemplo n.º 3
0
        public ActionResult <IEnumerable <EstadoVueltoResp> > EstadoDeVuelto([FromBody] EstadoVuelto VueltoInfo)
        {
            var resultado           = pagoservice.EstadoDelVuelto(VueltoInfo);
            EstadoVueltoResp estado = new EstadoVueltoResp();

            estado = resultado;
            pagoservice.ConfigurarStatus();
            estado.StatusMaquina    = Globals.SaludMaquina;
            estado.BloqueoEfectivo  = Globals.BloqueoEfectivo;
            estado.BloqueoTransbank = Globals.BloqueoTransbank;
            return(Ok(estado));
        }
Exemplo n.º 4
0
        public EstadoVueltoResp EstadoDelVuelto(EstadoVuelto VueltoInfo)// ver estado del vuelto a dar
        {
            bool vueltoTerminado = false;

            lock (thisLock)
            {
                EstadoVueltoResp estavuelto = new EstadoVueltoResp();
                var Vuelto = controPeri.VueltoRegresado();

                if (Vuelto != "false")
                {
                    if (Vuelto.Contains("OK"))// si termina de dr vuelto
                    {
                        vueltoTerminado = true;
                        Vuelto          = Vuelto.Replace("OK", "");
                    }
                    var VueltoEntregado = float.Parse(Vuelto);
                    VueltoInfo.DineroRegresado  = VueltoEntregado;
                    VueltoInfo.DineroFaltante   = VueltoInfo.VueltoTotal - VueltoEntregado;
                    VueltoInfo.VueltoFinalizado = vueltoTerminado;
                    if (VueltoEntregado > Globals.ImpresoraMontoEntregado)
                    {
                        Globals.ImpresoraMontoEntregado = VueltoEntregado;
                    }

                    if (vueltoTerminado)
                    {
                        var finalizar = FinalizarPago();
                        var finHopper = FinalizarOperacion();
                        if (finalizar == true && finHopper == true)
                        {// si la maquina se apaag corectamente
                            estavuelto.Status     = true;
                            estavuelto.PagoStatus = true;
                            if (Globals.ComprobanteImpresoVuelto == false)// imprimir el comprobante
                            {
                                Globals.ComprobanteImpresoVuelto = true;
                                ArmarDocuemntoPagoConVueltoAsync();
                            }
                            transaccion.FinTransaccion();// finalizar la transaccion actual
                            estavuelto.data = VueltoInfo;
                            return(estavuelto);
                        }
                        else
                        {// si la maquina no finaliza correctamente
                            estavuelto.PagoStatus = false;
                            estavuelto.Status     = false;
                            return(estavuelto);
                        }
                    }
                    else
                    {// si vuelto aun no termina
                        estavuelto.Status     = true;
                        estavuelto.PagoStatus = false;
                        estavuelto.data       = VueltoInfo;
                        return(estavuelto);
                    }
                }
                else
                {
                    estavuelto.Status     = false;
                    estavuelto.PagoStatus = false;
                    return(estavuelto);
                }
            }
        }
Exemplo n.º 5
0
        public EstadoVueltoResp EstadoDelVuelto(EstadoVuelto VueltoInfo)// ver estado del vuelto a dar
        {
            lock (thisLock)
            {
                EstadoVueltoResp estavuelto = new EstadoVueltoResp();
                Globals.data = new List <string>();
                Globals.data.Add("");
                Globals.Servicio2Vuelto         = new PipeClient2();
                Globals.Servicio2Vuelto.Message = Globals.servicio.BuildMessage(ServicioPago.Comandos.EstadoVuelto, Globals.data);
                var vuelta = Globals.Servicio2Vuelto.SendMessage(ServicioPago.Comandos.EstadoVuelto);// enviar los datos al servicio y esperar el retorno de los mismos
                if (vuelta)
                {
                    try
                    {
                        var VueltoEntregado = int.Parse(Globals.Servicio2Vuelto.Resultado.Data[0]);
                        VueltoInfo.DineroRegresado = VueltoEntregado;
                        VueltoInfo.DineroFaltante  = VueltoInfo.VueltoTotal - VueltoEntregado;
                        // actualizar los datos del vuelto

                        if (Globals.Servicio2Vuelto.Resultado.Data[1] == "OK")// si es OK significa que el vuelto ya se completo
                        {
                            VueltoInfo.VueltoFinalizado = true;
                            Globals.Vuelto = VueltoInfo;                      // Guardar la variable del estado del vuelto globalmente

                            if (Globals.EstadodeCancelacion.EntregandoVuelto) // si la consulta viene por una cancelacion se devuelve el dinero total ingresado
                            {
                                Globals.Vuelto.VueltoTotal = VueltoInfo.DineroRegresado;
                            }
                            var finalizar = FinalizarPago();
                            if (finalizar == true)
                            {// si la maquina se apaag corectamente
                                estavuelto.Status     = true;
                                estavuelto.PagoStatus = true;
                                if (Globals.ComprobanteImpresoVuelto == false)// imprimir el comprobante
                                {
                                    Globals.ComprobanteImpresoVuelto = true;
                                    ArmarDocuemntoPagoConVueltoAsync();
                                }
                                transaccion.FinTransaccion();// finalizar la transaccion actual
                                Globals.EstadodeCancelacion = new CancelarPago();
                                estavuelto.data             = VueltoInfo;
                                Globals.Vuelto = VueltoInfo;
                                return(estavuelto);
                            }
                            else
                            {// si la maquina no finaliza correctamente
                                estavuelto.PagoStatus = false;
                                estavuelto.Status     = false;
                            }
                        }
                        else
                        {// si el vuelto aun no se ha terminado de dar
                            VueltoInfo.VueltoFinalizado = false;
                            Globals.Vuelto        = VueltoInfo;
                            estavuelto.Status     = true;
                            estavuelto.PagoStatus = false;
                        }
                        // si no se pudo comunicar correctamente io no hay vuelto
                        estavuelto.data       = VueltoInfo;
                        Globals.Vuelto        = VueltoInfo;
                        estavuelto.PagoStatus = false;
                        return(estavuelto);
                    }
                    catch (Exception)
                    {
                        estavuelto.Status     = false;
                        estavuelto.PagoStatus = false;
                        return(estavuelto);
                    }
                }// si no se comunica correctamente con el servicio
                else
                {
                    estavuelto.Status     = false;
                    estavuelto.PagoStatus = false;
                    return(estavuelto);
                }
            }
        }