public CodeReview DiscardTagFromCodeReviewFeedback(int codeReviewId, int codeReviewTagId) { CodeReviewMetaData crMetaData = UnitOfWork.CodeReviewRepository.GetCodeReviewWithAllData(codeReviewId); crMetaData.CodeReviewTags .First(x => x.CodeReviewTagId == codeReviewTagId) .IsDeleted = true; UnitOfWork.Commit(); CodeReview updatedCodeReviewPoint = CodeReviewConverter.ConvertFromCore(UnitOfWork.CodeReviewRepository .GetCodeReviewWithAllData(codeReviewId)); updatedCodeReviewPoint.CodeReviewPreviewHtml = UtilityFunctions.GenerateCodeReviewPreview(updatedCodeReviewPoint, false); updatedCodeReviewPoint.SystemRating = CalculateCodeReviewRating(updatedCodeReviewPoint); return(updatedCodeReviewPoint); }
public bool DiscardCodeReviewFeedback(int codeReviewId) { if (codeReviewId <= 0) { return(false); } CodeReviewMetaData crMetaData = UnitOfWork.CodeReviewRepository.Get(codeReviewId); if (crMetaData.FeedbackId.HasValue) { return(false); } crMetaData.IsDiscarded = true; return(UnitOfWork.Commit() > 0); }
public bool SubmitCodeReviewFeedback(CodeReview codeReview) { CodeReviewMetaData codeReviewMetaData = UnitOfWork.CodeReviewRepository.GetCodeReviewWithAllData(codeReview.Id); CodeReview codeReviewDetailsFromCore = CodeReviewConverter.ConvertFromCore(codeReviewMetaData); Feedback feedback = new Feedback { AddedBy = new User { UserId = codeReview.AddedBy.UserId }, AddedFor = new User { UserId = codeReview.AddedFor.UserId }, FeedbackType = new Common.Entity.FeedbackType { FeedbackTypeId = (int)FeedbackType.CodeReview }, FeedbackText = UtilityFunctions.GenerateCodeReviewPreview(codeReviewDetailsFromCore, true), Skill = new Skill(), Project = new Project(), Title = codeReviewDetailsFromCore.Title, Rating = codeReview.Rating }; int feedbackId = FeedbackDataAccesor.AddFeedback(feedback); if (!(feedbackId > 0)) { return(false); } codeReviewMetaData.FeedbackId = feedback.FeedbackId = feedbackId; codeReviewMetaData.SystemRating = CalculateCodeReviewRating(codeReviewDetailsFromCore); UnitOfWork.Commit(); return(new NotificationBl().AddFeedbackNotification(feedback)); // return AddFeedback(feedback); }
public CodeReview SubmitCodeReviewMetaData(CodeReview codeReview) { CodeReviewMetaData crMetaData; // existing if (codeReview.Id > 0) { crMetaData = UnitOfWork.CodeReviewRepository.GetCodeReviewWithAllData(codeReview.Id); if (crMetaData == null) { throw new Exception("No Record Found"); } crMetaData.Description = codeReview.Description; crMetaData.IsDiscarded = codeReview.IsDeleted; crMetaData.ProjectName = codeReview.Title; List <CodeReviewTag> existingTags = CodeReviewTagConverter.ConvertListFromCore(crMetaData.CodeReviewTags.Where(x => !x.IsDeleted).ToList()); foreach (var tag in codeReview.Tags) { if (existingTags.Any(x => x.Skill.SkillId == tag.Skill.SkillId)) { continue; } crMetaData.CodeReviewTags.Add(new DAL.EntityFramework.CodeReviewTag { CreatedOn = DateTime.Now, SkillId = tag.Skill.SkillId }); } } else { crMetaData = new CodeReviewMetaData { AddedBy = codeReview.AddedBy.UserId, AddedFor = codeReview.AddedFor.UserId, CreatedOn = DateTime.Now, Description = codeReview.Description, IsDiscarded = false, ProjectName = codeReview.Title, SystemRating = CalculateCodeReviewRating(codeReview) }; foreach (var tag in codeReview.Tags) { crMetaData.CodeReviewTags.Add(new DAL.EntityFramework.CodeReviewTag { CreatedOn = DateTime.Now, SkillId = tag.Skill.SkillId }); } crMetaData.CodeReviewTags.Add(new DAL.EntityFramework.CodeReviewTag { CreatedOn = DateTime.Now, SkillId = null }); UnitOfWork.CodeReviewRepository.Add(crMetaData); } UnitOfWork.Commit(); //get new data var newCodeReview = CodeReviewConverter.ConvertFromCore(UnitOfWork.CodeReviewRepository.GetCodeReviewWithAllData(crMetaData.CodeReviewMetaDataId)); newCodeReview.CodeReviewPreviewHtml = FetchCodeReviewPreview(crMetaData.CodeReviewMetaDataId, false); newCodeReview.SystemRating = CalculateCodeReviewRating(codeReview); return(newCodeReview); }