Ejemplo n.º 1
0
        public void SolicitaReservaMesaFechada()
        {
            try
            {
                CarrinhoBO  CarrinhoBO = new CarrinhoBO();
                CompraModel compra     = new CompraModel();
                compra.SessionID = "1sadasdlasdjkahskjdAA";

                //Logado Maicon
                ClienteBO ClienteBO = new ClienteBO(1);
                //compra.Login = ClienteBO.ConsultarCPF("01259436012");

                RetornoModel <CompraModel> result = CarrinhoBO.SolicitarReservaMesaFechada(compra, 163464, 2199235, 1637525);

                Console.WriteLine(result.Mensagem);
                Console.WriteLine(result.Retorno);
                Console.WriteLine(result.Sucesso);

                Assert.AreNotEqual(null, result);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
Ejemplo n.º 2
0
        public void CotaBO_ValidarCotas()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.Login         = new Login();
            compra.CarrinhoItens = carrinhoBO.Listar("02kfpvahztwniota0ugz2nnv", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra                 = carrinhoBO.CalcularValores(compra);
            compra.SessionID       = "02kfpvahztwniota0ugz2nnv";
            compra.Login.ClienteID = 3465690;
            compra                 = cotaBO.CarregarCotaInformacao(compra);
            tDonoIngresso dono = new DonoIngressoBO().Consultar(2);

            foreach (var item in compra.CarrinhoItens)
            {
                item.CotaItemObject.DonoIngresso                          = new tDonoIngresso();
                item.CotaItemObject.DonoIngresso.ID                       = dono.ID;
                item.CotaItemObject.DonoIngresso.ClienteID                = dono.ClienteID;
                item.CotaItemObject.DonoIngresso.Nome                     = dono.Nome;
                item.CotaItemObject.DonoIngresso.CPF                      = dono.CPF;
                item.CotaItemObject.DonoIngresso.NomeResponsavel          = dono.NomeResponsavel;
                item.CotaItemObject.DonoIngresso.CPFResponsavel           = dono.CPFResponsavel;
                item.CotaItemObject.DonoIngresso.Telefone                 = dono.Telefone;
                item.CotaItemObject.DonoIngresso.RG                       = dono.RG;
                item.CotaItemObject.DonoIngresso.DataNascimentoAsDateTime = new DateTime(1990, 01, 01);
                item.CotaItemObject.DonoIngresso.Email                    = dono.Email;
            }
            compra = cotaBO.ValidarCotas(compra).Retorno;
            Assert.AreEqual(true, compra.CarrinhoItens[0].CotaItemObject.NominalAsBool || compra.CarrinhoItens[0].CotaItemObject.ValidaBinAsBool);
        }
Ejemplo n.º 3
0
        protected RetornoModel LimparCompra(CarrinhoBO carrinhoBO)
        {
            SessionModel.EntregaControleID = 0;
            SessionModel.PDVID             = 0;
            SessionModel.ClienteEnderecoID = 0;
            SessionModel.ValesIngressoID   = null;

            RetornoModel retorno = new RetornoModel();

            retorno.Mensagem = "Ok";
            retorno.Sucesso  = true;
            try
            {
                var carrinhoItens = carrinhoBO.Listar(SessionModel.SessionID, SessionModel.ClienteID, enumCarrinhoStatus.reservado);
                carrinhoBO.LimparReserva(SessionModel.SessionID, enumIngressoStatus.disponivel, carrinhoItens);
            }
            catch (Exception ex)
            {
                LogUtil.Error(string.Format("##Master.LimparCompra.EXCEPTION## SESSION {0}, MSG {1}", (this.SessionModel != null) ? this.SessionModel.SessionID : "NA", ex.Message), ex);

                retorno.Mensagem = ex.Message;
                retorno.Sucesso  = false;
                //LogUtil.Error(ex);
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ParseRetorno(retorno)));
            }
            return(retorno);
        }
