Документированный код программного продукта 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Документированный код программного продукта



 

Класс Program:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Threading.Tasks;

using System.Windows.Forms;

 

namespace All_Error_Solver

{

staticclassProgram

{

///<summary>

/// Главная точка входа для приложения.

///</summary>

[STAThread]

staticvoid Main()

{

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

Application.Run(new Main());

}

}

}

 

Класс подключения к БД:

using System;

using System.Data;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using MySql.Data.MySqlClient;

using System.Windows.Forms;

 

namespace All_Error_Solver

{

publicclassDbParameter

{

public String name;

public Object value;

}

 

classNew_DB_Connect

{

privatestatic MySqlConnection Getconnect()

{

string connect = ";Server=" + Properties.Settings.Default.host +

";Port=" + Properties.Settings.Default.port +

";Database=" + Properties.Settings.Default.database +

";User Id=" + Properties.Settings.Default.username +

";Password=" + Properties.Settings.Default.password +

";charset=utf8";

 

MySqlConnection connection = new MySqlConnection(connect);

return connection;

}

 

publicstatic DataTable Select(string sql, List<DbParameter> parameters)

{

MySqlConnection connection = Getconnect();

MySqlCommand command = new MySqlCommand(sql, connection);

DataTable table = new DataTable();

 

foreach (DbParameter item in parameters)

{

command.Parameters.AddWithValue(item.name, item.value);

}

 

try

{

connection.Open();

table.Load(command.ExecuteReader());

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

return table;

}

}

 

classOld_DB_Connect

{

publicstatic MySqlConnection GetConfig()

{

string connstring = ";Server=" + Properties.Settings.Default.host +

";Database=" + Properties.Settings.Default.database +

";User Id=" + Properties.Settings.Default.username +

";Port=" + Properties.Settings.Default.port +

";Password=" + Properties.Settings.Default.password +

";charset= utf8";

MySqlConnection connection = new MySqlConnection(connstring);

return connection;

}

 

publicstatic DataTable Getdt(string sql)

{

DataTable datatable = new DataTable();

MySqlConnection connection = GetConfig();

MySqlCommand command = new MySqlCommand(sql, connection);

 

try

{

connection.Open();

using (MySqlDataReader datareader = command.ExecuteReader())

{

if (datareader.HasRows)

datatable.Load(datareader);

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

connection.Close();

connection.Dispose();

return datatable;

}

 

publicstaticvoid Query(string sql)

{

MySqlConnection connection = GetConfig();

MySqlCommand command = new MySqlCommand(@sql, connection);

 

try

{

command.ExecuteNonQuery();

connection.Open();

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

}

}

}


 

Класс Zayavki_Class:

using System;

using System.Collections.Generic;

using System.Data;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace All_Error_Solver

{

classZayavki_Class

{

public int Id { get; set; }

public string Task { get; set; }

public string Сlient { get; set; }

public string Worker { get; set; }

public DateTime Date_of_issue { get; set; }

publicstring Request_status { get; set; }

 

public Zayavki_Class(DataRow row)

{

Id = Convert.ToInt32(row["id"]);

Task = Convert.ToString(row["Task"]);

Сlient = Convert.ToString(row["Сlient"]);

Worker = Convert.ToString(row["Worker"]);

Date_of_issue = Convert.ToDateTime(row["Date_of_issue"]);

Request_status = Convert.ToString(row["Request_status"]);

}

 

public static List<Zayavki_Class> Select()

{

DataTable dt = New_DB_Connect.Select("SELECT * FROM `zayavki` ", new List<DbParameter>());

List<Zayavki_Class> zc = new List<Zayavki_Class>();

 

foreach (DataRow row in dt.Rows)

zc.Add(new Zayavki_Class(row));

 

return zc;

}

 

public static void Add(int id, string Task, stringСlient, string Worker, DateTime Date_of_issue, string Request_status)

{

New_DB_Connect.Select("INSERT INTO `zayavki` (`id`, `Task`, `Сlient`, `Worker`, `Date_of_issue`, `Request_status`) VALUES (@id, @Task, @Сlient, @Worker, @Date_of_issue, @Request_status);",

new List<DbParameter>() { new DbParameter {name = "@id", value = id},

new DbParameter {name = "@Task", value = Task},

new DbParameter {name = "@Сlient", value = Сlient},

new DbParameter {name = "@Worker", value = Worker},

new DbParameter {name = "@Date_of_issue", value = Date_of_issue},

new DbParameter {name = "@Request_status", value = Request_status} });

}

 

public static void Update(int id, string Task, stringСlient, string Worker, DateTime Date_of_issue, string Request_status)

{

New_DB_Connect.Select("UPDATE `zayavki` SET `id` = @id, `Task` = @Task, `Сlient` = @Сlient, `Worker` = @Worker, `Date_of_issue` = @Date_of_issue, `Request_status` = @Request_status WHERE `zayavki`.`id` = @id;",

new List<DbParameter>() { new DbParameter {name = "@id", value = id},

new DbParameter {name = "@Task", value = Task},

new DbParameter {name = "@Сlient", value = Сlient},

new DbParameter {name = "@Worker", value = Worker},

new DbParameter {name = "@Date_of_issue", value = Date_of_issue},

new DbParameter {name = "@Request_status", value = Request_status} });

}

 

public void Delete()

{

New_DB_Connect.Select("DELETE FROM `zayavki` WHERE `id` = @id", new List<DbParameter>() { new DbParameter { name = "@id", value = Id } });

}

 

public static List<Zayavki_Class> Search(string searchParam, string searchValue)

{

DataTable dt = New_DB_Connect.Select($"SELECT * FROM zayavki WHERE {searchParam} LIKE '%{searchValue}%';", new List<DbParameter>());

List<Zayavki_Class> zc = new List<Zayavki_Class>();

 

foreach (DataRow row in dt.Rows)

zc.Add(new Zayavki_Class(row));

 

return zc;

}

}

}

 

Класс Sotrudniki_Class:

using System;

using System.Collections.Generic;

using System.Data;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace All_Error_Solver

{

class Sotrudniki_Class

{

public int Id { get; set; }

public string Name { get; set; }

public string Login { get; set; }

public string Password { get; set; }

 

public Sotrudniki_Class(DataRow row)

{

Id = Convert.ToInt32(row["id"]);

Name = Convert.ToString(row["Task"]);

Login = Convert.ToString(row["Сlient"]);

Password = Convert.ToString(row["Worker"]);

}

 

public static List<Zayavki_Class> Select()

{

DataTable dt = New_DB_Connect.Select("SELECT * FROM `sotrudnik_auth` ", new List<DbParameter>());

List<Zayavki_Class> zc = new List<Zayavki_Class>();

 

foreach (DataRow row in dt.Rows)

zc.Add(new Zayavki_Class(row));

 

return zc;

}

 

public static void Add(string Name, string Login, string Password)

{

New_DB_Connect.Select("INSERT INTO `sotrudnik_auth` (`Name`, `Login`, `Password`) VALUES (@Name, @Login, @Password);",

new List<DbParameter>() { new DbParameter {name = "@Name", value = Name},

new DbParameter {name = "@Login", value = Login},

new DbParameter {name = "@Password", value = Password} });

}

 

public static void Update(int id, string Name, string Login, string Password)

{

New_DB_Connect.Select("UPDATE `sotrudnik_auth` SET `id` = @id, `Name` = @Name, `Login` = @Login, `Password` = @Password WHERE `sotrudnik_auth`.`id` = @id;",

new List<DbParameter>() { new DbParameter {name = "@id", value = id},

new DbParameter {name = "@Name", value = Name},

new DbParameter {name = "@Login", value = Login},

new DbParameter {name = "@Password", value = Password} });

}

 

public void Delete()

{

New_DB_Connect.Select("DELETE FROM `sotrudnik_auth` WHERE `id` = @id", new List<DbParameter>() { new DbParameter { name = "@id", value = Id } });

}

 

 

public static List<Zayavki_Class> Search(string searchParam, string searchValue)

{

DataTable dt = New_DB_Connect.Select($"SELECT * FROM sotrudnik_auth WHERE {searchParam} LIKE '%{searchValue}%';", new List<DbParameter>());

List<Zayavki_Class> zc = new List<Zayavki_Class>();

 

foreach (DataRow row in dt.Rows)

zc.Add(new Zayavki_Class(row));

 

return zc;

}

}

}

 

Код формы Main:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace All_Error_Solver

{

publicpartialclassMain: Form

{

publicMain()

{

InitializeComponent();

comboBox1.SelectedIndex = 0;

}

 

private void Solve_Click_1(object sender, EventArgs e)

{

Authorization auth = new Authorization();

if ((Application.OpenForms["Authorization"] as Authorization)!= null)

{

//Form is already open

}

else auth.Show();

}

 

private void Settings_Click(object sender, EventArgs e)

{

Settings s = new Settings();

s.Show();

}

 

private void ComboBox1_SelectedIndexChanged(object sender, EventArgs e)

{

comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;

}

}

}

 

Код формы Authorization:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Diagnostics;

using System.Drawing;

using System.Linq;

using System.Net.Sockets;

using System.Text;

using System.Threading;

using System.Threading.Tasks;

using System.Windows.Forms;

using MySql.Data.MySqlClient;

 

namespace All_Error_Solver

{

public partial class Authorization: Form

{

public Authorization()

{

InitializeComponent();

Main m = new Main();

}

 

public void LogIn_Click(object sender, EventArgs e)

{

DataTable sotrudnik_auth = New_DB_Connect.Select("SELECT * FROM `sotrudnik_auth` WHERE `Login` = @Login and `Password` = @Password;",

new List<DbParameter> { new DbParameter { name = "@Login", value = loginauthbox.Text },

new DbParameter { name = "@Password", value = passauthbox.Text } });

 

DataTable client_auth = New_DB_Connect.Select("SELECT * FROM `client_auth` WHERE `Login` = @Login and `Password` = @Password;",

new List<DbParameter> { new DbParameter { name = "@Login", value = loginauthbox.Text },

new DbParameter { name = "@Password", value = passauthbox.Text } });

 

Chat ch = new Chat();

Main m = new Main();

Chat.Client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

Requests req = new Requests();

 

if (sotrudnik_auth.Rows.Count > 0)

{

if (ch.ip!= null)

{

try

{

Chat.Client.Connect(ch.ip, ch.port);

Chat.th = new Thread(delegate ()

{

ch.RecvMessage();

});

Chat.th.Start();

 

ch.SendMessage("\n" + sotrudnik_auth.Rows[0]["FIO"].ToString() + " вошёлвчат." + ";;;5" + "\n");

MessageBox.Show("Добропожаловать, " + sotrudnik_auth.Rows[0]["FIO"].ToString() + "!", "Сообщение");

 

ch.namelabel.Text = sotrudnik_auth.Rows[0]["FIO"].ToString();

ch.dogloginlabel.Visible = false;

ch.dogovorlabel.Visible = false;

 

Close();

 

ch.ShowDialog();

}

catch

{

MessageBox.Show("Неудалосьподключитьсякчату. Повторите попытку позднее.", "Ошибка", MessageBoxButtons.OK);

}

}

}

else

{

if (client_auth.Rows.Count > 0)

{

if (ch.ip!= null)

{

try

{

Chat.Client.Connect(ch.ip, ch.port);

Chat.th = new Thread(delegate ()

{

ch.RecvMessage();

});

Chat.th.Start();

 

ch.SendMessage("\n" + client_auth.Rows[0]["FIO"].ToString() + " вошёлвчат." + ";;;5" + "\n");

MessageBox.Show("Добропожаловать, " + client_auth.Rows[0]["FIO"].ToString() + "!", "Сообщение");

 

ch.namelabel.Text = client_auth.Rows[0]["FIO"].ToString();

ch.dogloginlabel.Text = loginauthbox.Text;

ch.requests_button.Visible = false;

ch.workers_button.Visible = false;

 

ch.ShowDialog();

m.Hide();

 

Close();

}

catch

{

MessageBox.Show("Не удалось подключиться к чату. Повторите попытку позднее.", "Ошибка", MessageBoxButtons.OK);

}

}

}

else MessageBox.Show("Неправильный логин или пароль. Попробуйте войти ещё раз.", "Ошибка", MessageBoxButtons.OK);

}

}

 

private void Password_linkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)

{

NewPassword np = new NewPassword();

np.ShowDialog();

}

 

private void Authorization_FormClosing(object sender, FormClosingEventArgs e)

{

Main m = new Main();

m.Solve.Enabled = true;

m.Refresh();

}

}

}

 

Код формы Settings:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.IO;

namespace All_Error_Solver

{

public partial class Settings: Form

{

public Settings()

{

InitializeComponent();

}

private void Save_Click(object sender, EventArgs e)

{

if (textBox1.Text!= ""&& textBox1.Text!= " "&& textBox1.Text!= ""&& textBox1.Text!= " ")

{

try

{

DirectoryInfo data = new DirectoryInfo("Client_info");

data.Create();

var sw = new StreamWriter(@"Client_info/data_info.txt");

sw.WriteLine(textBox1.Text + ":" + textBox2.Text);

sw.Close();

this.Hide();

Application.Restart();

}

catch (Exception ex)

{

MessageBox.Show("Ошибка: " + ex.Message);

}

}

}

}

}

 

Код формы NewPassword:

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;

 

namespace All_Error_Solver

{

public partial class NewPassword: Form

{

public NewPassword()

{

InitializeComponent();

}

 

private void Savebutton_Click(object sender, EventArgs e)

{

 

DataTable sotrudnik_auth = New_DB_Connect.Select("SELECT * FROM `sotrudnik_auth` WHERE `Login` = @Login;",

new List<DbParameter> { new DbParameter { name = "@Login", value = loginauth_textBox.Text } });

 

DataTable client_auth = New_DB_Connect.Select("SELECT * FROM `client_auth` WHERE `Login` = @Login;",

new List<DbParameter> { new DbParameter { name = "@Login", value = loginauth_textBox.Text } });

 

if (sotrudnik_auth.Rows.Count > 0 || client_auth.Rows.Count > 0)

{

if (new_passauth_textBox.Text!= ""&& accept_passauth_textBox.Text!= "")

{

if (new_passauth_textBox.Text == accept_passauth_textBox.Text)

{

Old_DB_Connect.Getdt(@"UPDATE `sotrudnik_auth` SET `Password` = '" + accept_passauth_textBox.Text + "' WHERE `Login` = '" + loginauth_textBox.Text + "'");

Old_DB_Connect.Getdt(@"UPDATE `client_auth` SET `Password` = '" + accept_passauth_textBox.Text + "' WHERE `Login` = '" + loginauth_textBox.Text + "'");

warning_new_password_label.Visible = false;

warning_accept_password_label2.Visible = false;

MessageBox.Show("Парольизменён.", "Сообщение", MessageBoxButtons.OK);

Close();

}

else

{

warning_new_password_label.Visible = false;

warning_accept_password_label2.Visible = true;

}

}

else

{

if (new_passauth_textBox.Text!= ""&& accept_passauth_textBox.Text == "")

{

warning_new_password_label.Visible = false;

warning_accept_password_label.Visible = true;

}

else

{

if (new_passauth_textBox.Text == ""&& accept_passauth_textBox.Text!= "")

{

warning_new_password_label.Visible = true;

warning_accept_password_label.Visible = false;

}

else

{

warning_new_password_label.Visible = true;

warning_accept_password_label.Visible = true;

}

}

}

} else warning_dogovor_label.Visible = true;

}

}

}

 

Код формы Chat:

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 System.Net;

using System.IO;

using System.Net.Sockets;

using System.Threading;

using System.Diagnostics;

 

namespace All_Error_Solver

{

public partial class Chat: Form

{

static public Socket Client;

public IPAddress ip = null;

public int port = 0;

public static Thread th;

 

private Int32 tmpX;

private Int32 tmpY;

private bool flMove = false;

 

public Chat()

{

InitializeComponent();

 

this.FormBorderStyle = FormBorderStyle.None;

 

try

{

var sr = new StreamReader(@"Client_info/data_info.txt");

string buffer = sr.ReadToEnd();

sr.Close();

string[] connect_info = buffer.Split(':');

ip = IPAddress.Parse(connect_info[0]);

port = int.Parse(connect_info[1]);

 

label4.Hide();

label5.ForeColor = Color.Green;

label5.Text = "IP сервера: " + connect_info[0] + "\nПортсервера: " + connect_info[1];

}

catch (Exception)

{

label4.Show();

label4.ForeColor = Color.Red;

label4.Text = "Настройки не найдены!";

MessageBox.Show("Настройки IP-адреса не заданы или сервер был отключен.", "Ошибка", MessageBoxButtons.OK);

}

}

 

private void Chat_MouseMove(object sender, MouseEventArgs e)

{

if (flMove)

{

Left += (Cursor.Position.X - tmpX);

Top += (Cursor.Position.Y - tmpY);

 

tmpX = Cursor.Position.X;

tmpY = Cursor.Position.Y;

}

}

 

private void Chat_MouseDown(object sender, MouseEventArgs e)

{

tmpX = Cursor.Position.X;

tmpY = Cursor.Position.Y;

flMove = true;

}

 

private void Chat_MouseUp(object sender, MouseEventArgs e)

{

flMove = false;

}

 

private void MinimizeToolStripMenuItem_Click(object sender, EventArgs e)

{

WindowState = FormWindowState.Minimized;

}

 

private void ExitToolStripMenuItem1_Click(object sender, EventArgs e)

{

Requests r = new Requests();

Workers w = new Workers();

 

r.Hide();

w.Hide();

Main m = new Main();

 

SendMessage("\n" + namelabel.Text + " вышелизчата." + ";;;5" + "\n");

Send.Enabled = false;

message_entering_richtextbox.Clear();

message_entering_richtextbox.Enabled = false;

th.Abort();

m.Solve.Enabled = true;

 

 

Close();

MessageBox.Show("Вывышлиизчата.", "Сообщение", MessageBoxButtons.OK);

}

 

public void SendMessage(string message)

{

if (message!= " "&& message!= "")

{

_ = newbyte[1024];

byte[] buffer = Encoding.Default.GetBytes(message);

try

{

Client.Send(buffer);

}

catch

{

MessageBox.Show("Настройки IP-адреса не заданы или сервер был отключен.", "Ошибка", MessageBoxButtons.OK);

Close();

}

}

}

 

public void RecvMessage()

{

byte[] buffer = newbyte[1024];

for (int i = 0; i < buffer.Length; i++)

buffer[i] = 0;

 

for (;;)

{

try

{

Client.Receive(buffer);

string message = Encoding.Default.GetString(buffer);

int count = message.IndexOf(";;;5");

if (count == -1)

continue;

 

string Clear_Message = "";

 

for (int i = 0; i < count; i++)

Clear_Message += message[i];

 

for (int i = 0; i < buffer.Length; i++)

buffer[i] = 0;

 

this.Invoke((MethodInvoker)delegate ()

{

Dialog_richTextBox.AppendText(Clear_Message);

});

}

catch (Exception)

{

 

}

}

}

 

private void Send_Click(object sender, EventArgs e)

{

dialog_label.Hide();

SendMessage("\n" + namelabel.Text + ": " + message_entering_richtextbox.Text + ";;;5");

message_entering_richtextbox.Clear();

message_entering_richtextbox.ForeColor = Color.Gray;

message_entering_richtextbox.Text = "Введитетекст...";

}

 

private void Message_entering_richtextbox_Enter(object sender, EventArgs e)

{

message_entering_richtextbox.Clear();

message_entering_richtextbox.ForeColor = Color.Black;

}

 

private void Requests_button_Click(object sender, EventArgs e)

{

Requests req = new Requests();

req.groupBox1.Visible = true;

req.Show();

}

 

private void Workers_button_Click(object sender, EventArgs e)

{

Workers work = new Workers();

work.groupBox1.Visible = true;

work.Show();

}

}

}

 

Код формы Request_Form:

using System;

using System.Collections.Generic;

using System.Windows.Forms;

 

namespace All_Error_Solver

{

public partial classRequests: Form

{

public Requests()

{

InitializeComponent();

}

 

private void Loaddata(List<Zayavki_Class> userlist = null)

{

dataGridView1.Rows.Clear();

_ = new List<Zayavki_Class>();

List<Zayavki_Class>zc;

if (userlist == null)

zc = Zayavki_Class.Select();

else zc = userlist;

 

foreach (Zayavki_Class test in zc)

{

int r = dataGridView1.Rows.Add(test.Id, test.Task, test.Сlient, test.Worker, test.Date_of_issue, test.Request_status);

dataGridView1.Rows[r].Tag = test;

}

}

 

private void Requests_Load(object sender, EventArgs e)

{

Loaddata();

}

 

private void AddRequest_Click(object sender, EventArgs e)

{

Zayavki_Class.Add(Convert.ToInt32(id_box.Text), problem_box.Text, client_box.Text, sotrudnik_box.Text, Convert.ToDateTime(date_box.Text), status_box.Text);

Loaddata();

}

 

private void UpdateRequest_Click(object sender, EventArgs e)

{

Zayavki_Class.Update(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Id,

problem_box.Text, client_box.Text, sotrudnik_box.Text, Convert.ToDateTime(date_box.Text), status_box.Text);

Loaddata();

}

 

private void DeleteRequest_Click(object sender, EventArgs e)

{

((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Delete();

Loaddata();

}

 

private void clear_butt_Click(object sender, EventArgs e)

{

id_box.Clear();

problem_box.Clear();

client_box.Clear();

sotrudnik_box.Clear();

date_box.Clear();

status_box.Clear();

}

 

private void SearchTextBox_TextChanged(object sender, EventArgs e)

{

string[] Array = newstring[] { "id", "Task", "Клиент", "Тех. специалист", "Дата обращения", "Статус выполнения" };

List<Zayavki_Class> tu = Zayavki_Class.Search(Array[comboBox1.SelectedIndex], searchbox.Text);

Loaddata(tu);

}

}

}

 

private void id_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[0-9]").Success)

{

e.Handled = true;

}

}

 

private void client_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[а-яА-Я]").Success)

{

e.Handled = true;

}

}

 

private void sotrudnik_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[а-яА-Я]").Success)

{

e.Handled = true;

}

}

 

private void date_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[0-9]|[.]").Success)

{

e.Handled = true;

}

}

 

private void status_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

