protected void btnIncluir_Click(object sender, EventArgs e)
        {
            var statePedidoVenda = (PedidoVendaModel)Session["pedidoVenda"];
            var statePessoa      = (PessoaModel)Session["pessoa"];

            if (statePedidoVenda == null || statePedidoVenda.Id == 0)
            {
                statePedidoVenda                   = new PedidoVendaModel();
                statePedidoVenda.IdPessoa          = statePessoa.Id;
                statePedidoVenda.IdEnderecoEntrega = statePessoa.IdEndereco;
                statePedidoVenda                   = new PedidoVendaController().Gravar(statePedidoVenda);
                Session["pedidoVenda"]             = statePedidoVenda;
                Session["idPedidoAlteracao"]       = statePedidoVenda.Id;
            }

            lblPedido.Text = $"Pedido de Venda: {statePedidoVenda.Id}";

            var objProduto = new ProdutoModel();

            objProduto.Id = cmbProduto.SelectedValue.GetDBInt32();
            objProduto    = new ProdutoController().Consultar(objProduto);

            var objPedidoVendaItem = new PedidoVendaItemModel();

            objPedidoVendaItem.IdPedidoVenda = statePedidoVenda.Id;
            objPedidoVendaItem.IdProduto     = objProduto.Id;
            objPedidoVendaItem.Preco         = objProduto.PrecoVenda;
            objPedidoVendaItem.Quantidade    = Convert.ToInt32(txtQuantidade.Text);
            new PedidoVendaItemController().Gravar(objPedidoVendaItem);

            CargaGrid();
            Limpar();
            cmbProduto.Focus();
            lblMensagem.Text = "";
        }
        protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            var key = this.GridView1.DataKeys[e.RowIndex].Value.GetDBInt64();
            var objPedidoVendaItem = new PedidoVendaItemModel();

            objPedidoVendaItem.Id = key.GetDBInt32();
            new PedidoVendaItemController().Excluir(objPedidoVendaItem);
            CargaGrid();
        }
예제 #3
0
        private void AtualizarTotais(PedidoVendaItemModel model)
        {
            var ctrPedidoVenda     = new PedidoVendaController();
            var lstPedidoVendaItem = ListarPorPedido(model);
            var modelPedidoVenda   = new PedidoVendaModel();

            modelPedidoVenda.Id    = model.IdPedidoVenda;
            modelPedidoVenda       = ctrPedidoVenda.Consultar(modelPedidoVenda);
            modelPedidoVenda.Total = lstPedidoVendaItem.Sum(s => s.Preco * s.Quantidade);
            modelPedidoVenda       = ctrPedidoVenda.Gravar(modelPedidoVenda);
        }
예제 #4
0
        public void Excluir(PedidoVendaItemModel model)
        {
            var modelItem = Consultar(model);

            if (modelItem.Id == 0)
            {
                throw new Exception("Registro não cadastrado");
            }
            helper.Excluir(modelItem.Id);
            AtualizarTotais(modelItem);
        }
예제 #5
0
        public PedidoVendaItemModel Gravar(PedidoVendaItemModel model)
        {
            var modelItem = helper.Gravar(model, model.Id);

            if (modelItem.Id == 0)
            {
                throw new Exception("Registro não cadastrado");
            }
            AtualizarTotais(modelItem);
            return(modelItem);
        }
예제 #6
0
        public DataTable ListarRawPorPedidoVenda(PedidoVendaItemModel model)
        {
            string query = $@"
select 
	pro.Codigo as Produto_Codigo, pro.nome as Produto_Nome,
    (Quantidade * Preco) as Total,
	ite.*
from PedidoVendaItem as ite
inner join Produto as pro on pro.id = ite.IdProduto
where
    idpedidovenda = {model.IdPedidoVenda}";

            return(helper.ListarRaw(query));
        }
        private void CargaGrid()
        {
            ctrPedidoVendaItem = new PedidoVendaItemController();
            var statePedidoVenda   = (PedidoVendaModel)Session["pedidoVenda"];
            var objPedidoVendaItem = new PedidoVendaItemModel();

            if (statePedidoVenda != null && statePedidoVenda.Id > 0)
            {
                objPedidoVendaItem.IdPedidoVenda = statePedidoVenda.Id;
                GridView1.DataSource             = ctrPedidoVendaItem.ListarRawPorPedidoVenda(objPedidoVendaItem);
                GridView1.DataBind();
            }
            else
            {
                objPedidoVendaItem.IdPedidoVenda = -1;
                GridView1.DataSource             = ctrPedidoVendaItem.ListarRawPorPedidoVenda(objPedidoVendaItem);
                GridView1.DataBind();
            }
        }
예제 #8
0
 public IEnumerable <PedidoVendaItemModel> ListarPorPedido(PedidoVendaItemModel model)
 {
     return(helper.Listar($"idpedidovenda = {model.IdPedidoVenda}", $"", null));
 }
예제 #9
0
 public PedidoVendaItemModel Consultar(PedidoVendaItemModel model)
 {
     return(helper.Consultar(model.Id));
 }