public Carrinho RemoverItemDoCarrinho(Carrinho carrinho, Guid itemCarrinhoId)
        {
            var itemCarrinho = carrinho.SelecionarItemPorId(itemCarrinhoId);
            carrinho.RemoverItem(itemCarrinho);

            return carrinho;
        }
        public void Carrinho_ValorComDescontoPromocionalCorreto_PagueUmLeveDois_Sucesso_False()
        {
            var carrinho = new Carrinho();

            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto()
                {
                    Nome = "Sabonete",
                    Preco = 5,
                    TipoPromocao = TipoPromocao.PagueUmLeveDois
                },
                Quantidade = 2
            };

            var itemCarrinho2 = new ItemCarrinho()
            {
                Produto = new Produto()
                {
                    Nome = "Sabonete",
                    Preco = 5,
                    TipoPromocao = TipoPromocao.PagueUmLeveDois
                },
                Quantidade = 2
            };

            carrinho.AdicionarItem(itemCarrinho);
            carrinho.AdicionarItem(itemCarrinho2);

            Assert.IsTrue(carrinho.ValorTotalCarrinhoComDescontoPromocional == 10);
        }
        public void Carrinho_ValorComDescontoPromocionalCorreto_SemDesconto_Sucesso_False()
        {
            var carrinho = new Carrinho();

            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto()
                {
                    Nome = "Sabonete",
                    Preco = 5
                },
                Quantidade = 3
            };

            var itemCarrinho2 = new ItemCarrinho()
            {
                Produto = new Produto()
                {
                    Nome = "Sabonete",
                    Preco = 5
                },
                Quantidade = 3
            };

            carrinho.AdicionarItem(itemCarrinho);
            carrinho.AdicionarItem(itemCarrinho2);

            Assert.IsTrue(carrinho.ValorTotalCarrinhoComDescontoPromocional == 30);
        }
 private void ReservarEstoque(Carrinho carrinho)
 {
     foreach (var item in carrinho.Itens)
     {
         var sistemaEstoque = new SistemaEstoque();
         sistemaEstoque.Reservar(item.Id, item.Quantidade);
     }
 }
    public void Comprar(Carrinho carrinho, DetalhesPagamento detalhesPagamento, bool deveNotificarCliente)
    {
        if(detalhesPagamento.FormaPagamento == FormasPagamento.CARTAOCREDITO)
            CobrarCartao(detalhesDoPagamento, carrinho);

        ReservarEstoque(carrinho);

        if(deveNotificarCliente)
            NotificarCliente(carrinho);
    }
        public CarrinhoViewModel BindCarrinhoToCarrinhoViewModel(Carrinho carrinho)
        {
            var carrinhoViewModel = Mapper.Map<Carrinho, CarrinhoViewModel>(carrinho);
            foreach (var itemCarrinho in carrinho)
            {
                carrinhoViewModel.Itens.Add(Mapper.Map<ItemCarrinho, ItemCarrinhoViewModel>(itemCarrinho));
            }

            return carrinhoViewModel;
        }
    public void Comprar(Carrinho carrinho, DetalhesPagamento detalhesPagamento, bool deveNotificarCliente)
    {
        if(detalhesPagamento.FormaPagamento == FormasPagamento.CARTAOCREDITO)
            _processador.Processar(detalhesDoPagamento, carrinho);

        _reservador.ReservarEstoque(carrinho);

        if(deveNotificarCliente)
            _notificador.NotificarCliente(carrinho);
    }
        public Carrinho EditarItemCarrinho(Carrinho carrinho, ItemCarrinho itemCarrinho)
        {
            var itemEditar = carrinho.SelecionarItemPorId(itemCarrinho.ItemCarrinhoId);

            var carrinhoResult = this.AdicionarItemNoCarrinho(carrinho, itemCarrinho);

            if (carrinhoResult.ResultadoValidacao.IsValid)
                carrinho.RemoverItem(itemEditar);

            return carrinhoResult;
        }
    private void CobrarCartao(DetalhesPagamento detalhesDoPagamento, Carrinho carrinho)
    {
        var gatewayPagamento = new GatewayPagamento();

        gatewayPagamento.credencial   = "bla";
        gatewayPagamento.MumeroCartao = detalhesDoPagamento.MumeroCartao;
        gatewayPagamento.MesExpiracao = detalhesDoPagamento.MesExpiracao;
        gatewayPagamento.AnoExpiracao = detalhesDoPagamento.AnoExpiracao;
        gatewayPagamento.NomeNoCartao = detalhesDoPagamento.NomeNoCartao;
        gatewayPagamento.Valor        = carrinho.ValorTotal;
        gatewayPagamento.Cobrar();
    }
        public Carrinho AdicionarItemNoCarrinho(Carrinho carrinho, ItemCarrinho itemCarrinho)
        {
            bool isValid = itemCarrinho.IsValid();

            carrinho.ResultadoValidacao = itemCarrinho.ResultadoValidacao;

            if (!isValid)
                return carrinho;

            carrinho.AdicionarItem(itemCarrinho);

            return carrinho;
        }
