Beispiel #1
0
        public TFSState GetCurrentWorkItemState(WItem witem)
        {
            if (witem == null)
            {
                return(null);
            }

            if (witem.State == "New" && string.IsNullOrWhiteSpace(witem.BoardColumn))
            {
                witem.BoardColumn = "Backlog";
            }

            if (witem.State == "Removed")
            {
                //we have a work item that was removed, but later re-instated
                witem.State       = "Backlog";
                witem.BoardColumn = "Backlog";
            }

            var state = _states.SingleOrDefault(x => x.SystemState == witem.State &&
                                                x.KanbanColumn == witem.BoardColumn &&
                                                x.KanbanColumnDone == witem.BoardColumnDone);

            if (state == null)
            {
                state = _states.FirstOrDefault(x => x.SystemState == witem.State);
            }

            if (state == null)
            {
                throw new Exception("Cannot determine state for WItem " + witem.ID + ", revision " + witem.Rev);
            }

            return(state);
        }
Beispiel #2
0
        public static List <WItem> GetWorkItemRevisions(DumpDataSet.WorkItemRevisionDataTable table)
        {
            var ret = new List <WItem>();

            foreach (DumpDataSet.WorkItemRevisionRow row in table.Rows)
            {
                var wi = new WItem();
                wi.ID              = row.ID;
                wi.CreateDate      = row.CreatedDate;
                wi.Rev             = row.Rev;
                wi.State           = row.State;
                wi.ChangedDate     = row.ChangedDate;
                wi.RevisedDate     = row.RevisedDate;
                wi.BoardColumn     = row.BoardColumn;
                wi.BoardLane       = row.BoardLane;
                wi.BoardColumnDone =
                    (row.IsBoardColumnDoneNull() ? false : row.BoardColumnDone == "True" ? true : false);
                wi.Title            = row.Title;
                wi.WorkItemType     = row.WorkItemType;
                wi.BusinessPriority = row.BusinessPriority;

                if (row.BusinessPriority > 0)
                {
                    string x = "";
                }


                ret.Add(wi);
            }

            return(ret);
        }
Beispiel #3
0
        public static KanbanItemState Build(WItem wItem)
        {
            var ret = new KanbanItemState();

            ret.KanbanColumn     = wItem.BoardColumn;
            ret.KanbanColumnDone = wItem.BoardColumnDone;
            ret.WorkItemState    = wItem.State;

            return(ret);
        }