Exemplo n.º 1
0
 public void ReiniciarSenha(ref IUnitOfWork unitOfWork, Irmao model)
 {
     unitOfWork.Connection.Execute(
         "UPDATE Irmao SET Senha = @Senha, Tentativas = @Tentativas, StatusId = @StatusId, AlterarSenha = 1 where Codigo = @Id ",
         param: new { @Senha = model.Senha, @Id = model.Codigo, @Tentativas = model.Tentativas, @StatusId = model.StatusId },
         transaction: unitOfWork.Transaction);
 }
Exemplo n.º 2
0
 public void Atualizar(ref IUnitOfWork unitOfWork, Irmao model)
 {
     unitOfWork.Connection.Execute(@"UPDATE [dbo].[Irmao]
                                    SET [Nome] = @Nome, [Email] = @Email, [Telefone] = @Telefone, [Sexo] = @Sexo, [Indicador] = @Indicador, [Microfonista] = @Microfonista
                                        ,[LeitorSentinela] = @LeitorSentinela ,[LeitorEstudoLivro] = @LeitorEstudoLivro, [SistemaSonoro] = @SistemaSonoro, [OracaoFinal] = @OracaoFinal
                                        ,[PresidenteConferencia] = @PresidenteConferencia, [Carrinho] = @Carrinho, [GrupoId] = @GrupoId, [CongregacaoId] = @CongregacaoId, 
                                        [AtualizarDesignacao] = @AtualizarDesignacao, [AcessoAdmin] = @AcessoAdmin, [DataUltimaAlteracao] = GETDATE(), SubirQuadro = @SubirQuadro,
                                        [AtualizarAssistencia] = @AtualizarAssistencia
                                         WHERE Codigo = @Codigo ",
                                   param: new
     {
         model.Nome,
         model.Email,
         model.Telefone,
         model.Sexo,
         model.Indicador,
         model.Microfonista,
         model.LeitorSentinela,
         model.LeitorEstudoLivro,
         model.SistemaSonoro,
         model.OracaoFinal,
         model.PresidenteConferencia,
         model.Carrinho,
         model.GrupoId,
         model.CongregacaoId,
         model.AtualizarDesignacao,
         model.AcessoAdmin,
         model.Codigo,
         model.SubirQuadro,
         model.AtualizarAssistencia
     },
                                   transaction: unitOfWork.Transaction);
 }
Exemplo n.º 3
0
        public void SendEmail(Irmao model, string password, bool newUser)
        {
            string urlEnvironment = Runtime.UrlSystem;

            string HtmlHelloMessage = (newUser) ? Errors.HtmlBody_1 : Errors.HtmlBody_1b;

            MailMessage mailMsg  = new MailMessage();
            MailAddress endereco = new MailAddress(Runtime.Sender, "JW");

            string htmlBody = "<html> <body> <p> " + String.Format(HtmlHelloMessage, model.Nome) + "</p> <p>" +
                              string.Format(Errors.HtmlBody_5, urlEnvironment) + " </p> <p>" +
                              Errors.HtmlBody_2 + "<b> " + model.Email + "</b> </p> <p>" +
                              Errors.HtmlBody_3 + "<b> " + password + "</b> </p> <p>" +
                              "</p> <p>" + Errors.HtmlBody_4 + " </p> </body></html>";

            if (!String.IsNullOrEmpty(model.Email))
            {
                var client   = new SendGridClient(Runtime.KeySendGrid);
                var from     = new EmailAddress(Runtime.Sender, "JW");
                var subject  = (newUser) ? Errors.SubjectEmail : Errors.SubjectEmail1;
                var to       = new EmailAddress(model.Email, model.Nome);
                var msg      = MailHelper.CreateSingleEmail(from, to, subject, "", htmlBody);
                var response = client.SendEmailAsync(msg);
            }
        }
Exemplo n.º 4
0
        private Irmao BuscarporLogin(ref IUnitOfWork unitOfWork, string email)
        {
            var ret = _repository.PesquisarporEmail(ref unitOfWork, email);

            if (ret == null)
            {
                ret = new Irmao();
                ret.AddNotification(nameof(ret.Email), Errors.UserNotFound);
                unitOfWork.Rollback();
            }
            return(ret);
        }
Exemplo n.º 5
0
        private Irmao BuscarPorId(ref IUnitOfWork unitOfWork, int id)
        {
            var ret = _repository.FindById(ref unitOfWork, id);

            if (ret == null)
            {
                ret = new Irmao();
                ret.AddNotification(nameof(ret.Codigo), string.Format(Errors.RegisterNotFound, id));
                unitOfWork.Rollback();
            }
            return(ret);
        }
Exemplo n.º 6
0
 public Reunioes(Irmao palco,
                 Irmao volante,
                 Irmao equipamento,
                 Irmao[] indicadores)
 {
     this.dia         = DateTime.Today;
     this.descricao   = null;
     this.palco       = palco;
     this.volante     = volante;
     this.equipamento = equipamento;
     this.indicadores = indicadores;
 }