Example #11
0
        public bool addLivro(Carrinho carrinho, Livro livro)
        {
            LivrariaDataContext ldc2 = new LivrariaDataContext();

            Carrinho car = ldc2.Carrinhos.Single(c => c.Id == carrinho.Id);

            System.Diagnostics.Debug.WriteLine("Carrinho:" + car);
            Livro liv = ldc2.Livros.Single(l => l.Id == livro.Id);

            System.Diagnostics.Debug.WriteLine("Livro:" + liv);
            car.Livros.Add(liv);
            ldc2.SubmitChanges();
            return(true);
        }
        public Carrinho Obter(string usuario)
        {
            var value = _redis.Get($"{_key}:carrinho:{usuario}");

            if (string.IsNullOrWhiteSpace(value))
            {
                var carrinho = new Carrinho();
                Salvar(usuario, carrinho);

                return(carrinho);
            }

            return(JsonConvert.DeserializeObject <Carrinho>(value));
        }
Example #13
0
        public RedirectToRouteResult Remover(Carrinho carrinho, int produtoId, string returnUrl)
        {
            _repositorio = new ProdutosRepositorio();

            Produto produto = _repositorio.Produtos
                              .FirstOrDefault(p => p.ProdutoId == produtoId);

            if (produto != null)
            {
                carrinho.RemevorItem(produto);
            }

            return(RedirectToAction("Index", new { returnUrl }));
        }
Example #14
0
        public RedirectToRouteResult Adicionar(Carrinho carrinho, int produtoId, int quantidade, string returnUrl)
        {
            _repositorio = new ProdutosRepositorio();

            Produto produto = _repositorio.Produtos.
                              FirstOrDefault(p => p.ProdutoId == produtoId);

            if (produto != null)
            {
                carrinho.AdicionarItem(produto, quantidade);
            }

            return(RedirectToAction("Index", new { returnUrl }));
        }
        public void Adiciona_Produto_E_RetornaCategoria_Na_Url()
        {
            //Arrange
            Carrinho carrinho = new Carrinho();

            //Act
            CarrinhoController controller = new CarrinhoController();

            RedirectToRouteResult result = controller.Adicionar(carrinho, 2, "minhaUrl");

            //Assert
            Assert.AreEqual(result.RouteValues["action"], "Index");
            Assert.AreEqual(result.RouteValues["returnUrl"], "minhaUrl");
        }
        public async Task <IHttpActionResult> DeleteCarrinho(int id)
        {
            Carrinho carrinho = await db.Carrinhos.FindAsync(id);

            if (carrinho == null)
            {
                return(NotFound());
            }

            db.Carrinhos.Remove(carrinho);
            await db.SaveChangesAsync();

            return(Ok(carrinho));
        }
        public async Task <ActionResult> Add(int id)
        {
            var usuario = HttpContext.User.Identity.Name;

            Carrinho carrinho = _carrinhoServices.Get(usuario);

            var produto = await _produtoServices.GetProduto(id);

            carrinho.Add(produto);

            _carrinhoServices.Save(usuario, carrinho);

            return(PartialView("Index", carrinho));
        }
        public void Adiciono_Produto_No_Carrinho_Volta_Para_A_Categoria()
        {
            //Arrange

            Carrinho           carrinho   = new Carrinho();
            CarrinhoController controller = new CarrinhoController();

            //Act
            RedirectToRouteResult result = controller.Adicionar(carrinho, 2, "minhaUrl");

            //Assert
            Assert.AreEqual(result.RouteValues["action"], "Index");
            Assert.AreEqual(result.RouteValues["returnUrl"], "minhaUrl");
        }
        public IActionResult Put([FromBody] Carrinho carrinho)
        {
            if (carrinho == null)
            {
                return(BadRequest());
            }
            var updatedCarrinho = _carrinhoBusiness.Update(carrinho);

            if (updatedCarrinho == null)
            {
                return(BadRequest());
            }
            return(new OkObjectResult(updatedCarrinho));
        }
