public async Task <IHttpActionResult> Update([FromBody] GradeDTO grade) { var response = new OverviewResponse <GradeOverview>(); try { Grade newGrade = _mapper.Map <GradeDTO, Grade>(grade); var result = _gradeService.Update(newGrade); if (!result) { response.IsSuccess = false; response.Errors.Add("Grade was not saved"); } var overviews = GetGradeOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetGradeOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadGrade(response); return(Ok(response)); }
public int Step2(int[] itemid, int partid, out OverviewResponse res) { res = null; if (itemid.Any(CheckVendor.NotValidItemId) || !ApiVendor.HasToken()) { return(02_0008); } var or = new OverviewRequest(); or.QueryItems = itemid; or.ReportTime = DateTime.Now; var result = ApiCall.DataOverview.Call(partid.ToString(), new MilvanethProtocol { Context = null, Data = or }); if (!(result.Data is OverviewResponse pr)) { return(02_0007); } if (CheckVendor.NotValidResponse(pr)) { return(pr.Message); } res = pr; return(00_0000); }
public async Task <IHttpActionResult> Update([FromBody] StudentDTO Student) { var response = new OverviewResponse <StudentOverview>(); try { Student newStudent = _mapper.Map <StudentDTO, Student>(Student); var result = _studentService.Update(newStudent); if (!result) { response.IsSuccess = false; response.Errors.Add("Student was not saved"); } var overviews = GetStudentOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetStudentOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadStudent(response); return(Ok(response)); }
public async Task <IHttpActionResult> Delete([FromUri] int StudentId) { var response = new OverviewResponse <StudentOverview>(); try { var result = _studentService.Delete(StudentId); if (!result) { response.IsSuccess = false; response.Errors.Add("Student was not removed"); } var overviews = GetStudentOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetStudentOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadStudent(response); return(Ok(response)); }
public async Task <IHttpActionResult> GetOverview() { var response = new OverviewResponse <GradeOverview>(); var overviews = GetGradeOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; return(Ok(response)); }
public async Task <IActionResult> GetAsync() { var activeDates = this.dateCalculator.GetActiveDates(); var requests = await this.requestRepository.GetRequests(activeDates.First(), activeDates.Last()); var users = await this.userRepository.GetUsers(); var data = activeDates.ToDictionary( d => d, d => CreateDailyData(d, this.GetCognitoUserId(), requests, users)); var calendar = CreateCalendar(data); var response = new OverviewResponse(calendar); return(this.Ok(response)); }
public async Task <IHttpActionResult> Delete([FromUri] int teacherId) { var response = new OverviewResponse <TeacherOverview>(); try { var hasAssociation = _subjectService.GetSubjectsList(0, teacherId, 0).Any(); if (hasAssociation) { response.IsSuccess = false; response.Errors.Add("Cannot remove teacher associated with subjects."); return(Ok(response)); } var result = _teacherService.Delete(teacherId); if (!result) { response.IsSuccess = false; response.Errors.Add("Teacher was not removed"); return(Ok(response)); } var overviews = GetTeacherOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetTeacherOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadTeacher(response); return(Ok(response)); }
public async Task <IHttpActionResult> Update([FromBody] CourseDTO course) { var response = new OverviewResponse <CourseOverview>(); try { Course newCourse = _mapper.Map <CourseDTO, Course>(course); var result = _courseService.Update(newCourse); if (!result) { response.IsSuccess = false; response.Errors.Add("Course was not saved"); response.Overview = GetCourseOverview(); return(Ok(response)); } var associated = _courseService.AssociateSubjects(newCourse.Id, course.SelectedSubjects); if (!associated) { response.IsSuccess = false; response.Errors.Add("Associating course to subjects did not went well"); } var overviews = GetCourseOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetCourseOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadCourse(response); return(Ok(response)); }
public async Task <IHttpActionResult> Add([FromBody] SubjectDTO subject) { var response = new OverviewResponse <SubjectOverview>(); try { Subject newsubject = _mapper.Map <SubjectDTO, Subject>(subject); newsubject.TeacherId = subject.SelectedTeacher; var result = _subjectService.Add(newsubject); if (result == null) { response.IsSuccess = false; response.Errors.Add("Already exists!"); return(Ok(response)); } var overviews = GetSubjectOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetSubjectOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadSubject(response); return(Ok(response)); }
public async Task <IHttpActionResult> Update([FromBody] TeacherDTO subject) { var response = new OverviewResponse <TeacherOverview>(); try { Teacher newTeacher = _mapper.Map <TeacherDTO, Teacher>(subject); var result = _teacherService.Update(newTeacher); if (!result) { response.IsSuccess = false; response.Errors.Add("Teacher was not saved"); return(Ok(response)); } var overviews = GetTeacherOverview(); response.IsSuccess = !response.Errors.Any(); response.Overview = overviews; } catch (Exception ex) { response.IsSuccess = false; response.Errors.Add(ex.Message); response.Errors.Add("-----------------------------------"); response.Errors.Add(ex.InnerException.Message); var overviews = GetTeacherOverview(); response.Overview = overviews; return(Ok(response)); } //Call overview var hubContext = GlobalHost.ConnectionManager.GetHubContext <ClientHub>(); hubContext.Clients.All.reloadTeacher(response); return(Ok(response)); }
public object Any(Overview request) { var key = ContentCache.OverviewKey(clear: request.Reload); return(base.Request.ToOptimizedResultUsingCache(ContentCache.Client, key, () => { var topTechByCategory = Db.Select <TechnologyInfo>( @"select t.tier, t.slug as Slug, t.name, t.logo_url, COUNT(*) as StacksCount from technology_choice tc inner join technology t on (tc.technology_id = t.id) group by t.tier, t.slug, t.name, t.logo_url having COUNT(*) > 2 order by 4 desc"); var map = new Dictionary <TechnologyTier, List <TechnologyInfo> >(); foreach (var tech in topTechByCategory) { List <TechnologyInfo> techs; if (!map.TryGetValue(tech.Tier, out techs)) { map[tech.Tier] = techs = new List <TechnologyInfo>(); } techs.Add(tech); } foreach (var tier in map.Keys) { var list = map[tier]; list.Sort((x, y) => y.StacksCount - x.StacksCount); if (list.Count > 3) { list.RemoveRange(3, list.Count - 3); } } var response = new OverviewResponse { Created = DateTime.UtcNow, LatestTechStacks = Db.GetTechstackDetails(Db.From <TechnologyStack>().OrderByDescending(x => x.LastModified).Limit(20)), TopUsers = Db.Select <UserInfo>( @"select u.user_name as UserName, u.default_profile_url as AvatarUrl, COUNT(*) as StacksCount from technology_stack ts left join user_favorite_technology_stack uf on (ts.id = uf.technology_stack_id) left join custom_user_auth u on (u.id = ts.owner_id::integer) group by u.user_name, u.default_profile_url having count(*) > 0 order by StacksCount desc limit 20"), TopTechnologies = topTechByCategory .OrderByDescending(x => x.StacksCount) .Take(20) .ToList(), TopTechnologiesByTier = map, }; //Lighten payload response.LatestTechStacks.Each(x => { x.Details = x.DetailsHtml = null; x.TechnologyChoices.Each(y => { y.Description = null; }); }); //Put TechStacks entry first to provide a first good experience var techStacksApp = response.LatestTechStacks.FirstOrDefault(x => x.Id == TechStacksAppId); if (techStacksApp != null) { response.LatestTechStacks.RemoveAll(x => x.Id == TechStacksAppId); response.LatestTechStacks.Insert(0, techStacksApp); } return response; })); }
public object Any(Overview request) { if (request.Reload) { Cache.FlushAll(); } var topTechByCategory = GetTopTechByCategory(); var map = new Dictionary <string, List <TechnologyInfo> >(); foreach (var tech in topTechByCategory) { List <TechnologyInfo> techs = null; var key = Enum.GetName(typeof(TechnologyTier), tech.Tier); if (key != null && !map.TryGetValue(key, out techs)) { map[key] = techs = new List <TechnologyInfo>(); } techs?.Add(tech); } foreach (var tier in map.Keys) { var list = map[tier]; list.Sort((x, y) => y.StacksCount - x.StacksCount); if (list.Count > 5) { list.RemoveRange(5, list.Count - 5); } } var response = new OverviewResponse { Created = DateTime.UtcNow, LatestTechStacks = Db.GetTechstackDetails(Db.From <TechnologyStack>().OrderByDescending(x => x.LastModified).Limit(20)), TopUsers = Db.Select <UserInfo>( @"select u.user_name as UserName, u.default_profile_url as AvatarUrl, COUNT(*) as StacksCount from technology_stack ts left join user_favorite_technology_stack uf on (ts.id = uf.technology_stack_id) left join custom_user_auth u on (u.id = ts.owner_id::integer) group by u.user_name, u.default_profile_url having count(*) > 0 order by StacksCount desc limit 20"), TopTechnologies = topTechByCategory .OrderByDescending(x => x.StacksCount) .Take(50) .ToList(), PopularTechStacks = Db.Select( Db.From <TechnologyStack>() .Join <PageStats>((s, p) => s.Id == p.RefId && p.RefType == "stack") .OrderByDescending <PageStats>(p => p.ViewCount) .Limit(12)), TopTechnologiesByTier = map, }; //Lighten payload response.LatestTechStacks.Each(x => { x.Details = x.DetailsHtml = null; x.TechnologyChoices.Each(y => { y.Description = null; }); }); //Put TechStacks entry first to provide a first good experience var techStacksApp = response.LatestTechStacks.FirstOrDefault(x => x.Id == TechStacksAppId); if (techStacksApp != null) { response.LatestTechStacks.RemoveAll(x => x.Id == TechStacksAppId); response.LatestTechStacks.Insert(0, techStacksApp); } return(response); }
public void OnCommandLineEnter(object sender, ExecutedRoutedEventArgs e) { br.UiActiveTab = 0; MainFrame.Navigate(ip); var dic = DictionaryManagementService.SearchItem(br.UiSearchLine); br.OverlayOverviewData = dic.Select(x => new OverviewData { ItemId = x.Key, UpdateTime = DateTime.MinValue }).ToList(); Task.Run(() => { RETRY: int ret = 0; try { var local = new ExchangeProcedure(); var partCnt = 0; OverviewResponse res = null; do { try { ret = local.Step2(dic.Keys.ToArray(), partCnt++, out res); } catch (HttpRequestException exception) { ret = 02_0000 + (int)exception.Data["StatusCode"]; } if (!CheckVendor.NotValidResponseCode(ret)) { var overviewDic = br.OverlayOverviewData.ToDictionary(x => x.ItemId, x => x); foreach (var item in res.Results) { overviewDic[item.ItemId] = OverviewData.FromResultItem(overviewDic[item.ItemId], item); } br.OverlayOverviewData = overviewDic.Values.ToList(); } } while (!CheckVendor.NotValidResponseCode(ret) && !res.FinalPart); if (ret % 10000 == 0511 && ApiVendor.ValidateAndRenewToken()) { goto RETRY; } } catch (HttpRequestException ex) { ret = 02_0000 + (int)(ex.Data["StatusCode"]); if (ret == 02_0511 && ApiVendor.ValidateAndRenewToken()) { goto RETRY; } } catch (Exception) { ret = 02_0000; } if (CheckVendor.NotValidResponseCode(ret)) { LoggingManagementService.WriteLine( $"Api Error: {MessageVendor.FormatError(ret)} on searching {br.UiSearchLine}", "ApiSys"); } }); }