private void collectCompanyReviews(CompanyOverview companyOverview, List <Review> reviews, ObservableCollection <CompanyReview> targetCollection) { CompanyReview companyReview = new CompanyReview(); companyReview.companyOverview = companyOverview; companyReview.reviews = (from n in reviews where n.companyId == companyOverview.id select n).ToList(); companyOverview.calculateReviewStatistics(companyReview.reviews); if (companyReview.reviews.Count <= 0) { return; } targetCollection.Add(companyReview); List <IGrouping <string, Review> > reviewsByDepartment = (from n in companyReview.reviews group n by n.jobDepartment into d select d).ToList(); foreach (IGrouping <string, Review> groupedReviews in reviewsByDepartment) { if (groupedReviews.ToList().Count <= 0) { continue; } CompanyReview companyReviewByDepartment = new CompanyReview(); CompanyOverview companyOverviewByDepartment = new CompanyOverview(); companyOverviewByDepartment.id = companyOverview.id; companyOverviewByDepartment.name = companyOverview.name; companyOverviewByDepartment.logoPath = companyOverview.logoPath; companyOverviewByDepartment.departmentName = groupedReviews.Key; companyReviewByDepartment.reviews = groupedReviews.ToList(); companyOverviewByDepartment.calculateReviewStatistics(companyReviewByDepartment.reviews); companyReviewByDepartment.companyOverview = companyOverviewByDepartment; targetCollection.Add(companyReviewByDepartment); } }
public async Task <ActionResult <CompanyOverview> > GetOverview(string symbol) { symbol = (symbol ?? "").ToUpper(); CompanyOverview overview = await SrvOverview.GetItem(symbol); if (overview == null) { return(NotFound()); } return(overview); }
private void Cb_companyName_SelectionChanged(object sender, SelectionChangedEventArgs e) { ComboBox companyComboBox = sender as ComboBox; if (companyComboBox.SelectedItem != null) { CompanyOverview companyOverview = (CompanyOverview)companyComboBox.SelectedItem; if (companyOverview != null) { Reviews reviews = XMLSerializerWrapper.ReadXml <Reviews>("data\\reviews.xml"); departmentForComboBox = new ObservableCollection <string>((from n in reviews.reviews where n.companyId == companyOverview.id select n.jobDepartment).Distinct().OrderBy(x => x).ToList()); Cb_departmentName.ItemsSource = departmentForComboBox; } } }
private void writeToReviewsXml() { Companies companiesFromFile = XMLSerializerWrapper.ReadXml <Companies>("data\\companies.xml"); CompanyOverview selectedCompany = null; foreach (CompanyOverview eachCompany in companiesFromFile.companyDetails) { if (eachCompany.name.ToLower().Equals(currentReview.companyName.ToLower())) { selectedCompany = eachCompany; } } if (selectedCompany != null) { currentReview.companyId = selectedCompany.id; } else { int newCompanyId = Properties.Settings.Default.next_company_id; currentReview.companyId = newCompanyId; CompanyOverview newCompanyOverview = new CompanyOverview() { id = newCompanyId, name = currentReview.companyName }; companiesFromFile.companyDetails.Add(newCompanyOverview); XMLSerializerWrapper.WriteXml <Companies>(companiesFromFile, "data\\companies.xml"); Properties.Settings.Default.next_company_id = newCompanyId + 1; Properties.Settings.Default.Save(); } Reviews reviews = XMLSerializerWrapper.ReadXml <Reviews>("data\\reviews.xml"); currentReview.id = Properties.Settings.Default.next_company_id; Properties.Settings.Default.next_company_id = Properties.Settings.Default.next_company_id + 1; Properties.Settings.Default.Save(); reviews.reviews.Add(currentReview); XMLSerializerWrapper.WriteXml <Reviews>(reviews, "data\\reviews.xml"); MessageBox.Show("Review added successfully"); }