public async Task <IActionResult> SemanalPsico(SemanalPsicologoViewModel model, string psico) { var userColId = userManager.GetUserAsync(User).Result.ColaboradorId; var userId = userManager.GetUserAsync(User).Result.Id; var usuario = await userManager.FindByIdAsync(userId); var roleUser = await userManager.GetRolesAsync(usuario); var lancamentos = relatorioDAL.ObterExamePorPsicologoSemanal(model, psico); var psicos = colaboradorDAL.ObterPsicologosClassificadosPorNome().ToList(); if (roleUser.FirstOrDefault() != RolesNomes.Administrador) { var colId = userManager.GetUserAsync(User).Result.ColaboradorId; var userClinicaId = colaboradorDAL.ObterColaboradorPorId(colId).Result.ClinicaId; var idClinica = colaboradorDAL.ObterColaboradorPorId(userColId).Result.ClinicaId; lancamentos = lancamentos.Where(l => l.ClinicaId == userClinicaId); } var psicoList = new List <string>(); psicoList.Add("Selecionar Psicologo"); foreach (var p in psicos) { psicoList.Add(p.Nome); } SelectList Psicologos = new SelectList(psicoList); ViewData["Psicologos"] = Psicologos; var datasValidas = ValidarDatas(model.DataInicio, model.DataFim); AgrupamentoSemanalDeExamesPsico(lancamentos, psico); ViewBag.Cabecalho = "Exames Realizados"; if (psico != null && psico != "Selecionar Psicologo" && datasValidas) { ViewBag.Cabecalho = $"Exames Realizados de {model.DataInicio.ToString("dd/MM/yy")} até {model.DataFim.ToString("dd/MM/yy")}"; } return(View(lancamentos)); }
public IQueryable <SemanalPsicologoViewModel> ObterExamePorPsicologoSemanal(SemanalPsicologoViewModel model, string psico) { return(from a in context.Caixas join b in context.Clientes on a.ClienteId equals b.Id join c in context.Colaboradores on b.PsicologoId equals c.Id where c.Nome == psico where a.Data >= model.DataInicio && a.Data <= model.DataFim where b.Status == EnumHelper.Status.Ativo where a.Status == EnumHelper.Status.Ativo where a.ProdutoId == 2 || a.ProdutoId == 3 orderby c.Nome select new SemanalPsicologoViewModel { Id = c.Id, ClinicaId = c.ClinicaId, Nome = c.Nome, DataCx = a.Data, Cliente = b.Nome }); }