Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Diagnostics;
- using System.Data.SqlClient;
- using MySql.Data.MySqlClient;
- using System.Windows.Forms;
- namespace БД_Мессенджера
- {
- public partial class admin_form : Form
- {
- static int table_counter;
- public admin_form()
- {
- InitializeComponent();
- }
- private void admin_form_Load(object sender, EventArgs e)
- {
- ConnectionWork.AddConnectionString("Server = localhost; database = messenger; UID = admin; password = randomlycreatedpassword; Integrated Security = True");
- ConnectionWork.AddConnectionString("Server = localhost; database = messenger; UID = manager; password = randomlygivenpasswordformanager; Integrated Security = True");
- ConnectionWork.AddConnectionString("Server = localhost; database = messenger; UID = user; password = randomlygivenpasswordforuser; Integrated Security = True");
- ConnectionWork.SetConnection(2);
- SqlWorker _SqlWorker = new SqlWorker();
- try
- {
- _SqlWorker.Work("Connect", "Проверка работоспособности с MySQL сервером прошла успешно...");
- }
- catch
- {
- Debug.LoadLogSrting("При проверке соединения к серверу возникли проблеммы!");
- }
- //_SqlWorker.Work("Connect", "Идёт подключение к SQLServer. Пожалуйста подождите...");
- _SqlWorker.Work("FillTable", "Идёт заполнение таблицы из базы данных praktika");
- }
- static class Debug
- {
- private static string NameLog = "Нет никаких процессов...";
- public static string Log(string s = "")
- {
- s = NameLog;
- return s;
- }
- public static void LoadLogSrting(string s)
- {
- NameLog = s;
- using (var writer = new StreamWriter("LogFile.txt", true))
- {
- writer.WriteLine(s + " (" + DateTime.Now.ToString("День: dd MMMM yyyy |Час: HH:mm:ss") + ")");
- }
- }
- public static string Blocket(string s = "Эта функция на данный момент заблокирована!")
- {
- return s;
- }
- public static void OpenLog()
- {
- Process.Start("LogFile.txt");
- }
- }
- class SqlConnector: admin_form
- {
- protected string connectionString = ConnectionWork.CurrentConnection;
- DataSet ds = new DataSet();
- SqlDataAdapter adapter = new SqlDataAdapter();
- DataTable dataTable = new DataTable();
- MySqlConnection conn;
- MySqlCommand cmd;
- MySqlDataAdapter adptr;
- protected void Connection(string s)
- {
- try
- {
- if (admin == true)
- {
- manager = false;
- user = false;
- string connectionString = "Server=localhost; database=messenger; UID=admin; password=randomlycreatedpassword; Integrated Security=True";
- }
- if (manager == true)
- {
- admin = false;
- user = false;
- string connectionString = "Server=localhost; database=messenger; UID=manager; password=randomlygivenpasswordformanager; Integrated Security=True";
- }
- if (user == true)
- {
- manager = false;
- admin = false;
- string connectionString = "Server=localhost; database=messenger; UID=user; password=randomlygivenpasswordforuser; Integrated Security=True";
- }
- conn = new MySqlConnection(connectionString);
- cmd = new MySqlCommand();
- cmd.Connection = conn;
- cmd.CommandText = s;
- Debug.LoadLogSrting("Идёт заполнение Адаптера...");
- adptr = new MySqlDataAdapter(cmd);
- adptr.Fill(ds);
- Debug.LoadLogSrting("Подключение к MySQL серверу прошло успешно...");
- adptr.Fill(dataTable);
- }
- catch (MySqlException ex)
- {
- Debug.LoadLogSrting("Подключение к MySQL серверу провалилось :(");
- MessageBox.Show(ex.Message);
- }
- }
- protected void delete()
- {
- string s;
- string connectionString = "Server=localhost; database=messenger; UID=admin; password=randomlycreatedpassword; Integrated Security=True";
- conn = new MySqlConnection(connectionString);
- s = (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentCell.Value.ToString();
- MySqlCommand cmd = new MySqlCommand();
- cmd.Connection = conn;
- conn.Open();
- cmd.CommandText = "delete from user_table where id= " + s;
- cmd.ExecuteNonQuery();
- conn.Close();
- }
- protected void update()
- {
- }
- protected void create()
- {
- try
- {if (admin)
- {
- manager = false;
- user = false;
- ConnectionWork.SetConnection(0);
- }
- if (manager == true)
- {
- admin = false;
- user = false;
- ConnectionWork.SetConnection(1);
- }
- if (user ==true)
- {
- manager = false;
- admin = false;
- ConnectionWork.SetConnection(2);
- }
- conn = new MySqlConnection(connectionString);
- MySqlCommand cmd = new MySqlCommand();
- cmd.Connection = conn;
- conn.Open();
- switch (table_counter)
- {
- case 1:
- cmd.CommandText = "insert into `messenger`.`user_table`(id,name,surname,age,about,position,password) values ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["name"].Value + "','" +(Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["surname"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["age"].Value +"','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["about"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["position"].Value + "','" +(Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["password"].Value + "');";
- cmd.ExecuteNonQuery();
- break;
- case 2:
- cmd.CommandText = "INSERT INTO `messenger`.`status` (`user_id`, `is_active`, `is_blocked`, `is_reported`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["user_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["is_active"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["is_blocked"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["is_reported"].Value + "'); ";
- cmd.ExecuteNonQuery();
- break;
- case 3:
- cmd.CommandText = "INSERT INTO `messenger`.`reports` (`id`, `user_id`, `report_type`, `report_text`, `created_at`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["user_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_text"].Value + "','" + DateTime.Now.ToString("yyyy/MM/dd HH:mm") + "');";
- if ((Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value.ToString() != "Мошенничество" || (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value.ToString() != "Оскорбление" || (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value.ToString() != "Пропоганда наркотиков" || (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value.ToString() != "Рассылка спама" || (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["report_type"].Value.ToString() != "Мошенничество")
- MessageBox.Show("Список допустимых типов жалоб:"+ "\n"+ "Мошенничество" + "\n" + "Оскорбление" + "\n" + "Пропоганда наркотиков" + "\n" + "Рассылка спама" + "\n" + "Мошенничество");
- else cmd.ExecuteNonQuery();
- break;
- case 4:
- cmd.CommandText = "INSERT INTO `messenger`.`participants` (`user_id`, `chat_id`, `participant_id`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["user_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["participant_id"].Value + "');";
- cmd.ExecuteNonQuery();
- break;
- case 5:
- cmd.CommandText= "INSERT INTO `messenger`.`messages` (`user_id`, `message_id`, `message`,`created_at`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["user_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["message_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["message"].Value + "','" + DateTime.Now.ToString("yyyy/MM/dd HH:mm") + "');";
- cmd.ExecuteNonQuery();
- break;
- case 6:
- cmd.CommandText= "INSERT INTO `messenger`.`contact_inf` (`user_id`, `vk_link`, `facebook_link`, `twitter_link`, `email`, `phone`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["user_id"].Value + "','"+ (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["vk_link"].Value + "','" + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["facebook_link"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["twitter_link"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["email"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["phone"].Value + "');";
- cmd.ExecuteNonQuery();
- break;
- case 7:
- cmd.CommandText = "INSERT INTO `messenger`.`chats` (`chat_id`, `chat_type`, `created_at`, `user_id`) VALUES ('" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_id"].Value + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_type"].Value + "','" + DateTime.Now.ToString("yyyy/MM/dd HH:mm") + "','" + (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_type"].Value + "');";
- if ((Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_type"].Value.ToString() != "Private message" || (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentRow.Cells["chat_type"].Value.ToString() != "Public dialog")
- MessageBox.Show("Список допустимых типов:" + "\n" + "Private message" + "\n" + "Public dialog");
- else cmd.ExecuteNonQuery();
- break;
- case 8:
- break;
- }
- }
- catch (MySqlException ex) { MessageBox.Show(ex.ToString(),"Ошибка",MessageBoxButtons.OK, MessageBoxIcon.Error); }
- conn.Close();
- }
- protected virtual void FillT()
- {
- int a = Application.OpenForms.Count - 1;
- try
- {
- (Application.OpenForms[a] as admin_form).bunifuCustomDataGrid2.DataSource = ds.Tables[0];
- Debug.LoadLogSrting("Таблица была успешно заполнена.");
- }
- catch
- {
- Debug.LoadLogSrting("Заполнение таблицы провалилось...");
- MessageBox.Show("Ошибка, заполнение таблицы прерванно!");
- }
- }
- protected void Disconnect()
- {
- try
- {
- conn.Close();
- Debug.LoadLogSrting("Закрытие соединения с MySQL сервером прошло успешно...");
- }
- catch
- {
- Debug.LoadLogSrting("Закрытие соединения с MySQL провалилось...");
- MessageBox.Show("При закрытии соединения с сервером произошла ошибка, возможно какойто процесс остался не завершённым");
- }
- }
- }
- class SqlWorker : SqlConnector
- {
- public void Work(string element, string log, string s = "SELECT * FROM messenger.user_info;")
- {
- switch (element)
- {
- case "Connect":
- Debug.LoadLogSrting(log);
- Connection(s);
- break;
- case "Disconnect":
- Debug.LoadLogSrting(log);
- Disconnect();
- break;
- case "delete":
- delete();
- break;
- case "FillTable":
- Debug.LoadLogSrting(log);
- FillT();
- break;
- case "update":
- update();
- break;
- case "create":
- create();
- break;
- default:
- Debug.LoadLogSrting("Ошибка, Класс SqlWorker не может работать с таким элементом :(");
- MessageBox.Show("Мастер подключения приостановлен \"" + element + "\" не является обрабатываемым элементом мастера!");
- break;
- }
- }
- private void button1_Click(object sender, EventArgs e)
- {
- string connectionString = "Server=localhost; database=messenger; UID=admin; password=randomlycreatedpassword; Integrated Security=True";
- SqlConnector sql1 = new SqlConnector();
- MySqlConnection connect = new MySqlConnection(connectionString);
- string s = "SELECT * FROM messenger.user_info;";
- MySqlCommand com = new MySqlCommand(s, connect);
- DataSet ds = new DataSet();
- }
- }
- private void button2_Click(object sender, EventArgs e)
- {
- this.timer1.Start();
- SqlWorker _SqlWorker1 = new SqlWorker();
- _SqlWorker1.Work("Connect", "Идёт подключение к SQLServer. Пожалуйста подождите...", "SELECT * FROM messenger.user_message;");
- _SqlWorker1.Work("FillTable", "Идёт заполнение таблицы из базы данных praktika");
- }
- private void timer1_Tick(object sender, EventArgs e)
- {
- if (bunifuProgressBar1.Value == 750)
- {
- timer1.Stop();
- bunifuProgressBar1.Value = -250;
- }
- bunifuProgressBar1.Value += 250;
- }
- private void button3_Click(object sender, EventArgs e)
- {
- SqlWorker _SqlWorker1 = new SqlWorker();
- _SqlWorker1.Work("create", "");
- }
- private void button4_Click(object sender, EventArgs e)
- {
- SqlWorker _SqlWorker1 = new SqlWorker();
- _SqlWorker1.Work("delete", "");
- }
- public bool admin;
- public bool manager;
- public bool user=true;
- private void авторизацияToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Authorization form = new Authorization();
- form.ShowDialog();
- }
- private void выходToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Application.Exit();
- }
- private void button6_Click(object sender, EventArgs e)
- {
- table_counter = 1;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой user_table", "select * from messenger.user_table");
- _sqlworker.Work("FillTable", " ");
- }
- private void button7_Click(object sender, EventArgs e)
- {
- table_counter = 2;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.status");
- _sqlworker.Work("FillTable", " ");
- }
- private void button10_Click(object sender, EventArgs e)
- {
- table_counter = 3;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.reports");
- _sqlworker.Work("FillTable", " ");
- }
- private void button9_Click(object sender, EventArgs e)
- {
- table_counter = 4;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.participants");
- _sqlworker.Work("FillTable", " ");
- }
- private void button8_Click(object sender, EventArgs e)
- {
- table_counter = 5;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.messages");
- _sqlworker.Work("FillTable", " ");
- }
- private void button13_Click(object sender, EventArgs e)
- {
- table_counter = 6;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.contact_inf");
- _sqlworker.Work("FillTable", " ");
- }
- private void button12_Click(object sender, EventArgs e)
- {
- table_counter = 7;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.chats");
- _sqlworker.Work("FillTable", " ");
- }
- private void button11_Click(object sender, EventArgs e)
- {
- table_counter = 8;
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select * from messenger.black_list");
- _sqlworker.Work("FillTable", " ");
- }
- private void справкаToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Help help_form = new Help();
- help_form.Show();
- }
- private void button29_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "SELECT * FROM messenger.chats_view;");
- _sqlworker.Work("FillTable", " ");
- }
- private void button30_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", " SELECT* FROM messenger.status_view;");
- _sqlworker.Work("FillTable", " ");
- }
- private void button25_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "SELECT * FROM messenger.user_info;");
- _sqlworker.Work("FillTable", " ");
- }
- private void button26_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "SELECT * FROM messenger.user_message;");
- _sqlworker.Work("FillTable", " ");
- }
- private void button27_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "SELECT * FROM messenger.user_report;");
- _sqlworker.Work("FillTable", " ");
- }
- private void button2_Click_1(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select messenger.avg_age();");
- _sqlworker.Work("FillTable", " ");
- }
- private void button14_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select messenger.blocked_count();");
- _sqlworker.Work("FillTable", " ");
- }
- private void button15_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select messenger.count_user_message("+ (Application.OpenForms[0] as admin_form).bunifuCustomDataGrid2.CurrentCell.Value.ToString() + ");");
- _sqlworker.Work("FillTable", " ");
- }
- private void button16_Click(object sender, EventArgs e)
- {
- SqlWorker _sqlworker = new SqlWorker();
- _sqlworker.Work("Connect", "Заполнение таблицой status", "select messenger.user_count();");
- _sqlworker.Work("FillTable", " ");
- }
- }
- }
- public static class ConnectionWork
- {
- static string _currentconnection;
- private static List<string> Connection = new List<string>();
- public static void AddConnectionString(string _connection)
- {
- Connection.Add(_connection);
- }
- public static void SetConnection(int index)
- {
- CurrentConnection = Connection[index];
- }
- public static string CurrentConnection
- {
- get
- {
- return _currentconnection;
- }
- set
- {
- _currentconnection = value;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement