Beispiel #1
0
        public static Retorno ValidaCpfCnpjUsuario(string token, string usuario, string CpfCnpj)
        {
            ModelApiUnes _db = new ModelApiUnes();

            _db.Configuration.ProxyCreationEnabled = false;
            Retorno retorno = new Retorno();

            List <TB_USUARIO> usuUsuario = _db.TB_USUARIO.Where(u => u.USU_TX_USUARIO.Equals(usuario))
                                           .Select(u => u).ToList <TB_USUARIO>();

            long             cpfcnpj   = Convert.ToInt64(CpfCnpj);
            List <TB_PESSOA> pesPessoa = _db.TB_PESSOA.Where(p => p.PES_NR_CPF_CNPJ == cpfcnpj)
                                         .Select(p => p).ToList <TB_PESSOA>();

            if (String.IsNullOrEmpty(pesPessoa[0].PES_TX_EMAIL) || String.IsNullOrWhiteSpace(pesPessoa[0].PES_TX_EMAIL))
            {
                retorno       = new Retorno();
                retorno.Token = false;
                return(retorno);
            }

            if ((usuUsuario.Count > 0) && (pesPessoa.Count > 0))
            {
                string dsSenha   = new Random().Next(100000, 999999).ToString();
                var    str       = dsSenha;
                var    alg       = SHA512.Create();
                byte[] byteArray = new byte[255];
                byteArray = alg.ComputeHash(Encoding.UTF8.GetBytes(str));
                var    cript       = BitConverter.ToString(byteArray).Replace("-", "");
                string senhaSHA512 = cript.Substring(64) + cript.Substring(0, 64);

                long             userId     = usuUsuario[0].USU_ID_USUARIO;
                TB_USUARIO_ALIAS ObjUsuario = _db.TB_USUARIO_ALIAS
                                              .Where(
                    e => e.USU_ID_USUARIO == userId &&
                    e.UAL_TX_ALIAS.Equals("admin"))
                                              .Select(e => e).FirstOrDefault();

                ObjUsuario.UAL_TX_SENHA = senhaSHA512;

                Update(token, ObjUsuario, _db);


                var texto = System.IO.File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + @"\App_Data\TemplateRecuperarSenha.txt");
                texto = texto.Replace("{ username }", usuario);
                texto = texto.Replace("{ XXXXXX }", dsSenha);
                Gateways.GatewayUtils.SendMail(texto, pesPessoa[0].PES_TX_EMAIL, "SERVELOJA - Recuperação de Senha");



                var list = new[] { new { Sucess = true } }.ToList <dynamic>();
                retorno.Token     = true;
                retorno.Registros = list;
            }

            return(retorno);
        }
Beispiel #2
0
        /// <summary>
        /// Autentica Usuário - TB_USUARIO_ALIAS
        /// </summary>
        /// <param name="senha"></param>
        /// <param name="usuario"></param>
        /// <returns></returns>
        public static Retorno Autenticate(String senha, String usuario)
        {
            try
            {
                Boolean PERFIL = Permissoes.GetAdminPermissionFromUser(usuario);

                if (PERFIL)
                {
                    var    str       = senha;
                    var    alg       = SHA512.Create();
                    byte[] byteArray = new byte[255];
                    byteArray = alg.ComputeHash(Encoding.UTF8.GetBytes(str));
                    var    cript       = BitConverter.ToString(byteArray).Replace("-", "");
                    string senhaSHA512 = cript.Substring(64) + cript.Substring(0, 64);

                    ModelApiUnes _db          = new ModelApiUnes();
                    int          usuIdUsuario = (int)_db.TB_USUARIO.Where(u => u.USU_TX_USUARIO.Equals(usuario))
                                                .Select(u => u.USU_ID_USUARIO).FirstOrDefault();

                    TB_USUARIO_ALIAS ObjUsuario = _db.TB_USUARIO_ALIAS.Where(e => e.USU_ID_USUARIO.Equals(usuIdUsuario) &&
                                                                             e.UAL_TX_ALIAS.Equals("admin") &&
                                                                             e.UAL_TX_SENHA.Equals(senhaSHA512))
                                                  .Select(e => e).FirstOrDefault();
                    if (ObjUsuario != null)
                    {
                        return(GatewayTbUniversidadeTokenApi.NewToken(usuario + usuario.GetHashCode() + DateTime.Now + DateTime.Now.GetHashCode(), usuIdUsuario));
                    }
                    else
                    {
                        return(new Retorno());
                    }
                }
                else
                {
                    Retorno        retorno = new Retorno();
                    List <dynamic> item    = new List <dynamic>();
                    item.Add(false);

                    retorno.Registros = item;

                    return(retorno);
                }
            }
            catch (Exception e)
            {
                string msg = e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message;
                Gateways.GatewayUtils.SendError(msg);

                throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message);
            }
        }
