Class Calendar
Namespace: Aspose.Tasks
Assembly: Aspose.Tasks.dll (25.2.0)
Reprezentuje kalendář používaný v projektu.
[ClassInterface(ClassInterfaceType.AutoDual)]
public class Calendar
Dědičnost
Děděné členy
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Příklady
Jak vytvořit jednoduchý kalendář od nuly.
// vytvoření prázdného kalendáře
Calendar calendar = new Calendar("Nový kalendář");
// přidání výchozích pracovních dnů (8 pracovních hodin od 9:00 do 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
// vytvoření nového pracovního dne
WeekDay myWeekDay = new WeekDay(DayType.Thursday);
// Nastavení pracovního času. Pouze časová část DateTime je důležitá
WorkingTime wt1 = new WorkingTime();
wt1.FromTime = new DateTime(1, 1, 1, 6, 0, 0, 0);
wt1.ToTime = new DateTime(1, 1, 1, 12, 0, 0, 0);
WorkingTime wt2 = new WorkingTime();
wt2.FromTime = new DateTime(1, 1, 1, 14, 0, 0, 0);
wt2.ToTime = new DateTime(1, 1, 1, 18, 0, 0, 0);
myWeekDay.WorkingTimes.Add(wt1);
myWeekDay.WorkingTimes.Add(wt2);
myWeekDay.DayWorking = true;
calendar.Days.Add(myWeekDay);
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday));
// přidání víkendu
calendar.Days.Add(new WeekDay(DayType.Saturday));
calendar.Days.Add(new WeekDay(DayType.Sunday));
csharp
[VB]
’ vytvoření prázdného kalendáře
Dim calendar As Calendar = New Calendar(“Nový kalendář”)
’ přidání výchozích pracovních dnů (8 pracovních hodin od 9:00 do 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday))
’ vytvoření nového pracovního dne
Dim myWeekDay As WeekDay = New WeekDay(DayType.Thursday)
’ Nastavení pracovního času. Pouze časová část DateTime je důležitá
Dim wt1 As WorkingTime = New WorkingTime()
wt1.FromTime = New DateTime(1, 1, 1, 6, 0, 0, 0)
wt1.ToTime = New DateTime(1, 1, 1, 12, 0, 0, 0)
Dim wt2 As WorkingTime = New WorkingTime()
wt2.FromTime = New DateTime(1, 1, 1, 14, 0, 0, 0)
wt2.ToTime = New DateTime(1, 1, 1, 18, 0, 0, 0)
myWeekDay.WorkingTimes.Add(wt1)
myWeekDay.WorkingTimes.Add(wt2)
myWeekDay.DayWorking = True
calendar.Days.Add(myWeekDay)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday))
’ přidání víkendu
calendar.Days.Add(New WeekDay(DayType.Saturday))
calendar.Days.Add(New WeekDay(DayType.Sunday))
## Poznámky
Kalendáře se používají k definování standardních pracovních a nepracovních časů.
Projekty musí mít jeden základní kalendář. Úkoly a zdroje mohou mít
své vlastní ne-základní kalendáře, které jsou založeny na základním kalendáři.
## Vlastnosti
### <a id="Aspose_Tasks_Calendar_BaseCalendar"></a> BaseCalendar
Získá nebo nastaví základní kalendář, na kterém tento kalendář závisí.
Použitelné pouze v případě, že kalendář není základní kalendář.
```csharp
public Calendar BaseCalendar { get; set; }
Hodnota vlastnosti
Exceptions
Získá objekt CalendarExceptionCollection.
Kolekce výjimek spojených s kalendářem.
public CalendarExceptionCollection Exceptions { get; }
Hodnota vlastnosti
Guid
Získá Guid kalendáře.
public string Guid { get; }
Hodnota vlastnosti
IsBaseCalendar
Získá hodnotu, která indikuje, zda je kalendář základním kalendářem.
public bool IsBaseCalendar { get; }
Hodnota vlastnosti
IsBaselineCalendar
Získá nebo nastaví hodnotu, která indikuje, zda je kalendář základním kalendářem.
public bool IsBaselineCalendar { get; set; }
Hodnota vlastnosti
Name
Získá nebo nastaví název kalendáře.
public string Name { get; set; }
Hodnota vlastnosti
Uid
Získá nebo nastaví jedinečný identifikátor kalendáře.
public int Uid { get; set; }
Hodnota vlastnosti
WeekDays
Získá WeekDaysCollection pro tento kalendář.
Kolekce pracovních dnů, která definuje kalendář.
public WeekDayCollection WeekDays { get; }
Hodnota vlastnosti
WorkWeeks
Získá objekt WorkWeekCollections.
Kolekce pracovních týdnů spojených s kalendářem.
public WorkWeekCollection WorkWeeks { get; }
Hodnota vlastnosti
Metody
Delete()
Odstraní kalendář z projektu.
public void Delete()
Equals(object)
Vrátí hodnotu indikující, zda je tato instance rovna zadanému objektu.
public override bool Equals(object obj)
Parametry
obj
object
Objekt, se kterým se má tato instance porovnat.
Návratová hodnota
True, pokud je o kalendář, který má stejnou hodnotu Uid jako tato instance; jinak false.
GetFinishDateByStartAndWork(DateTime, Duration)
Vypočítá datum, kdy uplyne zadané množství pracovního času podle kalendáře.
public DateTime GetFinishDateByStartAndWork(DateTime start, Duration work)
Parametry
start
DateTime
Datum začátku.
work
Duration
Doba trvání práce.
Návratová hodnota
Datum dokončení.
GetFinishDateByStartAndWork(DateTime, TimeSpan)
Vypočítá datum, kdy uplyne zadané množství pracovního času podle kalendáře.
public DateTime GetFinishDateByStartAndWork(DateTime start, TimeSpan work)
Parametry
start
DateTime
Datum začátku.
work
TimeSpan
Doba trvání práce.
Návratová hodnota
Datum dokončení.
GetHashCode()
Vrátí hash kód pro instanci třídy.
public override int GetHashCode()
Návratová hodnota
hash kód pro tento objekt.
GetNextWorkingDayStart(DateTime)
Vypočítá začátek následujícího pracovního dne od zadaného data.
public DateTime GetNextWorkingDayStart(DateTime date)
Parametry
date
DateTime
Datum, pro které se má získat začátek následujícího pracovního dne.
Návratová hodnota
Začátek následujícího pracovního dne System.DateTime.
GetPreviousWorkingDayEnd(DateTime)
Vypočítá konec předchozího pracovního dne od zadaného data.
public DateTime GetPreviousWorkingDayEnd(DateTime date)
Parametry
date
DateTime
zadaná instance struktury System.DateTime.
Návratová hodnota
Konec předchozího pracovního dne System.DateTime
GetStartDateFromFinishAndDuration(DateTime, Duration)
Vrátí StartDate na základě zadaného FinishDate a Doba trvání.
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, Duration duration)
Parametry
finish
DateTime
Zadané datum dokončení.
duration
Duration
Zadaná doba trvání práce.
Návratová hodnota
Vypočítaný StartDate.
GetStartDateFromFinishAndDuration(DateTime, TimeSpan)
Vrátí StartDate na základě zadaného FinishDate a Doba trvání.
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, TimeSpan duration)
Parametry
finish
DateTime
Zadané datum dokončení.
duration
TimeSpan
Zadaná doba trvání práce.
Návratová hodnota
Vypočítaný StartDate.
GetTaskFinishDateFromDuration(Task, TimeSpan)
Vypočítá datum a čas dokončení úkolu na základě jeho data zahájení, rozdělených částí a doby trvání.
public DateTime GetTaskFinishDateFromDuration(Task task, TimeSpan duration)
Parametry
task
Task
Úkol, pro který se má získat datum dokončení.
duration
TimeSpan
Doba trvání úkolu k rozdělení.
Návratová hodnota
Datum dokončení úkolu.
Poznámky
Vrátí DateTime.MinValue, pokud je úkol shrnutí, null nebo pokud není nastavena jeho datum zahájení.
GetWorkingHours(DateTime, DateTime)
Vrátí pracovní hodiny pro zadaná data.
public WorkUnit GetWorkingHours(DateTime start, DateTime finish)
Parametry
start
DateTime
Datum začátku.
finish
DateTime
Datum dokončení.
Návratová hodnota
Pracovní hodiny.
GetWorkingHours(DateTime)
Vrátí množství pracovních hodin v daném datu.
public TimeSpan GetWorkingHours(DateTime dt)
Parametry
dt
DateTime
Datum, pro které se mají získat pracovní hodiny.
Návratová hodnota
Pracovní hodiny.
GetWorkingTimes(DateTime)
Vrátí Aspose.Tasks.WorkingTimeCollection pracovních časů pro zadané datum.
public WorkingTimeCollection GetWorkingTimes(DateTime dt)
Parametry
dt
DateTime
Datum, pro které se mají získat pracovní časy.
Návratová hodnota
Seznam Aspose.Tasks.WorkingTime.
IsDayWorking(DateTime)
Určuje, zda je den pracovním dnem.
public bool IsDayWorking(DateTime dt)
Parametry
dt
DateTime
Datum, pro které se má zkontrolovat, zda je pracovním dnem.
Návratová hodnota
True, pokud je den pracovním dnem.
Make24HourCalendar(Calendar)
Upraví daný kalendář na 24hodinový kalendář.
24hodinový kalendář je kalendář, ve kterém je každý den v týdnu pracovním dnem s nepřetržitými pracovními hodinami.
public static Calendar Make24HourCalendar(Calendar calendar)
Parametry
calendar
Calendar
Kalendář, ze kterého se má vytvořit 24hodinový kalendář.
Návratová hodnota
24hodinový kalendář.
MakeNightShiftCalendar(Calendar)
Upraví daný kalendář na kalendář noční směny.
public static Calendar MakeNightShiftCalendar(Calendar calendar)
Parametry
calendar
Calendar
Kalendář, ze kterého se má vytvořit kalendář noční směny.
Návratová hodnota
Kalendář noční směny.
MakeStandardCalendar(Calendar)
Vytvoří výchozí standardní kalendář.
public static Calendar MakeStandardCalendar(Calendar calendar)
Parametry
calendar
Calendar
Kalendář, ze kterého se má vytvořit standardní kalendář.
Návratová hodnota
Kalendář s 5 pracovními dny (pondělí-pátek) s pracovními časy 8-12 a 13-17.