public ReviewsForArtifact GetReviewsForArtifact(int id) { ReviewsForArtifact artifact = new ReviewsForArtifact(); var art = context.IbmArtifact.Where(x => x.Id == id).Include(p => p.IbmArtifactReview).FirstOrDefault(); JazzArtifact a = new JazzArtifact() { Id = art.Id, IbmId = art.IbmId, Name = art.Name, Url = art.Url }; artifact.Artifact = a; List <int> ids = art.IbmArtifactReview.Select(x => x.ReviewId).ToList(); var reviews = context.Review.Where(x => ids.Contains(x.Id)).ToList(); List <ReviewSetup> setups = new List <ReviewSetup>(); foreach (var r in reviews) { ReviewSetup s = new ReviewSetup() { Id = r.Id, Name = r.Name }; setups.Add(s); } artifact.Reviews = setups; return(artifact); }
public string CloseReview(int oldreview, ReviewSetup reviewsetup) { string result = ""; if (oldreview > 0) { var review = new ReviewServices().GetByID(oldreview); review.IsCurrent = false; review.IsActive = false; review.Status = (int)GoalStatus.COMPLETED; review.Score = ReviewServices.CalculateCommentsScore(review)["Weighted"] + ReviewServices.CalculateGoalsScore(review)["Weighted"] + ReviewServices.CalculateQuestionsScore(review)["Weighted"]; new ReviewServices().Save(review); var newreview = new Review(); newreview.AccountID = SecurityContextManager.Current.CurrentAccount.ID; newreview.ChangedBy = SecurityContextManager.Current.CurrentUser.ID; newreview.DateCreated = DateTime.Now; newreview.DueDate = reviewsetup.DueDate; newreview.EnteredBy = SecurityContextManager.Current.CurrentUser.ID; newreview.EnteredFor = review.EnteredForRef.ID; newreview.IsActive = true; newreview.IsCurrent = true; newreview.LastUpdated = DateTime.Now; newreview.ReviewTemplateID = reviewsetup.TemplateID; newreview.StartDate = reviewsetup.StartDate; newreview.Status = (int)GoalStatus.ACCEPTED; newreview.Title = review.EnteredForRef.Name + " - Due: " + review.DueDate.ToShortDateString(); newreview.CommentsWeight = SecurityContextManager.Current.CurrentAccount.CommentsWeight; newreview.GoalsWeight = SecurityContextManager.Current.CurrentAccount.GoalsWeight; newreview.QuestionsWeight = SecurityContextManager.Current.CurrentAccount.QuestionsWeight; new ReviewServices().Save(newreview); var t = new ReviewTemplateServices().GetByID(newreview.ReviewTemplateID); foreach (var i in t.Questions) { var q = new ReviewQuestionScore(); q.Comment = ""; q.DateCreated = DateTime.Now; q.EnteredBy = SecurityContextManager.Current.CurrentUser.ID; q.Score = 0; q.ReviewID = newreview.ID; q.ReviewQuestionID = i.ID; new ReviewQuestionScoreServices().Save(q); } EmailHelper.SendReviewNotification(newreview, review.EnteredForRef.Email); if (review.EnteredForRef.ReceiveCommentNotifications) { result = "1:New Review Successfully Created!:Reviews/" + newreview.ID.ToString(); } return(result); } return(result); }
public string SavePerson(Person person, ReviewSetup reviewsetup) { string result = ""; person.AccountID = SecurityContextManager.Current.CurrentAccount.ID; person.TerminationDate = null; person.DateAcceptedTerms = null; person.AvatarPath = ResourceStrings.GravatarBasePath + DateTime.Now.ToBinary().ToString().Replace("-", "") + "?d=identicon&s="; person.Password = IdeaSeed.Core.SecurityUtils.GetMd5Hash(person.Password); var p = new PersonServices().Save(person); if (person.ManagerID == -1) { person.ManagerID = p.ID; new PersonServices().Save(p); } foreach (var m in person.Memberships) { m.PersonID = person.ID; new TeamMemberServices().Save(m); } var review = new Review(); review.AccountID = SecurityContextManager.Current.CurrentAccount.ID; review.ChangedBy = SecurityContextManager.Current.CurrentUser.ID; review.DateCreated = DateTime.Now; review.DueDate = reviewsetup.DueDate; review.EnteredBy = SecurityContextManager.Current.CurrentUser.ID; review.EnteredFor = person.ID; review.IsActive = true; review.IsCurrent = true; review.LastUpdated = DateTime.Now; review.ReviewTemplateID = reviewsetup.TemplateID; review.StartDate = reviewsetup.StartDate; review.Status = (int)GoalStatus.ACCEPTED; review.Title = person.Name + " - Due: " + review.DueDate.ToShortDateString(); new ReviewServices().Save(review); var t = new ReviewTemplateServices().GetByID(review.ReviewTemplateID); foreach (var i in t.Questions) { var q = new ReviewQuestionScore(); q.Comment = ""; q.DateCreated = DateTime.Now; q.EnteredBy = SecurityContextManager.Current.CurrentUser.ID; q.Score = 0; q.ReviewID = review.ID; q.ReviewQuestionID = i.ID; new ReviewQuestionScoreServices().Save(q); } if (person.ReceiveCommentNotifications) { EmailHelper.SendNewEmployeeNotification(person, ""); } IdeaSeed.Core.Data.NHibernate.NHibernateSessionManager.Instance.CloseSession(); result = "1:Employee Added Succesfully!:People/" + person.Email; var _cache = new MemcacheCacheAdapter(); _cache.Remove(SecurityContextManager .Current .CurrentUser.ID.ToString() + "_DepartmentsList"); var list = new DepartmentServices().GetAll().ToList <Department>(); _cache.Store(SecurityContextManager .Current .CurrentUser.ID.ToString() + "_DepartmentsList", list); return(result); }