public PedidoModel Salvar(PedidoModel oModel) { PedidoDAO oDAO = new PedidoDAO(); if (oModel.Codigo.HasValue) { return(oDAO.Alterar(oModel)); } else { return(oDAO.Incluir(oModel)); } }
private void btnIncluirPedido_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(txtCodFuncionario.Text)) { MessageBox.Show("Insira o código do funcionário"); } if (string.IsNullOrWhiteSpace(txtCodCliente.Text)) { MessageBox.Show("Insira o código do cliente"); } else { Pedido pedido = new Pedido(); Produto produto = new Produto(); List <Produto> produtos = new List <Produto>(); foreach (var item in lboProdutos.Items) { produto = ProdutoDAO.ObterProdutoPorNome(item.ToString()); produtos.Add(produto); } pedido.Produtos = produtos; if (string.IsNullOrWhiteSpace(txtFuncionario.Text)) { MessageBox.Show("Insira um funcionário válido", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { pedido.Funcionario = FuncionarioDAO.ObterFuncionarioPorId(int.Parse(txtCodFuncionario.Text)); pedido.Cliente = ClienteDAO.ObterClientePorId(int.Parse(txtCodCliente.Text)); if (string.IsNullOrWhiteSpace(txtNomeCliente.Text)) { MessageBox.Show("Insira um cliente válido", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { pedido.Data = DateTime.Now; // txtId.Text = pedido.Id.ToString(); if (lboProdutos.Items.Count <= 0) { MessageBox.Show("Insira um produto", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { pedido.TotalAPagar = float.Parse(txtTotalAPagar.Text); pedido.Obs = txtObservacoes.Text; pedido.Status = "Em andamento"; pedido.DataEnc = DateTime.Now; DialogResult r = MessageBox.Show("Tem certeza que deseja incluir este pedido?", "Informação", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (r == DialogResult.Yes) { if (PedidoDAO.Incluir(pedido)) { txtId.Text = pedido.Id.ToString(); MessageBox.Show("Pedido nº " + txtId.Text + " incluido com sucesso", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); foreach (Produto x in produtos) { x.Pedidos.Add(pedido); ProdutoDAO.Alterar(x); } txtCodFuncionario.Clear(); txtFuncionario.Clear(); txtCodCliente.Clear(); txtNomeCliente.Clear(); mskTel.Clear(); txtEndereco.Clear(); txtComplemento.Clear(); txtBairro.Clear(); txtCidade.Clear(); cboDescricao.Items.Clear(); lboProdutos.Items.Clear(); txtValor.Clear(); txtObservacoes.Clear(); txtTotalAPagar.Clear(); txtCodFuncionario.Focus(); } else { MessageBox.Show("Erro ao incluir o pedido", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } } } }