63 lines
2.1 KiB
C#
63 lines
2.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Project.Tasks.Editor
|
|
{
|
|
internal static class TaskBoardConstants
|
|
{
|
|
public const int MinutesPerHour = 60;
|
|
public const int HoursPerDay = 8;
|
|
public const int MinutesPerDay = HoursPerDay * MinutesPerHour;
|
|
public const int WorkDaysPerWeek = 5;
|
|
public const int MinutesPerWeek = WorkDaysPerWeek * MinutesPerDay;
|
|
|
|
public static readonly string[] Statuses = { "BackLog", "ToDo", "InProgress", "Review", "Done" };
|
|
public static readonly string[] Priorities = { "Lowest", "Low", "Medium", "High", "Highest" };
|
|
}
|
|
|
|
[Serializable]
|
|
internal sealed class TaskRecord
|
|
{
|
|
public string Id;
|
|
public string Title;
|
|
public string Status;
|
|
public string Priority;
|
|
public string Area;
|
|
public string Owner;
|
|
public string Created;
|
|
public string Updated;
|
|
public string ExecutionTime;
|
|
public string RelativeFilePath;
|
|
public string AbsoluteFilePath;
|
|
public string IndexSummary;
|
|
public string TaskSummary;
|
|
public int EstimatedMinutes = -1;
|
|
public string Header;
|
|
public string Why;
|
|
public string ExpectedOutcome;
|
|
public string CurrentContext;
|
|
public string AcceptanceCriteria;
|
|
public string Verification;
|
|
public string Risks;
|
|
public string HumanDecisions;
|
|
public string DecisionLog;
|
|
public string HandoffNotes;
|
|
public bool FileExists;
|
|
public bool DetailsLoaded;
|
|
public int IndexLineNumber = -1;
|
|
public readonly List<string> ValidationMessages = new List<string>();
|
|
}
|
|
|
|
[Serializable]
|
|
internal sealed class TaskBoardData
|
|
{
|
|
public string ProjectRoot;
|
|
public string TasksDirectory;
|
|
public string IndexPath;
|
|
public string OwnersConfigPath;
|
|
public readonly List<TaskRecord> Tasks = new List<TaskRecord>();
|
|
public readonly List<string> Warnings = new List<string>();
|
|
public readonly List<string> OwnerPresets = new List<string>();
|
|
}
|
|
}
|