示例#1
0
        public ContaCriada CriarContaSegura()
        {
            Acesso      acesso = GerarNumeroConta();
            ContaCriada ret    = null;
            int         id     = ProximoId();
            int         result = 0;

            string sql = "insert into conta (ContaId, ContaNumero, ContaSenha, ContaToken, ContaExpiracao) " +
                         "  values( " + id + ",'" + acesso.NumeroConta + "', '" + acesso.Senha + "', null, null)";

            using (SQLiteConnection connection = new SQLiteConnection(_conn))
            {
                result = connection.Execute(sql);
            }

            if (result > 0)
            {
                ret = new ContaCriada
                {
                    Id          = id,
                    NumeroConta = acesso.NumeroConta
                };
            }

            return(ret);
        }
示例#2
0
        public string ObterToken(Acesso acesso)
        {
            String      token = null;
            ContaCriada c     = ExisteConta(acesso);

            if (c != null)
            {
                token = GravarToken(c);
            }

            return(token);
        }
示例#3
0
        private ContaCriada ExisteConta(Acesso acesso)
        {
            ContaCriada result = null;
            string      sql    = "SELECT ContaId Id, ContaNumero NumeroConta" +
                                 "  FROM Conta " +
                                 " WHERE ContaNumero = '" + acesso.NumeroConta + "'" +
                                 "   AND ContaSenha  = '" + Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(acesso.Senha)) + "'";

            using (SQLiteConnection connection = new SQLiteConnection(_conn))
            {
                result = connection.QueryFirstOrDefault <ContaCriada>(sql);
            }

            return(result);
        }
        public ActionResult Create()
        {
            ContaCriada ret = null;

            if (ModelState.IsValid)
            {
                GuardiaoHelper helper = new GuardiaoHelper(_repo);
                ret = helper.CriarContaSegura();
                if (ret != null)
                {
                    return(Ok(ret));
                }
                else
                {
                    return(StatusCode(HttpHeaderSecurityVariables.HttpStatusCodeIntervalError));
                }
            }
            else
            {
                return(BadRequest("Formato de Requisição Inválido"));
            }
        }
示例#5
0
        private string GravarToken(ContaCriada conta)
        {
            string ret    = null;
            int    result = 0;
            Token  token  = CriarToken(conta.NumeroConta);

            string sql = "update conta " +
                         "   set ContaToken = '" + token.Chave + "', " +
                         "       ContaExpiracao = " + token.Expiracao.ToString() +
                         " where ContaId = " + conta.Id;

            using (SQLiteConnection connection = new SQLiteConnection(_conn))
            {
                result = connection.Execute(sql);
            }

            if (result > 0)
            {
                ret = token.Chave;
            }

            return(ret);
        }