Hierarchy

Properties

Readonly default

default: true

Признак того, что данный календарь используется «по умолчанию».

Optional description

description: undefined | string

Описание.

Readonly id

id: string

Уникальный идентификатор (uuid).

name

name: string

Название.

Methods

delete

  • delete(): Promise<void>
  • Удаляет календарь.

    Returns Promise<void>

getDays

  • getDays(from: TDate, to: TDate, startAt?: TDate): Promise<readonly Readonly<WorkCalendarDay>[]>
  • getDays(year: number, startAt?: TDate): Promise<readonly Readonly<WorkCalendarDay>[]>
  • Возвращает дни календаря за указанный период.

    Parameters

    Returns Promise<readonly Readonly<WorkCalendarDay>[]>

  • Возвращает дни календаря за указанный год.

    Parameters

    • year: number
    • Optional startAt: TDate

    Returns Promise<readonly Readonly<WorkCalendarDay>[]>

getSchedule

  • Получить рабочий график (цикл).

    У рабочего календаря по умолчанию может быть только недельный рабочий график.

    Пример:

    // получаем рабочий календарь «по умолчанию»
    const workCalendar = await System.productionSchedule.workCalendars.getDefault();
    // заполняем недельный рабочий график (цикл)
    const workSchedule: WorkSchedule<'weekly'> = {
        type: 'weekly',
        cycle: [],
    };
    for (let i = 1; i <= 7; i++ ) {
        const daySettings: CalendarDaySettings = {
            startAt: new TTime(9, 0, 0, 0),
            endAt: new TTime(18, 0, 0, 0),
            breaks: [
                {
                    startAt: new TTime(12, 0, 0, 0),
                    endAt: new TTime(13, 0, 0, 0),
                    description: 'Перерыв на обед',
                },
            ];
            isWorkingDay: true,
            isHolidayDay: false,
        };
        switch (i) {
            case 1:
                daySettings.description = 'Понедельник';
                break;
            case 2:
                daySettings.description = 'Вторник';
                break;
            case 3:
                daySettings.description = 'Среда';
                break;
            case 4:
                daySettings.description = 'Четверг';
                break;
            case 5:
                daySettings.description = 'Пятница';
                break;
            case 6:
                daySettings.isWorkingDay = false;
                daySettings.isHolidayDay = false;
                daySettings.description = 'Суббота';
                break;
            case 7:
                daySettings.isWorkingDay = false;
                daySettings.isHolidayDay = false;
                daySettings.description = 'Воскресенье';
                break;
        }
        workSchedule.cycle.push(daySettings);
    }
    // применяем рабочий график к календарю
    workCalendar.setSchedule(workSchedule);
    // сохраняем рабочий календарь
    await workCalendar.save();
    

    Returns Readonly<WorkSchedule<"weekly">>

getSpecialCalendar

resetSpecialCalendar

  • resetSpecialCalendar(): void
  • Отвязать календарь исключительных дней.

    Returns void

save

  • save(): Promise<void>
  • Сохраняет сделанные в календаре изменения.

    Returns Promise<void>

setSchedule

  • Задать рабочий график (цикл).

    Parameters

    Returns void

setSpecialCalendar