Class Calendar

Class Calendar

Namespace: Aspose.Tasks
Assembly: Aspose.Tasks.dll (25.2.0)

แสดงถึงปฏิทินที่ใช้ในโครงการ

[ClassInterface(ClassInterfaceType.AutoDual)]
public class Calendar

การสืบทอด

objectCalendar

สมาชิกที่สืบทอด

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

ตัวอย่าง

วิธีสร้างปฏิทินง่ายๆ จากศูนย์

// สร้างปฏิทินว่าง
Calendar calendar = new Calendar("New calendar");
// เพิ่มวันทำงานเริ่มต้น (8 ชั่วโมงทำงานตั้งแต่ 9:00 ถึง 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
// สร้างวันทำงานใหม่
WeekDay myWeekDay = new WeekDay(DayType.Thursday);
// ตั้งเวลาทำงาน ส่วนที่สำคัญคือเฉพาะเวลาของ DateTime
    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));
// เพิ่มวันหยุดสุดสัปดาห์
calendar.Days.Add(new WeekDay(DayType.Saturday));
calendar.Days.Add(new WeekDay(DayType.Sunday));
```````csharp
[VB]
       ' สร้างปฏิทินว่าง
       Dim calendar As Calendar =  New Calendar("New calendar")
       ' เพิ่มวันทำงานเริ่มต้น (8 ชั่วโมงทำงานตั้งแต่ 9:00 ถึง 17:00)
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday))
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday))
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday))
       ' สร้างวันทำงานใหม่
       Dim myWeekDay As WeekDay =  New WeekDay(DayType.Thursday)
       ' ตั้งเวลาทำงาน ส่วนที่สำคัญคือเฉพาะเวลาของ DateTime
           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))
       ' เพิ่มวันหยุดสุดสัปดาห์
       calendar.Days.Add(New WeekDay(DayType.Saturday))
       calendar.Days.Add(New WeekDay(DayType.Sunday))

หมายเหตุ

ปฏิทินใช้เพื่อกำหนดเวลาทำงานและเวลาที่ไม่ทำงานตามมาตรฐาน โครงการต้องมีปฏิทินพื้นฐานหนึ่งรายการ งานและทรัพยากรสามารถมีปฏิทินที่ไม่ใช่พื้นฐานของตนเองซึ่งอิงจากปฏิทินพื้นฐาน

คุณสมบัติ

BaseCalendar

รับหรือกำหนดปฏิทินพื้นฐานที่ปฏิทินนี้ขึ้นอยู่กับ โดยจะใช้ได้เฉพาะเมื่อปฏิทินไม่ใช่ปฏิทินพื้นฐาน

public Calendar BaseCalendar { get; set; }

ค่าคุณสมบัติ

Calendar

Exceptions

รับ CalendarExceptionCollection object คอลเลกชันของข้อยกเว้นที่เกี่ยวข้องกับปฏิทิน

public CalendarExceptionCollection Exceptions { get; }

ค่าคุณสมบัติ

CalendarExceptionCollection

Guid

รับ Guid ของปฏิทิน

public string Guid { get; }

ค่าคุณสมบัติ

string

IsBaseCalendar

รับค่าที่บ่งชี้ว่าปฏิทินเป็นปฏิทินพื้นฐานหรือไม่

public bool IsBaseCalendar { get; }

ค่าคุณสมบัติ

bool

IsBaselineCalendar

รับหรือกำหนดค่าที่บ่งชี้ว่าปฏิทินเป็นปฏิทินพื้นฐานหรือไม่

public bool IsBaselineCalendar { get; set; }

ค่าคุณสมบัติ

bool

Name

รับหรือกำหนดชื่อของปฏิทิน

public string Name { get; set; }

ค่าคุณสมบัติ

string

Uid

รับหรือกำหนดหมายเลขประจำตัวที่ไม่ซ้ำของปฏิทิน

public int Uid { get; set; }

ค่าคุณสมบัติ

int

WeekDays

รับ WeekDaysCollection สำหรับปฏิทินนี้ คอลเลกชันของวันในสัปดาห์ที่กำหนดปฏิทิน

public WeekDayCollection WeekDays { get; }

ค่าคุณสมบัติ

WeekDayCollection

WorkWeeks

รับ WorkWeekCollections object คอลเลกชันของสัปดาห์ทำงานที่เกี่ยวข้องกับปฏิทิน

public WorkWeekCollection WorkWeeks { get; }

ค่าคุณสมบัติ

WorkWeekCollection

วิธีการ

Delete()

ลบปฏิทินออกจากโครงการ

public void Delete()

Equals(object)

ส่งคืนค่าที่บ่งชี้ว่าตัวอย่างนี้เท่ากับวัตถุที่ระบุหรือไม่

public override bool Equals(object obj)

พารามิเตอร์

obj object

วัตถุเพื่อเปรียบเทียบกับตัวอย่างนี้

ส่งคืน

bool

True หาก o เป็น Calendar ที่มีค่า Uid เท่ากับตัวอย่างนี้; มิฉะนั้น false.

GetFinishDateByStartAndWork(DateTime, Duration)

คำนวณวันที่เมื่อเวลาทำงานที่กำหนดจะผ่านตามปฏิทิน

public DateTime GetFinishDateByStartAndWork(DateTime start, Duration work)

พารามิเตอร์

start DateTime

วันที่เริ่มต้น

work Duration

ระยะเวลาทำงาน

ส่งคืน

DateTime

วันที่เสร็จสิ้น

GetFinishDateByStartAndWork(DateTime, TimeSpan)

คำนวณวันที่เมื่อเวลาทำงานที่กำหนดจะผ่านตามปฏิทิน

public DateTime GetFinishDateByStartAndWork(DateTime start, TimeSpan work)

พารามิเตอร์

start DateTime

วันที่เริ่มต้น

work TimeSpan

ระยะเวลาทำงาน

ส่งคืน

DateTime

วันที่เสร็จสิ้น

GetHashCode()

ส่งคืนรหัสแฮชสำหรับตัวอย่างของคลาส

public override int GetHashCode()

ส่งคืน

int

รหัสแฮชสำหรับวัตถุนี้

GetNextWorkingDayStart(DateTime)

คำนวณวันทำงานถัดไปเริ่มต้นจากวันที่

public DateTime GetNextWorkingDayStart(DateTime date)

พารามิเตอร์

date DateTime

วันที่เพื่อรับวันทำงานถัดไปเริ่มต้น

ส่งคืน

DateTime

วันทำงานถัดไปเริ่มต้น System.DateTime

GetPreviousWorkingDayEnd(DateTime)

คำนวณวันทำงานก่อนหน้าจากวันที่ที่ระบุ

public DateTime GetPreviousWorkingDayEnd(DateTime date)

พารามิเตอร์

date DateTime

ตัวอย่างของโครงสร้าง System.DateTime ที่ระบุ

ส่งคืน

DateTime

วันทำงานก่อนหน้าเริ่มต้น System.DateTime

GetStartDateFromFinishAndDuration(DateTime, Duration)

ส่งคืน StartDate ตาม FinishDate และ Duration ที่ระบุ

public DateTime GetStartDateFromFinishAndDuration(DateTime finish, Duration duration)

พารามิเตอร์

finish DateTime

วันที่เสร็จสิ้นที่ระบุ

duration Duration

ระยะเวลาทำงานที่ระบุ

ส่งคืน

DateTime

StartDate ที่คำนวณแล้ว

GetStartDateFromFinishAndDuration(DateTime, TimeSpan)

ส่งคืน StartDate ตาม FinishDate และ Duration ที่ระบุ

public DateTime GetStartDateFromFinishAndDuration(DateTime finish, TimeSpan duration)

พารามิเตอร์

finish DateTime

วันที่เสร็จสิ้นที่ระบุ

duration TimeSpan

ระยะเวลาทำงานที่ระบุ

ส่งคืน

DateTime

StartDate ที่คำนวณแล้ว

GetTaskFinishDateFromDuration(Task, TimeSpan)

คำนวณวันที่และเวลาที่เสร็จสิ้นของงานจากวันที่เริ่มต้น ส่วนที่แยกออกและระยะเวลา

public DateTime GetTaskFinishDateFromDuration(Task task, TimeSpan duration)

พารามิเตอร์

task Task

งานเพื่อรับวันที่เสร็จสิ้น

duration TimeSpan

ระยะเวลาของงานที่จะแยกออก

ส่งคืน

DateTime

วันที่เสร็จสิ้นของงาน

หมายเหตุ

ส่งคืน DateTime.MinValue หากงานเป็นสรุป, null หรือวันที่เริ่มต้นไม่ได้ตั้งค่า

GetWorkingHours(DateTime, DateTime)

ส่งคืนชั่วโมงทำงานสำหรับวันที่ที่ระบุ

public WorkUnit GetWorkingHours(DateTime start, DateTime finish)

พารามิเตอร์

start DateTime

วันที่เริ่มต้น

finish DateTime

วันที่เสร็จสิ้น

ส่งคืน

WorkUnit

ชั่วโมงทำงาน

GetWorkingHours(DateTime)

ส่งคืนจำนวนชั่วโมงทำงานในวันที่

public TimeSpan GetWorkingHours(DateTime dt)

พารามิเตอร์

dt DateTime

วันที่เพื่อรับชั่วโมงทำงาน

ส่งคืน

TimeSpan

ชั่วโมงทำงาน

GetWorkingTimes(DateTime)

ส่งคืน Aspose.Tasks.WorkingTimeCollection ของเวลาทำงานสำหรับวันที่ที่ระบุ

public WorkingTimeCollection GetWorkingTimes(DateTime dt)

พารามิเตอร์

dt DateTime

วันที่เพื่อรับเวลาทำงาน

ส่งคืน

WorkingTimeCollection

รายการของ Aspose.Tasks.WorkingTime

IsDayWorking(DateTime)

กำหนดว่าวันนั้นเป็นวันทำงานหรือไม่

public bool IsDayWorking(DateTime dt)

พารามิเตอร์

dt DateTime

วันที่เพื่อตรวจสอบว่าวันนั้นทำงานหรือไม่

ส่งคืน

bool

True หากวันนั้นเป็นวันทำงาน

Make24HourCalendar(Calendar)

ทำให้ปฏิทินที่กำหนดเป็นปฏิทิน 24 ชั่วโมง ปฏิทิน 24 ชั่วโมงคือปฏิทินที่ทุกวันในสัปดาห์ทำงานตลอด 24 ชั่วโมง

public static Calendar Make24HourCalendar(Calendar calendar)

พารามิเตอร์

calendar Calendar

ปฏิทินเพื่อทำให้เป็นปฏิทิน 24 ชั่วโมง

ส่งคืน

Calendar

ปฏิทิน 24 ชั่วโมง

MakeNightShiftCalendar(Calendar)

ทำให้ปฏิทินที่กำหนดเป็นปฏิทินกะกลางคืน

public static Calendar MakeNightShiftCalendar(Calendar calendar)

พารามิเตอร์

calendar Calendar

ปฏิทินเพื่อทำให้เป็นปฏิทินกะกลางคืน

ส่งคืน

Calendar

ปฏิทินกะกลางคืน

MakeStandardCalendar(Calendar)

สร้างปฏิทินมาตรฐานเริ่มต้น

public static Calendar MakeStandardCalendar(Calendar calendar)

พารามิเตอร์

calendar Calendar

ปฏิทินเพื่อทำให้เป็นปฏิทินมาตรฐาน

ส่งคืน

Calendar

ปฏิทินที่มีวันทำงาน 5 วัน (จันทร์-ศุกร์) โดยมีเวลาทำงาน 8-12 และ 13-17

 แบบไทย