public int Add(VendaItem item) { try { var _conn = new SqlConnection(_connectionString); var _cmdText = ""; if (item.VendaItemId == 0) { _cmdText = " INSERT INTO VENDA_ITENS ( " + " VEN_ITEM_VEN_ID, " + " VEN_ITEM_PROD_ID, " + " VEN_ITEM_QTDE, " + " VEN_ITEM_VALOR_UNITARIO, " + " VEN_ITEM_DESCONTO ) " + " VALUES ( " + " @VEN_ITEM_VEN_ID, " + " @VEN_ITEM_PROD_ID, " + " @VEN_ITEM_QTDE, " + " @VEN_ITEM_VALOR_UNITARIO, " + " @VEN_ITEM_DESCONTO ); " + " SELECT SCOPE_IDENTITY(); "; } else { _cmdText = " UPDATE VENDA_ITENS SET " + " VEN_ITEM_VEN_ID = @VEN_ITEM_VEN_ID, " + " VEN_ITEM_PROD_ID = @VEN_ITEM_PROD_ID, " + " VEN_ITEM_QTDE = @VEN_ITEM_QTDE, " + " VEN_ITEM_VALOR_UNITARIO = @VEN_ITEM_VALOR_UNITARIO, " + " VEN_ITEM_DESCONTO = @VEN_ITEM_DESCONTO " + " WHERE VEN_ITEM_ID = @VEN_ITEM_ID "; } var _cmd = new SqlCommand(_cmdText, _conn); if (item.VendaItemId > 0) { _cmd.Parameters.AddWithValue("@VEN_ITEM_ID", item.VendaItemId); } _cmd.Parameters.AddWithValue("@VEN_ITEM_VEN_ID", item.VendaId); _cmd.Parameters.AddWithValue("@VEN_ITEM_PROD_ID", item.Produto.ProdutoId); _cmd.Parameters.AddWithValue("@VEN_ITEM_QTDE", item.Quantidade); _cmd.Parameters.AddWithValue("@VEN_ITEM_VALOR_UNITARIO", item.ValorUnitario); _cmd.Parameters.AddWithValue("@VEN_ITEM_DESCONTO", item.Desconto); _conn.Open(); var _retorno = Convert.ToInt32(_cmd.ExecuteScalar()); _conn.Close(); return(_retorno); } catch (Exception ex) { throw ex; } }
private bool equals(VendaItem vendaItem1, VendaItem vendaItem2) { return(vendaItem1 != null && vendaItem2 != null && vendaItem1.ItemID == vendaItem2.ItemID && vendaItem1.ItemPrice == vendaItem2.ItemPrice && vendaItem1.ItemQuantity == vendaItem2.ItemQuantity); }
static void NovaVenda() { var cliente = new Cliente(); cliente.Nome = "PEDRO"; cliente.DataNascimento = new DateTime(2000, 12, 1); cliente.Cpf = "999.999.999-99"; var produto = new Produto(); produto.Codigo = "9999"; produto.Descricao = "CAMISA NIKE"; produto.Valor = 100; var itemVenda = new VendaItem(); itemVenda.Produto = produto; itemVenda.Quantidade = 2; itemVenda.Desconto = 10; var venda = new Venda(); venda.Cliente = cliente; venda.ItensDaVenda = new List <VendaItem>(); venda.ItensDaVenda.Add(itemVenda); var contexto = new VendasContext(); contexto.Vendas.Add(venda); contexto.SaveChanges(); }
private void SalvarItens(IEnumerable <ComandaItemDto> itens, AdicionarVendaItemRequest vendaItemRequest) { if (vendaItemRequest.VendaId == 0) { InserirVenda(itens); } var itensAtualizar = new List <VendaItem>(); foreach (var item in itens.Where(i => i.State == Tracking.Modified)) { itensAtualizar.Add(VendaItem.Novo(item)); } var itensInserir = new List <VendaItem>(); foreach (var item in itens.Where(i => i.State == Tracking.Inserted)) { var vendaItem = VendaItem.Novo(item); itensInserir.Add(vendaItem); item.VendaItemId = vendaItem.Id; } vendaItemRepository.Salvar(itensInserir, itensAtualizar); unitOfWork.Commit(); PreencherVendaItemIds(itens, itensInserir); }
public async Task <IActionResult> Edit(long id, [Bind("Id,ProdutoId,VendaId,Quantidade,Valor,Desconto")] VendaItem vendaItem) { if (id != vendaItem.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(vendaItem); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!VendaItemExists(vendaItem.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["ProdutoId"] = new SelectList(_context.Produtos, "Id", "Id", vendaItem.ProdutoId); ViewData["VendaId"] = new SelectList(_context.Vendas, "Id", "Id", vendaItem.VendaId); return(View(vendaItem)); }
public IActionResult vendaItemPost(int vendaId, [FromBody] VendaItem vendaItem) { try { if (vendaItem == null) { return(BadRequest(ModelState)); } if (ModelState.IsValid) { vendaItem.VendaItemId = 0; vendaItem.VendaItemId = _vendaItemRepository.Add(vendaItem); return(CreatedAtAction("Get", new { Id = vendaItem.VendaItemId }, vendaItem)); } else { return(BadRequest(ModelState)); } } catch (Exception ex) { ModelState.AddModelError("", "Erro ao criar uma vendaitem." + System.Environment.NewLine + " Detalhes:" + ex.Message); return(BadRequest(ModelState)); } }
public void Remover(VendaItem vendaItem) { var itemVenda = contexto.Clientes.FirstOrDefault(x => x.Id == vendaItem.Id); itemVenda.Ativo = false; contexto.SaveChanges(); }
public VendaItemDTO Converter(VendaItem item) { var retorno = new VendaItemDTO(); retorno.Item = _produtosRepository.Obter(item.ProdutoId); retorno.Quantidade = item.Quantidade; return(retorno); }
public VendaItem Converter(VendaItemDTO item, int idVenda) { var retorno = new VendaItem(); retorno.ProdutoId = item.Item.Id; retorno.Quantidade = item.Quantidade; retorno.VendaId = idVenda; return(retorno); }
private void InserirItem(object sender, EventArgs e) { try { var idVenda = int.Parse(labelIdVenda.Text.ToString()); var idTipoQuentinha = 0; if (inputTipoQuentinha.SelectedValue != null) { int.TryParse(inputTipoQuentinha.SelectedValue.ToString(), out idTipoQuentinha); } var quantidade = 0; int.TryParse(inputQuantidade.Text.ToString(), out quantidade); if (idTipoQuentinha == 0) { throw new Exception("Selecione um Tipo de Quentinha"); } if (quantidade == 0) { throw new Exception("Preencha corretamente o campo de Quantidade"); } using (var context = new ApplicationDbContext()) { var tipoQuentinha = context.TiposQuentinha.Where(x => x.Id == idTipoQuentinha).FirstOrDefault(); if (tipoQuentinha == null) { throw new Exception("Tipo não encontrado"); } var valorPagoUnidade = quantidade >= 5 ? (tipoQuentinha.Valor * 0.9785M) : tipoQuentinha.Valor; var venda = context.Vendas.FirstOrDefault(x => x.Id == idVenda); if (venda == null) { throw new Exception("Venda não encontrada"); } var itemVenda = new VendaItem(); itemVenda.VendaId = idVenda; itemVenda.Quantidade = quantidade; itemVenda.ValorPagoUnidade = valorPagoUnidade; itemVenda.TipoQuentinhaId = idTipoQuentinha; context.VendaItens.Add(itemVenda); context.SaveChanges(); CarregaValorVenda(sender, e); CarregaItensVenda(idVenda); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Erro"); } }
public GeraVendaCommandTests() { _vendaCommand = new GeraVendaCommand(_usuario); _vi1 = new VendaItem(_p1, 10); _vi2 = new VendaItem(_p2, 10); _vi3 = new VendaItem(_p3, 10); _vi4 = new VendaItem(_p4, 10); _vi5 = new VendaItem(_p5, 10); }
public VendaTest() { _novaVenda = new Venda(_usuario); _vi1 = new VendaItem(_p1, 10); _vi2 = new VendaItem(_p2, 10); _vi3 = new VendaItem(_p3, 10); _vi4 = new VendaItem(_p4, 10); _vi5 = new VendaItem(_p5, 10); }
public ItemVendaViewModel Map(VendaItem vendaItem) { return(new ItemVendaViewModel { PrecoUnitario = vendaItem.PrecoUnitario, Quantidade = vendaItem.Quantidade, CodigoProduto = vendaItem.CodigoProduto, DescricaoProduto = vendaItem.Produto?.Descricao }); }
public async Task Adicionar(VendaItem vendaItem) { if (_vendaItemRepository.Buscar(v => v.Id == vendaItem.Id).Result.Any()) { Notificar("Este Item já foi adicionado"); return; } await _vendaItemRepository.Adicionar(vendaItem); }
public int AdicionarItem(AdicionarVendaItemRequest vendaItemRequest) { if (!ValidarRequest(vendaItemRequest)) { return(0); } var vendaItem = new VendaItem(vendaItemRequest.VendaId, vendaItemRequest.ProdutoId, string.Empty, vendaItemRequest.Preco, vendaItemRequest.Desconto); return(vendaService.AdicionarItem(vendaItem)); }
public void TestAdd() { Venda venda = new Venda("00000000001", Cliente.InstanceClienteWithFields("Cliente novo", "21109414056", new DateTime(1988, 9, 12), "*****@*****.**", "(35) 98417-9253")); venda.AddVendaItem(VendaItem.InstanceVendaItemWithFields(Produto.InstanceProdutoWithFields("Produto 1"), (decimal)10.00, 5)); venda.AddVendaItem(VendaItem.InstanceVendaItemWithFields(Produto.InstanceProdutoWithFields("Produto 2"), (decimal)20.00, 6)); venda.AddVendaItem(VendaItem.InstanceVendaItemWithFields(Produto.InstanceProdutoWithFields("Produto 3"), (decimal)30.00, 7)); venda.AddVendaItem(VendaItem.InstanceVendaItemWithFields(Produto.InstanceProdutoWithFields("Produto 4"), (decimal)40.00, 8)); repository.Save(venda); }
public void Verifica_Baixa_Estoque() { var vendaItem = new VendaItem(); var produto = new Produto(); vendaItem.Quantidade = 3; produto.QuantidadeEstoque = 3; vendaItem.Produto = produto; var obj = vendaItem.Produto.Diminuir_Quantidade_Venda(3); Assert.AreEqual(0, obj); }
private static void InserirItensDaVenda(VendaViewModel vendaTipada, Venda venda) { var itensDaVenda = vendaTipada.ItensVendas.Replace("[", "").Replace("]", "").Split(","); CultureInfo cultures = new CultureInfo("en-US"); foreach (var itemDaVenda in itensDaVenda) { var dadosDoItem = itemDaVenda.Split("-"); var item = new VendaItem(int.Parse(dadosDoItem[0]), int.Parse(dadosDoItem[1]), Convert.ToDecimal(dadosDoItem[2], cultures)); venda.Itens.Add(item); } }
public VendaItem GetItem(int Id) { if (Id <= 0) { throw new Exception("O parâmetro Id deve ser um número inteiro positivo!"); } try { var _produtoRepository = new ProdutoRepository(); var _conn = new SqlConnection(_connectionString); var _cmdText = " SELECT " + " VEN_ITEM_ID, " + " VEN_ITEM_VEN_ID, " + " VEN_ITEM_PROD_ID, " + " VEN_ITEM_QTDE, " + " VEN_ITEM_VALOR_UNITARIO, " + " VEN_ITEM_DESCONTO " + " FROM VENDA_ITENS " + " WHERE VEN_ITEM_ID = @VEN_ITEM_ID "; var _cmd = new SqlCommand(_cmdText, _conn); _cmd.Parameters.AddWithValue("@VEN_ITEM_ID", Id); var _dt = new DataTable(); _conn.Open(); _dt.Load(_cmd.ExecuteReader()); _conn.Close(); var _vendaItem = new VendaItem(); if (_dt.Rows.Count > 0) { _vendaItem.VendaItemId = Convert.ToInt32(_dt.Rows[0]["VEN_ITEM_ID"]); _vendaItem.VendaId = Convert.ToInt32(_dt.Rows[0]["VEN_ITEM_VEN_ID"].ToString()); _vendaItem.Produto = _produtoRepository.GetItem(Convert.ToInt32((_dt.Rows[0]["VEN_ITEM_PROD_ID"]))); _vendaItem.Quantidade = Convert.ToInt32(_dt.Rows[0]["VEN_ITEM_QTDE"].ToString()); _vendaItem.ValorUnitario = Convert.ToDecimal(_dt.Rows[0]["VEN_ITEM_VALOR_UNITARIO"]); _vendaItem.Desconto = Convert.ToDecimal(_dt.Rows[0]["VEN_ITEM_DESCONTO"].ToString()); } return(_vendaItem); } catch (Exception ex) { throw ex; } }
public Venda Salvar(long id, long[] produtoId, decimal[] quantidade, DateTime dataVenda, string cliente ) { Venda venda = null; if (id > 0) { venda = _vendaRepository.GetById(id); } else { venda = new Venda { NomeCliente = cliente, DataVenda = DateTime.Now }; } //Atualiza de acordo com o que foi digitado venda.Itens.Clear(); for (int i = 0; i < produtoId.Count(); i++) { var prod = _produtoRepository.GetById(produtoId[i]); var item = new VendaItem() { Venda = venda, Produto = prod, Quantidade = quantidade[i], Total = quantidade[i] * prod.Preco }; var msg = string.Empty; //if (prod.QuantidadeEstoque < quantidade[i]) if (!item.Verifica_Estoque_E_Qtd_Zerada(out msg)) { throw new InvalidOperationException(msg); } prod.Diminuir_Quantidade_Venda(quantidade[i]); venda.Itens.Add(item); } venda.Total = venda.Itens.Sum(x => x.Total); _vendaRepository.Save(venda); _vendaRepository.CommitTran(); return(venda); }
// GET: VendaItem/Create public IActionResult Create(long?idVenda) { ViewData["ProdutoId"] = new SelectList(_context.Produtos, "Id", "Id"); var vendaItem = new VendaItem(); if (idVenda.HasValue) { vendaItem.VendaId = idVenda.Value; } return(View(vendaItem)); }
public void Verifica_Estoque_E_Qtd_Zerada_Passando_Quantidade_Menor_Estoque() { var msg = String.Empty; var vendaItem = new VendaItem(); var produto = new Produto(); vendaItem.Quantidade = 3; produto.QuantidadeEstoque = 3; vendaItem.Produto = produto; var obj = vendaItem.Verifica_Estoque_E_Qtd_Zerada(out msg); Assert.AreEqual(true, obj); }
public async Task <IActionResult> Create([Bind("Id,ProdutoId,VendaId,Quantidade,Valor,Desconto")] VendaItem vendaItem) { if (ModelState.IsValid) { _context.Add(vendaItem); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["ProdutoId"] = new SelectList(_context.Produtos, "Id", "Id", vendaItem.ProdutoId); ViewData["VendaId"] = new SelectList(_context.Vendas, "Id", "Id", vendaItem.VendaId); return(View(vendaItem)); }
public List <VendaItem> RetornarTodosPorVendaId(int vendaId) { try { var _vendaItens = new List <VendaItem>(); var _produtoRepository = new ProdutoRepository(); var _conn = new SqlConnection(_connectionString); var _cmdText = " SELECT " + " VEN_ITEM_ID, " + " VEN_ITEM_VEN_ID, " + " VEN_ITEM_PROD_ID, " + " VEN_ITEM_QTDE, " + " VEN_ITEM_VALOR_UNITARIO, " + " VEN_ITEM_DESCONTO " + " FROM VENDA_ITENS " + " WHERE VEN_ITEM_VEN_ID = @VEN_ITEM_VEN_ID "; var _cmd = new SqlCommand(_cmdText, _conn); _cmd.Parameters.AddWithValue("@VEN_ITEM_VEN_ID", vendaId); var _dt = new DataTable(); _conn.Open(); _dt.Load(_cmd.ExecuteReader()); _conn.Close(); foreach (DataRow _row in _dt.Rows) { var _vendaItem = new VendaItem(); _vendaItem.VendaItemId = Convert.ToInt32(_row["VEN_ITEM_ID"]); _vendaItem.VendaId = Convert.ToInt32(_row["VEN_ITEM_VEN_ID"].ToString()); _vendaItem.Produto = _produtoRepository.GetItem(Convert.ToInt32((_row["VEN_ITEM_PROD_ID"]))); _vendaItem.Quantidade = Convert.ToInt32(_row["VEN_ITEM_QTDE"].ToString()); _vendaItem.ValorUnitario = Convert.ToDecimal(_row["VEN_ITEM_VALOR_UNITARIO"]); _vendaItem.Desconto = Convert.ToDecimal(_row["VEN_ITEM_DESCONTO"].ToString()); _vendaItens.Add(_vendaItem); } return(_vendaItens); } catch (Exception ex) { throw ex; } }
public void Adicionar(VendaItem venda) { using (var con = _provider.CreateConnection()) { con.Execute($@"INSERT INTO vendaItem (VendaId, ProdutoId, Quantidade) VALUES (@VendaId, @ProdutoId, @Quantidade)", new { VendaId = venda.VendaId, ProdutoId = venda.ProdutoId, Quantidade = venda.Quantidade }); } }
public void Salvar(VendaItem vendaItem) { if (vendaItem.Id > 0) { var itemVenda = contexto.VendaItens.FirstOrDefault(x => x.Id == vendaItem.Id); itemVenda.Produto = vendaItem.Produto; itemVenda.Quantidade = vendaItem.Quantidade; itemVenda.ValorUnitario = vendaItem.ValorUnitario; } else { contexto.VendaItens.Add(vendaItem); } contexto.SaveChanges(); }
private void AdicionarAoCarrinho(VendaItem vendaItem) { if (TempData["Carrinho"] != null) { var carrinho = TempData["Carrinho"] as List <VendaItem>; vendaItem.Id = carrinho.Count + 1; carrinho.Add(vendaItem); TempData["Carrinho"] = carrinho; } else { TempData["Carrinho"] = new List <VendaItem> { vendaItem } }; }
public void VendaItem(Venda venda, VendaItem item) { if (venda == null) { return; } if (item == null) { return; } venda.Itens.Add(item); if (item.IdVenda == 0) { item.IdVenda = venda.IdVenda; } _repositorioVenda.AdicionarItem(item); }
protected void btnFinalizarVenda_Click(object sender, EventArgs e) { int venda = Convert.ToInt32(Session["VendaID"]); int produto = Convert.ToInt32(Session["ProdutoID"]); int quantidade = Convert.ToInt32(lblQuantidade.Text); decimal subtotal = Convert.ToDecimal(lblSubtotal.Text); decimal preco = Convert.ToDecimal(lblPreco.Text); VendaItemBD vendaItemBD = new VendaItemBD(); VendaItem vendaItem = new VendaItem(); vendaItem.Produto = produto; vendaItem.Venda = venda; vendaItem.Quantidade = quantidade; vendaItem.Subtotal = subtotal; vendaItem.PrecoUnitario = preco; vendaItemBD.Insert(vendaItem); VendaBD vendaBD = new VendaBD(); vendaBD.UpdateTotal(venda, subtotal); Session["VendaID"] = 0; Session["CategoriaID"] = 0; Session["ProdutoID"] = 0; ProdutoMPBD bd = new ProdutoMPBD(); DataSet ds = bd.SelectProdutoMP(produto); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { DataRow dr = ds.Tables[0].Rows[i]; int MP = Convert.ToInt32(dr["mat_codigo"]); double quantidademp = Convert.ToDouble(dr["pmp_quantidade"]); int saida = 1; double total = quantidade * quantidademp; EstoqueMPBD estoque = new EstoqueMPBD(); estoque.InsertEstoque(MP, total, saida); } Response.Redirect("NovaVenda.aspx"); }
public bool Insert(VendaItem item) { System.Data.IDbConnection objConexao; System.Data.IDbCommand objCommand; string sql = "INSERT INTO tbl_vendaitem(pro_codigo, ven_codigo, vit_quantidade, vit_subtotal, vit_precounitario) VALUES (?produto, ?venda, ?quantidade, ?subtotal, ?precounitario)"; objConexao = Mapped.Connection(); objCommand = Mapped.Command(sql, objConexao); objCommand.Parameters.Add(Mapped.Parameter("?produto", item.Produto)); objCommand.Parameters.Add(Mapped.Parameter("?venda", item.Venda)); objCommand.Parameters.Add(Mapped.Parameter("?quantidade", item.Quantidade)); objCommand.Parameters.Add(Mapped.Parameter("?subtotal", item.Subtotal)); objCommand.Parameters.Add(Mapped.Parameter("?precounitario", item.PrecoUnitario)); objCommand.ExecuteNonQuery(); objConexao.Close(); objCommand.Dispose(); objConexao.Dispose(); return(true); }