Example #20
0
        public static string ToJson(this Carrinho oCarrinho)
        {
            try
            {
                if (oCarrinho.ListaCotaItem == null && oCarrinho.CotaItem != null)
                {
                    (oCarrinho.ListaCotaItem = new List <CotaItem>()).Add(oCarrinho.CotaItem);
                }

                return(JsonConvert.SerializeObject(new
                {
                    Ret = 1,
                    Tipo = Convert.ToChar(oCarrinho.TipoLugar),
                    CarrinhoID = oCarrinho.ID,
                    oCarrinho.IngressoID,
                    oCarrinho.LugarID,
                    EventoID = oCarrinho.EventoID.ToString("000000"),
                    oCarrinho.Evento,
                    oCarrinho.ApresentacaoID,
                    Apresentacao = oCarrinho.ApresentacaoDataHora.ToString("dd/MM/yy à\\s HH:mm"),
                    oCarrinho.Local,
                    oCarrinho.Setor,
                    oCarrinho.PrecoID,
                    Preco = oCarrinho.PrecoNome,
                    oCarrinho.Codigo,
                    Valor = oCarrinho.PrecoValor.ToString("c"),
                    Conveniencia = oCarrinho.TaxaConveniencia.ToString("c"),
                    Total = (oCarrinho.PrecoValor + oCarrinho.TaxaConveniencia).ToString("c"),
                    TotalM = oCarrinho.PrecoValor + oCarrinho.TaxaConveniencia,
                    Status = oCarrinho.StatusDetalhado,
                    oCarrinho.SerieID,
                    oCarrinho.PacoteID,
                    oCarrinho.PacoteGrupo,
                    oCarrinho.PacoteNome,
                    oCarrinho.Precos,
                    oCarrinho.ListaCotaItem,
                    TemCota = (oCarrinho.ListaCotaItem != null && oCarrinho.ListaCotaItem.Count() > 0),
                    ExibirDados = (oCarrinho.ListaCotaItem != null && oCarrinho.ListaCotaItem.Count() > 0 && oCarrinho.ListaCotaItem.Where(c => c.ExibirDados).Count() > 0),
                    ExibirTermos = (oCarrinho.ListaCotaItem != null && oCarrinho.ListaCotaItem.Count() > 0 && oCarrinho.ListaCotaItem.Where(c => c.TemTermo).Count() > 0),
                    oCarrinho.SpecialEvent,
                    oCarrinho.TaxaProcessamento,
                    oCarrinho.Estado,
                    oCarrinho.SeguroMondial
                }, Formatting.None));
            }
            catch (Exception ex)
            {
                throw new Exception("Não foi possível converter o carrinho para o formato de exibição. Erro: " + ex.Message);
            }
        }
Example #21
0
        public void Carrinho_Deve_Remover_Produto()
        {
            var carrinho = new Carrinho();
            var produto  = new Produto
            {
                Id   = 1,
                Nome = "Notebook"
            };

            carrinho.Adicionar(produto, 1);
            Assert.NotEmpty(carrinho.Itens);
            carrinho.Remover(produto.Id);
            Assert.Empty(carrinho.Itens);
        }
