public async Task <Agendamento> ObterAsync(EnumPeriodo periodo, DateTime data) { return(await _context.Agendamentos .Where(a => a.Periodo == periodo && a.DataAgendada.Date == data.Date) .AsNoTracking() .FirstOrDefaultAsync()); }
public void Editar(DateTime dataAgendada, EnumPeriodo periodo, Guid salaId) { DataAgendada = dataAgendada; Periodo = periodo; SalaId = salaId; }
public async Task ValidarAgendamentoDoUsuario(EnumPeriodo periodo, DateTime data, Guid usuarioId, string metodo) { var agendamento = await _agendamentoRepository.ObterAsync(periodo, data); if (agendamento != null && agendamento.UsuarioId == usuarioId && (agendamento.Status == EnumStatusAgendamento.Aprovado || agendamento.Status == EnumStatusAgendamento.Pendente)) { AddNotification(metodo, MensagemValidacao.Agendamento.PermitidoUm); return; } }
public Agendamento(DateTime dataAgendada, EnumPeriodo periodo, Guid salaId, Guid usuarioId) { Id = Guid.NewGuid(); DataCriacao = DateTime.UtcNow; DataAgendada = dataAgendada; Periodo = periodo; Status = EnumStatusAgendamento.Pendente; SalaId = salaId; UsuarioId = usuarioId; DataAtualizacaoStatus = null; AprovadorId = null; }