//Rotina de inicialização de Função private void InicializaCampos(string modo) { int int_GuardaLinhaSelecionada; ItemDaComposicaoDTO obj_ItemDaComposicaoDTO; switch (modo) { case "Incluir": CarregaInformacoesDoGrupoNoCombo(); LimpaCampos(); txt_CodigoDoProduto.Enabled = true; HabilitarCampos(true); msk_DataHoraDeCadastroDoInsumo.Text = DateTime.Now.ToString(); grd_Produto.Enabled = false; btn_ExcluirRegistro.Enabled = false; btn_PesquisarRegistro.Enabled = false; txt_PesquisaProduto.Visible = false; flt_TotalDoProduto = 0; if (cmb_GrupoDoProduto.Items.Count > 0) { cmb_GrupoDoProduto.SelectedIndex = 0; } txt_CodigoDoProduto.Focus(); LimpaErrosEncontrados(); break; case "SalvarNovo": obj_ProdutoDTO = new ProdutoDTO(); try { //Carrega o objeto com os campos digitados obj_ProdutoDTO.CodigoDoProduto = Convert.ToInt32(txt_CodigoDoProduto.Text); obj_ProdutoDTO.DescricaoDoProduto = txt_DescricaoDoProduto.Text; obj_ProdutoDTO.DataHoraDeCadastroDoProduto = Convert.ToDateTime(msk_DataHoraDeCadastroDoInsumo.Text); obj_ProdutoDTO.LarguraDoProduto = Convert.ToSingle(txt_LarguraDoProduto.Text); obj_ProdutoDTO.ComprimentoDoProduto = Convert.ToSingle(txt_ComprimentoDoProduto.Text); obj_ProdutoDTO.EspessuraDoProduto = Convert.ToSingle(txt_EspessuraDoProduto.Text); obj_ProdutoDTO.PesoTotalDoProduto = Convert.ToSingle(txt_PesoDoProduto.Text); obj_ProdutoDTO.GrupoDoProduto = obj_GrupoModel.BuscaGrupoPorCodigo(Convert.ToInt32(cmb_GrupoDoProduto.Text.Substring(0, 3))); //Insere os itens na lista do produto if (grd_ComposicaoDoProduto.RowCount > 1) { foreach (DataGridViewRow row_ItemDaComposicaoDoProduto in grd_ComposicaoDoProduto.Rows) { if (row_ItemDaComposicaoDoProduto.Cells[0].Value != null) { obj_ItemDaComposicaoDTO = new ItemDaComposicaoDTO(); obj_ItemDaComposicaoDTO.Insumo.CodigoDoInsumo = Convert.ToInt32(row_ItemDaComposicaoDoProduto.Cells[0].Value); obj_ItemDaComposicaoDTO.QuantidadeDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[3].Value); obj_ItemDaComposicaoDTO.TotalDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[5].Value); obj_ProdutoDTO.InsereItemDaComposicao(obj_ItemDaComposicaoDTO); } } } //Insere as informações no Banco retornoDaFuncao = obj_ProdutoModel.IncluirNovoProduto(obj_ProdutoDTO); if (retornoDaFuncao > 0) { MessageBox.Show("Produto cadastrado com sucesso!", "Produto Cadastrado", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("O Produto não foi cadastrado!"); } grd_Produto.Enabled = true; //Recarrega a Tabela de Usuários e seleciona o registro criado bol_HabilitaValidacaoPorTeclado = false; CarregaProdutosNoGrid(); grd_Produto.Rows[grd_Produto.Rows.Count - 1].Selected = true; CarregaInformacoesDoProduto(); bol_HabilitaValidacaoPorTeclado = true; HabilitaOuDesabilitaBotoesDeExclusaoEPesquisa(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Erro ao salvar", MessageBoxButtons.OK, MessageBoxIcon.Error); } break; case "Salvar": obj_ProdutoDTO = new ProdutoDTO(); try { //Carrega o objeto com os campos digitados obj_ProdutoDTO.CodigoDoProduto = Convert.ToInt32(txt_CodigoDoProduto.Text); obj_ProdutoDTO.DescricaoDoProduto = txt_DescricaoDoProduto.Text; obj_ProdutoDTO.DataHoraDeCadastroDoProduto = Convert.ToDateTime(msk_DataHoraDeCadastroDoInsumo.Text); obj_ProdutoDTO.LarguraDoProduto = Convert.ToSingle(txt_LarguraDoProduto.Text); obj_ProdutoDTO.ComprimentoDoProduto = Convert.ToSingle(txt_ComprimentoDoProduto.Text); obj_ProdutoDTO.EspessuraDoProduto = Convert.ToSingle(txt_EspessuraDoProduto.Text); obj_ProdutoDTO.PesoTotalDoProduto = Convert.ToSingle(txt_PesoDoProduto.Text); obj_ProdutoDTO.GrupoDoProduto = obj_GrupoModel.BuscaGrupoPorCodigo(Convert.ToInt32(cmb_GrupoDoProduto.Text.Substring(0, 3))); //Insere os itens na lista do produto foreach (DataGridViewRow row_ItemDaComposicaoDoProduto in grd_ComposicaoDoProduto.Rows) { if (row_ItemDaComposicaoDoProduto.Cells[0].FormattedValue.ToString() != "") { obj_ItemDaComposicaoDTO = new ItemDaComposicaoDTO(); obj_ItemDaComposicaoDTO.Insumo.CodigoDoInsumo = Convert.ToInt32(row_ItemDaComposicaoDoProduto.Cells[0].Value); obj_ItemDaComposicaoDTO.QuantidadeDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[3].Value); obj_ItemDaComposicaoDTO.TotalDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[5].Value); obj_ProdutoDTO.InsereItemDaComposicao(obj_ItemDaComposicaoDTO); } } //Insere as informações no Banco retornoDaFuncao = obj_ProdutoModel.AtualizaInformacoesDoProduto(obj_ProdutoDTO, Convert.ToInt32(grd_Produto.CurrentRow.Cells[0].FormattedValue)); if (retornoDaFuncao > 0) { MessageBox.Show("Informações salvas com sucesso!", "Usuário Cadastrado", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("O Produto não foi salvo!"); } //Recarrega a Tabela de Produto e seleciona o registro criado bol_HabilitaValidacaoPorTeclado = false; int_GuardaLinhaSelecionada = grd_Produto.SelectedRows[0].Index; CarregaProdutosNoGrid(); grd_Produto.Rows[int_GuardaLinhaSelecionada].Selected = true; CarregaInformacoesDoProduto(); bol_HabilitaValidacaoPorTeclado = true; } catch (Exception ex) { MessageBox.Show(ex.Message, "Erro ao salvar", MessageBoxButtons.OK, MessageBoxIcon.Error); } break; case "Cancelar": CarregaInformacoesDoGrupoNoCombo(); if (grd_Produto.Rows.Count > 0) { CarregaInformacoesDoProduto(); txt_DescricaoDoProduto.Focus(); } else { LimpaCampos(); HabilitarCampos(false); } txt_CodigoDoProduto.Enabled = false; grd_Produto.Enabled = true; HabilitaOuDesabilitaBotoesDeExclusaoEPesquisa(); LimpaErrosEncontrados(); break; case "Excluir": obj_ProdutoDTO = new ProdutoDTO(); try { //Carrega o objeto com os campos digitados obj_ProdutoDTO.CodigoDoProduto = Convert.ToInt32(txt_CodigoDoProduto.Text); obj_ProdutoDTO.DescricaoDoProduto = txt_DescricaoDoProduto.Text; obj_ProdutoDTO.DataHoraDeCadastroDoProduto = Convert.ToDateTime(msk_DataHoraDeCadastroDoInsumo.Text); obj_ProdutoDTO.LarguraDoProduto = Convert.ToSingle(txt_LarguraDoProduto.Text); obj_ProdutoDTO.ComprimentoDoProduto = Convert.ToSingle(txt_ComprimentoDoProduto.Text); obj_ProdutoDTO.EspessuraDoProduto = Convert.ToSingle(txt_EspessuraDoProduto.Text); obj_ProdutoDTO.PesoTotalDoProduto = Convert.ToSingle(txt_PesoDoProduto.Text); //Insere os itens na lista do produto foreach (DataGridViewRow row_ItemDaComposicaoDoProduto in grd_ComposicaoDoProduto.Rows) { obj_ItemDaComposicaoDTO = new ItemDaComposicaoDTO(); obj_ItemDaComposicaoDTO.Insumo.CodigoDoInsumo = Convert.ToInt32(row_ItemDaComposicaoDoProduto.Cells[0].Value); obj_ItemDaComposicaoDTO.QuantidadeDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[3].Value); obj_ItemDaComposicaoDTO.TotalDoItem = Convert.ToSingle(row_ItemDaComposicaoDoProduto.Cells[5].Value); obj_ProdutoDTO.InsereItemDaComposicao(obj_ItemDaComposicaoDTO); } //Exclui o usuário retornoDaFuncao = obj_ProdutoModel.ExcluiInformacoesDoProduto(obj_ProdutoDTO); if (retornoDaFuncao > 0) { MessageBox.Show("Produto removido com sucesso!", "Produto Removido", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("O Produto não foi removido!", "Erro ao Remover Produto", MessageBoxButtons.OK, MessageBoxIcon.Information); } grd_Produto.Enabled = true; //Recarrega a Tabela de Usuários e seleciona o registro criado bol_HabilitaValidacaoPorTeclado = false; CarregaProdutosNoGrid(); if (grd_Produto.Rows.Count > 0) { CarregaInformacoesDoProduto(); } bol_HabilitaValidacaoPorTeclado = true; HabilitaOuDesabilitaBotoesDeExclusaoEPesquisa(); LimpaErrosEncontrados(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Erro ao excluir o usuário.", MessageBoxButtons.OK, MessageBoxIcon.Error); } break; case "Pesquisar": lst_ProdutosCadastrados.RowFilter = "DescricaoDoProduto Like '" + txt_PesquisaProduto.Text.Trim() + "%'"; grd_Produto.Refresh(); grd_Produto.Focus(); break; } }