public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var obj = await _consultaService.FindByIdAsync(id.Value); if (obj == null) { return(NotFound()); } List <Medicamento> medicamentos = _listMedicamentoService.FindAll(); List <Veterinario> veterinarios = _listVeterinarioService.FindAll(); List <Animal> animals = _listAnimalService.FindAll(); List <Especie> especies = _listEspecieService.FindAll(); List <Proprietario> proprietarios = _listProprietarioService.FindAll(); ConsultaFormViewModel viewModel = new ConsultaFormViewModel { Consulta = obj, Proprietarios = proprietarios, Especies = especies, Animal = animals, Medicamentos = medicamentos, Veterinarios = veterinarios }; return(View(viewModel)); }
public async Task <IActionResult> Create(Consulta consulta) { try { consulta.ConsultaSituacaoId = (int)ConsultaSituacaoEnum.Aberta; if (!ModelState.IsValid) { List <Medico> medicos = await _medicoService.GetAllMedicos(); ConsultaFormViewModel consultaFormViewModel = new ConsultaFormViewModel { Consulta = consulta, Medicos = medicos }; return(View(consultaFormViewModel)); } if (await _consultaService.VerificaDuplicidadeDeConsultaPorMedicoeHorario(consulta)) { return(RedirectToAction(nameof(Erro), new { mensagem = "Já existe consulta marcada para a data e horário informados com o mesmo médico" })); } await _consultaService.AddConsultaAsync(consulta); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { throw ex; } }
public async Task <IActionResult> Create(Consulta consulta) { if (!ModelState.IsValid) { var medicos = await _medicoService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Consulta = consulta, Medicos = medicos }; return(View(viewModel)); } //A data final não pode ser menor que a data inicial if (consulta.DiaHoraFinalConsulta <= consulta.DiaHoraInicialConsulta) { return(RedirectToAction(nameof(Error), new { message = "Dia e hora final da consulta não permitido" })); } //O sistema não deve permitir o agendamento de duas ou mais consultas no mesmo range de datas var obj = await _consultaService.FindByDateAsync(consulta.DiaHoraInicialConsulta, consulta.DiaHoraFinalConsulta, consulta.MedicoId); if (obj == null) { await _consultaService.InsertAsync(consulta); return(RedirectToAction(nameof(Index))); } else { return(RedirectToAction(nameof(Error), new { message = "Data e hora já agendada para este médico" })); } }
public async Task <IActionResult> Edit(int id, Consulta consulta) { if (!ModelState.IsValid) { var medicos = await _medicoService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Consulta = consulta, Medicos = medicos }; return(View(viewModel)); } if (id != consulta.Id) { return(RedirectToAction(nameof(Error), new { message = "Id não corresponde" })); } try { await _consultaService.UpdateAsync(consulta); return(RedirectToAction(nameof(Index))); } catch (ApplicationException e) { return(RedirectToAction(nameof(Error), new { message = e.Message })); } }
// GET : Consultas public async Task <IActionResult> Create() { var medicos = await _medicoService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Medicos = medicos }; return(View(viewModel)); }
public async Task <IActionResult> Create() { var especialistas = await _especialistaService.FindAllAsync(); var clientes = await _clienteService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Especialista = especialistas, Cliente = clientes }; return(View(viewModel)); }
public IActionResult Create() { var medicamentos = _listMedicamentoService.FindAll(); var especies = _listEspecieService.FindAll(); var proprietarios = _listProprietarioService.FindAll(); var animals = _listAnimalService.FindAll(); var veterinarios = _listVeterinarioService.FindAll(); var viewModel = new ConsultaFormViewModel { Veterinarios = veterinarios, Animal = animals, Especies = especies, Proprietarios = proprietarios, Medicamentos = medicamentos }; return(View(viewModel)); }
public async Task <IActionResult> Edit(int?id) { var obj = await _consultaService.FindByIdAsync(id.Value); //iremos procurar se existe a id da consulta List <Especialista> especialistas = await _especialistaService.FindAllAsync(); //vamos refazer a lista de todo especialistas List <Cliente> clientes = await _clienteService.FindAllAsync(); //vamos refazer a lista de todo cliente ConsultaFormViewModel viewModel = new ConsultaFormViewModel { Consulta = obj, Especialista = especialistas, Cliente = clientes }; return(View(viewModel)); }
public async Task <IActionResult> Create(Cliente cliente) { if (!ModelState.IsValid) { var clien = await _clienteService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Cliente = clien }; return(View(viewModel)); } await _clienteService.InsertAsync(cliente); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Create() { try { List <Medico> medicos = await _medicoService.GetAllMedicos(); var consultaViewModel = new ConsultaFormViewModel { Medicos = medicos }; return(View(consultaViewModel)); } catch (Exception ex) { throw ex; } }
public async Task <IActionResult> Create(Consulta consulta) { if (!ModelState.IsValid)//validação do JavaScript estiver desabilitado { var cliente = await _clienteService.FindAllAsync(); var especialisa = await _especialistaService.FindAllAsync(); var viewModel = new ConsultaFormViewModel { Cliente = cliente, Especialista = especialisa, Consulta = consulta }; return(View(viewModel)); } await _consultaService.InsertAsync(consulta); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> AgendarConsulta(ConsultaFormViewModel agendamentoConsulta, IFormCollection form) { try { if (!ModelState.IsValid) { List <Medico> medicos = await _medicoService.GetAllMedicos(); ConsultaFormViewModel consultaFormViewModel = new ConsultaFormViewModel { Consulta = agendamentoConsulta.Consulta, Medico = agendamentoConsulta.Medico }; return(View(consultaFormViewModel)); } agendamentoConsulta.Consulta.ConsultaSituacaoId = (int)ConsultaSituacaoEnum.Pendente; int idMedico = Convert.ToInt32(Request.Form["Medicos"]); agendamentoConsulta.Consulta.Medico = await _medicoService.ObterMedicoByIdAsync(idMedico); if (await _consultaService.VerificaDuplicidadeDeConsultaPorMedicoeHorario(agendamentoConsulta.Consulta)) { return(RedirectToAction(nameof(Erro), new { mensagem = "Já existe consulta marcada para a data e horário informados com o mesmo médico" })); } if (!_pacienteService.ExistePacienteByNomeAsync(agendamentoConsulta.Paciente.Nome)) { await _pacienteService.AdicionarPacienteAsync(agendamentoConsulta.Paciente); } agendamentoConsulta.Consulta.Paciente = await _pacienteService.ObterPacienteByNomeAsync(agendamentoConsulta.Paciente.Nome); await _consultaService.AddConsultaAsync(agendamentoConsulta.Consulta); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { throw ex; } }
//GET : Edit public async Task <IActionResult> Edit(int?id) { if (id == null) { return(RedirectToAction(nameof(Error), new { message = "Id nulo" })); } var obj = await _consultaService.FindByIdAsync(id.Value); if (obj == null) { return(RedirectToAction(nameof(Error), new { message = "Id não encontrado" })); } List <Medico> medicos = await _medicoService.FindAllAsync(); ConsultaFormViewModel viewModel = new ConsultaFormViewModel { Consulta = obj, Medicos = medicos }; return(View(viewModel)); }