 if (!Regex.Match(Symbol, @"[а-яА-Я]").Success)

 {

 e.Handled = true;

 }

 }

 

 private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

 {

 id_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Id);

 problem_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Task);

 client_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Client);

 sotrudnik_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Worker);

 date_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Date_of_issue.ToShortDateString());

 status_box.Text = Convert.ToString(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Request_status);

 }

 

Код формы Workers_Form:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Data.OleDb;

using MySql.Data.MySqlClient;

using System.Threading.Tasks;

using System.Windows.Forms;

 

namespace All_Error_Solver

{

public partial class Workers: Form

{

public Workers()

{

InitializeComponent();

}

 

void Loaddata(List<Contacts_Class> userlist = null)

{

dataGridView1.Rows.Clear();

 

_ = new List<Contacts_Class>();

 

List<Contacts_Class> cc;

if (userlist == null)

cc = Contacts_Class.Select();

else cc = userlist;

 

foreach (Contacts_Class test in cc)

{

int r = dataGridView1.Rows.Add(test.Id, test.FIO, test.Position, test.Mail, test.Phone_number, test.Address);

dataGridView1.Rows[r].Tag = test;

}

}

 

private void Workers_Load(object sender, EventArgs e)

{

Loaddata();

}

 

private void Adddbutton_Click(object sender, EventArgs e)

{

Contacts_Class.Add(fio_box.Text, dolzhnost_box.Text, email_box.Text, Convert.ToInt32(phone_number_box.Text), address_box.Text);

Loaddata();

}

 

private void Updatebutton_Click(object sender, EventArgs e)

{

Contacts_Class.Update(((Zayavki_Class)dataGridView1.SelectedRows[0].Tag).Id,

fio_box.Text, dolzhnost_box.Text, email_box.Text, Convert.ToInt32(phone_number_box.Text), address_box.Text);

Loaddata();

}

 

private void Deletedbutton_Click(object sender, EventArgs e)

{

((Contacts_Class)dataGridView1.SelectedRows[0].Tag).Delete();

Loaddata();

}

 

private void clear_butt_Click(object sender, EventArgs e)

{

fio_box.Clear();

dolzhnost_box.Clear();

email_box.Clear();

phone_number_box.Clear();

address_box.Clear();

}

 

private void SearchTextBox_TextChanged(object sender, EventArgs e)

{

string[] Array = newstring[] { "id", "FIO", "Position", "Mail", "Phone_number", "Address" };

List<Contacts_Class> cc = Contacts_Class.Search(Array[comboBox1.SelectedIndex], Search_textBox.Text);

Loaddata(cc);

}

 

private void fio_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[а-яА-Я]|[ ]").Success)

{

e.Handled = true;

}

}

 

private void phone_number_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[0-9]|[+]").Success)

{

e.Handled = true;

}

}

 

private void address_box_KeyPress(object sender, KeyPressEventArgs e)

{

string Symbol = e.KeyChar.ToString();

 

if (!Regex.Match(Symbol, @"[а-яА-Я]|[.]|[,]|[-]").Success)

{

e.Handled = true;

}

}

 

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

{

fio_box.Text = Convert.ToString(((Contacts_Class)dataGridView1.SelectedRows[0].Tag).FIO);

dolzhnost_box.Text = Convert.ToString(((Contacts_Class)dataGridView1.SelectedRows[0].Tag).Position);

email_box.Text = Convert.ToString(((Contacts_Class)dataGridView1.SelectedRows[0].Tag).Mail);

phone_number_box.Text = Convert.ToString(((Contacts_Class)dataGridView1.SelectedRows[0].Tag).Phone_number);

address_box.Text = Convert.ToString(((Contacts_Class)dataGridView1.SelectedRows[0].Tag).Address);

}

}

}

ПРИЛОЖЕНИЕ Д

Диск с материалами

Диск с материалами

 

 



Поделиться:


Последнее изменение этой страницы: 2021-08-16; просмотров: 58; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.196.184 (0.58 с.)