private void buttonDemandAdd_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите взять данное задание?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { var newLogbook = new Logbook(); newLogbook.userLogin = MainTabItem.MainWindow.User.login; newLogbook.userType = nameof(Logbook_userType.executor); newLogbook.technicalTaskId = technicalTask.id; try { SitesCreateEntities.GetContext().Logbook.Add(newLogbook); SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Вы успешно взяли техническое задание!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } finally { SitesCreateEntities.GetContext().ClearStateAndReloadAll(); MainTabItem.ExecuteShowPrevPage(); } } }
private void buttonRefuseTechnicalTask_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы точно хотите отказаться от выполнения данного задания?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { // technicalTask var logBook = technicalTask.Logbook.ToList().Where(v => v.userLogin == MainTabItem.MainWindow.User.login && v.userType == nameof(Logbook_userType.executor)).FirstOrDefault(); if (logBook == null) { throw new NullReferenceException(); } SitesCreateEntities.GetContext().Logbook.Remove(logBook); try { SitesCreateEntities.GetContext().SaveChanges(); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void buttonTechnicalTaskWork_Click(object sender, RoutedEventArgs e) { var currentLogbook = technicalTask.Logbook.ToList() .Where(v => v.userLogin == MainTabItem.MainWindow.User.login && v.userType == nameof(Logbook_userType.executor)).FirstOrDefault(); MainTabItem.AddChildUserControl(new SiteLayoutListContent(MainTabItem, currentLogbook)); }
private void ButtonStatusChange_Click(object sender, RoutedEventArgs e) { if (createFlag) { return; } var newStatus = (TechnicalTask_status)((Button)sender).Tag; if ( MessageBox.Show("Вы уверены, что хотите изменить статус для данного ТЗ?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes ) { technicalTask.Status = newStatus; try { SitesCreateEntities.GetContext().SaveChanges(); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите сохранить данное ТЗ?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { StringBuilder errors = new StringBuilder(); if ( String.IsNullOrWhiteSpace(name.Text) ) { errors.AppendLine("Вы не заполнили одно или несколько важных полей!"); } if (errors.Length != 0) { MessageBox.Show( errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (createFlag) { technicalTask.createDatetime = DateTime.Now; technicalTask.Status = TechnicalTask_status.processing; SitesCreateEntities.GetContext().TechnicalTask.Add(technicalTask); } try { SitesCreateEntities.GetContext().SaveChanges(); if (createFlag) { var newLogBook = new Logbook(); newLogBook.technicalTaskId = technicalTask.id; newLogBook.userLogin = MainTabItem.MainWindow.User.login; newLogBook.userType = nameof(Logbook_userType.customer); SitesCreateEntities.GetContext().Logbook.Add(newLogBook); SitesCreateEntities.GetContext().SaveChanges(); } MessageBox.Show( "Данные успешно обновлены!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void buttonDelete_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите удалить данный макет?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes && !createFlag) { SitesCreateEntities.GetContext().SiteLayout.Remove(siteLayout); try { if (File.Exists(siteLayout.fileName)) { File.Delete(siteLayout.fileName); } SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Макет успешно удален!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void ButtonDelete_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите удалить данного пользователя?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { try { SitesCreateEntities.GetContext().User.Remove(user); SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Пользователь успешно удален!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteLogout(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void buttonRequestLayout_Click(object sender, RoutedEventArgs e) { var currentSiteLayout = (SiteLayout)((Button)sender).DataContext; var existingRequests = logbook.LayoutAccess.ToList().Where(v => v.SiteLayout.id == currentSiteLayout.id); if (existingRequests.Count() != 0) // if private => resend request, if was private, but bow public => getting access { try { var existingRequest = existingRequests.First(); SitesCreateEntities.GetContext().LayoutAccess.Remove(existingRequest); SitesCreateEntities.GetContext().SaveChanges(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } } var newLayoutAccess = new LayoutAccess(); newLayoutAccess.siteLayoutId = currentSiteLayout.id; newLayoutAccess.executerId = logbook.id; if (currentSiteLayout.isPublic) { newLayoutAccess.haveAccess = true; } else { newLayoutAccess.haveAccess = false; } try { SitesCreateEntities.GetContext().LayoutAccess.Add(newLayoutAccess); SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( newLayoutAccess.haveAccess?"Вы успешно получили права к данному макету!": "Вы успешно запросили права к данному макету", "Success", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } finally { SitesCreateEntities.GetContext().ClearStateAndReloadAll(); MainTabItem.ExecuteShowPrevPage(); } }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите сохранить информацию о данном пользователе?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { StringBuilder errors = new StringBuilder(); if ( String.IsNullOrWhiteSpace(surname.Text) || String.IsNullOrWhiteSpace(name.Text) || String.IsNullOrWhiteSpace(login.Text) ) { errors.AppendLine("Вы не заполнили одно или несколько важных полей!"); } if (String.IsNullOrWhiteSpace(user.password)) { errors.AppendLine("Вы не создали пароль!"); } if (errors.Length != 0) { MessageBox.Show( errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (createFlag) { SitesCreateEntities.GetContext().User.Add(user); } try { SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Данные успешно сохранены!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
/// <summary> /// Click => open edit demand window /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ListBox_MouseDoubleClick(object sender, MouseButtonEventArgs e) { var item = ItemsControl.ContainerFromElement(sender as ListBox, e.OriginalSource as DependencyObject) as ListBoxItem; if (item != null) { var currentDemand = (Demand)item.DataContext; MainTabItem.AddChildUserControl(new EditDemandContent(MainTabItem, technicalTask, currentDemand)); } }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите сохранить информацию о данном примерном сайте?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { StringBuilder errors = new StringBuilder(); if ( String.IsNullOrWhiteSpace(siteURL.Text) ) { errors.AppendLine("Вы не заполнили одно или несколько важных полей!"); } if (!Helper.IsValidURL(siteURL.Text)) { errors.AppendLine("Вы ввели неправильный сайт!"); } if (errors.Length != 0) { MessageBox.Show( errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (createFlag) { SitesCreateEntities.GetContext().SampleSite.Add(sampleSite); } try { SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Данные успешно сохранены!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
// Логин сменить нельзя! /* private void buttonLoginChange_Click(object sender, RoutedEventArgs e) * { * if (MessageBox.Show("Вы хотите сменить логин?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) * { * var dialogEnterLogin = new Dialog("Введите существующий логин"); * if (dialogEnterLogin.ShowDialog() == true) * { * if (dialogEnterLogin.Answer != user.login) * { * MessageBox.Show("Вы ввели неверный логин", "Error", MessageBoxButton.OK, MessageBoxImage.Error); * return; * } * var dialogEnterNewLogin = new Dialog("Введите новый логин"); * if (dialogEnterNewLogin.ShowDialog() == true) * { * var newLogin = dialogEnterNewLogin.Answer; * StringBuilder errors = new StringBuilder(); * if (!Helper.IsTextAllowed(newLogin) || newLogin.Length < 6) * { * errors.AppendLine("Введенный логин не соответствует требованиям! Логин должен состоять из английских букв, знака подчеркивания, тире и цифр, а также длина должна быть не меньше 6 символов!"); * } * if (SitesCreateEntities.GetContext().User.ToList().Where(v => v.login == newLogin).Count() != 0) * { * errors.AppendLine("Пользователь с данным логином уже существует!"); * } * if (errors.Length != 0) * { * MessageBox.Show(errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); * return; * } * try * { * user.login = newLogin; * SitesCreateEntities.GetContext().SaveChanges(); * MessageBox.Show( * "Логин успешно изменен!", * "Success", * MessageBoxButton.OK, * MessageBoxImage.Information); * } * catch (Exception ex) * { * MessageBox.Show( * ex.Message, * "Error", * MessageBoxButton.OK, * MessageBoxImage.Error); * } * finally * { * SitesCreateEntities.GetContext().ClearStateAndReloadAll(); * MainTabItem.ExecuteShowPrevPage(); * } * } * } * } * }*/ private void buttonPasswordChange_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы хотите сменить пароль?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { var dialogEnterPassword = new Dialog("Введите существующий пароль"); if (dialogEnterPassword.ShowDialog() == true) { if (Helper.MD5Hash(dialogEnterPassword.Answer) != user.password) { MessageBox.Show("Вы ввели неверный пароль", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } var dialogEnterNewPassword = new Dialog("Введите новый пароль"); if (dialogEnterNewPassword.ShowDialog() == true) { var newPassword = dialogEnterNewPassword.Answer; StringBuilder errors = new StringBuilder(); if (!Helper.IsTextAllowed(newPassword) || newPassword.Length < 6) { errors.AppendLine("Введенный пароль не соответствует требованиям! Пароль должен состоять из английских букв, знака подчеркивания, тире и цифр, а также длина должна быть не меньше 6 символов!"); } if (errors.Length != 0) { MessageBox.Show(errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } try { user.password = Helper.MD5Hash(newPassword); SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Пароль успешно изменен!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } finally { SitesCreateEntities.GetContext().ClearStateAndReloadAll(); MainTabItem.ExecuteShowPrevPage(); } } } } }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите сохранить данное требование?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { StringBuilder errors = new StringBuilder(); if ( String.IsNullOrWhiteSpace(name.Text) || String.IsNullOrWhiteSpace(text.Text) ) { errors.AppendLine("Вы не заполнили одно или несколько важных полей!"); } if (errors.Length != 0) { MessageBox.Show( errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (createFlag) { demand.technicalTaskId = technicalTask.id; SitesCreateEntities.GetContext().Demand.Add(demand); } try { SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Данные успешно обновлены!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { StringBuilder errors = new StringBuilder(); if ( String.IsNullOrWhiteSpace(surname.Text) || String.IsNullOrWhiteSpace(name.Text) ) { errors.AppendLine("Вы не заполнили одно или несколько важных полей!"); } if (!String.IsNullOrWhiteSpace(email.Text) && !Helper.IsEmailValid(email.Text)) { errors.AppendLine("Email не правильный!"); } if (errors.Length != 0) { MessageBox.Show(errors.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } try { SitesCreateEntities.GetContext().SaveChanges(); MessageBox.Show( "Данные успешно изменены!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } finally { SitesCreateEntities.GetContext().ClearStateAndReloadAll(); MainTabItem.ExecuteShowPrevPage(); MainTabItem.MainWindow.ReloadUser(); } }
private void buttonDemandAction_Click(object sender, RoutedEventArgs e) { // var currentDemand = (Demand)((Button)sender).DataContext; var currentTechnicalTask = (TechnicalTask)((Button)sender).DataContext; switch (currentTechnicalTask.Status) { case TechnicalTask_status.completed: case TechnicalTask_status.canceled: MainTabItem.AddChildUserControl(new TechnicalTaskContent(MainTabItem, currentTechnicalTask)); break; case TechnicalTask_status.processing: MainTabItem.AddChildUserControl(new EditTechnicalTaskContent(MainTabItem, currentTechnicalTask)); break; } }
private void ButtonDelete_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Вы уверены, что хотите удалить данное ТЗ?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes && !createFlag) { SitesCreateEntities.GetContext().TechnicalTask.Remove(technicalTask); try { SitesCreateEntities.GetContext().SaveChanges(); MainTabItem.ExecuteShowPrevPage(); } catch (Exception ex) { MessageBox.Show( ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void demandList_MouseDoubleClick(object sender, MouseButtonEventArgs e) { var currentTechnicalTask = (TechnicalTask)((ListBox)sender).DataContext; var item = ItemsControl.ContainerFromElement(sender as ListBox, e.OriginalSource as DependencyObject) as ListBoxItem; if (item != null) { var currentDemand = (Demand)item.DataContext; switch (currentTechnicalTask.Status) { case TechnicalTask_status.completed: case TechnicalTask_status.canceled: MainTabItem.AddChildUserControl(new DemandContent(MainTabItem, currentDemand)); break; case TechnicalTask_status.processing: MainTabItem.AddChildUserControl(new EditDemandContent(MainTabItem, currentTechnicalTask, currentDemand)); break; } } }
private void ShowTab <T>(string title, bool singleTab) where T : IComponentConnector { if (singleTab) { foreach (var tabItem in mainTab.Items) { if (!(tabItem is MainTabItem <T> item)) { continue; } item.Focus(); return; } } var newTabItem = new MainTabItem <T> { Title = title }; mainTab.Items.Add(newTabItem); newTabItem.Focus(); }
private void ButtonAddDemand_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new EditDemandContent(MainTabItem, technicalTask)); }
private void buttonSampleSites_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new SampleSiteListContent(MainTabItem)); }
private void buttonUserEdit_Click(object sender, RoutedEventArgs e) { var currentUser = (User)((Button)sender).DataContext; MainTabItem.AddChildUserControl(new EditUserContent(MainTabItem, currentUser)); }
private void buttonDemandAction_Click(object sender, RoutedEventArgs e) { var currentTechnicalTask = (TechnicalTask)((Button)sender).DataContext; MainTabItem.AddChildUserControl(new ShowTechnicalTaskContent(MainTabItem, currentTechnicalTask, true)); }
private void showAvaibleTechnicalTask_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new AvaibleTechnicalTaskListContent(MainTabItem)); }
/// <summary> /// Go to create page /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void createNewTaskButton_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new EditTechnicalTaskContent(MainTabItem)); }
private void buttonCreate_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new EditUserContent(MainTabItem)); }
private void buttonUser_Click(object sender, RoutedEventArgs e) { MainTabItem.AddChildUserControl(new UserListContent(MainTabItem)); }