Ejemplo n.º 4
0
        public void SolicitaReservaPacote()
        {
            try
            {
                var carrinhoBO_ = new CarrinhoBO();
                var compra      = new CompraModel {
                    SessionID = "mm21sadasdlasdjkahskjdAA"
                };

                var pacotesQuantidade = new List <PacoteReservaModel>
                {
                    new PacoteReservaModel {
                        PacoteID = 8979, Quantidade = 1
                    }
                };

                var retorno = carrinhoBO_.SolicitarReservaPacote(compra, pacotesQuantidade);
                Console.WriteLine(retorno.Mensagem);
                Console.WriteLine(retorno.Retorno);
                Console.WriteLine(retorno.Sucesso);
                Assert.AreNotEqual(null, retorno);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
Ejemplo n.º 5
0
 public CompraBOModel(int siteId, MasterADOBase ado)
 {
     carrinhoBO     = new CarrinhoBO(ado);
     clienteBO      = new ClienteBO(siteId, ado);
     entregaBO      = new EntregaBO(ado);
     valeIngressoBO = new ValeIngressoBO(ado);
     cotaBO         = new CotaBO(ado);
 }
Ejemplo n.º 6
0
        public void ValeIngressoBO_VerificarCompraSemVales()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.CarrinhoItens = carrinhoBO.Listar("0003zo4qtrvb2ckt4c2qdy00", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra = carrinhoBO.CalcularValores(compra);
            RetornoModel <CompraModel> retorno = valeIngressoBO.VerificarCompra(compra);

            Assert.AreEqual(true, retorno.Sucesso);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Método que remove um vale ingresso de uma compra e retorna a compra com valor recalculado.
        /// </summary>
        /// <param name="compra"></param>
        /// <param name="valeIngresso"></param>
        /// <returns></returns>
        public CompraModel RemoverValeIngresso(CompraModel compra, tValeIngresso valeIngresso)
        {
            CarrinhoBO carrinhoBO = new CarrinhoBO(ado);

            if (compra.ValeIngressos != null && valeIngresso != null)
            {
                compra.ValeIngressos.RemoveAll(x => x.ID == valeIngresso.ID);
                compra = carrinhoBO.CalcularValores(compra);
            }
            return(compra);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Método que Verifica se pode ser inserido um valeIngresso em uma compra.
        /// </summary>
        /// <param name="compra"></param>
        /// <param name="valeIngresso"></param>
        /// <returns></returns>
        public RetornoModel <CompraModel> VerificarCompra(CompraModel compra, tValeIngresso valeIngresso = null)
        {
            RetornoModel <CompraModel> retorno = new RetornoModel <CompraModel>();

            retorno.Sucesso  = true;
            retorno.Mensagem = "Vale Ingresso pode ser inserido.";
            retorno.Retorno  = compra;
            //
            if (compra.CarrinhoItens != null && compra.CarrinhoItens.Count(x => x.CotaItemObject != null && x.CotaItemObject.ValidaBinAsBool) != 0)
            {
                retorno.Sucesso  = false;
                retorno.Mensagem = "O carrinho possui um item com cota bin, por isso não podem ser adicionados VIRs.";
            }
            //Teste de valor
            else if (compra.Total == null || compra.Total.ValorTotal == 0)
            {
                retorno.Sucesso  = false;
                retorno.Mensagem = "O carrinho está com valor total 0, por isso não podem ser adicionados VIRs.";
            }
            //teste que veirifica se existe um vale não acumulativo inserido
            else if (compra.ValeIngressos != null && compra.ValeIngressos.Count(x => !(x.ValeIngressoTipo.AcumulativoAsBool)) > 0)
            {
                retorno.Sucesso  = false;
                retorno.Mensagem = "A compra possui um vale ingresso não acumulativo, por isso não podem se adicionados VIRs.";
            }

            else if (valeIngresso != null)
            {
                //verifica se o VIR é não acumulativo e se já tem VIRs na compra
                if (!(valeIngresso.ValeIngressoTipo.AcumulativoAsBool) && compra.ValeIngressos.Count > 0)
                {
                    retorno.Sucesso  = false;
                    retorno.Mensagem = "A compra possui um ou mais vale(s) ingresso(s) e o vale ingresso que está sendo inserido não é acumulativo, por isso não pode ser adicionado.";
                }
                //Faz uma cópia do objeto compra adicionando o vale ingresso passado no parametro. Se o VIR adicionado não afetar o valor da compra não deixa inserir
                else
                {
                    CarrinhoBO  carrinhoBO = new CarrinhoBO(ado);
                    CompraModel compraAux  = new CompraModel();
                    compraAux.CopyFrom(compra);
                    compraAux.ValeIngressos = compra.ValeIngressos.ToList();
                    compraAux.ValeIngressos.Add(valeIngresso);
                    carrinhoBO.CalcularValores(compraAux);
                    if (compra.Total.ValorTotal == compraAux.Total.ValorTotal)
                    {
                        retorno.Sucesso  = false;
                        retorno.Mensagem = "O VIR que está sendo adicionado não altera o valor total da compra, por isso ele não pode ser adicionado.";
                    }
                }
            }

            return(retorno);
        }
Ejemplo n.º 9
0
        public void CotaBO_VerificarCota()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.Login         = new Login();
            compra.CarrinhoItens = carrinhoBO.Listar("02kfpvahztwniota0ugz2nnv", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra                 = carrinhoBO.CalcularValores(compra);
            compra.SessionID       = "02kfpvahztwniota0ugz2nnv";
            compra.Login.ClienteID = 3465690;
            compra                 = cotaBO.CarregarCotaInformacao(compra);
            Assert.AreEqual(true, compra.CarrinhoItens[0].CotaItemObject.NominalAsBool || compra.CarrinhoItens[0].CotaItemObject.ValidaBinAsBool);
        }
Ejemplo n.º 10
0
        public void ValeIngressoBO_VerificarCompraValeNaoAcumulativo()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.CarrinhoItens = carrinhoBO.Listar("0003zo4qtrvb2ckt4c2qdy00", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra.ValeIngressos = new List <tValeIngresso>();
            compra.ValeIngressos.Add(valeIngressoBO.ValidarCodigo("abc123teste2"));
            compra = carrinhoBO.CalcularValores(compra);
            RetornoModel <CompraModel> retorno = valeIngressoBO.VerificarCompra(compra);

            Assert.AreEqual(true, !retorno.Sucesso && retorno.Mensagem.Equals("A compra possui um vale ingresso não acumulativo, por isso não podem se adicionados VIRs."));
        }
Ejemplo n.º 11
0
        public void ValeIngressoBO_VerificarCompraComValorZerado()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.CarrinhoItens = carrinhoBO.Listar("0003zo4qtrvb2ckt4c2qdy00", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra.ValeIngressos = new List <tValeIngresso>();
            compra.ValeIngressos.Add(valeIngressoBO.ValidarCodigo("abc123teste1"));
            compra = carrinhoBO.CalcularValores(compra);
            RetornoModel <CompraModel> retorno = valeIngressoBO.VerificarCompra(compra);

            Assert.AreEqual(false, retorno.Sucesso && retorno.Mensagem.Equals("O carrinho está com valor total 0, por isso não podem ser adicionados VIRs."));
        }
Ejemplo n.º 12
0
        public void ValeIngressoBO_RemoverVale()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.CarrinhoItens = carrinhoBO.Listar("0003zo4qtrvb2ckt4c2qdy00", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra = carrinhoBO.CalcularValores(compra);
            tValeIngresso valeIngressoNaoAcumulativo = valeIngressoBO.ValidarCodigo("abc123teste2");
            tValeIngresso valeIngressoAcumulativo    = valeIngressoBO.ValidarCodigo("abc123teste3");
            RetornoModel <CompraModel> retorno       = valeIngressoBO.InserirValeIngresso(compra, valeIngressoAcumulativo);

            compra = retorno.Retorno;
            compra = valeIngressoBO.RemoverValeIngresso(compra, valeIngressoAcumulativo);
            Assert.AreEqual(true, compra.Total != null && compra.Total.ValorTotal == 118 && compra.ValeIngressos.Count == 0);
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Método que insere um vale ingresso em um objeto compra.
        /// </summary>
        /// <param name="compra"></param>
        /// <param name="valeIngresso"></param>
        /// <returns></returns>
        public RetornoModel <CompraModel> InserirValeIngresso(CompraModel compra, tValeIngresso valeIngresso)
        {
            if (compra.ValeIngressos == null)
            {
                compra.ValeIngressos = new List <tValeIngresso>();
            }

            RetornoModel <CompraModel> retornoModel = VerificarCompra(compra, valeIngresso);

            if (retornoModel.Sucesso)
            {
                CarrinhoBO carrinhoBO = new CarrinhoBO(ado);
                retornoModel.Retorno.ValeIngressos.Add(valeIngresso);
                retornoModel.Retorno = carrinhoBO.CalcularValores(retornoModel.Retorno);
            }
            return(retornoModel);
        }
Ejemplo n.º 14
0
        public void ValeIngressoBO_InserirVales()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();

            compra.CarrinhoItens = carrinhoBO.Listar("0003zo4qtrvb2ckt4c2qdy00", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            compra = carrinhoBO.CalcularValores(compra);
            tValeIngresso valeIngressoNaoAcumulativo = valeIngressoBO.ValidarCodigo("abc123teste2");
            tValeIngresso valeIngressoAcumulativo    = valeIngressoBO.ValidarCodigo("abc123teste3");
            RetornoModel <CompraModel> retorno       = valeIngressoBO.InserirValeIngresso(compra, valeIngressoAcumulativo);

            compra = retorno.Retorno;
            Assert.AreEqual(true, retorno.Sucesso && compra.Total.ValorTotal == 18);
            //Segunda parte
            retorno = valeIngressoBO.InserirValeIngresso(compra, valeIngressoNaoAcumulativo);
            compra  = retorno.Retorno;
            Assert.AreEqual(true, !retorno.Sucesso && retorno.Mensagem.Equals("A compra possui um ou mais vale(s) ingresso(s) e o vale ingresso que está sendo inserido não é acumulativo, por isso não pode ser adicionado."));
        }
Ejemplo n.º 15
0
        public void ValeIngressoBO_VerificarCompraCotaBIN()
        {
            CarrinhoBO  carrinhoBO = new CarrinhoBO();
            CompraModel compra     = new CompraModel();
            CotaBO      cotaBO     = new CotaBO();

            compra.CarrinhoItens = carrinhoBO.Listar("02kfpvahztwniota0ugz2nnv", IRCore.DataAccess.Model.Enumerator.enumCarrinhoStatus.reservado);
            //Seta os valores em compra que são necessários para carregar o objeto Cota
            compra                 = carrinhoBO.CalcularValores(compra);
            compra.SessionID       = "02kfpvahztwniota0ugz2nnv";
            compra.Login           = new Login();
            compra.Login.ClienteID = 3465690;

            //carrega cota
            compra = cotaBO.CarregarCotaInformacao(compra);

            compra.ValeIngressos = new List <tValeIngresso>();
            compra.ValeIngressos.Add(valeIngressoBO.ValidarCodigo("abc123teste2"));
            compra = carrinhoBO.CalcularValores(compra);
            RetornoModel <CompraModel> retorno = valeIngressoBO.VerificarCompra(compra);

            Assert.AreEqual(true, !retorno.Sucesso && retorno.Mensagem.Equals("O carrinho possui um item com cota bin, por isso não podem ser adicionados VIRs."));
        }