public ActionResult Create([DataSourceRequest] DataSourceRequest request, CadastroUsuarioModel user)
        {
            try
            {
                // TODO: Add insert logic here

                using (var cadUsuario = new CadastroUsuario())
                {
                    var usuario = new Usuario()
                    {
                        Nome = user.Nome,
                        AutenticaSenhaDia = user.AutenticaSenhaDia,
                        DataCriacao = DateTime.Now,
                        Ativo = user.Ativo,
                        Email = user.Email,
                        Login = user.Login.ToUpper(),
                        Telefone = user.Telefone
                    };

                    cadUsuario.InserirUsuario(usuario);
                    user.IdUsuario = usuario.IdUsuario;
                }

                AtualizarPerfilInformado(user);

                return Json(new[] { user }.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
            }
            catch
            {
                return View();
            }
        }
        public void AlterarSenha(Usuario user, string currentPassword, string newPassword, string confirmNewPassword)
        {
            try
            {

                ValidarPassowordInformado(user, TipoValidacaoPassword.AlteracaoSenha, newPassword, confirmNewPassword, currentPassword);
                RegistarAcessoUsuario(user, newPassword);

            }
            catch (Exception ex)
            {
                throw new BusinessProcessException(ex.Message);
            }
        }
        public void AtualizarAssociacaoPerfil(Usuario usuario, Perfil perfil)
        {
            var ListaPerfil = usuarioPerfilBM.GetPerfilUsuarioByUsuario(usuario);

            if (ListaPerfil == null)
            {
                var NovoPerfilAtivo = new UsuarioPerfil()
                {
                    Ativo = true,
                    DataAssociacao = DateTime.Now,
                    Perfil = perfil,
                    Usuario = usuario
                };

                usuarioPerfilBM.Insert(NovoPerfilAtivo);
            }
            else
            {
                var ultimoPerfilAtivo = ListaPerfil.FirstOrDefault(x => x.Ativo);
                if (ultimoPerfilAtivo.Perfil.IdPerfil != perfil.IdPerfil)
                {
                    ultimoPerfilAtivo.Ativo = false;
                    usuarioPerfilBM.Update(ultimoPerfilAtivo);

                    var NovoPerfilAtivo = new UsuarioPerfil()
                    {
                        Ativo = true,
                        DataAssociacao = DateTime.Now,
                        Perfil = perfil,
                        Usuario = usuario
                    };

                    usuarioPerfilBM.Insert(NovoPerfilAtivo);
                }
            }
        }
 public void ReativarIngrediente(Ingrediente pIngrediente, Usuario pUsuario, string Ip)
 {
     pIngrediente.Ativo = true;
     ingredienteBm.Update(pIngrediente);
     RegistrarHistóricoDesabilitarHabilitar(pIngrediente.IdIngrediente, pUsuario.IdUsuario, Ip, TipoOpracaoDesativacaoIngrediente.Reativar);
 }
 public void DesativarUsuario(Usuario usuario)
 {
     usuario.Ativo = false;
     usuarioBm.Update(usuario);
 }
 public void AlterarUsuario(Usuario usuario)
 {
     usuarioBm.Update(usuario);
 }
 public void ReativarUsuario(Usuario usuario)
 {
     usuario.Ativo = true;
     usuarioBm.Update(usuario);
 }
 public void InserirUsuario(Usuario usuario)
 {
     usuarioBm.Insert(usuario);
 }
        private bool ValidaNovoAcesso(Usuario user, string senha)
        {
            try
            {
                return (string.IsNullOrWhiteSpace(user.Password) && string.IsNullOrWhiteSpace(senha));

            }
            catch (Exception ex)
            {
                throw new BusinessProcessException(ex.Message);
            }
        }
示例#10
0
 public Perfil GetPerfilAtivoByUsuario(Usuario pUsuario)
 {
     return usuarioPerfilBM.GetPerfilByUsuario(pUsuario).FirstOrDefault(x => x.Ativo).Perfil;
 }
示例#11
0
 public void NovoAcesso(Usuario user, string newPassword, string confirmNewPassword)
 {
     try
     {
         ValidarPassowordInformado(user, TipoValidacaoPassword.NovoAcesso, newPassword, confirmNewPassword);
         RegistarAcessoUsuario(user, newPassword);
     }
     catch (Exception ex)
     {
         throw new BusinessProcessException(ex.Message);
     }
 }
示例#12
0
 public Perfil GetPerfilAtivo(Usuario usuarioLogado)
 {
     return usuarioPerfilBm.GetPerfilByUsuario(usuarioLogado).FirstOrDefault(x => x.Ativo).Perfil;
 }
示例#13
0
        private void ValidarPassowordInformado(Usuario user, TipoValidacaoPassword tipoValidacao, string newPassword, string confirmNewPassword, string currentPassword = "")
        {
            /*if (newPassword.Length < 6)
                throw new BusinessProcessException("O password deve conter o mínimo de 6 caracteres!");

            if (newPassword.Length < 15)
                throw new BusinessProcessException("O password não pode ultrapassar 15 caracteres!");

            if (string.IsNullOrWhiteSpace(newPassword))
                throw new BusinessProcessException("Novo password é obrigatório!");

            if (string.IsNullOrWhiteSpace(confirmNewPassword))
                throw new BusinessProcessException("A confirmação do novo password é obrigatória!");

            if (!ValidatePasswordFormat(newPassword))
                throw new BusinessProcessException("Password informado Inválido! O novo password deve ser composto com pelo menos uma letra maiúscula, uma outra minúscula e um número.");

            if (newPassword != confirmNewPassword)
                throw new BusinessProcessException("A confirmação deve ser idêntica ao novo password informado!");*/

            if (tipoValidacao == TipoValidacaoPassword.AlteracaoSenha)
            {
                if (user.Password != currentPassword)
                    throw new BusinessProcessException("Password atual informado é diferente do password atual do usuário!");

                if (currentPassword.ToLower() == newPassword.ToLower())
                    throw new BusinessProcessException("Password informado igual ao anterior! Informe um novo password.");
            }
        }
 public Perfil GetPerfilByUsuario(Usuario Usuario)
 {
     return usuarioPerfilBm.GetPerfilByUsuario(Usuario).FirstOrDefault().Perfil;
 }
示例#15
0
 public IList<UsuarioPerfil> GetPerfilUsuarioByUsuario(Usuario pUsuario)
 {
     return usuarioPerfilBM.GetPerfilUsuarioByUsuario(pUsuario);
 }
        public void AtualizarFuncionario(Funcionario Funcionario, string Login, bool UsaSenhaDia, int IdPefil)
        {
            var UsuarioFuncionario = usuarioBm.GetByFuncionario(Funcionario);

            if (UsuarioFuncionario == null)
            {
                UsuarioFuncionario = new Usuario()
                {
                    DataCriacao = DateTime.Now,
                    AutenticaSenhaDia = UsaSenhaDia,
                    Ativo = true,
                    Email = Funcionario.Email,
                    Telefone = string.IsNullOrWhiteSpace(Funcionario.TelefoneCelular) ? Funcionario.TelefoneFixo : Funcionario.TelefoneCelular,
                    Login = Login.ToUpper(),
                    Nome = Funcionario.Nome.ToUpper(),
                    FuncionarioAssociado = funcionarioBm.GetByID(Funcionario.IdFuncionario)
                };

                usuarioBm.Insert(UsuarioFuncionario);

                var usuarioPerfil = new UsuarioPerfil()
                {
                    Ativo = true,
                    DataAssociacao = DateTime.Now,
                    Perfil = perfilBm.GetByID(IdPefil),
                    Usuario = usuarioBm.GetByID(UsuarioFuncionario.IdUsuario)
                };

                usuarioPerfilBm.Insert(usuarioPerfil);

            }
            else
            {
                UsuarioFuncionario.Login = Login.ToUpper();
                UsuarioFuncionario.Nome = Funcionario.Nome.ToUpper();
                UsuarioFuncionario.Email = Funcionario.Email;
                UsuarioFuncionario.Telefone = string.IsNullOrWhiteSpace(Funcionario.TelefoneCelular) ? Funcionario.TelefoneFixo : Funcionario.TelefoneCelular;
                UsuarioFuncionario.AutenticaSenhaDia = UsaSenhaDia;

                usuarioBm.Update(UsuarioFuncionario);

                var usuarioPerfil = usuarioPerfilBm.GetPerfilByUsuario(UsuarioFuncionario).Where(x => x.Ativo).FirstOrDefault();

                if (usuarioPerfil != null)
                {
                    usuarioPerfil.Ativo = false;
                    usuarioPerfilBm.Update(usuarioPerfil);

                    usuarioPerfil = new UsuarioPerfil()
                    {
                        Ativo = true,
                        DataAssociacao = DateTime.Now,
                        Perfil = perfilBm.GetByID(IdPefil),
                        Usuario = usuarioBm.GetByID(UsuarioFuncionario.IdUsuario)
                    };

                    usuarioPerfilBm.Insert(usuarioPerfil);

                }

            }
        }
示例#17
0
        private void RegistarAcessoUsuario(Usuario user, string newPassword)
        {
            var userHistoricoSenha = new UsuarioHistoricoSenha()
            {
                DataInclusao = DateTime.Now,
                Login = user.Login,
                Usuario = user,
                Senha = newPassword
            };

            usuarioHistoricoSenhaBm.Insert(userHistoricoSenha);
            user.Password = newPassword;

            usuarioBm.Update(user);
        }