public async Task <IActionResult> Create([Bind("ID,Nome,NumCedulaProf,Fotografia")] Veterinarios veterinario, IFormFile fotoVet) { //processar a fotografia string caminhoCompleto = ""; bool haImagem = false; // processar a fotografia -> se nao ha usamos noVet.jog que é a default para todos if (fotoVet == null) { veterinario.Fotografia = "noVet.jpg"; } else { //sera o ficheiro uma imagemc if (fotoVet.ContentType == "image/jpeg" || fotoVet.ContentType == "imahe/png") { //o ficheiro é uma imagem valida //prepara a imagem para ser guardada no disco e o seu nome associado ao vet Guid g; g = Guid.NewGuid(); string extensao = Path.GetExtension(fotoVet.FileName).ToLower(); string nome = g.ToString() + extensao; //onde guardar o ficheiro caminhoCompleto = Path.Combine(_caminho.WebRootPath, "Imagens\\Vets", nome); //associar o nome do ficheiro ao vet veterinario.Fotografia = nome; //assinalar que existe imagem e é preciso guarda-la no disco haImagem = true; } else { //ha imagem mas nao é do tipo certo veterinario.Fotografia = "noVet.jpg"; } } if (ModelState.IsValid) { try { _context.Add(veterinario); await _context.SaveChangesAsync(); // se há imagem, vou guardar no disco if (haImagem) { using var stream = new FileStream(caminhoCompleto, FileMode.Create); await fotoVet.CopyToAsync(stream); } return(RedirectToAction(nameof(Index))); } catch (Exception) { //se chegar aqui, é pq alguma coisa correu mal //o que fazer? } } return(View(veterinario)); }
public void Salvar(Veterinarios veterinarios) { try { AbrirConexao(); comando = new MySqlCommand("INSERT INTO tb_veterinario(nomeVeterinario,sobrenomeVeterinario,crmv,especializacao,enderecoVeterinario,bairroVeterinario,cepVeterinario,numeroResidenciaVeterinario,complementoVeterinario,emailVeterinario,telefoneFixoVet,telefoneCelularVet) VALUES (@nome,@sobrenome,@crmv,@especializacao,@endereco,@bairro,@cep,@numero,@complemento,@email,@telfixo,@telcel)", conection); comando.Parameters.AddWithValue("@nome", veterinarios.nomeVeterinario); comando.Parameters.AddWithValue("@sobrenome", veterinarios.sobrenomeVeterinario); comando.Parameters.AddWithValue("@crmv", veterinarios.crmv); comando.Parameters.AddWithValue("@especializacao", veterinarios.especializacao); comando.Parameters.AddWithValue("@endereco", veterinarios.enderecoVeterinario); comando.Parameters.AddWithValue("@bairro", veterinarios.bairroVeterinario); comando.Parameters.AddWithValue("@cep", veterinarios.cepVeterinario); comando.Parameters.AddWithValue("@numero", veterinarios.numeroResidenciaVeterinario); comando.Parameters.AddWithValue("@complemento", veterinarios.complementoVeterinario); comando.Parameters.AddWithValue("@email", veterinarios.emailVeterinario); comando.Parameters.AddWithValue("@telfixo", veterinarios.telefoneFixoVet); comando.Parameters.AddWithValue("@telcel", veterinarios.telefoneCelularVet); comando.ExecuteNonQuery(); } catch (Exception erro) { throw erro; } finally { FecharConexao(); } }
public void Editar(Veterinarios veterinarios) { try { AbrirConexao(); comando = new MySqlCommand("UPDATE tb_veterinario SET nomeVeterinario = @nome, sobrenomeVeterinario = @sobrenome,crmv = @crmv ,especializacao = @especializacao ,enderecoVeterinario = @endereco,bairroVeterinario = @bairro,cepVeterinario = @cep,numeroResidenciaVeterinario = @numero,complementoVeterinario = @complemento,emailVeterinario = @email,telefoneFixoVet = @telfixo,telefoneCelularVet = @telcel WHERE codVeterinario = @codVeterinario", conection); comando.Parameters.AddWithValue("@codVeterinario", veterinarios.codVeterinario); comando.Parameters.AddWithValue("@nome", veterinarios.nomeVeterinario); comando.Parameters.AddWithValue("@sobrenome", veterinarios.sobrenomeVeterinario); comando.Parameters.AddWithValue("@crmv", veterinarios.crmv); comando.Parameters.AddWithValue("@especializacao", veterinarios.especializacao); comando.Parameters.AddWithValue("@endereco", veterinarios.enderecoVeterinario); comando.Parameters.AddWithValue("@bairro", veterinarios.bairroVeterinario); comando.Parameters.AddWithValue("@cep", veterinarios.cepVeterinario); comando.Parameters.AddWithValue("@numero", veterinarios.numeroResidenciaVeterinario); comando.Parameters.AddWithValue("@complemento", veterinarios.complementoVeterinario); comando.Parameters.AddWithValue("@email", veterinarios.emailVeterinario); comando.Parameters.AddWithValue("@telfixo", veterinarios.telefoneFixoVet); comando.Parameters.AddWithValue("@telcel", veterinarios.telefoneCelularVet); comando.ExecuteNonQuery(); } catch (Exception erro) { throw erro; } finally { FecharConexao(); } }
private void txtPesquisar_TextChanged(object sender, EventArgs e) { if (rd_nomemed.Checked == true) { if (txtPesquisar.Text == "") { VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); dtVeterinario.DataSource = veterinariosBLL.listarVeterinarios(); } else { Veterinarios veterinarios = new Veterinarios(); pesquisar(veterinarios); } } if (rd_crmv.Checked == true) { if (txtPesquisar.Text == "") { VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); dtVeterinario.DataSource = veterinariosBLL.listarVeterinarios(); } else { Veterinarios veterinarios = new Veterinarios(); pesquisarCRMV(veterinarios); } } }
public async Task<IActionResult> Edit(int id, [Bind("ID,Nome,NumCedulaProf,Fotografia")] Veterinarios veterinarios) { if (id != veterinarios.ID) { return NotFound(); } if (ModelState.IsValid) { try { _context.Update(veterinarios); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!VeterinariosExists(veterinarios.ID)) { return NotFound(); } else { throw; } } return RedirectToAction(nameof(Index)); } return View(veterinarios); }
private void btn_deletar_Click(object sender, EventArgs e) { if (MessageBox.Show("Confirmar exclusão ?", "EXClUIR VETERINARIO", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Veterinarios veterinarios = new Veterinarios(); excluir(veterinarios); } }
private void btn_editar_Click(object sender, EventArgs e) { if (MessageBox.Show("Confirmar alteração ?", "ALTERAR VETERINARIO", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Veterinarios veterinarios = new Veterinarios(); editar(veterinarios); } }
private void btn_salvar_medico_Click(object sender, EventArgs e) { if (MessageBox.Show("Confirma os dados ?", "SALVAR VETERINARIO ", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Veterinarios veterinarios = new Veterinarios(); salvar(veterinarios); } }
public ActionResult DeleteConfirmed(int id) { Veterinarios veterinarios = db.Veterinarios.Find(id); db.Veterinarios.Remove(veterinarios); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "VeterinarioID,Nome,Rua,NumPorta,Andar,CodPostal,NIF,DataEntradaClinica,NumCedulaProf,DataInscOrdem,Faculdade")] Veterinarios veterinarios) { if (ModelState.IsValid) { db.Entry(veterinarios).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(veterinarios)); }
public void salvar(Veterinarios veterinario) { try { veterinariosDAO.Salvar(veterinario); } catch (Exception erro) { throw erro; } }
public void excluir(Veterinarios veterinarios) { try { veterinariosDAO.Excluir(veterinarios); } catch (Exception erro) { throw erro; } }
// GET: Veterinarios/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Veterinarios veterinarios = db.Veterinarios.Find(id); if (veterinarios == null) { return(HttpNotFound()); } return(View(veterinarios)); }
private void pesquisarCRMV(Veterinarios veterinarios) { try { veterinarios.crmv = txtPesquisar.Text.Trim(); VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); dtVeterinario.DataSource = veterinariosBLL.pesquisarCRMV(veterinarios); } catch (Exception erro) { throw erro; } }
public DataTable pesquisarCRMV(Veterinarios veterinarios) { try { VeterinariosDAO veterinariosDAO = new VeterinariosDAO(); DataTable dt = new DataTable(); dt = veterinariosDAO.PesquisarCRMV(veterinarios); return(dt); } catch (Exception erro) { throw erro; } }
private void editar(Veterinarios veterinarios) { try { if (txtNome.Text.Trim() == string.Empty || txt_Sobrenome.Text.Trim() == string.Empty || txtCRMV.Text.Trim() == string.Empty || txtEspecializacao.Text.Trim() == string.Empty || txtEnd.Text.Trim() == string.Empty || txtBairro.Text.Trim() == string.Empty || txtCep.Text.Trim() == string.Empty || txtNum.Text.Trim() == string.Empty || txtComplem.Text.Trim() == string.Empty || txtEmail.Text.Trim() == string.Empty || txtelfixo.Text.Trim() == string.Empty || txtelCelular.Text.Trim() == string.Empty) { MessageBox.Show("Informações obrigatórias não preenchidas", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); veterinarios.codVeterinario = Convert.ToInt32(txtCodveterinario.Text); veterinarios.nomeVeterinario = txtNome.Text; veterinarios.sobrenomeVeterinario = txt_Sobrenome.Text; veterinarios.crmv = txtCRMV.Text; veterinarios.especializacao = txtEspecializacao.Text; veterinarios.enderecoVeterinario = txtEnd.Text; veterinarios.bairroVeterinario = txtBairro.Text; veterinarios.cepVeterinario = txtCep.Text; veterinarios.numeroResidenciaVeterinario = Convert.ToInt32(txtNum.Text); veterinarios.complementoVeterinario = txtComplem.Text; veterinarios.emailVeterinario = txtEmail.Text; veterinarios.telefoneFixoVet = Convert.ToInt64(txtelfixo.Text); veterinarios.telefoneCelularVet = Convert.ToInt64(txtelCelular.Text); veterinariosBLL.editar(veterinarios); MessageBox.Show("Veterinário ALTERADO com sucesso !", "Resultado", MessageBoxButtons.OK, MessageBoxIcon.Information); limparCampos(); btn_editar.Visible = false; btn_deletar.Visible = false; btn_salvar_medico.Visible = true; listarVeterinarios(); } } catch (MySqlException erro) { MessageBox.Show("Você não tem permissão para Alterar, CRMV já existe " + erro.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
// GET: Veterinarios // [AllowAnonymous] // desativa a obrigatoriedade de haver autenticação public async Task <IActionResult> Index() { // só o utilizador com Role = Administrativo é que pode aceder ao dados todos if (User.IsInRole("Administrativo")) { // LINQ // db.Veterinarios.ToListAsync() <=> SELECT * FROM Veterinarios; return(View(await db.Veterinarios.ToListAsync())); } // e agora vamos só mostrar os dados da pessoa que se autenticou // e, quem é que se autenticou? Veterinarios veterinario = db.Veterinarios .Where(v => v.Utilizador.UserID == _userManager.GetUserId(User)) .FirstOrDefault(); return(RedirectToAction("Details", new { id = veterinario.ID })); }
//MÉTODO PARA SALVAR private void salvar(Veterinarios veterinarios)//esse método deve ser privado { try { if (txtNome.Text.Trim() == string.Empty || txt_Sobrenome.Text.Trim() == string.Empty || txtCRMV.Text.Trim() == string.Empty || txtEspecializacao.Text.Trim() == string.Empty || txtEnd.Text.Trim() == string.Empty || txtBairro.Text.Trim() == string.Empty || txtCep.Text.Trim() == string.Empty || txtNum.Text.Trim() == string.Empty || txtComplem.Text.Trim() == string.Empty || txtEmail.Text.Trim() == string.Empty || txtelfixo.Text.Trim() == string.Empty || txtelCelular.Text.Trim() == string.Empty) { MessageBox.Show("Informações obrigatórias não preenchidas", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); veterinarios.nomeVeterinario = txtNome.Text; veterinarios.sobrenomeVeterinario = txt_Sobrenome.Text; veterinarios.crmv = txtCRMV.Text; veterinarios.especializacao = txtEspecializacao.Text; veterinarios.enderecoVeterinario = txtEnd.Text; veterinarios.bairroVeterinario = txtBairro.Text; veterinarios.cepVeterinario = txtCep.Text; veterinarios.numeroResidenciaVeterinario = Convert.ToInt32(txtNum.Text); veterinarios.complementoVeterinario = txtComplem.Text; veterinarios.emailVeterinario = txtEmail.Text; veterinarios.telefoneFixoVet = Convert.ToInt64(txtelfixo.Text); veterinarios.telefoneCelularVet = Convert.ToInt64(txtelCelular.Text); veterinariosBLL.salvar(veterinarios); MessageBox.Show("Veterinário CADASTRADO com sucesso !", "Resultado", MessageBoxButtons.OK, MessageBoxIcon.Information); limparCampos(); listarVeterinarios(); } } catch (MySqlException erro) { MessageBox.Show("CRMV já existe \n " + erro.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); txtCRMV.BackColor = Color.DimGray; txtCRMV.Focus(); } }
public void Excluir(Veterinarios veterinarios) { try { AbrirConexao(); comando = new MySqlCommand("DELETE FROM tb_veterinario WHERE codVeterinario = @codVeterinario ", conection); comando.Parameters.AddWithValue("@codVeterinario", veterinarios.codVeterinario); comando.ExecuteNonQuery(); } catch (Exception erro) { throw erro; } finally { FecharConexao(); } }
//excluir private void excluir(Veterinarios veterinarios) //esse método deve ser privado { try { VeterinarioBLL veterinariosBLL = new VeterinarioBLL(); veterinarios.codVeterinario = Convert.ToInt32(txtCodveterinario.Text); veterinariosBLL.excluir(veterinarios); //ou excluir com maiuscula MessageBox.Show("Veterinário EXCLUÍDO com sucesso !", "Resultado", MessageBoxButtons.OK, MessageBoxIcon.Information); limparCampos(); btn_editar.Visible = false; btn_deletar.Visible = false; btn_salvar_medico.Visible = true; listarVeterinarios(); } catch (MySqlException erro) { MessageBox.Show("Você não tem permissão para Excluir " + erro.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public DataTable PesquisarCRMV(Veterinarios veterinarios) { try { //PESQUISA DE veterinarios AbrirConexao(); MySqlDataAdapter da = new MySqlDataAdapter(); DataTable dtveterinario = new DataTable(); comando = new MySqlCommand("SELECT nomeVeterinario AS 'NOME',sobrenomeVeterinario AS 'SOBRENOME',crmv AS 'CRMV',especializacao AS 'ESPECIALIZACAO',enderecoVeterinario AS 'ENDERECO',bairroVeterinario AS 'BAIRRO',cepVeterinario AS 'CEP',numeroResidenciaVeterinario AS 'NUMERO',complementoVeterinario AS 'COMPLEMENTO',emailVeterinario AS 'EMAIL',telefoneFixoVet AS 'FIXO',telefoneCelularVet AS 'CELULAR' FROM tb_veterinario WHERE crmv LIKE @crmv '%' ORDER BY crmv", conection); comando.Parameters.AddWithValue("@crmv", veterinarios.crmv); da.SelectCommand = comando; da.Fill(dtveterinario); return(dtveterinario); } catch (Exception erro) { throw erro; } finally { FecharConexao(); } }
public async Task<IActionResult> Create([Bind("ID,Nome,NumCedulaProf,Fotografia")] Veterinarios veterinario, IFormFile fotoVet) { //***************************************** // processar a fotografia //***************************************** // vars.auxiliares string caminhoCompleto = ""; bool haImagem = false; // será que há fotografia? // - uma hipótese possível, seria reeenviar os dados para a View e solicitar a adição da imagem // - outra hipótese, será associar ao veterinário uma fotografia 'por defeito' if (fotoVet == null) { veterinario.Fotografia = "noVet.jpg"; } else { // há ficheiro // será o ficheiro uma imagem? if (fotoVet.ContentType=="image/jpeg" || fotoVet.ContentType=="image/png") { // o ficheiro é uma imagem válida // preparar a imagem para ser guardada no disco rígido // e o seu nome associado ao Veterinário Guid g; g = Guid.NewGuid(); string extensao = Path.GetExtension(fotoVet.FileName).ToLower(); string nome = g.ToString() + extensao; // onde guardar o ficheiro caminhoCompleto = Path.Combine(_caminho.WebRootPath, "Imagens\\Vets", nome); // associar o nome do ficheiro ao Veterinário veterinario.Fotografia = nome; // assinalar que existe imagem e é preciso guardá-la no disco rígido haImagem = true; } else { // há imagem, mas não é do tipo correto veterinario.Fotografia = "noVet.jpg"; } } if (ModelState.IsValid) { try { _context.Add(veterinario); await _context.SaveChangesAsync(); // se há imagem, vou guardá-la no disco rígido if (haImagem) { using var stream = new FileStream(caminhoCompleto, FileMode.Create); await fotoVet.CopyToAsync(stream); } return RedirectToAction(nameof(Index)); } catch (Exception) { //se chegar aqui, é porque alguma coisa correu mesmo mal... //o que fazer? //opções a realizar: // - escrever, no disco do servidor, um log com o erro // - escrever numa tabela de Erros, na BD, o log do erro // - enviar o modelo de volta para a View // - se o erro for corrígivel, corrigir o erro } } return View(veterinario); }
public async Task <IActionResult> Create([Bind("ID,Nome,NumCedulaProf,Foto")] Veterinarios veterinario, IFormFile fotoVet) { //*************************************** // processar a imagem //*************************************** // vars. auxiliares bool haFicheiro = false; string caminhoCompleto = ""; // será q há imagem? if (fotoVet == null) { // o utilizador não fez upload de um ficheiro veterinario.Foto = "avatar.png"; } else { // existe fotografia. // Mas, será boa? if (fotoVet.ContentType == "image/jpeg" || fotoVet.ContentType == "image/png") { // estamos perante uma boa foto // temos de gerar um nome para o ficheiro Guid g; g = Guid.NewGuid(); // obter a extensão do ficheiro string extensao = Path.GetExtension(fotoVet.FileName).ToLower(); string nomeFicheiro = g.ToString() + extensao; // onde guardar o ficheiro caminhoCompleto = Path.Combine(_caminho.WebRootPath, "imagens\\vets", nomeFicheiro); // atribuir o nome do ficheiro ao Veterinário veterinario.Foto = nomeFicheiro; // marcar q existe uma fotografia haFicheiro = true; } else { // o ficheiro não é válido veterinario.Foto = "avatar.png"; } } try { if (ModelState.IsValid) { // adiciona o novo veterinário à BD, mas na memória do servidor ASP .NET db.Add(veterinario); // consolida os dados no Servidor BD (commit) await db.SaveChangesAsync(); // será q há foto para gravar? if (haFicheiro) { using var stream = new FileStream(caminhoCompleto, FileMode.Create); await fotoVet.CopyToAsync(stream); } // redireciona a ação para a View do Index return(RedirectToAction(nameof(Index))); } } catch (Exception) { throw; } // qd ocorre um erro, reenvio os dados do veterinário para a view da criação return(View(veterinario)); }
public async Task <IActionResult> Create([Bind("Nome,NumCedulaProf,Fotografia")] Veterinarios veterinario, IFormFile fotoVet) { //**************************************** // processar o ficheiro da Fotografia //**************************************** // vars. auxiliares string caminhoCompleto = ""; bool haImagem = false; // será que há ficheiro? if (fotoVet == null) { // não há ficheiro! // o que vai ser feito? // - devolver o controlo para a View, informando que é necessário escolher uma fotografia // ModelState.AddModelError("", "Não se esqueça de adicionar uma fotografia do Veterinário"); // return View(veterinario); // - adicionar uma fotografia 'por defeito' veterinario.Fotografia = "noFoto.png"; } else { // há ficheiro. // será que é uma imagem? if (fotoVet.ContentType == "image/jpeg" || fotoVet.ContentType == "image/png") { // temos imagem. Ótimo! // temos de gerar um nome para o ficheiro Guid g; g = Guid.NewGuid(); // identificar a Extensão do ficheiro string extensao = Path.GetExtension(fotoVet.FileName).ToLower(); // nome do ficheiro string nome = g.ToString() + extensao; // preparar o ficheiro para ser guardado, mas não o vamos guardar já... // precisamos de identificar o caminho onde o ficheiro vai ser guardado caminhoCompleto = Path.Combine(_ambiente.WebRootPath, "Imagens\\Vets", nome); // associar o nome da fotografia ao Veterinário veterinario.Fotografia = nome; // assinalar que existe imagem haImagem = true; } else { // há ficheiro, MAS não é uma imagem // o que vai ser feito? // - devolver o controlo para a View, informando que é necessário escolher uma fotografia // ModelState.AddModelError("", "Não se esqueça de adicionar uma fotografia do Veterinário"); // return View(veterinario); // - adicionar uma fotografia 'por defeito' veterinario.Fotografia = "noFoto.png"; } } if (ModelState.IsValid) { // adiciona o Veterinário ao Modelo _context.Add(veterinario); // consolida, na BD, as alterações await _context.SaveChangesAsync(); // o registo foi guardado // o ficheiro vai agora ser guardado no disco rígido if (haImagem) { using var stream = new FileStream(caminhoCompleto, FileMode.Create); await fotoVet.CopyToAsync(stream); } // redireciona o utilizador para a View Index return(RedirectToAction(nameof(Index))); } // se o modelo não for válido, devolve o controlo à view do Create return(View(veterinario)); }