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); }
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); }
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); } }
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); }
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); }
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; }
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); }
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 } })); } }
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); }
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); }
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())); }
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); }
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))); }
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))); }
private Irmao AtualizarLogin(ref IUnitOfWork unitOfWork, ref Irmao model) { _repository.Login(ref unitOfWork, model); unitOfWork.Commit(); return(model); }
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); }