本文整理汇总了C#中Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.FinishDate方法的典型用法代码示例。如果您正苦于以下问题:C# WorkItem.FinishDate方法的具体用法?C# WorkItem.FinishDate怎么用?C# WorkItem.FinishDate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem
的用法示例。
在下文中一共展示了WorkItem.FinishDate方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VerifyFinishDate
internal static WorkItemVerificationResult VerifyFinishDate(WorkItem workItem)
{
DateTime? finishDate = workItem.FinishDate();
if (finishDate == null || finishDate.Value.Date >= DateTime.Now.Date)
return new WorkItemVerificationResult {Result = VerificationResult.Ok};
return new WorkItemVerificationResult
{
Result = workItem.Type.Name == WorkItemType.LeadTask
? VerificationResult.Error
: VerificationResult.Warning,
Messages = new List<string>(1) {Messages.ExpiredFd()},
};
}
示例2: AddDatesActive
internal static int AddDatesActive(
ViewColumnsIndexes viewColumnsIndexes,
FreeDaysCalculator freeDaysCalculator,
FocusFactorCalculator focusFactorCalculator,
WorkItem workItem,
DataGridViewRow row,
int startInd,
string user,
string userMark)
{
var taskStart = workItem.StartDate();
var taskFinish = workItem.FinishDate();
DateTime today = DateTime.Now.Date;
if (taskFinish == null || taskFinish.Value.Date < today)
{
if (taskFinish != null)
row.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1].Value = taskFinish.Value.ToString("dd.MM");
var verificationResult = WorkItemVerifier.VerifyFinishDate(workItem);
row.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1].SetColorByVerification(verificationResult.Result);
row.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1].ToolTipText = verificationResult.AllMessagesString;
double? remaining = workItem.Remaining();
if (remaining != null)
{
var length = focusFactorCalculator.CalculateDaysByTime(remaining.Value, user);
return AddDates(
viewColumnsIndexes,
freeDaysCalculator,
row,
startInd,
length,
false,
user,
userMark);
}
}
else if (taskStart.HasValue)
{
int maxInd = row.Cells.Count - viewColumnsIndexes.FirstDateColumnIndex - 1;
var indStart = (int)taskStart.Value.Date.Subtract(today).TotalDays;
if (indStart < 0)
row.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1].Value = taskStart.Value.ToString("dd.MM");
indStart = Math.Min(Math.Max(1, indStart), maxInd) + viewColumnsIndexes.FirstDateColumnIndex;
var indFinish = (int)taskFinish.Value.Date.Subtract(today).TotalDays;
indFinish = Math.Min(Math.Max(1, indFinish), maxInd) + viewColumnsIndexes.FirstDateColumnIndex;
AddDates(
viewColumnsIndexes,
freeDaysCalculator,
row,
indStart,
indFinish - indStart + 1,
true,
user,
userMark);
return indFinish + 1;
}
return viewColumnsIndexes.FirstDateColumnIndex;
}
示例3: GetDaysCount
private static int GetDaysCount(
WorkItem task,
string user,
Dictionary<int, Tuple<int?, int>> scheduledTasksDict,
FreeDaysCalculator freeDaysCalculator,
FocusFactorCalculator focusFactorCalculator)
{
if (task.IsActive())
{
DateTime? finishDate = task.FinishDate();
int finish = scheduledTasksDict.ContainsKey(task.Id)
? scheduledTasksDict[task.Id].Item2
: (finishDate == null
? 0
: freeDaysCalculator.GetDaysCount(finishDate.Value, user));
double? remaining = task.Remaining();
if (remaining != null && remaining > 0)
{
int finishByRemaining = focusFactorCalculator.CalculateDaysByTime(remaining.Value, user);
if (finish < finishByRemaining)
finish = finishByRemaining;
}
return finish;
}
double? estimate = task.Estimate();
return estimate == null
? 0
: focusFactorCalculator.CalculateDaysByTime(estimate.Value, user);
}
示例4: AddDatesProposed
internal static int AddDatesProposed(
ViewColumnsIndexes viewColumnsIndexes,
FreeDaysCalculator freeDaysCalculator,
FocusFactorCalculator focusFactorCalculator,
WorkItem task,
DataGridViewRow taskRow,
int startInd,
string user,
string userMark,
bool shouldCheckEstimate)
{
var verificationResult = WorkItemVerifier.VerifyEstimatePresence(task);
if (verificationResult.Result != VerificationResult.Ok)
{
if (shouldCheckEstimate)
{
var estimateCell = taskRow.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1];
estimateCell.SetColorByVerification(verificationResult.Result);
estimateCell.ToolTipText = verificationResult.AllMessagesString;
}
return viewColumnsIndexes.FirstDateColumnIndex;
}
double? estimate = task.Estimate();
var length = focusFactorCalculator.CalculateDaysByTime(estimate.Value, user);
DateTime? finish = task.FinishDate();
if (finish != null)
{
verificationResult = WorkItemVerifier.VerifyFinishDate(task);
var estimateCell = taskRow.Cells[viewColumnsIndexes.FirstDateColumnIndex - 1];
estimateCell.SetColorByVerification(verificationResult.Result);
estimateCell.ToolTipText = verificationResult.AllMessagesString;
estimateCell.Value = finish.Value.ToString("dd.MM");
int finishShift = length - 1;
DateTime startDate = finish.Value.Date;
DateTime today = DateTime.Now.Date;
while (finishShift > 0 && startDate >= today)
{
startDate = startDate.AddDays(-1);
if (freeDaysCalculator.GetDayType(startDate, user) == DayType.WorkDay)
--finishShift;
}
if (finishShift == 0)
{
var startShift = (int) startDate.Subtract(today).TotalDays;
startInd = Math.Max(startInd, startShift + viewColumnsIndexes.FirstDateColumnIndex);
}
else
{
length -= finishShift;
}
}
return AddDates(
viewColumnsIndexes,
freeDaysCalculator,
taskRow,
startInd,
length,
false,
user,
userMark);
}