Exemplo n.º 7
0
        public IReadOnlyCollection <Notification> Atualizar(Irmao updatemodel, int userId)
        {
            if (updatemodel.Valid)
            {
                using (RepositorySession dalSession = new RepositorySession(Runtime.JWInstance))
                {
                    IUnitOfWork unitOfWork = dalSession.UnitOfWork;
                    unitOfWork.Begin();
                    try
                    {
                        var model = BuscarPorId(ref unitOfWork, updatemodel.Codigo);

                        if (model == null || model.Invalid)
                        {
                            return(model.Notifications);
                        }

                        //Valida se não existe um outro registro como este mesmo nome
                        if (!VerificarNome(ref unitOfWork, ref updatemodel, updatemodel.Codigo))
                        {
                            return(updatemodel.Notifications);
                        }

                        //Valida se não existe um outro registro com este mesmo e-mail
                        if (!VerificarEmail(ref unitOfWork, ref model, updatemodel.Email, model.Codigo))
                        {
                            return(model.Notifications);
                        }

                        updatemodel.AtualizarDesignacao = model.AtualizarDesignacao;

                        // Verifica se é necessário atualizar as designações
                        if (!model.AtualizarDesignacao)
                        {
                            updatemodel.VerificaDesignacoes(model);
                        }

                        _repository.Atualizar(ref unitOfWork, updatemodel);

                        unitOfWork.Commit();

                        return(updatemodel.Notifications);
                    }
                    catch
                    {
                        unitOfWork.Rollback();
                        throw;
                    }
                }
            }
            return(updatemodel.Notifications);
        }
Exemplo n.º 8
0
        public IActionResult Create(LoginInputModel inputModel)
        {
            try
            {
                Irmao ret = _service.Autenticar(inputModel.Username, inputModel.Password);

                //TODO LOGIN
                if (ret.Notifications.Any())
                {
                    return(Unauthorized(
                               ));
                }

                var member = (ret.AcessoAdmin) ? "MembershipId" : "Brother";

                var token = new JwtTokenBuilder()
                            .AddSecurityKey(JwtSecurityKey.Create(Runtime.SecreteKey))
                            .AddSubject(ret.Nome)
                            .AddIssuer("SystemNet.Security")
                            .AddAudience("SystemNet.Security")
                            .AddClaim(member, ret.Codigo.ToString())
                            .AddClaim((member != "Brother") ? "Brother" : "Patner", ret.Codigo.ToString())
                            .AddClaim((ret.AcessoAdmin || ret.AtualizarAssistencia) ? "Assistance" : "Patner2", ret.Codigo.ToString())
                            .AddClaim((ret.AcessoAdmin || ret.SubirQuadro) ? "LoadBoard" : "Patner3", ret.Codigo.ToString())
                            .AddClaim("UserName", ret.Email)
                            .AddExpiry(expiredminutes)
                            .Build();
                return(Ok(new
                {
                    access_token = token.Value,
                    changePassword = ret.AlterarSenha,
                    userid = ret.Codigo,
                    username = ret.Nome,
                    congregation = ret.CongregacaoNome,
                    congregationId = ret.CongregacaoId,
                    admin = ret.AcessoAdmin,
                    email = ret.Email,
                    Assistance = ret.AtualizarAssistencia,
                    LoadBoard = ret.SubirQuadro,
                    ExibirOracaoInicial = ret.ExibirOracaoInicial
                }));
            }
            catch (Exception ex)
            {
                // Logar o erro (Elmah)
                return(BadRequest(new
                {
                    success = false,
                    errors = new[] { ex }
                }));
            }
        }
Exemplo n.º 9
0
        private bool VerificarNome(ref IUnitOfWork unitOfWork, ref Irmao model, int?id = (int?)null)
        {
            var ret = _repository.PesquisarporNome(ref unitOfWork, model.Nome, id);

            if (ret != null)
            {
                model.AddNotification(nameof(model.Nome), Errors.NameExists);
                unitOfWork.Rollback();
                return(false);
            }

            return(true);
        }
Exemplo n.º 10
0
        private bool VerificarEmail(ref IUnitOfWork unitOfWork, ref Irmao model, string email, int?id = (int?)null)
        {
            if (email == string.Empty)
            {
                return(true);
            }

            var ret = _repository.PesquisarporEmail(ref unitOfWork, email, id);

            if (ret != null)
            {
                model.AddNotification(nameof(model.Email), Errors.EmailExists);
                unitOfWork.Rollback();
                return(false);
            }

            return(true);
        }
Exemplo n.º 11
0
 public ActionResult Atualizar([DataSourceRequest] DataSourceRequest request, IrmaoViewModel item)
 {
     if (ModelState.IsValid)
     {
         try
         {
             Irmao dados = Mapper.Map <Irmao>(item);
             dados = _repositorio.Atualizar(dados);
             _contexto.Commit();
             item.IrmaoId = dados.IrmaoId;
         }
         catch (Exception erro)
         {
             ModelState.AddModelError("", erro.Message);
             _contexto.Rollback();
         }
     }
     return(Json(ModelState.ToDataSourceResult()));
 }