Example #22
0
        public void Carrinho_Nao_Deve_Duplicar_Produto()
        {
            var carrinho = new Carrinho();
            var produto  = new Produto
            {
                Id   = 1,
                Nome = "Notebook"
            };

            carrinho.Adicionar(produto, 1);
            carrinho.Adicionar(produto, 1);

            Assert.Single(carrinho.Itens);
        }
Example #23
0
    public void Comprar(Carrinho carrinho, DetalhesPagamento detalhesPagamento, bool deveNotificarCliente)
    {
        if (detalhesPagamento.FormaPagamento == FormasPagamento.CARTAOCREDITO)
        {
            _processador.Processar(detalhesDoPagamento, carrinho);
        }

        _reservador.ReservarEstoque(carrinho);

        if (deveNotificarCliente)
        {
            _notificador.NotificarCliente(carrinho);
        }
    }
        public void SalvarItem(Carrinho itemCarrinho)
        {
            var Item = new ItensVenda
            {
                NumeroItem   = itemCarrinho.NumeroItem,
                ProdutoId    = itemCarrinho.ProdutoId,
                Quantidade   = itemCarrinho.Quantidade,
                SubTotal     = itemCarrinho.SubTotal,
                CodigoVenda  = CodigoVenda,
                PrecoProduto = itemCarrinho.ValorUnitario
            };

            Item.Salvar(Item);
        }
    public void Comprar(Carrinho carrinho, DetalhesPagamento detalhesPagamento, bool deveNotificarCliente)
    {
        if (detalhesPagamento.FormaPagamento == FormasPagamento.CARTAOCREDITO)
        {
            CobrarCartao(detalhesDoPagamento, carrinho);
        }

        ReservarEstoque(carrinho);

        if (deveNotificarCliente)
        {
            NotificarCliente(carrinho);
        }
    }
Example #26
0
 public HttpResponseMessage Get(int id)
 {
     try
     {
         CarrinhoDAO dao      = new CarrinhoDAO();
         Carrinho    carrinho = dao.Busca(id);
         return(Request.CreateResponse(HttpStatusCode.OK, carrinho));
     }
     catch (KeyNotFoundException)
     {
         string mensagem = string.Format("O carrinho {0} não foi encontrado", id);
         return(Request.CreateResponse(HttpStatusCode.NotFound, new HttpError(mensagem)));
     }
 }
Example #27
0
        private Carrinho ObterCarrinho()
        {
            //Como vai ser obtido um carrinho é necessário ter um carrinho 1º.
            //Cria o carrinho e adiciona uma sessão.
            Carrinho carrinho = (Carrinho)Session["Carrinho"];

            if (carrinho == null)
            {
                carrinho            = new Carrinho();
                Session["Carrinho"] = carrinho;
            }

            return(carrinho); //senão já retorna o carrinho já existente.
        }
    public void NotificarCliente(Carrinho carrinho)
    {
        var emailCliente = carrinho.EmailCliente;
        if(string.IsNullOrWhiteSpace(emailCliente))
            return;

        using(var email = new MailMessage("*****@*****.**", emailCliente))
        using(var smtp = new SmtpClient("localhost"))
        {
            email.Body = "This is a test e-mail message.";
            email.Subject("SMTP e-mail test");
            smtp.Send(email);
        }
    }
Example #29
0
        public void AdicionarItem_Sucesso_True()
        {
            var carrinho = new Carrinho();
            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            carrinho.AdicionarItem(itemCarrinho);

            Assert.IsTrue(carrinho.Count() == 1);
            Assert.IsTrue(carrinho.Contains(itemCarrinho));
        }
Example #30
0
        public Carrinho ProdutoToCarrinho(Produto produto)
        {
            Carrinho carrinho = new Carrinho()
            {
                IdCompra  = Guid.NewGuid().ToString(), //Rk
                Email     = "*****@*****.**",          //PK
                Nome      = "asd",
                Descricao = produto.Descricao,
                Preco     = produto.Preco
                            //DataDeCompra = produto.DataDeVenda,
            };

            return(carrinho);
        }
