我正在尝试为度假或休假的人找到时间段,并在telerik调度程序组件中阻止时间我遇到的问题是使用多种资源,而不仅仅是将一个人从他们的所有人身上拉下来
/// <summary>
/// Handles the TimeSlotCreated event of the apertureAppointments control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="TimeSlotCreatedEventArgs"/> instance containing the event data.</param>
protected void apertureAppointments_TimeSlotCreated(object sender, TimeSlotCreatedEventArgs e)
{
int i = 0;
bool isFound = false;
List<tblApertureNetShiftPattern> _list = new List<tblApertureNetShiftPattern>();
_list = _dal.getHolidays();
List<Resource> resources = new List<Resource>(apertureAppointments.Resources.GetResourcesByType("Managers"));
Resource res = resources[5];
foreach (tblApertureNetShiftPattern sp in _list)
{
if (_list.Count > 1)
i++;
else
i = 0;
DateTime? dt1 = _list[i].startdate;
DateTime? dt2 = _list[i].endDate;
if (sp.manager_name == "Adam Adair" && res.Text == "Adam Adair")
{
isFound = true;
if (DoDateRangesOverlap(e.TimeSlot.Start, e.TimeSlot.End, dt1, dt2) && isFound == true)
{
e.TimeSlot.CssClass = "UnavailableCssStyle";
dt1 = null;
dt2 = null;
isFound = false;
}
}
else if (sp.manager_name == "Clare Coyle" && res.Text == "Clare Coyle")
{
if (DoDateRangesOverlap(e.TimeSlot.Start, e.TimeSlot.End, dt1, dt2) && isFound == false)
{
e.TimeSlot.CssClass = "UnavailableCssStyle";
}
}
else if (sp.manager_name == "Christine Clarke" && res.Text == "Christine Clarke")
{
if (DoDateRangesOverlap(e.TimeSlot.Start, e.TimeSlot.End, dt1, dt2) && isFound == false)
{
e.TimeSlot.CssClass = "UnavailableCssStyle";
}
}
else if (sp.manager_name == "Conan Keenan" && res.Text == "Conan Keenan" && isFound == false)
{
if (DoDateRangesOverlap(e.TimeSlot.Start, e.TimeSlot.End, dt1, dt2) && isFound == false)
{
e.TimeSlot.CssClass = "UnavailableCssStyle";
}
}
else if (sp.manager_name == "Susie McCormick" && res.Text == "Susie McCormick")
{
if (DoDateRangesOverlap(e.TimeSlot.Start, e.TimeSlot.End, dt1, dt2) && isFound == false)
{
e.TimeSlot.CssClass = "UnavailableCssStyle";
}
}
}
}
其中只有一个条目是Adam Adair,而是为了关闭此人的所有细胞。
获得假期只返回一个项目列表。
public List<tblApertureNetShiftPattern> getHolidays()
{
List<tblApertureNetShiftPattern> list = new List<tblApertureNetShiftPattern>();
var q = from _holidays in apertureNetEntities.tblApertureNetShiftPatterns.Where(w => w.isDeleted == false && w.isOff == true)
select _holidays;
list = q.ToList();
return list;
}
只有一条记录及其admam adair关闭