Exemplo n.º 12
0
        public Irmao Adicionar(Irmao model, int userId)
        {
            if (model.Valid)
            {
                var password = model.GeraNovaSenha(8, true);

                using (RepositorySession dalSession = new RepositorySession(Runtime.JWInstance))
                {
                    IUnitOfWork unitOfWork = dalSession.UnitOfWork;
                    unitOfWork.Begin();
                    try
                    {
                        if (_repository.PesquisarporEmail(ref unitOfWork, model.Email) != null)
                        {
                            model.AddNotification(nameof(model.Email), Errors.LoginExists);
                            unitOfWork.Rollback();
                            return(model);
                        }

                        // Valida se não existe um outro registro com mesmo nome
                        if (!VerificarNome(ref unitOfWork, ref model))
                        {
                            return(model);
                        }

                        model.Codigo = _repository.Inserir(ref unitOfWork, model);

                        _repository.SendEmail(model, password, true);

                        unitOfWork.Commit();
                    }
                    catch
                    {
                        unitOfWork.Rollback();
                        throw;
                    }
                }
            }

            return(model);
        }
Exemplo n.º 13
0
        public ActionResult IncluirIrmaoAtleta(DataSourceRequest request, IrmaoViewModel item, int atletaId)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Irmao dados = Mapper.Map <Irmao>(item);
                    dados.Atleta = _contexto.Atletas.Find(atletaId);
                    _repositorio.Inserir(dados);
                    _contexto.SaveChanges();
                    item.IrmaoId = dados.IrmaoId;
                }
                catch (Exception erro)
                {
                    ModelState.AddModelError("", erro.Message);
                    _contexto.Rollback();
                    return(Json(ModelState.ToDataSourceResult()));
                }
            }

            return(Json(new[] { item }.ToDataSourceResult(request, ModelState)));
        }
Exemplo n.º 14
0
 public int Inserir(ref IUnitOfWork unitOfWork, Irmao model)
 {
     return(Convert.ToInt32(unitOfWork.Connection.ExecuteScalar(@" INSERT INTO [dbo].[Irmao] ([Nome], [Email], [Telefone], [Sexo], [Ativo], [Indicador], [Microfonista]
                                                                   ,[LeitorSentinela], [LeitorEstudoLivro], [SistemaSonoro], [OracaoFinal], [PresidenteConferencia]
                                                                   ,[Carrinho], [GrupoId], [CongregacaoId], [Senha], [DesativarProximaLista], [AtivarProximaLista], 
                                                                   [AtualizarDesignacao], [AcessoAdmin], [StatusId], [AlterarSenha], [Tentativas], [SubirQuadro],
                                                                   [AtualizarAssistencia])
                                                                  VALUES
                                                                 (@Nome, @Email, @Telefone, @Sexo, @Ativo, @Indicador, @Microfonista, @LeitorSentinela, @LeitorEstudoLivro, @SistemaSonoro
                                                                 ,@OracaoFinal, @PresidenteConferencia, @Carrinho, @GrupoId, @CongregacaoId, @Senha, 0, 1, 1, @AcessoAdmin, @StatusId, 
                                                                 @AlterarSenha, @Tentativas, @SubirQuadro, @AtualizarAssistencia);
                                                                  SELECT SCOPE_IDENTITY() ",
                                                                param: new
     {
         model.Nome,
         model.Email,
         model.Telefone,
         model.Sexo,
         @Ativo = 1,
         model.Indicador,
         model.Microfonista,
         model.LeitorSentinela,
         model.LeitorEstudoLivro,
         model.SistemaSonoro,
         model.OracaoFinal,
         model.PresidenteConferencia,
         model.Carrinho,
         model.GrupoId,
         model.CongregacaoId,
         model.Senha,
         model.AcessoAdmin,
         model.StatusId,
         model.AlterarSenha,
         model.Tentativas,
         model.SubirQuadro,
         model.AtualizarAssistencia
     },
                                                                transaction: unitOfWork.Transaction)));
 }
Exemplo n.º 15
0
 private Irmao AtualizarLogin(ref IUnitOfWork unitOfWork, ref Irmao model)
 {
     _repository.Login(ref unitOfWork, model);
     unitOfWork.Commit();
     return(model);
 }
Exemplo n.º 16
0
 public void Login(ref IUnitOfWork unitOfWork, Irmao model)
 {
     unitOfWork.Connection.Execute("update Irmao set StatusId = @StatusId, Tentativas = @Tentativas, UltimoLogin = @UltimoLogin where Codigo = @Codigo",
                                   param: new { @StatusId = model.StatusId, @Tentativas = model.Tentativas, @UltimoLogin = model.UltimoLogin, @Codigo = model.Codigo },
                                   transaction: unitOfWork.Transaction);
 }