public ZRN.Clientes.Lista_TotalEmpresas Pesquisa(ZRN.Clientes.Filtros filtros) { var pesquisaRN = new ZRN.Clientes.Clientes(); var listaEmpresas = pesquisaRN.RetornaPesquisa(filtros); var lista = new ZRN.Clientes.Lista_TotalEmpresas(); lista.empresas = listaEmpresas; lista.total = pesquisaRN.totalEmpresa; return(lista); }
public List <ZRN.Empresas.Empresa> RetornaPesquisa(ZRN.Clientes.Filtros filtros) { var emnpresas = (from e in db.empresas join s in db.setoresempresa on e.idsetor equals s.idsetoresempresa orderby e.nome ascending where !e.excluido && ( filtros.idSetor != 0 ? e.idsetor == filtros.idSetor : e.idsetor != 0 ) && ( e.nome.ToLower() == filtros.expressao.ToLower() || e.nome.Contains(filtros.expressao.ToLower()) || filtros.expressao == "" || filtros.expressao == null ) select new Empresas.Empresa() { idempresa = e.idempresa, nome = e.nome, imagem = e.imagem, nomeSetor = s.nome, urlsite = e.urlsite, clienteAssociado = false } ); totalEmpresa = emnpresas.ToList().Count; var listaEmpresas = emnpresas.Skip(filtros.qtdregistros * (filtros.pagina - 1)).Take(filtros.qtdregistros).ToList(); var listaEmpresasReturn = new List <Empresas.Empresa>(); foreach (var emp in listaEmpresas) { var existeAssociacao = db.cliente_empresas.Where(x => x.idcliente == filtros.idCliente && x.idempresa == emp.idempresa && x.excluido == false).FirstOrDefault(); var objEmpresa = new Empresas.Empresa(); objEmpresa.idempresa = emp.idempresa; objEmpresa.nome = emp.nome; objEmpresa.imagem = emp.imagem; objEmpresa.nomeSetor = emp.nomeSetor; objEmpresa.urlsite = emp.urlsite; objEmpresa.clienteAssociado = existeAssociacao != null ? true : false; listaEmpresasReturn.Add(objEmpresa); } return(listaEmpresasReturn); }