Заметки консультанта

Шамрай Александр Владимирович

Archive for Июль 2021

Azure DevOps Rest Api. 32. Управление типами рабочих элементов

Posted by Shamrai Alexander на 22 июля, 2021

Для управления типами рабочих элементов в процессах используется клиент ProcessHttpClient. С помощью него выполним следующие операции:

  • Просмотр типов рабочих элементов процесса.
  • Добавление нового типа рабочего элементов.
  • Удаление типа рабочих элементов.

Просмотр текущих типов рабочих элементов

Для просмотра типов рабочих элементов процесса можно использовать метод GetProcessWorkItemTypesAsync, который принимает параметры:

  • procId – идентификатор процесса
  • GetWorkItemTypeExpand – получить дополнительные сведения: None – без дополнительной информации; Behaviors – системное поведение; Layout – форма рабочего элементы; States – состояния.

В результате выполнения метода будет возвращен список объектов ProcessWorkItemType со следующими свойствами:

  • Url – уникальная ссылка на тип рабочего элемента
  • Name – наименование типа рабочего элемента
  • ReferenceName – внутреннее имя типа рабочего элемента
  • Description – описание
  • Customization – уровень настройки рабочего элемента: системный, унаследованный или пользовательский
  • Color – цвет типа рабочего элемента
  • Icon – иконка типа рабочего элемента
  • IsEnabled – тип рабочего элемента активный
  • States – список состояний
  • Behaviors – список системных поведений

Пример:

var workItemTypes = ProcessHttpClient.GetProcessWorkItemTypesAsync(procId, GetWorkItemTypeExpand.None).Result;

Console.WriteLine(«{0, -20} : {1, -40} : {2, -10}», «Work Item Type», «Reference», «Disabled»);

foreach (var workItemType in workItemTypes)

{

Console.WriteLine(«—————————————«);

Console.WriteLine(«{0, -20} : {1, -40} : {2, -10}\n{3}», workItemType.Name, workItemType.ReferenceName, workItemType.IsDisabled, workItemType.Description);

}

Добавление или обновление типа рабочего элемента

Для добавления типа рабочего элемента используется метод CreateProcessWorkItemTypeRequest, который принимает в качестве параметров иденитфикатор процесса и объект класса CreateProcessWorkItemTypeRequest, который имеет следующие свойства:

  • Name – название типа рабочего элемента
  • Description – описание
  • Color – цвет иконки типа рабочего элемента
  • Icon – иконка
  • IsDisabled – активный тип рабочего элемента
  • InheritsFrom – наименование базового типа рабочего элемента, если изменяется коробочный тип рабочего элемента

Для обновления типа рабочего элемента процесса используется метод UpdateProcessWorkItemTypeAsync, который принимает в качестве параметров иденитфикатор процесса и объект класса UpdateProcessWorkItemTypeRequest, через который можно обновить:

  • Description – описание типа рабочего элемента
  • Color – цвет иконки типа рабочего элемента
  • Icon – иконка
  • IsDisabled – активный тип рабочего элемента

Пример создания типа рабочего элемента

CreateProcessWorkItemTypeRequest cpwit = new CreateProcessWorkItemTypeRequest();

cpwit.Name = «Child Task»;

cpwit.Icon = wi_icons.asterisk;

cpwit.Color = «f6546a»;

cpwit.Description = «My new work item type to track child work»;

var newwit = ProcessHttpClient.CreateProcessWorkItemTypeAsync(cpwit, procId).Result;

Console.WriteLine(«New work item type: {0} — {1}», newwit.Name, newwit.ReferenceName);

Удаление типа рабочего элемента

Для удаления типа рабочего элемента процесса используется метод DeleteProcessByIdAsync с идентификатором редактируемого процесса и именем типа рабочего элемента для удаления.

Пример удаления типа рабочего элемента

ProcessHttpClient.DeleteProcessWorkItemTypeAsync(procId, iswit.ReferenceName).Wait();

Полный пример можно посмотреть здесь:

https://github.com/ashamrai/TFRestApi/tree/master/32.TFRestApiAppProcessesWITypes

Posted in azure, devops, Microsoft | Отмечено: , | Leave a Comment »