protected void RptItensPedido_ItemCommand(object source, RepeaterCommandEventArgs e) { try { if (e.CommandName == "Remover") { ProdutoModel oProduto = new ProdutoModel(); int?Codigo = UTIL.UTIL.Parse <int?>(((HiddenField)e.Item.FindControl("Codigo")).Value); oProduto.Descricao = ((Label)e.Item.FindControl("DescricaoProduto")).Text; oProduto.Codigo = UTIL.UTIL.Parse <int>(((HiddenField)e.Item.FindControl("Codigo_Produto")).Value); oProduto.QuantidadeEstoque = UTIL.UTIL.Parse <int>(((Label)e.Item.FindControl("txQuantidade")).Text); oProduto.PrecoVenda = UTIL.UTIL.Parse <decimal>(((Label)e.Item.FindControl("txValorUnitario")).Text); List <Pedido_ProdutosModel> ListProdutos = (List <Pedido_ProdutosModel>)ViewState["oItensProduto"]; if (Codigo != null) //ALTERA ESTOQUE { DivAvisoItensPedido.Visible = true; AvisoItensPedido.Text = "Não é possível realizar alterações no pedido pois o mesmo já está concluído!"; return; } if (ListProdutos.Count > 0) { foreach (Pedido_ProdutosModel p in ListProdutos) { if ((p.Codigo_Produto == oProduto.Codigo) && (p.Quantidade == oProduto.QuantidadeEstoque) && (p.ValorUnitario == oProduto.PrecoVenda)) { ListProdutos.Remove(p); break; } } } RptItensPedido.DataSource = ListProdutos; RptItensPedido.DataBind(); ViewState["oItensProduto"] = ListProdutos; UpdPanelTableItens.Update(); } } catch (Exception ex) { DivAvisoItensPedido.Visible = true; AvisoItensPedido.Text = "Ocorreu um erro ao deletar o produto do pedido."; } }
protected void btnExcluir_Click(object sender, EventArgs e) { try { using (TransactionScope tran = new TransactionScope()) { int CodPedido = (int.Parse(CodigoPedido.Text)); new PedidoNegocios().AlterarStatus(new PedidoModel { Codigo = CodPedido, Status = 0 }); List <Pedido_ProdutosModel> oList_Produtos = new List <Pedido_ProdutosModel>(); oList_Produtos = new PedidoNegocios().ListarProdutoPedido(new Pedido_ProdutosModel { Codigo_Pedido = CodPedido }); foreach (Pedido_ProdutosModel P in oList_Produtos) { if ((P.TipoPedido == (int)PedidoModel.TipoPedido.Compra)) { P.Quantidade = -1 * P.Quantidade; } //ALTERA ESTOQUE string msgErro = new ProdutoNegocios().AlterarEstoque((int)P.Codigo_Produto, (int)P.Quantidade); if (msgErro != "OK") { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Erro_Excluir", "$(document).MensagemModal(3,'" + msgErro + "');", true); UpdPanelTableItens.Update(); tran.Dispose(); return; } } tran.Complete(); } Response.Redirect("PedidoCad.aspx?Pedido=" + CodigoPedido.Text, false); } catch (Exception ex) { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Erro_Excluir", "$(document).MensagemModal(3,'Ocorreu um erro ao excluir o pedido.');", true); } }
protected void btnSalvar_Click(object sender, EventArgs e) { try { if (ValidaCampos()) { using (TransactionScope tran = new TransactionScope()) { PedidoModel model = new PedidoModel(); if ((!string.IsNullOrEmpty(CodigoPedido.Text)) && (CodigoPedido.Text != "0")) { model.Codigo = UTIL.UTIL.Parse <int>(CodigoPedido.Text); } model.Tipo = UTIL.UTIL.Parse <int>(cmbTipoPedido.SelectedValue); if (!string.IsNullOrEmpty(txtObs.Text)) { model.Observacao = txtObs.Text; } model.Codigo_Funcionario = UTIL.UTIL.Parse <int>(CodigoFunc.Value); model.DataCriacao = DateTime.Now; PedidoNegocios Pedidos_N = new PedidoNegocios(); model = Pedidos_N.Salvar(model); //ITENS PEDIDO List <Pedido_ProdutosModel> ListProdutos = (List <Pedido_ProdutosModel>)ViewState["oItensProduto"]; if (ListProdutos.Count > 0) { foreach (Pedido_ProdutosModel P in ListProdutos) { if (P.Codigo == null) { int quant = (int)P.Quantidade; if ((model.Tipo == (int)PedidoModel.TipoPedido.Venda) || (model.Tipo == (int)PedidoModel.TipoPedido.Atendimento)) { quant = -1 * quant; } //ALTERA ESTOQUE string msgErro = new ProdutoNegocios().AlterarEstoque((int)P.Codigo_Produto, quant); if (msgErro != "OK") { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Erro_Salvar", "$(document).MensagemModal(3,'" + msgErro + "');", true); UpdPanelTableItens.Update(); tran.Dispose(); return; } else { Pedido_ProdutosModel oPedido_Produtos = new Pedido_ProdutosModel(); oPedido_Produtos.Codigo_Pedido = model.Codigo; oPedido_Produtos.Codigo_Produto = P.Codigo_Produto; oPedido_Produtos.Quantidade = P.Quantidade; oPedido_Produtos.ValorUnitario = P.ValorUnitario; new PedidoNegocios().IncluirProdutoPedido(oPedido_Produtos); } } } } tran.Complete(); Response.Redirect("PedidoCad.aspx?Pedido=" + model.Codigo.ToString(), false); } } } catch (Exception ex) { } }