private Activity SaveActivity(CreateIssue model, Issue existingIssue, Issue issuePreviousVersion, Status currentIssueStatus, int issueId, bool isNewIssue = false) { bool isStateChanged = false; var activity = new Activity() { CreatedByID = UserID, ObjectID = issueId, ObjectType = "Issue" }; if (isNewIssue) { activity.ActivityDesc = "Created"; activity.NewState = model.Title; isStateChanged = true; } else { if (issuePreviousVersion.StatusID != existingIssue.StatusID) { // status of issue updated activity.OldState = model.Title; activity.ActivityDesc = "Changed status"; activity.NewState = currentIssueStatus.Name; isStateChanged = true; } } activity.TeamID = TeamID; if (isStateChanged) { var result = repo.SaveActivity(activity); if (!result.Status) { log.Error(result); } return repo.GetActivity(activity.ID); } return null; }
private void LoadDefaultIssueValues(Issue issue, CreateIssue model) { issue.PriorityID = model.SelectedPriority; if (issue.PriorityID == 0) issue.PriorityID = 1; issue.ProjectID = model.SelectedProject; if (issue.ProjectID == 0) { var teamMember = repo.GetTeamMember(UserID, TeamID); if (teamMember.DefaultProjectID == null) throw new MissingSettingsException("Default Project not set", "Default Project"); //get from team member issue.ProjectID = teamMember.DefaultProjectID.Value; } issue.StatusID = model.SelectedStatus; if ((model.Id == 0) && (model.SelectedStatus == 0)) { issue.StatusID = 1; } issue.CategoryID = model.SelectedCategory; if (issue.CategoryID == 0) issue.CategoryID = 1; issue.Location = (string.IsNullOrEmpty(model.SelectedIteration) ? "SPRNT" : model.SelectedIteration); }
public int SaveIssue(CreateIssue issue) { Issue issueEntity = null; using (var db = new TeamEntitiesConn()) { if (issue.Id > 0) { issueEntity = db.Issues.FirstOrDefault(s => s.ID == issue.Id); if (issueEntity == null) { return 0; } } else { issueEntity = new Issue(); } issueEntity.Title = issue.Title; issueEntity.Description = issue.Description; issueEntity.ProjectID = issue.ProjectID; issueEntity.TeamID = issue.TeamID; issueEntity.CategoryID = issue.SelectedCategory; issueEntity.CreatedByID = issue.CreatedByID; issueEntity.Location = issue.Iteration; issueEntity.StatusID = issue.SelectedStatus; issueEntity.PriorityID = issue.SelectedPriority; if (issueEntity.CategoryID == 0) { issueEntity.CategoryID = db.Categories.FirstOrDefault().ID; } if (issueEntity.StatusID == 0) { var status = db.Status.FirstOrDefault(s => s.Code == "New"); issueEntity.StatusID = status.ID; } if (issueEntity.PriorityID == null || issueEntity.PriorityID.Value == 0) { var priority = db.Priorities.FirstOrDefault(s => s.Code == "Normal"); issueEntity.PriorityID = priority.ID; } if (issue.Id == 0) { issueEntity.CreatedDate = DateTime.UtcNow; issueEntity.Active = true; db.Issues.Add(issueEntity); } else { issueEntity.ModifiedDate = DateTime.Now; issueEntity.ModifiedByID = issue.CreatedByID; db.Entry(issueEntity).State = EntityState.Modified; } db.SaveChanges(); return issueEntity.ID; } }
public IssueVM GetIssueVM(Issue bug) { var issueVM = new IssueDetailVM { ID = bug.ID, Title = bug.Title, Description = bug.Description }; issueVM.OpenedBy = bug.CreatedBy.FirstName; issueVM.PriorityName = bug.Priority.Name; issueVM.StatusName = bug.Status.Name; issueVM.CategoryName = bug.Category.Name; issueVM.ProjectName = (bug.Project!=null?bug.Project.Name:""); issueVM.CreatedDate = bug.CreatedDate; return issueVM; }
public OperationStatus SaveIssue(Issue issue) { if (issue.ID == 0) { issue.Active = true; issue.CreatedDate = DateTime.UtcNow; db.Issues.Add(issue); } else { issue.ModifiedDate = DateTime.UtcNow; db.Entry(issue).State = EntityState.Modified; } db.SaveChanges(); return new OperationStatus { Status = true, OperationID = issue.ID }; }
public int SaveIssue(CreateIssue issue) { Issue issueEntity = null; using (var db = new TeamEntitiesConn()) { if (issue.Id > 0) { issueEntity = db.Issues.FirstOrDefault(s => s.ID == issue.Id); if (issueEntity == null) { return(0); } } else { issueEntity = new Issue(); } issueEntity.Title = issue.Title; issueEntity.Description = issue.Description; issueEntity.ProjectID = issue.ProjectID; issueEntity.TeamID = issue.TeamID; issueEntity.CategoryID = issue.SelectedCategory; issueEntity.CreatedByID = issue.CreatedByID; issueEntity.Location = issue.Iteration; issueEntity.StatusID = issue.SelectedStatus; issueEntity.PriorityID = issue.SelectedPriority; if (issueEntity.CategoryID == 0) { issueEntity.CategoryID = db.Categories.FirstOrDefault().ID; } if (issueEntity.StatusID == 0) { var status = db.Status.FirstOrDefault(s => s.Code == "New"); issueEntity.StatusID = status.ID; } if (issueEntity.PriorityID == null || issueEntity.PriorityID.Value == 0) { var priority = db.Priorities.FirstOrDefault(s => s.Code == "Normal"); issueEntity.PriorityID = priority.ID; } if (issue.Id == 0) { issueEntity.CreatedDate = DateTime.UtcNow; issueEntity.Active = true; db.Issues.Add(issueEntity); } else { issueEntity.ModifiedDate = DateTime.Now; issueEntity.ModifiedByID = issue.CreatedByID; db.Entry(issueEntity).State = EntityState.Modified; } db.SaveChanges(); return(issueEntity.ID); } }