コード例 #1
0
        private BacklogItemGroup CreateDefaultGroup(string projectUId, DefaultItemGroups defaultGroup, string name)
        {
            if (name == null)
            {
                name = defaultGroup.ToString();
            }

            BacklogItemGroup group =
                new BacklogItemGroup()
            {
                GroupColor   = "WhiteSmoke",
                GroupName    = name,
                GroupUId     = Guid.NewGuid().ToString(),
                ProjectUId   = projectUId,
                DefaultGroup = (short)defaultGroup
            };

            if (defaultGroup == DefaultItemGroups.PLAN_GROUP)
            {
                group.GroupColor = "Khaki";
            }
            if (defaultGroup == DefaultItemGroups.DELIVERY_GROUP)
            {
                group.GroupColor = "Crimson";
            }

            return(group);
        }
コード例 #2
0
        private BacklogItem PrepareDefaultItem(Project project, string name, string groupName, int sprintNumber, DefaultItemGroups defaultGroup, ItemOccurrenceContraints constraint)
        {
            // create the new item
            BacklogItem item = new BacklogItem {
                BacklogItemUId = Guid.NewGuid().ToString(),
                ProjectUId = project.ProjectUId,
                Name = name,
                Description = null,
                Status = (short)BacklogItemStatus.ITEM_REQUIRED,
                BusinessPriority = 1,
                OccurrenceConstraint = (short)constraint,
                SizeFactor = 0,
                CreateDate = DateTime.Now
            };
            item.Project = project;
            item.SyncPlannedHoursAndRoles(sprintNumber);

            // assign group
            ICollection<BacklogItemGroup> groups = GetBacklogItemGroups(project.ProjectUId);
            var group = groups.FirstOrDefault(g => g.DefaultGroup == (short)defaultGroup);
            if (group == null)
                group = CreateDefaultGroup(project.ProjectUId, defaultGroup, groupName);
            item.Group = group;
            item.GroupUId = group.GroupUId;

            // assign size
            ItemSize size = backlogRepository.GetItemSizeByConstraint((short)constraint);
            if (size != null) {
                item.ItemSizeUId = size.ItemSizeUId;
                item.SizeFactor = 1;
                item.Size = size.Size * item.SizeFactor;
            }

            return item;
        }
コード例 #3
0
        private BacklogItemGroup CreateDefaultGroup(string projectUId, DefaultItemGroups defaultGroup, string name)
        {
            if (name == null)
                name = defaultGroup.ToString();

            BacklogItemGroup group =
                new BacklogItemGroup() {
                    GroupColor = "WhiteSmoke",
                    GroupName = name,
                    GroupUId = Guid.NewGuid().ToString(),
                    ProjectUId = projectUId,
                    DefaultGroup = (short)defaultGroup
                };
            if (defaultGroup == DefaultItemGroups.PLAN_GROUP)
                group.GroupColor = "Khaki";
            if (defaultGroup == DefaultItemGroups.DELIVERY_GROUP)
                group.GroupColor = "Crimson";

            return group;
        }
コード例 #4
0
        private BacklogItem PrepareDefaultItem(Project project, string name, string groupName, int sprintNumber, DefaultItemGroups defaultGroup, ItemOccurrenceContraints constraint)
        {
            // create the new item
            BacklogItem item = new BacklogItem {
                BacklogItemUId       = Guid.NewGuid().ToString(),
                ProjectUId           = project.ProjectUId,
                Name                 = name,
                Description          = null,
                Status               = (short)BacklogItemStatus.ITEM_REQUIRED,
                BusinessPriority     = 1,
                OccurrenceConstraint = (short)constraint,
                SizeFactor           = 0,
                CreateDate           = DateTime.Now
            };

            item.Project = project;
            item.SyncPlannedHoursAndRoles(sprintNumber);

            // assign group
            ICollection <BacklogItemGroup> groups = GetBacklogItemGroups(project.ProjectUId);
            var group = groups.FirstOrDefault(g => g.DefaultGroup == (short)defaultGroup);

            if (group == null)
            {
                group = CreateDefaultGroup(project.ProjectUId, defaultGroup, groupName);
            }
            item.Group    = group;
            item.GroupUId = group.GroupUId;


            // assign size
            ItemSize size = backlogRepository.GetItemSizeByConstraint((short)constraint);

            if (size != null)
            {
                item.ItemSizeUId = size.ItemSizeUId;
                item.SizeFactor  = 1;
                item.Size        = size.Size * item.SizeFactor;

                // tries to set the ideal hour values
                foreach (var h in size.SizeIdealHours)
                {
                    var ph = item.PlannedHours.SingleOrDefault(p => p.Role.RoleShortName.ToLower() == h.RoleShortName.ToLower());
                    if (ph != null)
                    {
                        ph.Hours = h.Hours;
                    }
                }
            }

            return(item);
        }