SHARE
TWEET

Utilizador

alunosnet Jan 21st, 2020 133 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. public class Utilizador
  2.     {
  3.         public int id;
  4.         public string nome;
  5.         public string email;
  6.         public string morada;
  7.         public string nif;
  8.         public string password;
  9.         public int perfil;
  10.  
  11.         BaseDados bd;
  12.  
  13.         public Utilizador()
  14.         {
  15.             bd = new BaseDados();
  16.         }
  17.  
  18.         //adicionar
  19.         public void Adicionar()
  20.         {
  21.             string sql = @"INSERT INTO utilizadores(email,nome,morada,nif,password,estado,perfil)
  22.                             VALUES (@email,@nome,@morada,@nif,HASHBYTES('SHA2_512',@password),@estado,@perfil)";
  23.             List<SqlParameter> parametros = new List<SqlParameter>()
  24.             {
  25.                 new SqlParameter()
  26.                 {
  27.                     ParameterName="@email",
  28.                     SqlDbType=System.Data.SqlDbType.VarChar,
  29.                     Value=this.email
  30.                 },
  31.                 new SqlParameter()
  32.                 {
  33.                     ParameterName="@nome",
  34.                     SqlDbType=System.Data.SqlDbType.VarChar,
  35.                     Value=this.nome
  36.                 },
  37.                 new SqlParameter()
  38.                 {
  39.                     ParameterName="@morada",
  40.                     SqlDbType=System.Data.SqlDbType.VarChar,
  41.                     Value=this.morada
  42.                 },
  43.                 new SqlParameter()
  44.                 {
  45.                     ParameterName="@nif",
  46.                     SqlDbType=System.Data.SqlDbType.VarChar,
  47.                     Value=this.nif
  48.                 },
  49.                 new SqlParameter()
  50.                 {
  51.                     ParameterName="@password",
  52.                     SqlDbType=System.Data.SqlDbType.VarChar,
  53.                     Value=this.password
  54.                 },
  55.                 new SqlParameter()
  56.                 {
  57.                     ParameterName="@estado",
  58.                     SqlDbType=System.Data.SqlDbType.Int,
  59.                     Value=1
  60.                 },
  61.                 new SqlParameter()
  62.                 {
  63.                     ParameterName="@perfil",
  64.                     SqlDbType=System.Data.SqlDbType.Int,
  65.                     Value=this.perfil
  66.                 },
  67.             };
  68.             bd.executaSQL(sql, parametros);
  69.         }
  70.        
  71.         internal DataTable ListaTodosUtilizadores()
  72.         {
  73.             return bd.devolveSQL("SELECT * FROM Utilizadores");
  74.         }
  75.         public DataTable listaTodosUtilizadoresDisponiveis()
  76.         {
  77.             string sql = $@"SELECT id, email,nome, morada, nif,  estado, perfil
  78.             FROM utilizadores where estado=1";
  79.             return bd.devolveSQL(sql);
  80.         }
  81.        
  82.         public void atualizarUtilizador()
  83.         {
  84.             string sql = @"UPDATE utilizadores SET nome=@nome,morada=@morada,nif=@nif
  85.                             WHERE id=@id";
  86.  
  87.             List<SqlParameter> parametros = new List<SqlParameter>()
  88.             {
  89.                 new SqlParameter() {ParameterName="@nome",SqlDbType=SqlDbType.VarChar,Value=nome },
  90.                 new SqlParameter() {ParameterName="@morada",SqlDbType=SqlDbType.VarChar,Value=morada },
  91.                 new SqlParameter() {ParameterName="@nif",SqlDbType=SqlDbType.VarChar,Value=nif },
  92.                 new SqlParameter() {ParameterName="@id",SqlDbType=SqlDbType.Int,Value=id },
  93.             };
  94.             bd.executaSQL(sql, parametros);
  95.         }
  96.         public DataTable devolveDadosUtilizador(int id)
  97.         {
  98.             string sql = "SELECT * FROM utilizadores WHERE id=@id";
  99.             List<SqlParameter> parametros = new List<SqlParameter>()
  100.             {
  101.                 new SqlParameter() {ParameterName="@id",SqlDbType=SqlDbType.Int,Value=id }
  102.             };
  103.             DataTable dados = bd.devolveSQL(sql, parametros);
  104.             if (dados.Rows.Count == 0)
  105.             {
  106.                 return null;
  107.             }
  108.             return dados;
  109.         }
  110.         public int estadoUtilizador(int id)
  111.         {
  112.             string sql = "SELECT estado FROM utilizadores WHERE id=@id";
  113.             List<SqlParameter> parametros = new List<SqlParameter>()
  114.             {
  115.                 new SqlParameter() {ParameterName="@id",SqlDbType=SqlDbType.Int,Value=id }
  116.             };
  117.             DataTable dados = bd.devolveSQL(sql, parametros);
  118.             return int.Parse(dados.Rows[0][0].ToString());
  119.         }
  120.         public void ativarDesativarUtilizador(int id)
  121.         {
  122.             int estado = this.estadoUtilizador(id);
  123.             if (estado == 0) estado = 1;
  124.             else estado = 0;
  125.             string sql = "UPDATE utilizadores SET estado = @estado WHERE id=@id";
  126.             List<SqlParameter> parametros = new List<SqlParameter>()
  127.             {
  128.                 new SqlParameter() {ParameterName="@estado",SqlDbType=SqlDbType.Bit,Value=estado },
  129.                 new SqlParameter() {ParameterName="@id",SqlDbType=SqlDbType.Int,Value=id }
  130.             };
  131.             bd.executaSQL(sql, parametros);
  132.         }
  133.         public void removerUtilizador(int id)
  134.         {
  135.             string sql = "DELETE FROM Utilizadores WHERE id=@id";
  136.  
  137.             List<SqlParameter> parametros = new List<SqlParameter>()
  138.             {
  139.                 new SqlParameter() {ParameterName="@id",SqlDbType=SqlDbType.Int,Value= id},
  140.             };
  141.             bd.executaSQL(sql, parametros);
  142.         }
  143.         public void recuperarPassword(string email, string guid)
  144.         {
  145.             string sql = "UPDATE utilizadores set lnkRecuperar=@lnk WHERE email=@email";
  146.  
  147.             List<SqlParameter> parametros = new List<SqlParameter>()
  148.             {
  149.                 new SqlParameter() {ParameterName="@email",SqlDbType=SqlDbType.VarChar,Value=email },
  150.                 new SqlParameter() {ParameterName="@lnk",SqlDbType=SqlDbType.VarChar,Value=guid },
  151.             };
  152.             bd.executaSQL(sql, parametros);
  153.         }
  154.         public void atualizarPassword(string guid, string password)
  155.         {
  156.             string sql = "UPDATE utilizadores set password=HASHBYTES('SHA2_512',@password),estado=1,lnkRecuperar=null WHERE lnkRecuperar=@lnk";
  157.  
  158.             List<SqlParameter> parametros = new List<SqlParameter>()
  159.             {
  160.                 new SqlParameter() {ParameterName="@password",SqlDbType=SqlDbType.VarChar,Value=password},
  161.                 new SqlParameter() {ParameterName="@lnk",SqlDbType=SqlDbType.VarChar,Value=guid },
  162.             };
  163.             bd.executaSQL(sql, parametros);
  164.         }
  165.         public DataTable devolveDadosUtilizador(string email)
  166.         {
  167.             string sql = "SELECT * FROM utilizadores WHERE email=@email";
  168.             List<SqlParameter> parametros = new List<SqlParameter>()
  169.             {
  170.                 new SqlParameter() {ParameterName="@email",SqlDbType=SqlDbType.VarChar,Value=email }
  171.             };
  172.             DataTable dados = bd.devolveSQL(sql, parametros);
  173.             return dados;
  174.         }
  175.     }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top