public static IEnumerable <ProfilePreviewData> GetProfilePackPreview(UserGroup group, string packTitle) { ProblemsPack pack = group.ProblemsPacks.Find(e => e.Title == packTitle); return(group.Users .Select(user => new ProfilePreviewData(user.Username, pack.GetResults(user).SumOfPoint))); }
public static void SaveToExcel(ProblemsPack pack, List <LimpUser> users, string fileName) { using (var excel = new ExcelPackage(new FileInfo(fileName))) { var ws = excel.Workbook.Worksheets.Add("StudentGroup"); int i = 2; foreach (Problem problem in pack.Problems) { ws.Cells[1, i].Value = problem.Title; i++; } i = 2; foreach (LimpUser user in users) { int k = 2; ws.Cells[i, 1].Value = user.Username; foreach (Problem problem in pack.Problems) { ws.Cells[i, k].Value = problem.GetUserResult(user); k++; } i++; } excel.Save(); } }
public void DeleteProblem(string userGroupTitle, ProblemsPack problemsPack, Problem problem) { UserGroup userGroup = _userGroupRepository.Read(userGroupTitle); userGroup.ProblemsPacks.Find(e => e.Title == problemsPack.Title).Problems.RemoveAll(e => e.Title == problem.Title); _userGroupRepository.Update(userGroup); }
public ProblemPackSettings(UserGroup group, ProblemsPack pack, Action updateParentView) { InitializeComponent(); _pack = pack; _updateParentView = updateParentView; _group = group; Update(); }
private void CardTitle_OnClick(object sender, RoutedEventArgs e) { string packTitle = CardTitle.DataContext.ToString(); ProblemsPack pack = _group.ProblemsPacks.Find(p => p.Title == packTitle); var resultGridBlock = new ResultGridBlock(_group.Users, pack); _navigateService.AddToViewList(CardTitle.DataContext.ToString(), resultGridBlock); _navigateService.OpenView(resultGridBlock); }
public ResultGridBlock(List <LimpUser> users, ProblemsPack pack) { InitializeComponent(); _pack = pack; _users = users; DataTable table = InitDataTable(); ResGrid.ItemsSource = table.DefaultView; }
public ProblemSettingsControl(UserGroup group, ProblemsPack pack, Problem problem, Action updateUi) { InitializeComponent(); Title.Content = problem.Title; _group = group; _pack = pack; _problem = problem; _updateUI = updateUi; }
public void Create(string userGroupTitle, ProblemsPack problemsPack) { UserGroup userGroup = _userGroupRepository.Read(userGroupTitle); if (userGroup.ProblemsPacks.Any(p => p.Title == problemsPack.Title)) { throw new LimpStatsException("Pack with title already exist"); } userGroup.ProblemsPacks.Add(problemsPack); _userGroupRepository.Update(userGroup); }
public void Delete(string userGroupTitle, ProblemsPack problemsPack) { UserGroup userGroup = _userGroupRepository.Read(userGroupTitle); int removedElementCount = userGroup.ProblemsPacks.RemoveAll(p => p.Title == problemsPack.Title); if (removedElementCount == 0) { throw new LimpStatsException("Group not found in json"); } _userGroupRepository.Update(userGroup); }
public ProblemPackWindow(ProblemsPack pack, UserGroup group) { InitializeComponent(); Group = group; PackTitle = pack.Title; IsUpdPack = true; var num = ""; foreach (var problem in pack.Problems) { Panel.Children.Add(new ProblemTaskPreview(this, problem, num = Core.Tools.Tools.GenerateNextNumber(num))); } Panel.Children.Add(new ProblemTaskPreview(this, Core.Tools.Tools.GenerateNextNumber(num))); }
public void Update(string userGroupTitle, ProblemsPack problemsPack) { Delete(userGroupTitle, problemsPack); Create(userGroupTitle, problemsPack); }