public static Estabelecimento EstabelecimentoLogado(ICustomPrincipal user)
        {
            ClasseModeloDAO <Estabelecimento> dao = ClasseModeloDAO <Estabelecimento> .Create(user);

            Estabelecimento es = dao.FindFirst();

            dao.Dispose();
            return(es);
        }
        public static Usuario UsuarioLogado(ICustomPrincipal user)
        {
            Usuario usuario = null;

            try
            {
                ClasseModeloDAO <Usuario> daoUsuario = ClasseModeloDAO <Usuario> .Create(user);

                usuario = daoUsuario.FindByPrimaryKey(user.IdUsuario);
                daoUsuario.Dispose();
            }
            catch (Exception e)
            {
                LogErros.GravaLog(e, MethodBase.GetCurrentMethod().Name);
            }

            return(usuario);
        }
        /// <summary>
        /// Busca todos os cartões cadastrados.
        /// </summary>
        /// <returns>Json String</returns>
        public List <ListaLixeira> BuscaListaDados()
        {
            string strMensagem            = "Não foi possível buscar os dados cadastrados.";
            List <ListaLixeira> lsCartoes = new List <ListaLixeira>();
            CustomPrincipal     user      = User as CustomPrincipal;

            try
            {
                // Busca todos os cartões cadastrados.
                DetachedCriteria criteria = DetachedCriteria.For <Lixeira>();
                //criteria.AddOrder(Order.Asc("Descricao"));
                criteria.Add(Expression.Eq("leituraValida", LeituraValida.Aguardando));

                ClasseModeloDAO <Lixeira> dao = ClasseModeloDAO <Lixeira> .Create(1);

                Lixeira[] cartoes = dao.FindAll();

                // Adiciona cada cartão a lista.
                foreach (Lixeira cartao in cartoes)
                {
                    ListaLixeira lc = new ListaLixeira()
                    {
                        Id               = Convert.ToInt32(cartao.Id),
                        Descricao        = cartao.Descricao,
                        TotalPorcentagem = cartao.TotalPorcentagem
                    };
                    if (lsCartoes.Any(x => x.Descricao == lc.Descricao) == true)
                    {
                        if (lsCartoes.Any(x => x.TotalPorcentagem != lc.TotalPorcentagem) == true)
                        {
                            foreach (var itemCarros in lsCartoes)
                            {
                                if (itemCarros != lc)
                                {
                                    lsCartoes.Remove(itemCarros);
                                    lsCartoes.Add(lc);
                                }
                                else
                                {
                                    lsCartoes.Add(lc);
                                }
                            }
                        }
                    }
                    else
                    {
                        lsCartoes.Add(lc);
                    }
                }


                strMensagem = "OK";
            }
            catch (Exception e)
            {
                MetodosGlobais.SaveExceptionError(e);

                strMensagem = "Erro: " + e.Message;
            }
            //, Lixieras = lsCartoes


            return(lsCartoes);
        } // BuscaCartoesCadastrados