/// <summary> /// Конструктор формы, в котором сожержатся перменнные название роли и должнсть , означает что адмтнистратор нажал кнопку добавить пароль на форме USers /// </summary> /// <param name="data_module"></param> /// <param name="prof"></param> /// <param name="post"></param> public add_users(db_connect data_module, class_person prof, string post, int ID) { InitializeComponent(); this._data_module = data_module; proff = prof; posts = post; id_person = ID; this.set_state("NEW"); }
/// <param name="data_module">Конструктор формы, в котором сожержатся перменнные название роли, id и модификатор MOD означает ,что админисратор нажал кнопку редактировать пароль на форме USers</param> public add_users(db_connect data_module, class_person prof, int id, string red) { InitializeComponent(); this._data_module = data_module; proff = prof; id_person = id; read = red; old_log = tb_pass.Text; this.set_state(red); }
/// <summary> /// При выборе с комбокса блюда происходит следующее событие /// </summary> private void cb_ok_SelectedIndexChanged(object sender, EventArgs e) { _namevrach = get_person_name_vrach1(); }
/// <summary> /// При выборе с комбокса блюда происходит следующее событие /// </summary> private void cb_diets_vrach_SelectedIndexChanged(object sender, EventArgs e) { _namevrach2 = get_person_name_vrach2(); }
/// <summary> /// Инициализирует главную MDI форму программы. /// </summary> /// <param name="professia"></param> public frmMDI(class_person professia, string log ) { prof = professia; login = log; InitializeComponent(); }
/// <summary> /// назначение прав пользователям (логин,пароль и т.д) /// </summary> /// <param name="prof"></param> /// <param name="login"></param> /// <param name="password"></param> /// <param name="role"></param> /// <returns></returns> public string add_password(string prof, string login, string password, string role, int ID) { try { class_person[] menu = new class_person[512]; string query = "select login from Users where role='Администратор-глав_врач' or role='Пользователь-диет_сестра'"; SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query; SqlDataReader rd = com.ExecuteReader(); int i = 0; while (rd.Read()) { i++; menu[i] = new class_person(); menu[i].result = "OK"; if (rd.IsDBNull(0)) { } else { menu[i].login = rd.GetString(0); if ((menu[i].login == login)) { rd.Close(); rd.Dispose(); com.Dispose(); } } } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception) { return null; } return SQL_Exec(string.Format("update Users set login='******',password='******',role='{2}' where Post='{3}' and IDUsers={4}", login, password, role, prof, ID)); }
/// <summary> /// возвращает сотрудника по указанному в параметрах идентификатору (коду) /// </summary> /// <param name="post_id"></param> /// <returns></returns> public class_person get_person(int post_id) { class_person person = new class_person(); string query = "select Surname, Name, Secondname, Post, IDUsers " + "from Users "; query += "where IDUsers = '" + post_id + "'"; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query; SqlDataReader rd = com.ExecuteReader(); if (rd.Read()) { person.result = "OK"; person.post_id = post_id.ToString(); person.surname = rd.GetString(0); if (rd.IsDBNull(1)) { person.name = ""; } else { person.name = rd.GetString(1); } if (rd.IsDBNull(2)) { person.secondname = ""; } else { person.secondname = rd.GetString(2); } if (rd.IsDBNull(3)) { person.post = ""; } else { person.post = rd.GetString(3); } } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { person.result = "ERROR_" + ex.Data + " " + ex.Message; } return person; }
/// <summary> /// Возвращает логин пользователя /// </summary> public class_person get_login(int ID) { class_person user = new class_person(); string query = "select login from Users where IDUsers='" + ID + "'"; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query; int i = 0; SqlDataReader rd = com.ExecuteReader(); while (rd.Read()) { i = i + 1; user = new class_person(); user.result = "OK"; user.login = rd.GetString(0); } if (user == null) { i = i + 1; user = new class_person(); user.pass = ""; string password = (user.pass); } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message + " " + ex.Data); return null; } return user; }
/// <summary> /// Конструктор формы, в котором сожержатся перменнные название роли, id , означает что пользователь нажал кнопку добавить пароль на форме USers /// </summary> /// <param name="data_module"></param> /// <param name="prof"></param> /// <param name="id"></param> public add_users(db_connect data_module, class_person prof, int id) { InitializeComponent(); this._data_module = data_module; proff = prof; id_person = id; this.set_state("NEW"); }
/// <summary> /// Метод который загружает форму сменить логин или пароль пользователю, с ролью пользователя: Пользователь-диет_сестра. /// </summary> /// <param name="profess"></param> /// <param name="id"></param> private void add_new_users(class_person profess, int id) { add_users ingr = new add_users(Program.data_module, profess, id); login = ingr.tb_pass.Text; ingr.ShowDialog(); }
/// <summary> /// Инициализирует экземпляр формы users. /// </summary> /// <param name="prof">Экземпляр класса, представляющий текущего пользователя.</param> /// <param name="login">Логин пользователя.</param> public users(class_person prof, string login) { InitializeComponent(); professia = prof; this.login = login; }
/// <summary> /// При выборе с комбокса ,кто составляет карту-раскладку ,происходит следующее событие /// </summary> private void Cb_diet_vrach2_SelectedIndexChanged(object sender, EventArgs e) { _namevrach3 = get_person_name_vrach3(); }
/* public class_person[] get_post_role() { class_person[] user = new class_person[512]; string query = "select * from Users where IDUsers='" + id_person + "'"; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query; int i = 0; SqlDataReader rd = com.ExecuteReader(); while (rd.Read()) { i = i + 1; user[i] = new class_person(); user[i].result = "OK"; if (rd.IsDBNull(0)) { user[i].post_id = ""; } else user[i].post_id = rd.GetInt32(0).ToString(); if (rd.IsDBNull(1)) { user[i].login = ""; } else user[i].login = rd.GetString(1); if (rd.IsDBNull(2)) { user[i].pass = ""; } else user[i].pass = rd.GetString(2); if (rd.IsDBNull(3)) { user[i].role = ""; } else user[i].role = rd.GetString(3); } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message + " " + ex.Data); return null; } return user; }*/ /// <summary> /// Возвращает логин ,пароль, роль польязователя /// </summary> /// <returns></returns> public class_person[] get_password() { class_person[] user = new class_person[512]; string query = "select * from Users where IDUsers='" + id_person + "'"; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query; int i = 0; SqlDataReader rd = com.ExecuteReader(); while (rd.Read()) { i = i + 1; user[i] = new class_person(); user[i].result = "OK"; if (rd.IsDBNull(0)) { user[i].post_id = ""; } else user[i].post_id = rd.GetInt32(0).ToString(); if (rd.IsDBNull(1)) { user[i].login = ""; } else user[i].login = rd.GetString(1); if (rd.IsDBNull(2)) { user[i].pass = ""; } else user[i].pass = rd.GetString(2); if (rd.IsDBNull(3)) { user[i].role = ""; } else user[i].role = rd.GetString(3); } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message + " " + ex.Data); return null; } return user; }
/// <summary> /// Метод содержит sql запрос,который возвращает имена работающих в профике /// </summary> /// <returns>имена,фамилии и т.д</returns> public class_person[] get_person_list() { class_person[] person = new class_person[512]; string query = "select * from Users "; string query2 = query; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query2; int i = 0; SqlDataReader rd = com.ExecuteReader(); while (rd.Read()) { i = i + 1; person[i] = new class_person(); person[i].result = "OK"; person[i].post = rd.GetString(7).ToString(); person[i].post_id = rd.GetInt32(0).ToString(); } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message + " " + ex.Data); return null; } return person; }
/// <summary> /// Назначает права пользователям. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void b_add_Click(object sender, EventArgs e) { try { //Если роль пользователя:Администратор-глав_врач,то грузим форму назначения прав пользователей(add_user) if (professia.role == "Администратор-глав_врач") { // Cчитываем с дата грида значение Login string post1 = Convert.ToString(gw.Rows[gw.CurrentRow.Index].Cells[2].Value.ToString()); // Если логин не пуст,то выводим сообщение,что права уже назначены: if (post1 != "") MessageBox.Show("Права пользователю уже назначены", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Information); else { //если нет,то назначем права пользователю string post = Convert.ToString(gw.Rows[gw.CurrentRow.Index].Cells[1].Value.ToString()); int ID = Convert.ToInt32(gw.Rows[gw.CurrentRow.Index].Cells[0].Value.ToString()); //Передаем в форму должность пользователя add_users ingr = new add_users(Program.data_module, professia, post, ID); ingr.ShowDialog(); } load_data_table_head(); } //Если роль пользователя: Пользователь-диет_сестра,то грузим форму назначения прав пользователей(add_user) if (professia.role == "Пользователь-диет_сестра") { // Cчитываем с дата грида значение id пользователя и пераем его в консруктор формы add_user int id = Convert.ToInt32(gw.Rows[gw.CurrentRow.Index].Cells[0].Value.ToString()); this.add_new_users(professia, id); logins = Program.add_read_module.get_login(id); load_data_table(_current_state, professia.role, logins.login); } } catch { } }
/// <summary> /// Возвращает ФИО составляющего меню-раскладку /// </summary> public class_person get_person_name_vrach2() { class_person person = new class_person(); string query = "select * from Users where Post='" + cb_diets_vrach.Text + "'"; string query2 = query; try { SqlCommand com = Program.data_module._conn.CreateCommand(); com.CommandText = query2; SqlDataReader rd = com.ExecuteReader(); while (rd.Read()) { person = new class_person(); person.result = "OK"; person.surname = rd.GetString(4).ToString(); person.name = rd.GetString(5).ToString(); person.secondname = rd.GetString(6).ToString(); } rd.Close(); rd.Dispose(); com.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message + " " + ex.Data); return null; } return person; }
/// <summary> /// Метод проверки логина и пароля,а также подключения БД /// </summary> public void users() { try { if (tb_log.Text == "") { MessageBox.Show("Вы не ввели пароль или не ввели логин!", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { db_settings db = new db_settings(); //Если статус коннект,то идет проверка пароля вводимого с тукст бокса if (Program.data_module.ConnStatus == (ConnectionStatus.CONNECTED)) { _pass = get_password(); if (_pass.pass == hash) { _pass = get_password(); LOG = tb_log.Text; this.DialogResult = System.Windows.Forms.DialogResult.OK; Close(); } else { MessageBox.Show("Неправильный логин или пароль !!!", "Внимание !!!", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { //Если статус не равен коннект,то грузится форма подключения к БД if (Program.data_module.connect_to_db() != (ConnectionStatus.CONNECTED)) { db.Text = "Настройки подключения к БД"; if (db.ShowDialog() == System.Windows.Forms.DialogResult.OK) {//Если статус коннект,то идет проверка пароля вводимого с тукст бокса if ((Program.data_module.connect_to_db() == ConnectionStatus.CONNECTED)) { _pass = get_password(); if (_pass.pass == hash) { _pass = get_password(); LOG = tb_log.Text; this.DialogResult = System.Windows.Forms.DialogResult.OK; Close(); } else { MessageBox.Show("Неправильный логин или пароль !!!", "Внимание !!!", MessageBoxButtons.OK, MessageBoxIcon.Information); } } //Если статус не равен коннект,то грузится форма авторизации с ссылкой на настройки подключения К БД, else { linkLabel.Visible = true; } } else { this.Close(); } } //Если статус коннект,то в переменную _pass записывается роль и пароль пользователя else { _pass = get_password(); // идет проверка пароля вводимого с текст бокса if (_pass.pass == hash) { _pass = get_password(); LOG = tb_log.Text; this.DialogResult = System.Windows.Forms.DialogResult.OK; Close(); } else { MessageBox.Show("Неправильный логин или пароль !!!", "Внимание !!!", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } } } catch(Exception) { } }