WorkItem more
This commit is contained in:
parent
c7bcb4a5ea
commit
9c6740becb
8
.vscode/launch.json
vendored
8
.vscode/launch.json
vendored
@ -13,8 +13,8 @@
|
|||||||
"args": [
|
"args": [
|
||||||
"s",
|
"s",
|
||||||
"X",
|
"X",
|
||||||
"T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation/.vscode/helper",
|
"L:/DevOps/Mesa_FI/File-Folder-Helper/.vscode/helper/tfs",
|
||||||
"Day-Helper-2024-08-09",
|
"Day-Helper-2024-08-30",
|
||||||
"MES",
|
"MES",
|
||||||
"https://tfs.intra.infineon.com",
|
"https://tfs.intra.infineon.com",
|
||||||
"/tfs/FactoryIntegration",
|
"/tfs/FactoryIntegration",
|
||||||
@ -22,9 +22,7 @@
|
|||||||
"/0d06e969-e1f5-4835-a359-620d557c7595/_apis/wit",
|
"/0d06e969-e1f5-4835-a359-620d557c7595/_apis/wit",
|
||||||
"/wiql/3373b300-8de3-4301-9795-e990c3b226f9",
|
"/wiql/3373b300-8de3-4301-9795-e990c3b226f9",
|
||||||
"4n7d2jcql6bkq32f66tohddonfxajkypq66lm5y3zqemtlohawsa",
|
"4n7d2jcql6bkq32f66tohddonfxajkypq66lm5y3zqemtlohawsa",
|
||||||
"FI Backlog Mesa - Request List.json",
|
"FI Backlog Mesa - Request List.json"
|
||||||
"Chase|infineon\\TuckerC,Dakota(SRP)|infineon\\Mitchem,Daniel|infineon\\StieberD,Jonathan|infineon\\Ouellette,Mike|infineon\\Phares",
|
|
||||||
"Chad B|infineon\\cbecker1,Debra Q|infineon\\Quinones,Jeanne M|infineon\\jmcinty2,Jessica F|infineon\\jfuente1,Jonathon S|infineon\\jsperli1,Justin H|infineon\\jhollan2,Kelly C|infineon\\kclark1,Mark C|infineon\\mcouste1,Marti J|infineon\\mjarsey1,Nik C|infineon\\nclark1,Peyton M|infineon\\McChesne,Ron O|infineon\\HendersS,Susan H|infineon\\HendersS,Tiffany M|infineon\\tmunoz1,Todd C|infineon\\tcarrie1"
|
|
||||||
],
|
],
|
||||||
"cwd": "${workspaceFolder}",
|
"cwd": "${workspaceFolder}",
|
||||||
"console": "integratedTerminal",
|
"console": "integratedTerminal",
|
||||||
|
4
.vscode/settings.json
vendored
4
.vscode/settings.json
vendored
@ -37,6 +37,8 @@
|
|||||||
"SUBM",
|
"SUBM",
|
||||||
"SURN",
|
"SURN",
|
||||||
"SYSLIB",
|
"SYSLIB",
|
||||||
"WIQL"
|
"VSTS",
|
||||||
|
"WIQL",
|
||||||
|
"WSJF"
|
||||||
]
|
]
|
||||||
}
|
}
|
@ -582,7 +582,7 @@ internal static partial class Helper20240809
|
|||||||
Update(httpClient, basePage, api, workItemTrackingHttpClient, sync, valueWithReq);
|
Update(httpClient, basePage, api, workItemTrackingHttpClient, sync, valueWithReq);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (!isBugFix && int.TryParse(fiBacklogMesa.EstEffortDays, out int estEffortDays) && valueWithReq.Value.Fields.Effort != estEffortDays)
|
if (!isBugFix && int.TryParse(fiBacklogMesa.EstEffortDays, out int estEffortDays) && valueWithReq.Value.Fields.MicrosoftVSTSSchedulingEffort != estEffortDays)
|
||||||
{
|
{
|
||||||
result += 1;
|
result += 1;
|
||||||
Update(httpClient, basePage, api, workItemTrackingHttpClient, sync, valueWithReq);
|
Update(httpClient, basePage, api, workItemTrackingHttpClient, sync, valueWithReq);
|
||||||
@ -591,7 +591,7 @@ internal static partial class Helper20240809
|
|||||||
dateTime = GetCommitDate(fiBacklogMesa);
|
dateTime = GetCommitDate(fiBacklogMesa);
|
||||||
if (dateTime is not null)
|
if (dateTime is not null)
|
||||||
{
|
{
|
||||||
timeSpan = new(valueWithReq.Value.Fields.TargetDate.Ticks - dateTime.Value.Ticks);
|
timeSpan = new(valueWithReq.Value.Fields.MicrosoftVSTSSchedulingTargetDate.Ticks - dateTime.Value.Ticks);
|
||||||
if (timeSpan.Hours is > 32 or < -32)
|
if (timeSpan.Hours is > 32 or < -32)
|
||||||
{
|
{
|
||||||
result += 1;
|
result += 1;
|
||||||
|
@ -14,8 +14,30 @@ namespace File_Folder_Helper.Day.Q32024;
|
|||||||
internal static partial class Helper20240830
|
internal static partial class Helper20240830
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public record WorkItem(string? AssignedTo,
|
||||||
|
int? BusinessValue,
|
||||||
|
DateTime ChangedDate,
|
||||||
|
int CommentCount,
|
||||||
|
DateTime CreatedDate,
|
||||||
|
string Description,
|
||||||
|
float? Effort,
|
||||||
|
int Id,
|
||||||
|
int? Priority,
|
||||||
|
string? Requester,
|
||||||
|
int Revision,
|
||||||
|
int? RiskReductionMinusOpportunityEnablement,
|
||||||
|
DateTime? StartDate,
|
||||||
|
string State,
|
||||||
|
string Tags,
|
||||||
|
DateTime? TargetDate,
|
||||||
|
float? TimeCriticality,
|
||||||
|
string Title,
|
||||||
|
string WorkItemType,
|
||||||
|
float? WeightedShortestJobFirst);
|
||||||
|
|
||||||
private static string GetIds(HttpClient httpClient, string basePage, string api, string query)
|
private static string GetIds(HttpClient httpClient, string basePage, string api, string query)
|
||||||
{
|
{
|
||||||
|
List<int> results = [];
|
||||||
StringBuilder result = new();
|
StringBuilder result = new();
|
||||||
Task<HttpResponseMessage> httpResponseMessageTask = httpClient.GetAsync(string.Concat(basePage, api, query));
|
Task<HttpResponseMessage> httpResponseMessageTask = httpClient.GetAsync(string.Concat(basePage, api, query));
|
||||||
httpResponseMessageTask.Wait();
|
httpResponseMessageTask.Wait();
|
||||||
@ -30,13 +52,19 @@ internal static partial class Helper20240830
|
|||||||
if (root is null || root.WorkItems is null)
|
if (root is null || root.WorkItems is null)
|
||||||
throw new NullReferenceException(nameof(root));
|
throw new NullReferenceException(nameof(root));
|
||||||
foreach (WIQL.WorkItem workItem in root.WorkItems)
|
foreach (WIQL.WorkItem workItem in root.WorkItems)
|
||||||
_ = result.Append(workItem.Id).Append(',');
|
{
|
||||||
|
results.Add(workItem.Id);
|
||||||
|
if (results.Count > 199)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
foreach (int id in results)
|
||||||
|
_ = result.Append(id).Append(',');
|
||||||
if (result.Length > 0)
|
if (result.Length > 0)
|
||||||
_ = result.Remove(result.Length - 1, 1);
|
_ = result.Remove(result.Length - 1, 1);
|
||||||
return result.ToString();
|
return result.ToString();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ReadOnlyCollection<ValueWithReq> GetWorkItems(HttpClient httpClient, string basePage, string api, string sourceDirectory, string ids)
|
private static ReadOnlyCollection<ValueWithReq> GetWorkItems(HttpClient httpClient, string basePage, string api, string targetFileLocation, string ids)
|
||||||
{
|
{
|
||||||
List<ValueWithReq> results = [];
|
List<ValueWithReq> results = [];
|
||||||
string json;
|
string json;
|
||||||
@ -66,7 +94,7 @@ internal static partial class Helper20240830
|
|||||||
value = JsonSerializer.Deserialize(json, ValueSourceGenerationContext.Default.Value);
|
value = JsonSerializer.Deserialize(json, ValueSourceGenerationContext.Default.Value);
|
||||||
if (value is null)
|
if (value is null)
|
||||||
continue;
|
continue;
|
||||||
file = Path.Combine(sourceDirectory, $"{-1}-{value.Id}.json");
|
file = Path.Combine(targetFileLocation, $"{-1}-{value.Id}.json");
|
||||||
File.WriteAllText(file, json);
|
File.WriteAllText(file, json);
|
||||||
results.Add(new(value, -1, json));
|
results.Add(new(value, -1, json));
|
||||||
}
|
}
|
||||||
@ -74,7 +102,41 @@ internal static partial class Helper20240830
|
|||||||
return new(results);
|
return new(results);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static ReadOnlyCollection<WorkItem> GetWorkItems(ReadOnlyCollection<ValueWithReq> valueWithReqCollection)
|
||||||
|
{
|
||||||
|
List<WorkItem> results = [];
|
||||||
|
Fields fields;
|
||||||
|
WorkItem workItem;
|
||||||
|
foreach (ValueWithReq valueWithReq in valueWithReqCollection)
|
||||||
|
{
|
||||||
|
fields = valueWithReq.Value.Fields;
|
||||||
|
workItem = new(fields.SystemAssignedTo?.DisplayName,
|
||||||
|
fields.MicrosoftVSTSCommonBusinessValue == 0 ? null : fields.MicrosoftVSTSCommonBusinessValue,
|
||||||
|
fields.SystemChangedDate,
|
||||||
|
fields.SystemCommentCount,
|
||||||
|
fields.SystemCreatedDate,
|
||||||
|
fields.SystemDescription,
|
||||||
|
fields.MicrosoftVSTSSchedulingEffort == 0 ? null : fields.MicrosoftVSTSSchedulingEffort,
|
||||||
|
valueWithReq.Value.Id,
|
||||||
|
fields.MicrosoftVSTSCommonPriority == 0 ? null : fields.MicrosoftVSTSCommonPriority,
|
||||||
|
fields.CustomRequester?.DisplayName,
|
||||||
|
valueWithReq.Value.Rev,
|
||||||
|
fields.CustomRRminusOE == 0 ? null : fields.CustomRRminusOE,
|
||||||
|
fields.MicrosoftVSTSSchedulingStartDate == DateTime.MinValue ? null : fields.MicrosoftVSTSSchedulingStartDate,
|
||||||
|
fields.SystemState,
|
||||||
|
fields.SystemTags,
|
||||||
|
fields.MicrosoftVSTSSchedulingTargetDate == DateTime.MinValue ? null : fields.MicrosoftVSTSSchedulingTargetDate,
|
||||||
|
fields.MicrosoftVSTSCommonTimeCriticality == 0 ? null : fields.MicrosoftVSTSCommonTimeCriticality,
|
||||||
|
fields.SystemTitle,
|
||||||
|
fields.SystemWorkItemType,
|
||||||
|
fields.CustomWSJF == 0 ? null : fields.CustomWSJF);
|
||||||
|
results.Add(workItem);
|
||||||
|
}
|
||||||
|
return new(results);
|
||||||
|
}
|
||||||
|
|
||||||
private static void CompareWorkItems(WorkItemTrackingHttpClient workItemTrackingHttpClient,
|
private static void CompareWorkItems(WorkItemTrackingHttpClient workItemTrackingHttpClient,
|
||||||
|
string sourceDirectory,
|
||||||
string project,
|
string project,
|
||||||
string site,
|
string site,
|
||||||
ReadOnlyCollection<ValueWithReq> valueWithReqCollection)
|
ReadOnlyCollection<ValueWithReq> valueWithReqCollection)
|
||||||
@ -82,14 +144,24 @@ internal static partial class Helper20240830
|
|||||||
ArgumentNullException.ThrowIfNull(workItemTrackingHttpClient);
|
ArgumentNullException.ThrowIfNull(workItemTrackingHttpClient);
|
||||||
if (string.IsNullOrEmpty(project))
|
if (string.IsNullOrEmpty(project))
|
||||||
throw new ArgumentException($"'{nameof(project)}' cannot be null or empty.", nameof(project));
|
throw new ArgumentException($"'{nameof(project)}' cannot be null or empty.", nameof(project));
|
||||||
|
if (string.IsNullOrEmpty(sourceDirectory))
|
||||||
|
throw new ArgumentException($"'{nameof(sourceDirectory)}' cannot be null or empty.", nameof(site));
|
||||||
if (string.IsNullOrEmpty(site))
|
if (string.IsNullOrEmpty(site))
|
||||||
throw new ArgumentException($"'{nameof(site)}' cannot be null or empty.", nameof(site));
|
throw new ArgumentException($"'{nameof(site)}' cannot be null or empty.", nameof(site));
|
||||||
ArgumentNullException.ThrowIfNull(valueWithReqCollection);
|
ReadOnlyCollection<WorkItem> workItems = GetWorkItems(valueWithReqCollection);
|
||||||
|
string file = Path.Combine(sourceDirectory, $"_.json");
|
||||||
|
string json = JsonSerializer.Serialize(workItems);
|
||||||
|
File.WriteAllText(file, json);
|
||||||
|
foreach (WorkItem workItem in workItems)
|
||||||
|
{
|
||||||
|
if (workItem is null)
|
||||||
|
{ }
|
||||||
|
}
|
||||||
// https://stackoverflow.com/questions/18153998/how-do-i-remove-all-html-tags-from-a-string-without-knowing-which-tags-are-in-it
|
// https://stackoverflow.com/questions/18153998/how-do-i-remove-all-html-tags-from-a-string-without-knowing-which-tags-are-in-it
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void CompareWorkItems(HttpClient httpClient,
|
private static void CompareWorkItems(HttpClient httpClient,
|
||||||
string sourceDirectory,
|
string targetFileLocation,
|
||||||
string basePage,
|
string basePage,
|
||||||
string api,
|
string api,
|
||||||
string query,
|
string query,
|
||||||
@ -98,11 +170,11 @@ internal static partial class Helper20240830
|
|||||||
string site)
|
string site)
|
||||||
{
|
{
|
||||||
string ids = GetIds(httpClient, basePage, api, query);
|
string ids = GetIds(httpClient, basePage, api, query);
|
||||||
ReadOnlyCollection<ValueWithReq> valueWithReqCollection = string.IsNullOrEmpty(ids) ? new([]) : GetWorkItems(httpClient, basePage, api, sourceDirectory, ids);
|
ReadOnlyCollection<ValueWithReq> valueWithReqCollection = string.IsNullOrEmpty(ids) ? new([]) : GetWorkItems(httpClient, basePage, api, targetFileLocation, ids);
|
||||||
CompareWorkItems(workItemTrackingHttpClient, project, site, valueWithReqCollection);
|
CompareWorkItems(workItemTrackingHttpClient, targetFileLocation, project, site, valueWithReqCollection);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void CreateWorkItems(ILogger<Worker> logger, string sourceDirectory, string api, string site, string query, string project, string basePage, string baseAddress, byte[] bytes, MediaTypeWithQualityHeaderValue mediaTypeWithQualityHeaderValue, WorkItemTrackingHttpClient workItemTrackingHttpClient, HttpClient httpClient)
|
private static void CompareWorkItems(ILogger<Worker> logger, string sourceDirectory, string api, string site, string query, string project, string basePage, string baseAddress, byte[] bytes, MediaTypeWithQualityHeaderValue mediaTypeWithQualityHeaderValue, WorkItemTrackingHttpClient workItemTrackingHttpClient, HttpClient httpClient)
|
||||||
{
|
{
|
||||||
string base64 = Convert.ToBase64String(bytes);
|
string base64 = Convert.ToBase64String(bytes);
|
||||||
httpClient.DefaultRequestHeaders.Authorization = new("Basic", base64);
|
httpClient.DefaultRequestHeaders.Authorization = new("Basic", base64);
|
||||||
@ -127,7 +199,7 @@ internal static partial class Helper20240830
|
|||||||
MediaTypeWithQualityHeaderValue mediaTypeWithQualityHeaderValue = new("application/json");
|
MediaTypeWithQualityHeaderValue mediaTypeWithQualityHeaderValue = new("application/json");
|
||||||
WorkItemTrackingHttpClient workItemTrackingHttpClient = connection.GetClient<WorkItemTrackingHttpClient>();
|
WorkItemTrackingHttpClient workItemTrackingHttpClient = connection.GetClient<WorkItemTrackingHttpClient>();
|
||||||
HttpClient httpClient = new(new HttpClientHandler() { UseDefaultCredentials = true }) { BaseAddress = new(baseAddress) };
|
HttpClient httpClient = new(new HttpClientHandler() { UseDefaultCredentials = true }) { BaseAddress = new(baseAddress) };
|
||||||
CreateWorkItems(logger, sourceDirectory, api, site, query, project, basePage, baseAddress, bytes, mediaTypeWithQualityHeaderValue, workItemTrackingHttpClient, httpClient);
|
CompareWorkItems(logger, sourceDirectory, api, site, query, project, basePage, baseAddress, bytes, mediaTypeWithQualityHeaderValue, workItemTrackingHttpClient, httpClient);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -6,42 +6,29 @@ public class CustomRequester
|
|||||||
{
|
{
|
||||||
[JsonConstructor]
|
[JsonConstructor]
|
||||||
public CustomRequester(
|
public CustomRequester(
|
||||||
|
string descriptor,
|
||||||
string displayName,
|
string displayName,
|
||||||
string url,
|
|
||||||
Links links,
|
|
||||||
string id,
|
string id,
|
||||||
string uniqueName,
|
|
||||||
string imageUrl,
|
string imageUrl,
|
||||||
string descriptor
|
Links links,
|
||||||
|
string uniqueName,
|
||||||
|
string url
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
DisplayName = displayName;
|
|
||||||
Url = url;
|
|
||||||
Links = links;
|
|
||||||
Id = id;
|
|
||||||
UniqueName = uniqueName;
|
|
||||||
ImageUrl = imageUrl;
|
|
||||||
Descriptor = descriptor;
|
Descriptor = descriptor;
|
||||||
|
DisplayName = displayName;
|
||||||
|
Id = id;
|
||||||
|
ImageUrl = imageUrl;
|
||||||
|
Links = links;
|
||||||
|
UniqueName = uniqueName;
|
||||||
|
Url = url;
|
||||||
}
|
}
|
||||||
|
|
||||||
[JsonPropertyName("displayName")]
|
[JsonPropertyName("descriptor")] public string Descriptor { get; }
|
||||||
public string DisplayName { get; }
|
[JsonPropertyName("displayName")] public string DisplayName { get; }
|
||||||
|
[JsonPropertyName("id")] public string Id { get; }
|
||||||
[JsonPropertyName("url")]
|
[JsonPropertyName("imageUrl")] public string ImageUrl { get; }
|
||||||
public string Url { get; }
|
[JsonPropertyName("_links")] public Links Links { get; }
|
||||||
|
[JsonPropertyName("uniqueName")] public string UniqueName { get; }
|
||||||
[JsonPropertyName("_links")]
|
[JsonPropertyName("url")] public string Url { get; }
|
||||||
public Links Links { get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("id")]
|
|
||||||
public string Id { get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("uniqueName")]
|
|
||||||
public string UniqueName { get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("imageUrl")]
|
|
||||||
public string ImageUrl { get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("descriptor")]
|
|
||||||
public string Descriptor { get; }
|
|
||||||
}
|
}
|
@ -5,113 +5,86 @@ namespace File_Folder_Helper.Day.Q32024.WorkItems;
|
|||||||
public class Fields
|
public class Fields
|
||||||
{
|
{
|
||||||
[JsonConstructor]
|
[JsonConstructor]
|
||||||
public Fields(
|
public Fields(int customRRminusOE,
|
||||||
string systemAreaPath,
|
CustomRequester? customRequester,
|
||||||
string systemTeamProject,
|
float customWSJF,
|
||||||
string systemIterationPath,
|
float? microsoftVSTSSchedulingEffort,
|
||||||
string systemWorkItemType,
|
int microsoftVSTSCommonBusinessValue,
|
||||||
string systemState,
|
int microsoftVSTSCommonPriority,
|
||||||
string systemReason,
|
DateTime microsoftVSTSCommonStateChangeDate,
|
||||||
CustomRequester customRequester,
|
float microsoftVSTSCommonTimeCriticality,
|
||||||
SystemAssignedTo systemAssignedTo,
|
DateTime microsoftVSTSSchedulingStartDate,
|
||||||
DateTime systemCreatedDate,
|
string systemAreaPath,
|
||||||
SystemCreatedBy systemCreatedBy,
|
SystemAssignedTo systemAssignedTo,
|
||||||
DateTime systemChangedDate,
|
SystemChangedBy systemChangedBy,
|
||||||
SystemChangedBy systemChangedBy,
|
DateTime systemChangedDate,
|
||||||
int systemCommentCount,
|
int systemCommentCount,
|
||||||
string systemTitle,
|
SystemCreatedBy systemCreatedBy,
|
||||||
DateTime microsoftVSTSCommonStateChangeDate,
|
DateTime systemCreatedDate,
|
||||||
int microsoftVSTSCommonPriority,
|
string systemDescription,
|
||||||
string systemDescription,
|
string systemHistory,
|
||||||
string systemTags,
|
string systemIterationPath,
|
||||||
string systemHistory,
|
string systemReason,
|
||||||
float? effort,
|
string systemState,
|
||||||
DateTime targetDate
|
string systemTags,
|
||||||
)
|
string systemTeamProject,
|
||||||
|
string systemTitle,
|
||||||
|
string systemWorkItemType,
|
||||||
|
DateTime microsoftVSTSSchedulingTargetDate)
|
||||||
{
|
{
|
||||||
SystemAreaPath = systemAreaPath;
|
CustomRRminusOE = customRRminusOE;
|
||||||
SystemTeamProject = systemTeamProject;
|
|
||||||
SystemIterationPath = systemIterationPath;
|
|
||||||
SystemWorkItemType = systemWorkItemType;
|
|
||||||
SystemState = systemState;
|
|
||||||
SystemReason = systemReason;
|
|
||||||
CustomRequester = customRequester;
|
CustomRequester = customRequester;
|
||||||
SystemAssignedTo = systemAssignedTo;
|
CustomWSJF = customWSJF;
|
||||||
SystemCreatedDate = systemCreatedDate;
|
MicrosoftVSTSSchedulingEffort = microsoftVSTSSchedulingEffort;
|
||||||
SystemCreatedBy = systemCreatedBy;
|
MicrosoftVSTSCommonBusinessValue = microsoftVSTSCommonBusinessValue;
|
||||||
SystemChangedDate = systemChangedDate;
|
|
||||||
SystemChangedBy = systemChangedBy;
|
|
||||||
SystemCommentCount = systemCommentCount;
|
|
||||||
SystemTitle = systemTitle;
|
|
||||||
MicrosoftVSTSCommonStateChangeDate = microsoftVSTSCommonStateChangeDate;
|
|
||||||
MicrosoftVSTSCommonPriority = microsoftVSTSCommonPriority;
|
MicrosoftVSTSCommonPriority = microsoftVSTSCommonPriority;
|
||||||
|
MicrosoftVSTSCommonStateChangeDate = microsoftVSTSCommonStateChangeDate;
|
||||||
|
MicrosoftVSTSCommonTimeCriticality = microsoftVSTSCommonTimeCriticality;
|
||||||
|
MicrosoftVSTSSchedulingStartDate = microsoftVSTSSchedulingStartDate;
|
||||||
|
SystemAreaPath = systemAreaPath;
|
||||||
|
SystemAssignedTo = systemAssignedTo;
|
||||||
|
SystemChangedBy = systemChangedBy;
|
||||||
|
SystemChangedDate = systemChangedDate;
|
||||||
|
SystemCommentCount = systemCommentCount;
|
||||||
|
SystemCreatedBy = systemCreatedBy;
|
||||||
|
SystemCreatedDate = systemCreatedDate;
|
||||||
SystemDescription = systemDescription;
|
SystemDescription = systemDescription;
|
||||||
SystemTags = systemTags;
|
|
||||||
SystemHistory = systemHistory;
|
SystemHistory = systemHistory;
|
||||||
Effort = effort;
|
SystemIterationPath = systemIterationPath;
|
||||||
TargetDate = targetDate;
|
SystemReason = systemReason;
|
||||||
|
SystemState = systemState;
|
||||||
|
SystemTags = systemTags;
|
||||||
|
SystemTeamProject = systemTeamProject;
|
||||||
|
SystemTitle = systemTitle;
|
||||||
|
SystemWorkItemType = systemWorkItemType;
|
||||||
|
MicrosoftVSTSSchedulingTargetDate = microsoftVSTSSchedulingTargetDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
[JsonPropertyName("System.AreaPath")]
|
[JsonPropertyName("Custom.RRminusOE")] public int CustomRRminusOE { get; } // { init; get; }
|
||||||
public string SystemAreaPath { get; } // { init; get; }
|
[JsonPropertyName("Custom.Requester")] public CustomRequester? CustomRequester { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Custom.WSJF")] public float CustomWSJF { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Scheduling.Effort")] public float? MicrosoftVSTSSchedulingEffort { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Common.BusinessValue")] public int MicrosoftVSTSCommonBusinessValue { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Common.Priority")] public int MicrosoftVSTSCommonPriority { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Common.StateChangeDate")] public DateTime MicrosoftVSTSCommonStateChangeDate { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Common.TimeCriticality")] public float MicrosoftVSTSCommonTimeCriticality { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Scheduling.StartDate")] public DateTime MicrosoftVSTSSchedulingStartDate { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.AreaPath")] public string SystemAreaPath { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.AssignedTo")] public SystemAssignedTo? SystemAssignedTo { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.ChangedBy")] public SystemChangedBy SystemChangedBy { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.ChangedDate")] public DateTime SystemChangedDate { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.CommentCount")] public int SystemCommentCount { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.CreatedBy")] public SystemCreatedBy SystemCreatedBy { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.CreatedDate")] public DateTime SystemCreatedDate { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.Description")] public string SystemDescription { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.History")] public string SystemHistory { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.IterationPath")] public string SystemIterationPath { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.Reason")] public string SystemReason { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.State")] public string SystemState { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.Tags")] public string SystemTags { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.TeamProject")] public string SystemTeamProject { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.Title")] public string SystemTitle { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("System.WorkItemType")] public string SystemWorkItemType { get; } // { init; get; }
|
||||||
|
[JsonPropertyName("Microsoft.VSTS.Scheduling.TargetDate")] public DateTime MicrosoftVSTSSchedulingTargetDate { get; } // { init; get; }
|
||||||
|
|
||||||
[JsonPropertyName("System.TeamProject")]
|
|
||||||
public string SystemTeamProject { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.IterationPath")]
|
|
||||||
public string SystemIterationPath { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.WorkItemType")]
|
|
||||||
public string SystemWorkItemType { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.State")]
|
|
||||||
public string SystemState { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.Reason")]
|
|
||||||
public string SystemReason { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("Custom.Requester")]
|
|
||||||
public CustomRequester CustomRequester { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.AssignedTo")]
|
|
||||||
public SystemAssignedTo SystemAssignedTo { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.CreatedDate")]
|
|
||||||
public DateTime SystemCreatedDate { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.CreatedBy")]
|
|
||||||
public SystemCreatedBy SystemCreatedBy { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.ChangedDate")]
|
|
||||||
public DateTime SystemChangedDate { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.ChangedBy")]
|
|
||||||
public SystemChangedBy SystemChangedBy { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.CommentCount")]
|
|
||||||
public int SystemCommentCount { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.Title")]
|
|
||||||
public string SystemTitle { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("Microsoft.VSTS.Common.StateChangeDate")]
|
|
||||||
public DateTime MicrosoftVSTSCommonStateChangeDate { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("Microsoft.VSTS.Common.Priority")]
|
|
||||||
public int MicrosoftVSTSCommonPriority { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.Description")]
|
|
||||||
public string SystemDescription { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.Tags")]
|
|
||||||
public string SystemTags { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("System.History")]
|
|
||||||
public string SystemHistory { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("Microsoft.VSTS.Scheduling.Effort")]
|
|
||||||
public float? Effort { get; } // { init; get; }
|
|
||||||
|
|
||||||
[JsonPropertyName("Microsoft.VSTS.Scheduling.TargetDate")]
|
|
||||||
public DateTime TargetDate { get; } // { init; get; }
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user