public async Task <IActionResult> DiarioPsico(DiarioPsicologoViewModel model, DateTime dateTime, 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 dtCabecalho = DateTime.Today; if (dateTime.Year == 1) { model.Data = DateTime.Today; } else { model.Data = dateTime; dtCabecalho = dateTime; } var lancamentos = relatorioDAL.ObterExamePorPsicologoDiario(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; AgrupamentoDeExamesPsico(lancamentos, psico); ViewBag.DataAtual = dtCabecalho.ToString("dd/MM/yyyy"); return(View(lancamentos)); }
public IQueryable <DiarioPsicologoViewModel> ObterExamePorPsicologoDiario(DiarioPsicologoViewModel model, string psico) { if (psico != null && psico != "Selecionar Psicologo") { 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 b.Status == EnumHelper.Status.Ativo where a.Status == EnumHelper.Status.Ativo where a.ProdutoId == 2 || a.ProdutoId == 3 where a.Data == model.Data orderby c.Nome select new DiarioPsicologoViewModel { Id = c.Id, ClinicaId = c.ClinicaId, Nome = c.Nome, Data = a.Data, Cliente = b.Nome }); } 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 b.Status == EnumHelper.Status.Ativo where a.Status == EnumHelper.Status.Ativo where a.ProdutoId == 2 || a.ProdutoId == 3 where a.Data == model.Data orderby c.Nome select new DiarioPsicologoViewModel { Id = c.Id, ClinicaId = c.ClinicaId, Nome = c.Nome, Data = a.Data, Cliente = b.Nome }); }