Beispiel #3
0
        /// <summary>
        /// Adiciona nova TB_USUARIO_ALIAS
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public static Int64 Add(string token, TB_USUARIO_ALIAS param, ModelApiUnes _dbContext = null)
        {
            ModelApiUnes _db;

            if (_dbContext == null)
            {
                _db = new ModelApiUnes();
            }
            else
            {
                _db = _dbContext;
            }

            using (var transaction = _db.Database.BeginTransaction())
            {
                try
                {
                    _db.TB_USUARIO_ALIAS.Add(param);
                    _db.SaveChanges();
                    transaction.Commit();
                    return(param.UAL_ID_USUARIO_ALIAS);
                }
                catch (Exception e)
                {
                    transaction.Rollback();
                    throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message);
                }
                finally
                {
                    if (_dbContext == null)
                    {
                        // Fecha conexão
                        _db.Database.Connection.Close();
                        _db.Dispose();
                    }
                }
            }
        }
Beispiel #4
0
        /// <summary>
        /// Altera TB_USUARIO_ALIAS
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public static void Update(string token, TB_USUARIO_ALIAS param, ModelApiUnes _dbContext = null)
        {
            ModelApiUnes _db;

            if (_dbContext == null)
            {
                _db = new ModelApiUnes();
            }
            else
            {
                _db = _dbContext;
            }

            using (var transaction = _db.Database.BeginTransaction())
            {
                try
                {
                    TB_USUARIO_ALIAS value = _db.TB_USUARIO_ALIAS
                                             .Where(e => e.UAL_ID_USUARIO_ALIAS.Equals(param.UAL_ID_USUARIO_ALIAS))
                                             .First <TB_USUARIO_ALIAS>();



                    if (param.UAL_ID_USUARIO_ALIAS != value.UAL_ID_USUARIO_ALIAS)
                    {
                        value.UAL_ID_USUARIO_ALIAS = param.UAL_ID_USUARIO_ALIAS;
                    }
                    if (param.USU_ID_USUARIO != value.USU_ID_USUARIO)
                    {
                        value.USU_ID_USUARIO = param.USU_ID_USUARIO;
                    }
                    if (param.UAL_TX_ALIAS != null && param.UAL_TX_ALIAS != value.UAL_TX_ALIAS)
                    {
                        value.UAL_TX_ALIAS = param.UAL_TX_ALIAS;
                    }
                    if (param.UAL_TX_SENHA != null && param.UAL_TX_SENHA != value.UAL_TX_SENHA)
                    {
                        value.UAL_TX_SENHA = param.UAL_TX_SENHA;
                    }
                    if (param.UAL_NR_DIAS != null && param.UAL_NR_DIAS != value.UAL_NR_DIAS)
                    {
                        value.UAL_NR_DIAS = param.UAL_NR_DIAS;
                    }
                    if (param.UAL_DT_SENHA != null && param.UAL_DT_SENHA != value.UAL_DT_SENHA)
                    {
                        value.UAL_DT_SENHA = param.UAL_DT_SENHA;
                    }
                    if (param.UAL_BL_MUDAR != value.UAL_BL_MUDAR)
                    {
                        value.UAL_BL_MUDAR = param.UAL_BL_MUDAR;
                    }
                    if (param.UAL_BL_ATIVO != value.UAL_BL_ATIVO)
                    {
                        value.UAL_BL_ATIVO = param.UAL_BL_ATIVO;
                    }
                    if (param.UAL_NR_TENTATIVAS != null && param.UAL_NR_TENTATIVAS != value.UAL_NR_TENTATIVAS)
                    {
                        value.UAL_NR_TENTATIVAS = param.UAL_NR_TENTATIVAS;
                    }
                    if (param.UAL_DT_TENTATIVAS != null && param.UAL_DT_TENTATIVAS != value.UAL_DT_TENTATIVAS)
                    {
                        value.UAL_DT_TENTATIVAS = param.UAL_DT_TENTATIVAS;
                    }
                    if (param.UPA_ID_PERFIL_ALIAS != null && param.UPA_ID_PERFIL_ALIAS != value.UPA_ID_PERFIL_ALIAS)
                    {
                        value.UPA_ID_PERFIL_ALIAS = param.UPA_ID_PERFIL_ALIAS;
                    }
                    if (param.PER_ID_PERFIL_GENERICO != null && param.PER_ID_PERFIL_GENERICO != value.PER_ID_PERFIL_GENERICO)
                    {
                        value.PER_ID_PERFIL_GENERICO = param.PER_ID_PERFIL_GENERICO;
                    }
                    if (param.UAL_BL_GRATUIDADE != null && param.UAL_BL_GRATUIDADE != value.UAL_BL_GRATUIDADE)
                    {
                        value.UAL_BL_GRATUIDADE = param.UAL_BL_GRATUIDADE;
                    }
                    if (param.UAL_DT_CRIACAO != null && param.UAL_DT_CRIACAO != value.UAL_DT_CRIACAO)
                    {
                        value.UAL_DT_CRIACAO = param.UAL_DT_CRIACAO;
                    }
                    _db.SaveChanges();
                    transaction.Commit();
                }
                catch (Exception e)
                {
                    transaction.Rollback();
                    throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message);
                }
                finally
                {
                    if (_dbContext == null)
                    {
                        // Fecha conexão
                        _db.Database.Connection.Close();
                        _db.Dispose();
                    }
                }
            }
        }