Example #31
0
 public void Pagar(Carrinho carrinho, DetalhePagamento detalhePagamento)
 {
     try
     {
         if (ValidaCartao(detalhePagamento))
         {
             //Finaliza compra com operador contratada
         }
     }
     catch (AvsMismatchException ex)
     {
         throw new Exception("O Cartao foi rejeitado.", ex);
     };
 }
        static void Main(string[] args)
        {
            Produto p1 = new Produto(1, "Iphone 12", 6000f);
            Produto p2 = new Produto(2, "Samsung Galaxy S20", 3500f);
            Produto p3 = new Produto(3, "Motorola Moto G9 Plus", 2000f);

            Carrinho carrinho = new Carrinho();

            carrinho.AdicionarProduto(p1);
            carrinho.AdicionarProduto(p2);
            carrinho.AdicionarProduto(p3);

            carrinho.MostrarProdutos();
        }
        static void Main(string[] args)
        {
            Produto p1 = new Produto(1, "Air Jordan 1 Retro High OG Chicago", 1.500f);
            Produto p2 = new Produto(2, "Air Jordan 11 Concord", 415f);
            Produto p3 = new Produto(3, "Air Jordan 6 Infrared", 324f);


            Carrinho carrinho = new Carrinho();

            carrinho.AdicionarCarrinho(p1);
            carrinho.AdicionarCarrinho(p2);
            carrinho.AdicionarCarrinho(p3);

            carrinho.MostrarProduto();
        }
Example #34
0
        public HttpResponseMessage Delete([FromUri] int idCarrinho, [FromUri] int idProduto)
        {
            try
            {
                CarrinhoDAO dao      = new CarrinhoDAO();
                Carrinho    carrinho = dao.Busca(idCarrinho);
                carrinho.Remove(idProduto);

                string mensagem = string.Format("Produto {0} deletado com sucesso do carrinho {1}!", idProduto, idCarrinho);
                return(Request.CreateResponse(HttpStatusCode.OK, mensagem));
            } catch (KeyNotFoundException)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }
        }
Example #35
0
 private void NotificadorSMS(Carrinho carrinho, bool notificarClienteSms)
 {
     if (notificarClienteSms)
     {
         if (!string.IsNullOrWhiteSpace(carrinho.Cliente.Celular))
         {
             var smsService = new SmsService
             {
                 Mensagem = "Obrigado por sua compra",
                 Celular  = carrinho.Cliente.Celular
             };
             smsService.EnviarSms();
         }
     }
 }
        public ViewResult Index(string returnurl)
        {
            Carrinho carrinho = ObterCarrinho();

            if (!carrinho.ItensCarrinho.Any())
            {
                return(View("Vazio"));
            }

            return(View(new CarrinhoViewModel
            {
                Carrinho = carrinho,
                ReturnUrl = returnurl
            }));
        }
Example #37
0
 public IActionResult GetAll()
 {
     try
     {
         return(Ok(_converter.Parser(Carrinho.FindAll())));
     }
     catch (MercurioCoreException ex)
     {
         return(StatusCode(400, new ErrorClass(400, ex.Message, DateTime.Now)));
     }
     catch (DBConnectionException ex)
     {
         return(StatusCode(500, new ErrorClass(500, ex.Message, DateTime.Now)));
     }
 }
Example #38
0
        private async Task <CarrinhoViewModel> CreateCarrinhoForUser(string usuarioId)
        {
            var carrinho = new Carrinho()
            {
                CompraId = usuarioId
            };
            await _carrinhoRepository.AddAsync(carrinho);

            return(new CarrinhoViewModel()
            {
                CompraId = carrinho.CompraId,
                Id = carrinho.Id,
                Items = new List <CarrinhoItemViewModel>()
            });
        }
        //private ClientesRepositorio _clientesRepositorio = new ClientesRepositorio();
        //private PedidosRepositorio _pedidosRepositorio = new PedidosRepositorio();

        // GET: Index
        public ViewResult Index(Carrinho carrinho, string returnUrl)
        {
            string varReturnUrlLimpa = HttpUtility.UrlDecode(new Regex(@"(?si:(Carrinho\/Index\?returnUrl=(?<Url>[^/]+)))").Match(returnUrl).Groups["Url"].Value);

            if (string.IsNullOrEmpty(varReturnUrlLimpa))
            {
                varReturnUrlLimpa = HttpUtility.UrlDecode(returnUrl);
            }

            return(View(new CarrinhoViewModel
            {
                Carrinho = carrinho,
                ReturnUrl = varReturnUrlLimpa
            }));
        }
