Пример #1
0
        /*
         * Requirements for each Work Item Type:
         *
         * Product Backlog Item
         *  { refName: "System.State" }, value: "New" },
         *  { refName: "System.Reason" }, value: "New backlog item" }
         * User Story
         *  { refName: "System.State" }, value: "New" },
         *  { refName: "System.Reason" }, value: "New" }
         * Requirement
         *  { refName: "System.State" }, value: "Proposed" },
         *  { refName: "System.Reason" }, value: "New" },
         *  { refName: "Microsoft.VSTS.Common.Priority" }, value: "X" },
         *  { refName: "Microsoft.VSTS.Common.Triage" }, value: "Pending" },
         *  { refName: "Microsoft.VSTS.CMMI.RequirementType" }, value: "XXXXXX" },
         *  { refName: "Microsoft.VSTS.CMMI.Committed" }, value: "No" },
         *  { refName: "Microsoft.VSTS.CMMI.UserAcceptanceTest" }, value: "Not Ready" }
         */

        private static NewWorkItem WorkItemFromSubmission(SubmissionTableEntity submission)
        {
            var workItem = new NewWorkItem();
            var fields   = new List <Field>()
            {
                new Field
                {
                    field = new FieldName {
                        refName = "System.WorkItemType"
                    },
                    value = submission.WorkItemType
                },
                new Field
                {
                    field = new FieldName {
                        refName = "System.AreaPath"
                    },
                    value = submission.TeamProject
                },
                new Field
                {
                    field = new FieldName {
                        refName = "System.IterationPath"
                    },
                    value = submission.TeamProject
                },
                new Field
                {
                    field = new FieldName {
                        refName = "System.Title"
                    },
                    value =
                        submission.Item1Votes >= submission.Item2Votes ? submission.ItemTitle1 : submission.ItemTitle2
                },
                new Field
                {
                    field = new FieldName {
                        refName = "System.Description"
                    },
                    value = submission.Item1Votes >= submission.Item2Votes ? submission.ItemDesc1 : submission.ItemDesc2
                }
            };

            switch (submission.WorkItemType)
            {
            case "Product Backlog Item":
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.State"
                    },
                    value = "New"
                });
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.Reason"
                    },
                    value = "New backlog item"
                });
                break;

            case "User Story":
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.State"
                    },
                    value = "New"
                });
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.Reason"
                    },
                    value = "New"
                });
                break;

            case "Requirements":
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.State"
                    },
                    value = "New"
                });
                fields.Add(new Field
                {
                    field = new FieldName {
                        refName = "System.Reason"
                    },
                    value = submission.Item1Votes >= submission.Item2Votes ? submission.ItemDesc1 : submission.ItemDesc2
                });
                //todo: more fields required for CMMI
                break;
            }
            workItem.fields = fields.ToArray();
            return(workItem);
        }
Пример #2
0
        private void newWorkItemBtn_Click(object sender, EventArgs e)
        {
            var form = new NewWorkItem(_mailItem);

            Utility.MoveFormToCenterAndShow(form);
        }