private void RejectManuscript() { ManuscriptToUpdate.ManuscriptId = SelectedReceivedManuscript.ManuscriptId; ManuscriptToUpdate.IssueId = 3; ManuscriptToUpdate.DateAccepted = new DateTime(2099, 1, 1); ManuscriptToUpdate.ManuscriptStatus = 2; ManuscriptToUpdate.NumberOfPagesOccupied = 0; ManuscriptToUpdate.OrderInIssue = 0; ManuscriptToUpdate.BeginningPageNumber = 0; _updateManuscriptService.UpdateManuscript(ManuscriptToUpdate); MessageBox.Show($"Manuscript entitled as '{SelectedReceivedManuscript.ManuscriptTitle}' has been rejected.", "Success!", MessageBoxButton.OK, MessageBoxImage.Information); //Refresh DB _manuscriptService = new ListManuscriptService(_context); _issueService = new ListIssueService(_context); _reviewService = new ListReviewService(_context); var manuscripts = _manuscriptService.GetManuscriptList().ToList(); var issues = _issueService.GetIssueList().ToList(); var reviews = _reviewService.GetReviewList().ToList(); ManuscriptList = new ObservableCollection <ManuscriptListDto>(manuscripts); IssueList = new ObservableCollection <IssueListDto>(issues); ReviewList = new ObservableCollection <ReviewListDto>(reviews); //Refresh ListBox ReceivedManuscriptList.Remove(SelectedReceivedManuscript); }
private void AddReview() { var selectedReviewers = FrontReviewerList.Where(c => c.IsSelected); var reviewerIdBag = new List <int>(); foreach (var dto in selectedReviewers) { reviewerIdBag.Add(dto.ReviewerId); } if (reviewerIdBag.Count >= 3) { //update manuscript ManuscriptToUpdate.ManuscriptId = SelectedReceivedManuscript.ManuscriptId; ManuscriptToUpdate.IssueId = 3; ManuscriptToUpdate.DateAccepted = new DateTime(2099, 1, 1); ManuscriptToUpdate.ManuscriptStatus = 3; ManuscriptToUpdate.NumberOfPagesOccupied = 0; ManuscriptToUpdate.OrderInIssue = 0; ManuscriptToUpdate.BeginningPageNumber = 0; _updateManuscriptService.UpdateManuscript(ManuscriptToUpdate); //add reviews ReviewToAdd.ManuscriptId = SelectedReceivedManuscript.ManuscriptId; foreach (var reviewerId in reviewerIdBag) { ReviewToAdd.ReviewerId = reviewerId; _addReviewService.AddReview(ReviewToAdd); } MessageBox.Show($"The manuscript entitled as '{SelectedReceivedManuscript.ManuscriptTitle}' has been sent for peer review.", "Success!", MessageBoxButton.OK, MessageBoxImage.Information); //Refresh DB _manuscriptService = new ListManuscriptService(_context); _issueService = new ListIssueService(_context); _reviewService = new ListReviewService(_context); var manuscripts = _manuscriptService.GetManuscriptList().ToList(); var issues = _issueService.GetIssueList().ToList(); var reviews = _reviewService.GetReviewList().ToList(); ManuscriptList = new ObservableCollection <ManuscriptListDto>(manuscripts); IssueList = new ObservableCollection <IssueListDto>(issues); ReviewList = new ObservableCollection <ReviewListDto>(reviews); //Refresh ListBox ReceivedManuscriptList.Remove(SelectedReceivedManuscript); } else { MessageBox.Show($"Please select three or more reviewers to peer review.", "Success!", MessageBoxButton.OK, MessageBoxImage.Information); } }
public EditorViewModel(EditorListDto loggedEditor, UpdateManuscriptService updateManuscriptService, AddReviewService addReviewService, ListFrontReviewerService listFrontReviewerService) : this(new EfCoreContext()) { LoggedEditor = loggedEditor; EditorFirstName = loggedEditor.Name.Split(' ').First() + "!"; InputOrderInIssue = ""; InputTotalPagesOccupied = ""; InputBeginningPageNumber = ""; _updateManuscriptService = updateManuscriptService; _addReviewService = addReviewService; _listFrontReviewerService = listFrontReviewerService; FrontReviewerList = GetReviewerSelectionList(); ManuscriptToUpdate = new ManuscriptListDto(); ReviewToAdd = new AddReviewDto(); _manuscriptService = new ListManuscriptService(_context); _issueService = new ListIssueService(_context); _reviewService = new ListReviewService(_context); var manuscripts = _manuscriptService.GetManuscriptList().ToList(); var issues = _issueService.GetIssueList().ToList(); var reviews = _reviewService.GetReviewList().ToList(); ManuscriptList = new ObservableCollection <ManuscriptListDto>(manuscripts); IssueList = new ObservableCollection <IssueListDto>(issues); ReviewList = new ObservableCollection <ReviewListDto>(reviews); foreach (var manuscript in ManuscriptList) { if (manuscript.ManuscriptStatus == 1) { ReceivedManuscriptList.Add(manuscript); } if (manuscript.ManuscriptStatus == 3) { foreach (var review in ReviewList) { if (review.ManuscriptId == manuscript.ManuscriptId && review.AppropriatenessScore != 0 && UnderReviewManuscriptList.Contains(manuscript) != true) { UnderReviewManuscriptList.Add(manuscript); } } } if (manuscript.ManuscriptStatus == 4) { AcceptedManuscriptList.Add(manuscript); } } }