public IActionResult Delete(int id, IFormCollection collection) { var exames = _exameContext.GetByIdEmpresa(id, DateTime.MinValue, DateTime.MaxValue); var pessoaEstado = _trabalhaEstadoContext.GetByIdEmpresa(id); try { if (exames == null && pessoaEstado == null) { _empresaContext.Delete(id); TempData["mensagemSucesso"] = "Laboratório removido com sucesso!"; } else { TempData["mensagemErro"] = "Esse laboratório não pode ser removido pois existem " + "profissionais e exames cadastrados que dependem dele!"; } } catch { TempData["mensagemErro"] = "Houve um problema ao remover laboratório, tente novamente!"; } return(RedirectToAction(nameof(Index))); }
public PesquisaExameViewModel BuscaExamesViewModel(PesquisaExameViewModel pesquisaExame) { var usuario = _usuarioContext.RetornLoggedUser((ClaimsIdentity)User.Identity); var pessoaTrabalhaMunicipio = _pessoaTrabalhaMunicipioContext.GetByIdPessoa(usuario.UsuarioModel.IdPessoa); bool dataInicialIndeterminada = pesquisaExame.DataInicial.Equals(DateTime.MinValue); var exames = new List <ExameBuscaModel>(); if (usuario.RoleUsuario.Equals("AGENTE") || usuario.RoleUsuario.Equals("ADM")) { if (dataInicialIndeterminada) { exames = _exameContext.GetByIdAgente(usuario.UsuarioModel.IdPessoa, 15); } else { exames = _exameContext.GetByIdAgente(usuario.UsuarioModel.IdPessoa, pesquisaExame.DataInicial, pesquisaExame.DataFinal); } } else if (usuario.RoleUsuario.Equals("GESTOR") || usuario.RoleUsuario.Equals("SECRETARIO")) { if (pessoaTrabalhaMunicipio != null) { if (dataInicialIndeterminada) { exames = _exameContext.GetByIdMunicipio(pessoaTrabalhaMunicipio.IdMunicipio, 15); } else { exames = _exameContext.GetByIdMunicipio(pessoaTrabalhaMunicipio.IdMunicipio, pesquisaExame.DataInicial, pesquisaExame.DataFinal); } } else { var pessoaTrabalhaEstado = _pessoaTrabalhaEstadoContext.GetByIdPessoa(usuario.UsuarioModel.IdPessoa); if (pessoaTrabalhaEstado != null) { if (pessoaTrabalhaEstado.IdEmpresaExame != EmpresaExameModel.EMPRESA_ESTADO_MUNICIPIO) { if (dataInicialIndeterminada) { exames = _exameContext.GetByIdEmpresa(pessoaTrabalhaEstado.IdEmpresaExame, 15); } else { exames = _exameContext.GetByIdEmpresa(pessoaTrabalhaEstado.IdEmpresaExame, pesquisaExame.DataInicial, pesquisaExame.DataFinal); } } else { if (dataInicialIndeterminada) { exames = _exameContext.GetByIdEstado(pessoaTrabalhaEstado.IdEstado, 15); } else { exames = _exameContext.GetByIdEstado(pessoaTrabalhaEstado.IdEstado, pesquisaExame.DataInicial, pesquisaExame.DataFinal); } } } } } pesquisaExame.Exames = exames; /* * 2º Filtro - filtrando ViewModel por nome ou cpf e resultado */ pesquisaExame.Pesquisa = pesquisaExame.Pesquisa ?? ""; pesquisaExame.Resultado = pesquisaExame.Resultado ?? ""; pesquisaExame.Cidade = pesquisaExame.Cidade ?? ""; if (!pesquisaExame.Pesquisa.Equals("")) { if (Methods.SoContemLetras(pesquisaExame.Pesquisa)) { pesquisaExame.Exames = pesquisaExame.Exames.Where(exameViewModel => exameViewModel.NomePaciente.ToUpper().Contains(pesquisaExame.Pesquisa.ToUpper())).ToList(); } else { pesquisaExame.Exames = pesquisaExame.Exames.Where(exameViewModel => exameViewModel.Cpf.ToUpper().Contains(pesquisaExame.Pesquisa.ToUpper())).ToList(); } } if (!pesquisaExame.Resultado.Equals("") && !pesquisaExame.Resultado.Equals("Todas as Opçoes")) { pesquisaExame.Exames = pesquisaExame.Exames.Where(exameViewModel => exameViewModel.Exame.Resultado.ToUpper().Equals(pesquisaExame.Resultado.ToUpper())).ToList(); } if (!pesquisaExame.Cidade.Equals("")) { pesquisaExame.Exames = pesquisaExame.Exames.Where(exameViewModel => exameViewModel.Cidade.ToUpper().Contains(pesquisaExame.Cidade.ToUpper())).ToList(); } /* * Ordenando lista por data e pegando maior e menor datas... */ if (pesquisaExame.Exames.Count > 0) { pesquisaExame.Exames = pesquisaExame.Exames.OrderByDescending(ex => ex.Exame.DataExame).ToList(); pesquisaExame.DataFinal = pesquisaExame.Exames[0].Exame.DataExame; pesquisaExame.DataInicial = pesquisaExame.Exames[pesquisaExame.Exames.Count - 1].Exame.DataExame; } pesquisaExame.Exames = pesquisaExame.Exames.OrderBy(ex => ex.Exame.CodigoColeta).ToList(); return(PreencheTotalizadores(pesquisaExame)); }