private void Button_Click(object sender, RoutedEventArgs e) { MainMenuUser mainMenuUser = new MainMenuUser(); mainMenuUser.Show(); this.Close(); }
private void Button_Click(object sender, RoutedEventArgs e) { StreamReader file = new StreamReader("UserLogin.txt"); string login = file.ReadLine(); file.Close(); if (login == null) { Mainmenu mainmenu = new Mainmenu(); mainmenu.Show(); this.Close(); } else { MainMenuUser mainMenuUser = new MainMenuUser(); mainMenuUser.Show(); this.Close(); } }
private void Button_Click(object sender, RoutedEventArgs e) { if (loginField.Text != CheckUser.CheckUserLogin(loginField.Text)) { MessageBox.Show(CheckUser.CheckUserLogin(loginField.Text)); return; } if (passwordField.Password.ToString() != CheckUser.CheckUserPassword(passwordField.Password.ToString())) { MessageBox.Show(CheckUser.CheckUserPassword(passwordField.Password.ToString())); return; } string userLogin = loginField.Text; string userPassword = passwordField.Password.ToString(); string myConnectionString = @"Data Source=(local)\SQLEXPRESS; Initial Catalog=StockRoom; Integrated Security=True"; string mySelectQuery = "SELECT * FROM Users WHERE [UserLogin] = '" + userLogin + "'and [UserPassword]='" + userPassword + "' and [AdministratorState] = 'false'"; using (SqlDataAdapter dataAdapter = new SqlDataAdapter(mySelectQuery, myConnectionString)) // проверка введенных данных { DataTable table = new DataTable(); dataAdapter.Fill(table); if (table.Rows.Count > 0) { StreamWriter loginFile = new StreamWriter("UserLogin.txt"); loginFile.Write(userLogin); loginFile.Close(); MainMenuUser mainMenu = new MainMenuUser(); mainMenu.Show(); this.Close(); } else if (table.Rows.Count == 0) { MessageBox.Show("Неверный логин или пароль"); return; } } }
private void Info_Click(object sender, RoutedEventArgs e) { StreamReader file = new StreamReader("UserLogin.txt"); string login = file.ReadLine(); file.Close(); if (login == null) { Mainmenu mainmenu = new Mainmenu(); mainmenu.Show(); this.Close(); System.Windows.Forms.HelpNavigator navigator = System.Windows.Forms.HelpNavigator.Topic; System.Windows.Forms.Help.ShowHelp(null, "help.chm", navigator, "vyvod_informatsii_ob_avtozapchastyakh_2.htm"); } else { MainMenuUser mainMenuUser = new MainMenuUser(); mainMenuUser.Show(); this.Close(); System.Windows.Forms.HelpNavigator navigator = System.Windows.Forms.HelpNavigator.Topic; System.Windows.Forms.Help.ShowHelp(null, "help.chm", navigator, "vyvod_informatsii_ob_avtozapchastyakh_1.htm"); } }
private void Button_Click(object sender, RoutedEventArgs e) { StreamReader readLogin = new StreamReader("UserLogin.txt"); string currentUserLogin = readLogin.ReadLine(); readLogin.Close(); string connectionString = @"Data Source=(local)\SQLEXPRESS; Initial Catalog=StockRoom; Integrated Security=True"; if (loginField.Text != "") //проверка логина на соответствие { if (loginField.Text.Length > 2 && loginField.Text.Length <= 20) { char[] loginArray = loginField.Text.ToCharArray(); for (int i = 0; i < loginArray.Length; i++) { if (!char.IsLetter(loginArray[i]) && !char.IsDigit(loginArray[i]) && loginArray[i] != '_') { MessageBox.Show("Вы указали в логине недопустимые символы."); return; } } } else { MessageBox.Show("Допустимая длина логина 3-20 символов."); return; } using (SqlConnection changeLogin = new SqlConnection(connectionString)) using (SqlCommand command = changeLogin.CreateCommand()) // обновляем логин пользователя { StreamWriter writeLogin = new StreamWriter("UserLogin.txt"); writeLogin.Write(loginField.Text); writeLogin.Close(); command.CommandText = "UPDATE Users SET UserLogin = '******' WHERE UserLogin = '******'"; changeLogin.Open(); command.ExecuteNonQuery(); changeLogin.Close(); currentUserLogin = loginField.Text; } } if (passwordField.Password.ToString() != "") //проверка пароля на соответствие { if (passwordField.Password.ToString().Length > 2 && passwordField.Password.ToString().Length <= 20) { char[] passwordArray = passwordField.Password.ToString().ToCharArray(); for (int i = 0; i < passwordArray.Length; i++) { if (!char.IsLetter(passwordArray[i]) && !char.IsDigit(passwordArray[i]) && passwordArray[i] != '_' && passwordArray[i] != '*') { MessageBox.Show("Вы указали в пароле недопустимые символы."); return; } } } else { MessageBox.Show("Допустимая длина пароля 3-20 символов."); return; } using (SqlConnection changePassword = new SqlConnection(connectionString)) using (SqlCommand command = changePassword.CreateCommand()) // обновляем пароль пользователя { command.CommandText = "UPDATE Users SET UserPassword = '******' WHERE UserLogin = '******'"; changePassword.Open(); command.ExecuteNonQuery(); changePassword.Close(); } } if (nameField.Text != "") //проверка имени на соответствие { if (nameField.Text.Length > 2 && nameField.Text.Length <= 20) { char[] nameArray = nameField.Text.ToCharArray(); for (int i = 0; i < nameArray.Length; i++) { if (!char.IsLetter(nameArray[i]) && nameArray[i] != '-') { MessageBox.Show("Вы указали в имени недопустимые символы."); return; } } } else { MessageBox.Show("Допустимая длина имени 3-20 символов."); return; } using (SqlConnection changeName = new SqlConnection(connectionString)) using (SqlCommand command = changeName.CreateCommand()) // обновляем имя пользователя { command.CommandText = "UPDATE Users SET UserName = '******' WHERE UserLogin = '******'"; changeName.Open(); command.ExecuteNonQuery(); changeName.Close(); } } if (surnamField.Text != "") //проверка фамилии на соответствие { if (surnamField.Text.Length > 2 && surnamField.Text.Length <= 20) { char[] surnameArray = surnamField.Text.ToCharArray(); for (int i = 0; i < surnameArray.Length; i++) { if (!char.IsLetter(surnameArray[i]) && surnameArray[i] != '-') { MessageBox.Show("Вы указали в фамилии недопустимые символы."); return; } } } else { MessageBox.Show("Допустимая длина фамилии 3-20 символов."); return; } using (SqlConnection changeSurname = new SqlConnection(connectionString)) using (SqlCommand command = changeSurname.CreateCommand()) //обновляем фамилию пользователя { command.CommandText = "UPDATE Users SET UserSurname = '" + surnamField.Text + "' WHERE UserLogin = '******'"; changeSurname.Open(); command.ExecuteNonQuery(); changeSurname.Close(); } } MessageBoxResult mboxResult = MessageBox.Show("Изменения сохранены. Желаете изменить что-нибудь еще?", "Предупреждение", MessageBoxButton.YesNo); if (mboxResult == MessageBoxResult.No) { MainMenuUser mainMenuUser = new MainMenuUser(); mainMenuUser.Show(); this.Close(); } }
private void MakeOrder_Click(object sender, RoutedEventArgs e) { if (SparePartName.Text != CheckSparePart.CheckSparePartName(SparePartName.Text)) { MessageBox.Show(CheckSparePart.CheckSparePartName(SparePartName.Text)); return; } if (CarName.Text != CheckSparePart.CheckCarName(CarName.Text)) { MessageBox.Show(CheckSparePart.CheckCarName(CarName.Text)); return; } if (SparePartCount.Text != CheckSparePart.CheckSparePartCount(SparePartCount.Text)) { MessageBox.Show(CheckSparePart.CheckSparePartCount(SparePartCount.Text)); return; } int sparePartID = 0; int carModelID = 0; string myConnectionString = @"Data Source=(local)\SQLEXPRESS; Initial Catalog=StockRoom; Integrated Security=True"; SqlConnection connection = new SqlConnection(myConnectionString); connection.Open(); string findOrderSparePartName = "SELECT IDSparePartN FROM SparePartName WHERE SparePartN = '" + SparePartName.Text + "'"; SqlCommand findSparePartName = new SqlCommand(findOrderSparePartName, connection); SqlDataReader sparePartNameReader = findSparePartName.ExecuteReader(); if (sparePartNameReader.Read()) // ищем id-шник названия запчасти в базе { sparePartID = Convert.ToInt32(sparePartNameReader[0].ToString()); sparePartNameReader.Close(); } else { MessageBox.Show("Такой автозапчасти нет на складе."); return; } sparePartNameReader.Close(); string findOrderCarName = "SELECT IDCarModel FROM CarModel WHERE CarModelName = '" + CarName.Text + "'"; SqlCommand findCarNameCommand = new SqlCommand(findOrderCarName, connection); SqlDataReader carNameReader = findCarNameCommand.ExecuteReader(); if (carNameReader.Read()) // ищем id-шник названия автомобиля в базе { carModelID = Convert.ToInt32(carNameReader[0].ToString()); carNameReader.Close(); } else { MessageBox.Show("Автозапчасти для такой марки автомобиля нет."); return; } StreamReader file = new StreamReader("UserLogin.txt"); string login = file.ReadLine(); file.Close(); int userCode = 0; string findUserCode = "SELECT UserCode FROM Users WHERE UserLogin = '******'"; SqlCommand findUC = new SqlCommand(findUserCode, connection); SqlDataReader UCReader = findUC.ExecuteReader(); if (UCReader.HasRows) // получаем id-шник пользователя { while (UCReader.Read()) { userCode = Convert.ToInt32(UCReader[0].ToString()); } } UCReader.Close(); double sparePartCost = 0; int currentCount = 0; int sparePartNumber = 0; string findOrderData = "SELECT SparePartNumber, SparePartCount, SparePartCost FROM SparePart WHERE IDSparePartN = " + sparePartID + " AND IDCarModel = " + carModelID + ""; SqlCommand findData = new SqlCommand(findOrderData, connection); SqlDataReader dataReader = findData.ExecuteReader(); if (dataReader.HasRows) { while (dataReader.Read()) // берем данные запчасти со склада: номер, кол-во, стоимость { sparePartNumber = Convert.ToInt32(dataReader[0].ToString()); currentCount = Convert.ToInt32(dataReader[1].ToString()); sparePartCost = Convert.ToDouble(dataReader[2].ToString()); } if (currentCount < Convert.ToInt32(SparePartCount.Text)) // если кол-во запчастей на складе меньше кол-ва запчастей в заказе { MessageBox.Show("Такого количества указанной автозапчасти на складе нет."); return; } else if (currentCount > Convert.ToInt32(SparePartCount.Text)) // если кол-во запчастей на складе больше кол-ва запчастей в заказе { using (SqlConnection changeCount = new SqlConnection(myConnectionString)) using (SqlCommand lastCommnd = changeCount.CreateCommand()) // уменьшаем кол-во запчастей на складе { lastCommnd.CommandText = "UPDATE SparePart SET SparePartCount = SparePartCount - @count WHERE SparePartNumber = " + sparePartNumber + ""; lastCommnd.Parameters.AddWithValue("@count", Convert.ToInt32(SparePartCount.Text)); changeCount.Open(); lastCommnd.ExecuteNonQuery(); changeCount.Close(); } using (SqlConnection insertOrderData = new SqlConnection(myConnectionString)) using (SqlCommand lastCommnd = insertOrderData.CreateCommand()) // записываем данные заказа в базу данных { lastCommnd.CommandText = "INSERT SparePartOrder (UserCode, SparePartNumber, SparePartCount, GeneralSum) VALUES (@UC, @sprptNum, @count, @sum)"; lastCommnd.Parameters.AddWithValue("@UC", userCode); lastCommnd.Parameters.AddWithValue("@sprptNum", sparePartNumber); lastCommnd.Parameters.AddWithValue("@count", Convert.ToInt32(SparePartCount.Text)); lastCommnd.Parameters.AddWithValue("@sum", Convert.ToDouble(SparePartCount.Text) * sparePartCost); insertOrderData.Open(); lastCommnd.ExecuteNonQuery(); insertOrderData.Close(); } } else if (currentCount == Convert.ToInt32(SparePartCount.Text)) // если кол-во запчастей на складе равно кол-ву запчастей в заказе { using (SqlConnection changeCount = new SqlConnection(myConnectionString)) using (SqlCommand lastCommnd = changeCount.CreateCommand()) { lastCommnd.CommandText = "UPDATE SparePart SET SparePartCount = SparePartCount - @count, IDStatus = (SELECT IDStatus FROM SparePartStatus WHERE StateName = @status) WHERE SparePartNumber = " + sparePartNumber + ""; lastCommnd.Parameters.AddWithValue("@count", Convert.ToInt32(SparePartCount.Text)); lastCommnd.Parameters.AddWithValue("@status", "Нет в наличии"); changeCount.Open(); lastCommnd.ExecuteNonQuery(); changeCount.Close(); } using (SqlConnection insertOrderData = new SqlConnection(myConnectionString)) using (SqlCommand lastCommnd = insertOrderData.CreateCommand()) // записываем данные заказа в базу данных { lastCommnd.CommandText = "INSERT SparePartOrder (UserCode, SparePartNumber, SparePartCount, GeneralSum) VALUES (@UC, @sprptNum, @count, @sum)"; lastCommnd.Parameters.AddWithValue("@UC", userCode); lastCommnd.Parameters.AddWithValue("@sprptNum", sparePartNumber); lastCommnd.Parameters.AddWithValue("@count", Convert.ToInt32(SparePartCount.Text)); lastCommnd.Parameters.AddWithValue("@sum", Convert.ToDouble(SparePartCount.Text) * sparePartCost); insertOrderData.Open(); lastCommnd.ExecuteNonQuery(); insertOrderData.Close(); } } } else { MessageBox.Show("Нет подходящей автозапчасти для указанного автомобиля."); return; } dataReader.Close(); string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application(); // открываем Word try { Document doc = app.Documents.Open(System.IO.Path.GetFullPath(@"ШаблонЗаказ.docx")); // открыаем шаблон ReplaseWord("{OrderDate}", DateTime.Now.ToShortDateString(), doc); // записываем в метку дату заказа string query = "SELECT OrderNumber, CarModelName, SparePartN, SparePartCost, SparePartOrder.SparePartCount, UserName, UserSurname, UserLogin, GeneralSum FROM SparePartOrder, CarModel, SparePartName, SparePart, Users WHERE SparePartOrder.UserCode = Users.UserCode AND SparePartOrder.UserCode = " + userCode + " AND SparePartOrder.SparePartNumber = SparePart.SparePartNumber AND SparePartOrder.SparePartNumber = " + sparePartNumber + " AND SparePart.IDCarModel = CarModel.IDCarModel AND SparePart.IDSparePartN = SparePartName.IDSparePartN AND SparePartOrder.SparePartCount = " + Convert.ToInt32(SparePartCount.Text) + ""; SqlCommand sqlCommand = new SqlCommand(query, connection); SqlDataReader sqlDataReader = sqlCommand.ExecuteReader(); if (sqlDataReader.HasRows) // записываем в метки данные заказа { while (sqlDataReader.Read()) { ReplaseWord("{OrderNumber}", sqlDataReader[0].ToString() + "\n", doc); ReplaseWord("{SparePartN}", sqlDataReader[2].ToString() + "\n", doc); ReplaseWord("{CarModelName}", sqlDataReader[1].ToString() + "\n", doc); ReplaseWord("{SparePartCost}", sqlDataReader[3].ToString() + "\n", doc); ReplaseWord("{SparePartCount}", sqlDataReader[4].ToString() + "\n", doc); ReplaseWord("{UserName}", sqlDataReader[5].ToString() + "\n", doc); ReplaseWord("{UserSurname}", sqlDataReader[6].ToString() + "\n", doc); ReplaseWord("{UserLogin}", sqlDataReader[7].ToString() + "\n", doc); ReplaseWord("{GeneralSum}", sqlDataReader[8].ToString() + "\n", doc); path += @"\Отчет по заказу № " + sqlDataReader[0].ToString() + ".docx"; } } doc.SaveAs2(path); sqlDataReader.Close(); doc.Close(); connection.Close(); } catch (Exception q) { app.Quit(); MessageBox.Show(q.Message); } finally { app.Quit(); } MessageBoxResult mboxResult = MessageBox.Show("Заказ успешно выполнен. Желаете заказать что-нибудь еще?", "Предупреждение", MessageBoxButton.YesNo); if (mboxResult == MessageBoxResult.No) { MainMenuUser mainMenuUser = new MainMenuUser(); mainMenuUser.Show(); this.Close(); } connection.Close(); }