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> Create(Consulta consulta) { caixa = new Caixa(consulta.ValorConsulta, "Consulta", consulta.Id, consulta.AnimalId, consulta.ProprietarioId, "Entrada"); if (!ModelState.IsValid) { return(View(consulta)); } await _consultaService.InsertAsync(consulta); if (consulta.pago) { InsertCaixa(); } return(RedirectToAction(nameof(Index))); }
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))); }