Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using Npgsql;
- namespace WindowsFormsApp2
- {
- public partial class Prog : Form
- {
- public int n;
- NpgsqlConnection con = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=postgres;Password=12436Dark;Database=usersroles;");
- public Prog(int n)
- {
- InitializeComponent();
- con.Open();
- this.n = n;
- NpgsqlCommand com = new NpgsqlCommand("SELECT username FROM users WHERE userid = @num", con);
- com.Parameters.Add("num", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- string username = Convert.ToString(com.ExecuteScalar());
- lbUser.Text = username;
- NpgsqlCommand com1 = new NpgsqlCommand("SELECT first FROM users, buttonsaccess, roles WHERE userid = @num and roles.roleid = buttonsaccess.role and roles.roleid = users.role", con);
- com1.Parameters.Add("num", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- Boolean access1 = Convert.ToBoolean(com1.ExecuteScalar());
- if (access1 == false)
- {
- btFirst.Enabled = false;
- }
- NpgsqlCommand com2 = new NpgsqlCommand("SELECT second FROM users, buttonsaccess, roles WHERE userid = @num and roles.roleid = buttonsaccess.role and roles.roleid = users.role", con);
- com2.Parameters.Add("num", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- Boolean access2 = Convert.ToBoolean(com2.ExecuteScalar());
- if (access2 == false)
- {
- btSecond.Enabled = false;
- }
- NpgsqlCommand com3 = new NpgsqlCommand("SELECT third FROM users, buttonsaccess, roles WHERE userid = @num and roles.roleid = buttonsaccess.role and roles.roleid = users.role", con);
- com3.Parameters.Add("num", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- Boolean access3 = Convert.ToBoolean(com3.ExecuteScalar());
- if (access3 == false)
- {
- btThird.Enabled = false;
- }
- con.Close();
- }
- private void btFirst_Click(object sender, EventArgs e)
- {
- MessageBox.Show("Данный пользователь имеет доступ к функции 1","Кнопка 1", MessageBoxButtons.OK, MessageBoxIcon.Information);
- con.Open();
- string nowDate = DateTime.Now.ToShortDateString();
- string nowTime = DateTime.Now.ToShortTimeString();
- NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO \"journal\" (\"date\", \"time\", \"user\", \"action\") VALUES (@date, @time, @user, @act)", con);
- cmd.Parameters.Add("date", NpgsqlTypes.NpgsqlDbType.Date).Value = DateTime.Parse(nowDate);
- cmd.Parameters.Add("time", NpgsqlTypes.NpgsqlDbType.Time).Value = DateTime.Parse(nowTime);
- cmd.Parameters.Add("user", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- cmd.Parameters.Add("act", NpgsqlTypes.NpgsqlDbType.Bigint).Value = 2;
- cmd.ExecuteNonQuery();
- con.Close();
- }
- private void btSecond_Click(object sender, EventArgs e)
- {
- MessageBox.Show("Данный пользователь имеет доступ к функции 2", "Кнопка 2", MessageBoxButtons.OK, MessageBoxIcon.Information);
- con.Open();
- string nowDate = DateTime.Now.ToShortDateString();
- string nowTime = DateTime.Now.ToShortTimeString();
- NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO \"journal\" (\"date\", \"time\", \"user\", \"action\") VALUES (@date, @time, @user, @act)", con);
- cmd.Parameters.Add("date", NpgsqlTypes.NpgsqlDbType.Date).Value = DateTime.Parse(nowDate);
- cmd.Parameters.Add("time", NpgsqlTypes.NpgsqlDbType.Time).Value = DateTime.Parse(nowTime);
- cmd.Parameters.Add("user", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- cmd.Parameters.Add("act", NpgsqlTypes.NpgsqlDbType.Bigint).Value = 3;
- cmd.ExecuteNonQuery();
- con.Close();
- }
- private void btThird_Click(object sender, EventArgs e)
- {
- MessageBox.Show("Данный пользователь имеет доступ к функции 3", "Кнопка 3", MessageBoxButtons.OK, MessageBoxIcon.Information);
- con.Open();
- string nowDate = DateTime.Now.ToShortDateString();
- string nowTime = DateTime.Now.ToShortTimeString();
- NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO \"journal\" (\"date\", \"time\", \"user\", \"action\") VALUES (@date, @time, @user, @act)", con);
- cmd.Parameters.Add("date", NpgsqlTypes.NpgsqlDbType.Date).Value = DateTime.Parse(nowDate);
- cmd.Parameters.Add("time", NpgsqlTypes.NpgsqlDbType.Time).Value = DateTime.Parse(nowTime);
- cmd.Parameters.Add("user", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- cmd.Parameters.Add("act", NpgsqlTypes.NpgsqlDbType.Bigint).Value = 4;
- cmd.ExecuteNonQuery();
- con.Close();
- }
- private void button1_Click(object sender, EventArgs e)
- {
- }
- private void label2_Click(object sender, EventArgs e)
- {
- }
- private void lbUser_Click(object sender, EventArgs e)
- {
- }
- private void Prog_Load(object sender, EventArgs e)
- {
- }
- private void btBack_Click(object sender, EventArgs e)
- {
- con.Open();
- string nowDate = DateTime.Now.ToShortDateString();
- string nowTime = DateTime.Now.ToShortTimeString();
- NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO \"journal\" (\"date\", \"time\", \"user\", \"action\") VALUES (@date, @time, @user, @act)", con);
- cmd.Parameters.Add("date", NpgsqlTypes.NpgsqlDbType.Date).Value = DateTime.Parse(nowDate);
- cmd.Parameters.Add("time", NpgsqlTypes.NpgsqlDbType.Time).Value = DateTime.Parse(nowTime);
- cmd.Parameters.Add("user", NpgsqlTypes.NpgsqlDbType.Bigint).Value = n;
- cmd.Parameters.Add("act", NpgsqlTypes.NpgsqlDbType.Bigint).Value = 5;
- cmd.ExecuteNonQuery();
- this.Close();
- Form1 f1 = new Form1();
- f1.Show();
- con.Close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement