/// <summary>
        /// Cria, no banco de dados, um novo usuário
        /// </summary>
        /// <param name="usuario">Usuário que será criado</param>
        /// <param name="novaSenha">Senha gerada para o novo usuário</param>
        /// <returns>Retorna o usuário criado</returns>
        public static Usuario CriaUsuario(Usuario usuario, string novaSenha)
        {
            UsuarioRepositorio     usuarioRepositorio     = new UsuarioRepositorio();
            NotificacaoRepositorio notificacaoRepositorio = new NotificacaoRepositorio();
            ControleNotificacao    controle;

            usuario.Senha = Autenticacao.ObtemSHA1Hash(novaSenha);

            try
            {
                usuarioRepositorio.Cria(usuario);

                controle = new ControleNotificacao()
                {
                    IdUsuario         = usuario.Id.Value,
                    UltimaNotificacao = notificacaoRepositorio.ObtemUltimaNotificacaoArmazenada()
                };

                notificacaoRepositorio.Cria(controle);

                return(usuario);
            }
            catch (Exception ex)
            {
                Log.Info(ex.InnerException == null ? ex.Message : ex.InnerException.ToString());
                return(null);
            }
        }
Example #2
0
        /// <summary>
        /// Verifica se há novas notificações para informar no ícone de notificações
        /// </summary>
        private void VerificaNotificacao()
        {
            ControleNotificacao controle         = GerenciamentoNotificacao.CarregaControleNotificacao(this.usuario.Id.Value);
            NotificacaoConta    notificacaoConta = GerenciamentoNotificacao.ObtemNotificacoes(controle.UltimaNotificacao);

            if (notificacaoConta != null && notificacaoConta.Notificacoes.Count > 0)
            {
                this.LblNumeroNotificacoes.Text    = notificacaoConta.Notificacoes.Count.ToString();
                this.LblNumeroNotificacoes.Visible = true;
            }
        }
        /// <summary>
        /// Atualiza, no banco de dados, as configurações de notificação do usuário
        /// </summary>
        /// <param name="controleNotificacao">Objeto controle de notificação que será atualizado</param>
        /// <returns>Indica se a atualização foi bem sucedida</returns>
        public static bool AtualizaControleNotificacao(ControleNotificacao controleNotificacao)
        {
            NotificacaoRepositorio notificacaoRepositorio = new NotificacaoRepositorio();

            try
            {
                notificacaoRepositorio.Atualiza(controleNotificacao);

                return(true);
            }
            catch (Exception ex)
            {
                Log.Info(ex.InnerException == null ? ex.Message : ex.InnerException.ToString());
                return(false);
            }
        }
Example #4
0
        /// <summary>
        /// Obtém as notificações da conta de uso
        /// </summary>
        private void ObtemNotificacoes()
        {
            Usuario             usuario          = (Usuario)this.Session[ConstantesGlobais.USUARIO];
            ControleNotificacao controle         = GerenciamentoNotificacao.CarregaControleNotificacao(usuario.Id.Value);
            NotificacaoConta    notificacaoConta = GerenciamentoNotificacao.ObtemNotificacoes(controle.UltimaNotificacao);

            if (notificacaoConta != null && notificacaoConta.Notificacoes.Count > 0)
            {
                this.usuarios = (List <UsuarioApi>)GerenciamentoUsuario.CarregaUsuariosApi();

                this.RptNotificacao.DataSource = notificacaoConta.Notificacoes.OrderByDescending(n => n.DataNotificacao);
                this.RptNotificacao.DataBind();

                controle.UltimaNotificacao = notificacaoConta.ContinuaEm;

                GerenciamentoNotificacao.AtualizaControleNotificacao(controle);
            }
        }