コード例 #1
0
        public void Materializar()
        {
            StringBuilder query = new StringBuilder();
            query.AppendFormat(@"
            SELECT {1}, Descricao, IP, Porta, ClienteRequerido, UsuariosOnline, TotalMobiles, TotalItens, TempoOnline, DataHoraIniciado
            FROM {0}
            ORDER BY {1} DESC
            LIMIT 1
            ", this.Tabela, this.ChavePrimaria);
            LeitorFacade leitor = new LeitorFacade(query);
            if (leitor.LerLinha())
            {
                this.ID = Conversoes.Inteiro32(leitor.GetValor(this.ChavePrimaria));
                this.Descricao = leitor.GetValor("Descricao").ToString();
                this.IP = leitor.GetValor("IP").ToString();
                this.Porta = leitor.GetValor("Porta").ToString();
                this.ClienteRequerido = leitor.GetValor("ClienteRequerido").ToString();
                this.UsuariosOnline = leitor.GetValor("UsuariosOnline").ToString();
                this.TotalMobiles = leitor.GetValor("TotalMobiles").ToString();
                this.TotalItens = leitor.GetValor("TotalItens").ToString();

                string strTempoOnline = leitor.GetValor("TempoOnline").ToString();
                strTempoOnline = strTempoOnline.Substring(0, (strTempoOnline.Length - 3));
                this.TempoOnline = Conversoes.DataHora(strTempoOnline);

                this.DataHoraIniciado = Conversoes.DataHora(leitor.GetValor("DataHoraIniciado"));
                this.Materializado = true;
            }
        }
コード例 #2
0
        public void Materializar(long id, bool materializarClasses)
        {
            StringBuilder query = new StringBuilder();
            query.AppendFormat(@"
            SELECT T1.{1}, T1.NomePersonagem, T1.DataCadastro, T1.Confirmado, T2.PontosXP
            FROM {0} T1
            LEFT JOIN GeNova_PontosDeExperiencia T2 ON T1.IdPersonagem = T2.IdPersonagem
            WHERE 1=1
              AND T1.{1} = {2}
            ", this.Tabela, this.ChavePrimaria, id);
            LeitorFacade leitor = new LeitorFacade(query);
            if (leitor.LerLinha())
            {
                this.ID = Conversoes.Inteiro64(leitor.GetValor(this.ChavePrimaria));
                this.Conta.ID = Conversoes.Inteiro32(leitor.GetValor(this.Conta.ChavePrimaria));
                this.Nome = leitor.GetValor("NomePersonagem").ToString();
                this.DataCriacao = Conversoes.DataHora(leitor.GetValor("DataCadastro"));
                this.Confirmado = Conversoes.Booleano(leitor.GetValor("Confirmado"));
                this.PontosExperiencia = Conversoes.Inteiro32(leitor.GetValor("PontosXP").ToString());

                if (materializarClasses)
                    this.Conta.Materializar(this.Conta.ID);

                this.Materializado = true;
            }
        }
コード例 #3
0
ファイル: ObjPessoa.cs プロジェクト: brodock/genova-project
        public void Materializar(int id)
        {
            StringBuilder query = new StringBuilder();
            query.AppendFormat(@"
            SELECT T1.{2}, T2.{3}, Nome, Email, Sexo, DataNascimento
            FROM {0} T1
            INNER JOIN {1} T2 on T1.IdUsuario = T2.IdUsuario
            WHERE 1=1 AND {2} = {4}
            ", this.Tabela, this.Usuario.Tabela, this.ChavePrimaria, this.Usuario.ChavePrimaria, id);
            LeitorFacade leitor = new LeitorFacade(query);
            if (leitor.LerLinha())
            {
                this.ID = Conversoes.Inteiro32(leitor.GetValor(this.ChavePrimaria));

                int idUsuario = Conversoes.Inteiro32(leitor.GetValor("IdUsuario"));
                this.Usuario.Materializar(idUsuario);

                this.Nome = leitor.GetValor("Nome").ToString();
                this.Email = leitor.GetValor("Email").ToString();
                this.Sexo = Conversoes.Char(leitor.GetValor("Sexo"));
                this.DataNascimento = Conversoes.DataHora(leitor.GetValor("DataNascimento"));

                this.Materializado = true;
            }
        }
コード例 #4
0
        public static ObjPessoa GetPessoa(string loginUsuario)
        {
            ObjUsuario usuario = ControladorUsuario.GetUsuarioPorLogin(loginUsuario);

            StringBuilder query = new StringBuilder();
            query.AppendFormat("SELECT {0}\n", _pessoaBase.ChavePrimaria);
            query.AppendFormat("FROM {0}\n", _pessoaBase.Tabela);
            query.AppendFormat("WHERE 1=1 AND {0} = {1}", usuario.ChavePrimaria, usuario.ID);
            LeitorFacade leitor = new LeitorFacade(query);
            if (leitor.LerLinha())
            {
                int idPessoa = Conversoes.Inteiro32(leitor.GetValor("IdPessoa"));
                if (idPessoa > 0)
                    return new ObjPessoa(idPessoa);
            }
            throw new Exception(Erros.NaoEncontrado("Person - Web Account"));
        }
コード例 #5
0
        public static void PreencherDropDownList(DropDownList dropDownList, LeitorFacade leitor, string nomeColunaDescricao, string nomeColunaValor, bool permitirSelecionarTodos)
        {
            dropDownList.Items.Clear();

            while (leitor.LerLinha())
            {
                string descricao = leitor.GetValor(nomeColunaDescricao).ToString();
                string valor = leitor.GetValor(nomeColunaValor).ToString();

                ListItem item = new ListItem(descricao, valor);
                dropDownList.Items.Add(item);
            }

            if (permitirSelecionarTodos)
                dropDownList.Items.Insert(0, new ListItem("..Selecionar todos..", "0"));
            else
                dropDownList.Items.Insert(0, new ListItem("..Selecione..", "0"));
        }
コード例 #6
0
 public void Materializar(int id, bool materializarClasses)
 {
     StringBuilder query = new StringBuilder();
     query.AppendFormat(@"
     SELECT {1}, IdGeNovaWebUsuario, IdGeNovaUsuario
     FROM {0}
     WHERE {1} = {2}
     ", this.Tabela, this.ChavePrimaria, id);
     LeitorFacade leitor = new LeitorFacade(query);
     if (leitor.LerLinha())
     {
         this.ID = Conversoes.Inteiro32(leitor.GetValor("IdUsuarioConta"));
         this.Usuario.ID = Conversoes.Inteiro32(leitor.GetValor("IdGeNovaWebUsuario"));
         this.Conta.ID = Conversoes.Inteiro32(leitor.GetValor("IdGeNovaUsuario"));
         if (materializarClasses)
         {
             this.Usuario.Materializar(this.Usuario.ID);
             this.Conta.Materializar(this.Conta.ID);
         }
         this.Materializado = true;
     }
 }
コード例 #7
0
        public static void Autenticar(string login, string senha)
        {
            // Previnindo Sql Injection
            SqlUtils.PrevencaoSqlInjection(ref login);
            SqlUtils.PrevencaoSqlInjection(ref senha);

            ObjUsuario usuario = new ObjUsuario();

            StringBuilder query = new StringBuilder();
            query.AppendLine("SELECT IdUsuario");
            query.AppendFormat("FROM {0}\n", _usuarioBase.Tabela);
            query.AppendFormat("WHERE 1=1 AND Login = '******'", login);
            LeitorFacade leitor = new LeitorFacade(query);
            if (leitor.LerLinha())
            {
                int idUsuario = Conversoes.Inteiro32(leitor.GetValor("IdUsuario"));
                usuario.Materializar(idUsuario);
            }
            else
                throw new UsuarioNaoExisteException(Erros.MsgUsuarioInexistente);

            usuario.Autenticar(senha);
            UsuarioCorrenteSingleton.Istance.Usuario = usuario;
        }
コード例 #8
0
 public static ObjShardAccount GetAccount(string login)
 {
     StringBuilder query = new StringBuilder();
     query.AppendFormat(@"
     SELECT {1}
     FROM {0}
     WHERE Login = '******'
     ", _shardAccountBase.Tabela, _shardAccountBase.ChavePrimaria, login);
     LeitorFacade leitor = new LeitorFacade(query);
     if (leitor.LerLinha())
     {
         int id = Conversoes.Inteiro32(leitor.GetValor(_shardAccountBase.ChavePrimaria));
         return new ObjShardAccount(id);
     }
     throw new Exception(Erros.NaoEncontrado("Shard Account"));
 }
コード例 #9
0
 public static ObjUsuario GetUsuarioPorLogin(string login)
 {
     StringBuilder query = new StringBuilder();
     query.AppendLine("SELECT IdUsuario");
     query.AppendFormat("FROM {0}\n", _usuarioBase.Tabela);
     query.AppendFormat("WHERE 1=1 AND Login = '******'", login);
     LeitorFacade leitor = new LeitorFacade(query);
     if (leitor.LerLinha())
     {
         int idUsuario = Conversoes.Inteiro32(leitor.GetValor("IdUsuario"));
         if (idUsuario > 0)
             return new ObjUsuario(idUsuario);
     }
     throw new Exception(Erros.NaoEncontrado("Web User"));
 }
コード例 #10
0
ファイル: ObjUsuario.cs プロジェクト: brodock/genova-project
        public void Materializar(int idUsuario)
        {
            StringBuilder query = new StringBuilder();
            query.AppendLine("SELECT IdUsuario, Login, Senha, Tipo, Avatar");
            query.AppendFormat("FROM {0}\n", this.Tabela);
            query.AppendFormat("WHERE 1=1 AND {0} = {1}", this.ChavePrimaria, idUsuario);
            LeitorFacade leitor = new LeitorFacade(query);

            if (leitor.LerLinha())
            {
                this.ID = Conversoes.Inteiro32(leitor.GetValor("IdUsuario"));
                this.Login = leitor.GetValor("Login").ToString();
                this.Senha = leitor.GetValor("Senha").ToString();
                this.Tipo = (TipoUsuario)Conversoes.Inteiro32(leitor.GetValor("Tipo"));
                this.Avatar = leitor.GetValor("Avatar").ToString();
                this._materializado = true;
            }
        }
コード例 #11
0
 public static void PreencherDropDownList(DropDownList dropDownList, LeitorFacade leitor, string nomeColunaDescricao, string nomeColunaValor)
 {
     PreencherDropDownList(dropDownList, leitor, nomeColunaDescricao, nomeColunaValor, false);
 }