private void lbSalvar_Click(object sender, EventArgs e) { try { Modelo.SGAPContexto contexto = new Modelo.SGAPContexto(); DialogResult result; result = MessageBox.Show("Confirma gravação dos dados?", "Salvar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { int id = Convert.ToInt32(txtId.Text); Modelo.TipoReclamacao tipoReclamacao = new Modelo.TipoReclamacao(); if (id != -1) { tipoReclamacao = contexto.TipoReclamacao.Find(id); } tipoReclamacao.id = id; tipoReclamacao.descricao = txtDescricao.Text; if (tipoReclamacao.id == -1) { bool teste = contexto.TipoReclamacao.ToList().Exists(p => p.descricao.ToLower().RemoveDiacritics().Equals(txtDescricao.Text.ToLower().RemoveDiacritics().Trim())); if (teste) { MessageBox.Show("Tipo reclamação já cadastrada!", "Alerta!", MessageBoxButtons.OK, MessageBoxIcon.Information); txtDescricao.Focus(); } else { contexto.TipoReclamacao.Add(tipoReclamacao); contexto.SaveChanges(); limparCampos(); habilitaCampos(false); dgvTipoReclamacao.DataSource = ""; dgvTipoReclamacao.DataSource = contexto.Cidade.ToList(); carregarGridTipoReclamacao(); } } else { contexto.Entry(tipoReclamacao).State = EntityState.Modified; contexto.SaveChanges(); habilitaCampos(false); } } else { MessageBox.Show("Dados não gravados", "Salvar", MessageBoxButtons.OK, MessageBoxIcon.Information); } carregarGridTipoReclamacao(); } catch (System.Data.Entity.Validation.DbEntityValidationException) { MessageBox.Show("O campo Descrição é obrigatório!", "Alerta!", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void lbRemover_Click(object sender, EventArgs e) { Modelo.SGAPContexto contexto = new Modelo.SGAPContexto(); Modelo.TipoReclamacao tipoReclamacao = new Modelo.TipoReclamacao(); if (txtId.Text == "") { txtId.Text = "0"; } int id = Convert.ToInt32(txtId.Text); if (id > 0) { tipoReclamacao = contexto.TipoReclamacao.Find(id); DialogResult result; // confirmação da remoção result = MessageBox.Show("Confirma remoção do tipo de reclamação?", "Remover", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { try { contexto.TipoReclamacao.Remove(tipoReclamacao); contexto.SaveChanges(); // atualiza o banco de dados MessageBox.Show("Tipo de reclamação removido com sucesso!", "Remover", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } catch (System.Data.Entity.Infrastructure.DbUpdateException) { MessageBox.Show("Tipo Reclamação não pode ser excluída, pois há outros registros que estão utilizando a mesma!", "Remover", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else { MessageBox.Show("Não há registo para remoção!", "Remover", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } dgvTipoReclamacao.DataSource = ""; dgvTipoReclamacao.DataSource = contexto.TipoReclamacao.ToList(); limparCampos(); habilitaCampos(false); }