public List <DeviceNotificacao> GetDevicesNotificacaoPrimeiraAula(Notificacao notificacao, ParametrosPrimeiraAula parametros) { using (MiniProfiler.Current.Step("Obtendo devices notificação primeira aula")) { var devices = new List <DeviceNotificacao> (); var aulaRepository = new AulaEntity(); int diasAntecedencia = parametros.DiasAntecedencia == default(int) ? Utilidades.NotificacaoPrimeiraAulaDiasAntecedenciaPadrao : parametros.DiasAntecedencia; var dataAula = parametros.Data == default(DateTime) ? DateTime.Now.Date.AddDays(diasAntecedencia) : parametros.Data; var turmasPrimeiraAula = aulaRepository.GetPrimeiraAulaTurma(dataAula, parametros.TurmaId); var alunos = aulaRepository.GetAlunosAulaTurma(turmasPrimeiraAula); var alunosCourse = alunos.GroupBy(x => x.CourseId).ToList(); alunosCourse.ForEach(x => { var devicesCurso = x.Where(y => y.CourseId == x.Key).Select(z => new DeviceNotificacao { ClientId = z.ClientId, DeviceToken = z.ClientDeviceToken, NotificacaoId = notificacao.IdNotificacao, Status = EStatusEnvioNotificacao.NaoEnviado, Data = z.LessonDatetime, Titulo = notificacao.Titulo.Replace("#PRODUTO", z.ProductName), Mensagem = notificacao.Texto.Replace("#DATA", z.LessonDatetime.ToString("dd/MM/yyyy")).Replace("#HORA", z.LessonDatetime.ToString("HH:mm")) }).ToList(); devices.AddRange(devicesCurso); }); return(devices); } }
public void GetSemanas_ParametrosDefault_NaoRetornaNulo() { var semanas = new AulaEntity().GetSemanas(0, 73, 96409, Semana.TipoAba.Aulas); Assert.IsNotNull(semanas); }