本文整理汇总了C#中Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Estimate方法的典型用法代码示例。如果您正苦于以下问题:C# WorkItem.Estimate方法的具体用法?C# WorkItem.Estimate怎么用?C# WorkItem.Estimate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem
的用法示例。
在下文中一共展示了WorkItem.Estimate方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VerifyEstimatePresence
internal static WorkItemVerificationResult VerifyEstimatePresence(WorkItem workItem)
{
double? estimate = workItem.Estimate();
if (estimate != null)
return new WorkItemVerificationResult { Result = VerificationResult.Ok };
return new WorkItemVerificationResult
{
Result = VerificationResult.Error,
Messages = new List<string>(1) { Messages.NoEstimate() },
};
}
示例2: FillTaskInfo
internal void FillTaskInfo(
ViewFiltersBuilder viewFiltersBuilder,
WorkItem task,
List<WorkItem> siblings,
WorkItem leadTask,
DataGridViewRow taskRow,
DataContainer data,
Dictionary<int, string> planningAssignments,
List<string> allUsers,
List<int> blockerIds)
{
var priorityCell = taskRow.Cells[m_viewColumnsIndexes.PriorityColumnIndex];
priorityCell.Value = task.Priority();
priorityCell.SetColorByState(task);
priorityCell.ToolTipText = task.State;
var idCell = taskRow.Cells[m_viewColumnsIndexes.IdColumnIndex];
idCell.Value = task.Id;
var verificationResult = WorkItemVerifier.VerifyTaskPriority(task, leadTask.Priority());
if (verificationResult.Result != VerificationResult.Ok)
{
idCell.SetColorByVerification(verificationResult.Result);
idCell.ToolTipText = verificationResult.AllMessagesString;
}
else
{
verificationResult = WorkItemVerifier.VerifyTaskWithParentOnSameIteration(task, leadTask);
if (verificationResult.Result != VerificationResult.Ok)
{
idCell.SetColorByVerification(verificationResult.Result);
idCell.ToolTipText = verificationResult.AllMessagesString;
}
}
var titleCell = taskRow.Cells[m_viewColumnsIndexes.TitleColumnIndex];
titleCell.Value = task.Title;
titleCell.ToolTipText = task.Discipline() + " " + task.Title;
titleCell.Style.BackColor = priorityCell.Style.BackColor;
var blockersCell = taskRow.Cells[m_viewColumnsIndexes.BlockersColumnIndex];
if (blockerIds != null)
{
string blockerIdsStr = string.Join(",", blockerIds);
blockersCell.Value = blockerIdsStr;
verificationResult = WorkItemVerifier.VerifyNonChildBlockerExistance(blockerIds, siblings);
if (verificationResult.Result == VerificationResult.Ok)
verificationResult = WorkItemVerifier.VerifyActiveTaskBlocking(task, blockerIds);
if (verificationResult.Result == VerificationResult.Ok)
{
blockerIdsStr = string.Join(Environment.NewLine, blockerIds.Select(b => data.WiDict[b].Title));
blockersCell.ToolTipText = blockerIdsStr;
}
else
{
blockersCell.SetColorByVerification(verificationResult.Result);
blockersCell.ToolTipText = verificationResult.AllMessagesString;
}
}
if (!string.IsNullOrEmpty(task.BlockingReason()))
{
if (!string.IsNullOrEmpty(blockersCell.ToolTipText))
blockersCell.ToolTipText += Environment.NewLine;
else
blockersCell.Value = task.BlockingReason();
blockersCell.ToolTipText += "Blocking Reason: " + task.BlockingReason();
}
var assignedCell = taskRow.Cells[m_viewColumnsIndexes.AssignedToColumnIndex];
var comboBoxCell = assignedCell as DataGridViewComboBoxCell;
if (comboBoxCell != null)
comboBoxCell.DataSource = allUsers;
assignedCell.Value = planningAssignments.GetAssignee(task);
verificationResult = WorkItemVerifier.VerifyAssignation(task);
if (verificationResult.Result != VerificationResult.Ok)
{
assignedCell.SetColorByVerification(verificationResult.Result);
assignedCell.ToolTipText = verificationResult.AllMessagesString;
}
var workCell = taskRow.Cells[m_viewColumnsIndexes.WorkColumnIndex];
workCell.Value = task.IsActive()
? task.Remaining()
: task.Estimate();
workCell.Style.BackColor = priorityCell.Style.BackColor;
}
示例3: GetFinishDay
private static int? GetFinishDay(
WorkItem task,
Dictionary<int, string> planningAssignments,
FocusFactorCalculator focusFactorCalculator,
Dictionary<int, Tuple<int?, int>> scheduledTasksDict)
{
int? result = null;
if (scheduledTasksDict.ContainsKey(task.Id))
{
var blockerSchedule = scheduledTasksDict[task.Id];
if (blockerSchedule.Item1 != null)
result = blockerSchedule.Item1.Value + blockerSchedule.Item2;
}
else
{
double? remaining = task.IsProposed()
? task.Estimate()
: task.Remaining();
if (remaining != null)
result = focusFactorCalculator.CalculateDaysByTime(
remaining.Value,
planningAssignments.GetAssignee(task));
}
return result;
}
示例4: 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);
}
示例5: 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);
}
示例6: GetWork
private static double GetWork(WorkItem workItem)
{
if (workItem.State == WorkItemState.Active)
return workItem.Remaining().Value;
return workItem.Estimate() ?? 0;
}