コード例 #1
0
        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)));
        }
コード例 #3
0
        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)));
        }