private void btnAlterar_Click(object sender, EventArgs e) { if (lsvTatuagens.SelectedIndices.Count == 0) { MessageBox.Show("Selecione uma tatuagem para ser alterada!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } else if (lsvTatuagens.SelectedIndices.Count > 1) { MessageBox.Show("Selecione somente uma tatuagem para ser alterada!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } int idTatuagem = Tatuagens[lsvTatuagens.SelectedIndices[0]].Id; using (var tatuagem = new Tatuagem()) { using (var conn = new Connection()) { if (!tatuagem.SetById(idTatuagem, conn, null)) { MessageBox.Show($"Não foi possível encontrar a tatuagem com o código `{idTatuagem}`!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); CarregarTatuagens(); return; } } using (var frmTatuagem = new FormTatuagem(TipoAcao.Edicao, tatuagem)) { if (frmTatuagem.ShowDialog() != DialogResult.OK) { return; } using (var conn = new Connection()) { try { frmTatuagem.SetDadosInModel(tatuagem); tatuagem.Salvar(conn, null); MessageBox.Show("Tatuagem alterada com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); CarregarTatuagens(); } catch (Exception erro) { MessageBox.Show("Ocoreu um erro ao salvar as alterações!\n" + erro.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } }
private void btnAdicionar_Click(object sender, EventArgs e) { using (var conn = new Connection()) using (var termoResponsabilidade = new TermoResponsabilidade()) { if (!termoResponsabilidade.SetCurrent(conn, null)) { MessageBox.Show("Não existe nehum termo de responsabilidade cadastrado!\nCadastre um termo de responsabilidade antes de cadastrar uma tatuagem", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } try { using (var frmTermoResponsabilidade = new FormTermoResponsabilidade()) using (var frmTatuagem = new FormTatuagem(TipoAcao.Cadastro)) using (var frmPesquisa = new FormPesquisa(TipoPergunta.Tatuagem, PesquisaControl.TipoFonte.Grande, false)) { frmTatuagem.btnSalvar.Text = "Avançar"; frmPesquisa.btnVoltar.Visible = true; PassoCadastro passo = PassoCadastro.TermoResponsabilidade; bool finalizado = false; while (!finalizado) { DialogResult dr; switch (passo) { case PassoCadastro.TermoResponsabilidade: if (frmTermoResponsabilidade.ShowDialog() == DialogResult.OK) { passo = PassoCadastro.Informacoes; } else { return; } break; case PassoCadastro.Informacoes: dr = frmTatuagem.ShowDialog(); if (dr == DialogResult.OK) { passo = PassoCadastro.Pesquisa; } else if (dr == DialogResult.Retry) { passo = PassoCadastro.TermoResponsabilidade; } else { return; } break; case PassoCadastro.Pesquisa: dr = frmPesquisa.ShowDialog(); if (dr == DialogResult.OK) { finalizado = true; } else if (dr == DialogResult.Retry) { passo = PassoCadastro.Informacoes; } else { return; } break; } } using (var conn = new Connection()) using (SQLiteTransaction transaction = conn.BeginTransaction()) using (var tatuagem = new Tatuagem()) { try { tatuagem.IdCliente = IdCliente; tatuagem.IdTermoResponsabilidade = frmTermoResponsabilidade.IdTermoResponsabilidade; frmTatuagem.SetDadosInModel(tatuagem); tatuagem.Salvar(conn, transaction); Resposta.SalvarRespostas(TipoPergunta.Tatuagem, tatuagem.Id, frmPesquisa.Respostas, conn, transaction); transaction.Commit(); MessageBox.Show("Tatuagem inserida com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); CarregarTatuagens(); } catch (Exception erro) { transaction.Rollback(); MessageBox.Show("Ocorreu um erro ao inserir a tatuagem!\n" + erro.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } catch (PerguntasNotFoundException erro) { MessageBox.Show(erro.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } }