public bool AssociatedWorkItemRelation([FromBody] IncomingWorkItemRelation incomingRelation) { using (var context = new WorkItemsContext(Context, Configuration)) { context.AssociatedRelation(incomingRelation); } return(true); }
public OutgoingValidWorkItem ValidateSelectedItem([FromBody] IncomingWorkItemRelation incomingRequest) { var result = new OutgoingValidWorkItem(); var currentItem = default(WorkItem); var defaultUserAccount = default(UserAccounts); using (var context = new UsersContext(Context, Configuration)) defaultUserAccount = context.GetDefaultAccount(); using (var context = new WorkItemsContext(Context, Configuration)) { result.WorkItem = new List <WorkItem>(); if (!incomingRequest.LinkedItems.Any(x => x.WorkItemId == incomingRequest.WorkItemId) && incomingRequest.RelationType != "1") { if (incomingRequest.CurrWorkItemId != 1) { var workItemData = context.GetWorkItemChildrenClean(incomingRequest.CurrWorkItemId); var currentWorkItem = context.GetWorkItemClean(incomingRequest.CurrWorkItemId, incomingRequest.ProjectId); if (currentWorkItem != null) { if (currentWorkItem.ParentId != 0) { result.WorkItem.Add(context.GetWorkItemClean(currentWorkItem.ParentId.Value, incomingRequest.ProjectId)); } } result.WorkItem = workItemData; } incomingRequest.LinkedItems.ForEach(x => { result.WorkItem.Add(context.GetWorkItemClean(x.WorkItemId, incomingRequest.ProjectId)); }); currentItem = context.GetWorkItemById(incomingRequest.WorkItemId); result.Last = currentItem; result.Valid = true; result.WorkItem.Add(context.GetWorkItemClean(incomingRequest.WorkItemId, incomingRequest.ProjectId)); result.WorkItemTypeId = incomingRequest.RelationType != null?int.Parse(incomingRequest.RelationType) : 0; result.WorkItemId = incomingRequest.WorkItemId; result.RelationshipId = incomingRequest.RelationType; } else { currentItem = context.GetWorkItemById(incomingRequest.WorkItemId); result.Last = currentItem; result.WorkItem.Add(context.AddChildrenToParent(incomingRequest.WorkItemId, incomingRequest.CurrWorkItemId)); result.Valid = true; result.WorkItemTypeId = int.Parse(incomingRequest.RelationType); result.WorkItemId = incomingRequest.WorkItemId; result.RelationshipId = incomingRequest.RelationType; } } return(result); }