Example #40
0
        public ViewResult PedidoConcluido(Carrinho carrinho, int pedidoId)
        {
            EmailConfiguracoes email = new EmailConfiguracoes
            {
                EscreverArquivo = bool.Parse(ConfigurationManager.AppSettings["Email.Escrever"] ?? "false")
            };

            var pedido = _pedidoRepositorio.ObterPedido(pedidoId);

            var emailPedido = new EmailPedido(email);

            emailPedido.ProcessarPedido(carrinho, pedido);
            carrinho.LimparCarrinho();
            return(View(pedido));
        }
Example #41
0
        public void VisualizarConteudoCarrinho()
        {
            //Arrange
            Carrinho carrinho = new Carrinho();

            CarrinhoController controller = new CarrinhoController();

            //Act
            CarrinhoViewModel resultado = (CarrinhoViewModel)controller.Index(carrinho, "minhaUrl").ViewData.Model;

            //Asserts
            Assert.AreSame(resultado.Carrinho, carrinho);

            Assert.AreEqual(resultado.ReturnUrl, "minhaUrl");
        }
Example #42
0
 public void ListaProdutosCarrinho()
 {
     try
     {
         txt_codigo_produto.Text = "";
         txt_codigo_produto.Focus();
         var produtos = new Carrinho();
         carrinhoBindingSource.DataSource = produtos.Listar();
         AtualizaValorTotal();
     }
     catch (Exception ex)
     {
         MessageBox.Show("Houve uma falha ao atualizar carrinho \n" + ex.Message, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Example #43
0
 public HttpResponseMessage GetDetalheArtigosCarrinho(Carrinho id)
 {
     HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", LocalhostIP.localhostIP());
     List<Artigo> produtos = Lib_Primavera.PriIntegration.GetArtigos(id);
     if (produtos == null)
     {
         return Request.CreateResponse(HttpStatusCode.Forbidden);
     }
     else
     {
         var json = new JavaScriptSerializer().Serialize(produtos);
         var response = Request.CreateResponse(HttpStatusCode.OK, json);
         return response;
     }
 }
        public void AdicionarItemNoCarrinho_Sucesso_False()
        {
            var carrinho = new Carrinho();
            var itemCarrinho = new ItemCarrinho();

            this.carrinhoService = new CarrinhoService();

            var carrinhoResult = carrinhoService.AdicionarItemNoCarrinho(carrinho, itemCarrinho);

            Assert.IsTrue(carrinhoResult.Count() == 0);
            Assert.IsFalse(carrinhoResult.Contains(itemCarrinho));
            Assert.IsFalse(carrinhoResult.ResultadoValidacao.IsValid);
            Assert.AreEqual(carrinhoResult.ResultadoValidacao.Erros.Count(), 2);
            Assert.IsTrue(carrinhoResult.ResultadoValidacao.Erros.Contains(ItemCarrinhoErrors.messageItemCarrinhoNaoPossuiProduto));
            Assert.IsTrue(carrinhoResult.ResultadoValidacao.Erros.Contains(ItemCarrinhoErrors.messageItemCarrinhoNaoPossuiQuantidade));
        }
        public void AdicionarItemNoCarrinho_Sucesso_True()
        {
            var carrinho = new Carrinho();
            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            this.carrinhoService = new CarrinhoService();

            var carrinhoResult = carrinhoService.AdicionarItemNoCarrinho(carrinho, itemCarrinho);

            Assert.IsTrue(carrinhoResult.ResultadoValidacao.IsValid);
            Assert.IsTrue(carrinhoResult.Count() == 1);
            Assert.IsTrue(carrinhoResult.Contains(itemCarrinho));
        }
Example #46
0
        //Retorna o objeto Carrinho com o ID passado
        public Carrinho dbObterCarrinho(int cartId)
        {
            Carrinho carrinho = new Carrinho();
            carrinho.Produtos = new List<ItemEstoque>();

            try
            {

                using (SqlConnection connection = new SqlConnection(conStr))
                {
                    connection.Open();

                    SqlCommand command = new SqlCommand("ecSP_CART_INFO", connection);
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.Add(new SqlParameter("@CARTID", cartId));

                    SqlDataReader reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        //ID
                        carrinho.ID = Convert.ToInt32(reader["CART_ID"]);

                        //DATA
                        carrinho.DataCriacao = Convert.ToDateTime(reader["CART_CREATION_DATE"]);

                        //Status
                        carrinho.Status = reader["CART_STATUS"].ToString();

                        //Se o carrinho tem um usuario atrelado a ele
                        if (reader["USER_ID"] != DBNull.Value)
                        {
                            carrinho.Usuario = new Usuario();

                            carrinho.Usuario.ID = Convert.ToInt32(reader["USER_ID"]);
                            carrinho.Usuario.Nome = reader["USER_NAME"].ToString();
                            carrinho.Usuario.Email = reader["USER_EMAIL"].ToString();
                            //TODO: COLOCAR O RESTO DAS PROPRIEDADES
                        }

                        //Se o carrinho tem items...
                        if (reader["STOCK_ITEM_ID"] != DBNull.Value)
                        {
                            ItemEstoque item = new ItemEstoque();
                            item.ID = Convert.ToInt32(reader["STOCK_ITEM_ID"]);
                            item.Status = reader["STOCK_ITEM_STATUS"].ToString();

                            //Produto
                            item.Produto = new Produto();
                            item.Produto.ID = Convert.ToInt32(reader["PRODUCT_ID"]);
                            item.Produto.Nome = reader["PRODUCT_NAME"].ToString();
                            item.Produto.Descricao = reader["PRODUCT_DESCRIPTION"].ToString();
                            item.Produto.CaminhoImagem = reader["PRODUCT_IMAGEPATH"].ToString();
                            item.Produto.Preco = Convert.ToDecimal(reader["PRODUCT_PRICE"]);

                            //Categoria
                            item.Produto.Categoria = new Categoria();
                            item.Produto.Categoria.ID = Convert.ToInt32(reader["CATEGORY_ID"]);
                            item.Produto.Categoria.Nome = reader["CATEGORY_NAME"].ToString();
                            item.Produto.Categoria.Descricao = reader["CATEGORY_DESCRIPTION"].ToString();

                            //ADICIONA À LISTA DE PRODUTOS
                            carrinho.Produtos.Add(item);
                        }

                    }

                    return carrinho;
                }

            }
            catch (Exception ex)
            {
                throw new Exception("UsuarioDAL - ObterUsuario: " + ex.Message);
            }
        }
 public ItemCarrinho SelecionarItemCarrinhoPorId(Carrinho carrinho, Guid itemCarrinhoId)
 {
     return carrinho.SelecionarItemPorId(itemCarrinhoId);
 }
Example #48
0
        public void SelecionarItemPorId_Sucesso_True()
        {
            var carrinho = new Carrinho();
            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            carrinho.AdicionarItem(itemCarrinho);

            var itemResult = carrinho.SelecionarItemPorId(itemCarrinho.ItemCarrinhoId);

            Assert.AreEqual(itemResult, itemCarrinho);
        }
Example #49
0
        public void ForEachNoCarrinho_Sucesso_True()
        {
            var carrinho = new Carrinho();
            var itemCarrinho = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            var itemCarrinho2 = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            var itemCarrinho3 = new ItemCarrinho()
            {
                Produto = new Produto(),
                Quantidade = 5
            };

            carrinho.AdicionarItem(itemCarrinho);
            carrinho.AdicionarItem(itemCarrinho2);
            carrinho.AdicionarItem(itemCarrinho3);

            IList<ItemCarrinho> listResult = new List<ItemCarrinho>();

            foreach (var item in carrinho)
            {
                listResult.Add(item);
            }

            Assert.IsTrue(listResult.Count == 3);
            Assert.IsTrue(listResult.Contains(itemCarrinho));
            Assert.IsTrue(listResult.Contains(itemCarrinho2));
            Assert.IsTrue(listResult.Contains(itemCarrinho3));
        }