public string Post(CarrinhoProduto carrinhoProduto)
        {
            try
            {
                SqlConnection sqlConn = new SqlConnection(connectionString);

                sqlConn.Open();

                SqlCommand cmd = new SqlCommand(string.Format("INSERT INTO carrinho_produtos(carrinho_id, produto_id, quantidade) values ('{0}','{1}','{2}') "
                                                              , carrinhoProduto.CarrinhoId, carrinhoProduto.ProdutoId, carrinhoProduto.Quantidade), sqlConn);

                int result = cmd.ExecuteNonQuery();

                sqlConn.Close();

                if (result == 0)
                {
                    return("{\"resposta\" : \"Ocorreu um erro ao inserir os dados.\"}");
                }

                return("{\"resposta\" : \"Registro incluído com sucesso.\"}");
            }
            catch (Exception ex)
            {
                return("{\"resposta\" : \"Ocorreu um erro.\"}");
            }
        }
        public ActionResult <CarrinhoProduto> Get(int id)
        {
            try
            {
                SqlConnection sqlConn = new SqlConnection(connectionString);

                sqlConn.Open();

                SqlCommand cmd = new SqlCommand("Select * from carrinho_produtos where id = " + id, sqlConn);

                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.Read())
                {
                    CarrinhoProduto cp = new CarrinhoProduto()
                    {
                        CarrinhoId = (int)dr["carrinho_id"],
                        ProdutoId  = (int)dr["produto_id"],
                        Quantidade = (int)dr["quantidade"]
                    };
                    sqlConn.Close();

                    return(cp);
                }
                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
        public ActionResult <List <CarrinhoProduto> > Get()
        {
            try
            {
                SqlConnection sqlConn = new SqlConnection(connectionString);

                sqlConn.Open();

                SqlCommand cmd = new SqlCommand("Select * from carrinho_produtos", sqlConn);

                SqlDataReader dr = cmd.ExecuteReader();

                List <CarrinhoProduto> result = new List <CarrinhoProduto>();

                while (dr.Read())
                {
                    CarrinhoProduto cp = new CarrinhoProduto()
                    {
                        CarrinhoId = (int)dr["carrinho_id"],
                        ProdutoId  = (int)dr["produto_id"],
                        Quantidade = (int)dr["quantidade"]
                    };
                    result.Add(cp);
                }

                sqlConn.Close();
                return(result);
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
        public string Put(int id, CarrinhoProduto carrinhoProduto)
        {
            try
            {
                SqlConnection sqlConn = new SqlConnection(connectionString);

                sqlConn.Open();

                SqlCommand cmd = new SqlCommand(string.Format("UPDATE carrinho_produtos SET quantidade = '{0}' WHERE id = {1}", carrinhoProduto.Quantidade, id), sqlConn);

                int result = cmd.ExecuteNonQuery();

                sqlConn.Close();

                if (result == 0)
                {
                    return("{\"resposta\" : \"Ocorreu um erro ao atualizar os dados.\"}");
                }

                return("{\"resposta\" : \"Registro atualizado com sucesso.\"}");
            }
            catch (Exception ex)
            {
                return("{\"resposta\" : \"Ocorreu um erro.\"}");
            }
        }
示例#5
0
        public ActionResult DeleteConfirmed(int id)
        {
            CarrinhoProduto carrinhoProduto = db.carrinhoProdutos.Find(id);

            db.carrinhoProdutos.Remove(carrinhoProduto);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#6
0
 public ActionResult Edit([Bind(Include = "carrinhoId,quantidade")] CarrinhoProduto carrinhoProduto)
 {
     if (ModelState.IsValid)
     {
         db.Entry(carrinhoProduto).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(carrinhoProduto));
 }
示例#7
0
        public ActionResult Create([Bind(Include = "carrinhoId,quantidade")] CarrinhoProduto carrinhoProduto)
        {
            if (ModelState.IsValid)
            {
                db.carrinhoProdutos.Add(carrinhoProduto);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(carrinhoProduto));
        }
示例#8
0
        // GET: CarrinhoProdutoes/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            CarrinhoProduto carrinhoProduto = db.carrinhoProdutos.Find(id);

            if (carrinhoProduto == null)
            {
                return(HttpNotFound());
            }
            return(View(carrinhoProduto));
        }
示例#9
0
        public ActionResult AddToCart(FormCollection form)
        {
            //get the product id
            var      estoqueId = Convert.ToInt32(form["estoqueId"].ToString());
            Carrinho car       = new Carrinho();

            //Check if cart exists
            if (HttpContext.Session["cartID"] != null && HttpContext.Session["cartID"].ToString() != "")
            {
                var idCart = Convert.ToInt32(HttpContext.Session["cartID"].ToString());
                car = DbConfig.Instance.CarrinhoRepository.FindAll().Where(x => x.Id == idCart).FirstOrDefault();
                car.CarrinhoProduto = DbConfig.Instance.CarrinhoProdutoRepository.FindAll().Where(x => x.Carrinho.Id == car.Id).ToList();

                //Check if the product is already in cart

                foreach (var cps in car.CarrinhoProduto)
                {
                    if (cps.Estoque.Id == estoqueId)
                    {
                        cps.Quantidade++;
                        return(View("Carrinho", car));
                    }
                }
            }
            else
            {
                car = DbConfig.Instance.CarrinhoRepository.Salvar(car);
            }


            Estoque est = DbConfig.Instance.EstoqueRepository.FindAll().Where(x => x.Id == estoqueId).FirstOrDefault();

            //Create new CP
            CarrinhoProduto cp = new CarrinhoProduto();

            cp            = DbConfig.Instance.CarrinhoProdutoRepository.Salvar(cp);
            cp.Estoque    = est;
            cp.Carrinho   = car;
            cp.Quantidade = 1;

            cp = DbConfig.Instance.CarrinhoProdutoRepository.Salvar(cp);

            car.CarrinhoProduto = DbConfig.Instance.CarrinhoProdutoRepository.FindAll().Where(x => x.Carrinho.Id == car.Id).ToList();

            HttpContext.Session["cartID"] = car.Id;

            return(View("Carrinho", car));
        }
示例#10
0
        public ActionResult AumentarProduto(FormCollection form)
        {
            var             cpId = Convert.ToInt32(form["carrinhoProdutoID"].ToString());
            CarrinhoProduto cp   = DbConfig.Instance.CarrinhoProdutoRepository.FindAll().Where(x => x.Id == cpId).FirstOrDefault();

            try
            {
                cp.Quantidade = Convert.ToInt32(form["quantidade"]);
                DbConfig.Instance.CarrinhoProdutoRepository.Salvar(cp);
            }
            catch (Exception)
            {
                //  throw;
            }

            return(RedirectToAction("Carrinho"));
        }
示例#11
0
        public ActionResult AddToCart(int id)
        {
            var CPF     = Session["clienteCPF"];
            var cliente = db.Cliente.Find(CPF);
            var produto = db.Produto.Find(id);
            int qtd;

            try
            {
                var carrinho = db.Carrinho.Where(c => c.Cliente.CPF == CPF.ToString() && c.StatusCarrinho.ID == 1);
                if (carrinho != null && carrinho.Any())
                {
                    Carrinho carrinhoNovo    = carrinho.First();
                    var      carrinhoProduto = db.CarrinhoProduto.Where(c => c.Carrinho.ID == carrinhoNovo.ID && c.Produto.Codigo == id);
                    if (carrinhoProduto != null && carrinhoProduto.Any())
                    {
                        CarrinhoProduto cp = carrinhoProduto.First();
                        cp.Quantidade += 1;
                        qtd            = cp.Quantidade;

                        var carrinhoProduto1 = db.CarrinhoProduto.Where(c => c.Carrinho.ID == carrinhoNovo.ID);
                        if (carrinhoProduto1 != null && carrinhoProduto1.Any())
                        {
                            List <CarrinhoProduto> cpList = carrinhoProduto1.ToList();
                            qtd = cpList.Count;
                        }
                    }
                    else
                    {
                        CarrinhoProduto cp = new CarrinhoProduto();
                        cp.Carrinho            = carrinhoNovo;
                        cp.Produto             = produto;
                        cp.Quantidade          = 1;
                        qtd                    = int.Parse(Session["qtdCarrinho"].ToString());
                        Session["qtdCarrinho"] = qtd += 1;
                        db.CarrinhoProduto.Add(cp);
                    }
                    db.SaveChanges();
                }
                else
                {
                    Carrinho       c  = new Carrinho();
                    StatusCarrinho st = db.StatusCarrinho.Find(1);
                    c.StatusCarrinho = st;
                    c.Cliente        = cliente;
                    db.Carrinho.Add(c);
                    db.SaveChanges();
                    var             newCarrinho = db.Carrinho.Where(ca => ca.Cliente.CPF == CPF.ToString() && ca.StatusCarrinho.ID == 1).First();
                    CarrinhoProduto cp          = new CarrinhoProduto();
                    cp.Carrinho   = newCarrinho;
                    cp.Produto    = produto;
                    cp.Quantidade = 1;
                    qtd           = 1;
                    db.CarrinhoProduto.Add(cp);
                    db.SaveChanges();
                }


                Session["qtdCarrinho"] = qtd;
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return(RedirectToAction("Index", "Produtos"));
        }
示例#12
0
        public static void Run()
        {
            Console.WriteLine("Exemplo de carrinho de compras. Relacionamento Many-to-Many.");

            using (var dBContext = new CarrinhoComprasContext())
            {
                Produto produto = new Produto
                {
                    Nome       = "NVidia GForce 6800",
                    Preco      = new Decimal(79.99),
                    Quantidade = 20
                };
                Console.WriteLine("Criando produto: ", produto.ToString());
                dBContext.Produto.Add(produto);

                produto = new Produto
                {
                    Nome       = "SSD 240GB WD Green",
                    Preco      = new Decimal(299.99),
                    Quantidade = 10
                };
                Console.WriteLine("Criando produto: ", produto.ToString());
                dBContext.Produto.Add(produto);

                produto = new Produto
                {
                    Nome       = "Notebook Lenovo Ideapad i5 1TB 16GB",
                    Preco      = new Decimal(2999.99),
                    Quantidade = 10
                };
                Console.WriteLine("Criando produto: ", produto.ToString());
                dBContext.Produto.Add(produto);

                dBContext.Produto.Add(produto);

                Carrinho carrinho = new Carrinho
                {
                    Data_Compra = new DateTime(2020, 07, 20)
                };

                Console.WriteLine("Criando carrinho de compras: ", carrinho.ToString());
                dBContext.Carrinho.Add(carrinho);

                var             carrinhoBase    = dBContext.Carrinho.First();
                var             produtoBase     = dBContext.Produto.First();
                CarrinhoProduto carrinhoProduto = new CarrinhoProduto
                {
                    Carrinho_Id = carrinhoBase.Carrinho_Id,
                    Produto_Id  = produtoBase.Produto_Id,
                    Quantidade  = 2,
                    Preco_Total = new Decimal(220.00)
                };
                dBContext.Add(carrinhoProduto);
                Console.WriteLine("Associando um carrinho de compras a um produto.");

                Console.WriteLine("Salvando alterações...");
                dBContext.SaveChanges();
                Console.WriteLine("Cadastro realizado com sucesso!");
            }

            Console.WriteLine("Demonstração Many-to-one concluída.");
            Console.ReadLine();
        }