Hierarchy

  • BaseWorkCalendar
    • DefaultWorkCalendar

Properties

Readonly default

default: true

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

Optional description

description: undefined | string

Описание.

Readonly id

id: string

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

name

name: string

Название.

Methods

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: [
            {
                isWorkingDay: false,
                description: "Воскресенье"
            },
            {
                useDefault: true,
                description: "Понедельник"
            },
            {
                useDefault: true,
                description: "Вторник"
            },
            {
                useDefault: true,
                description: "Среда"
            },
            {
                useDefault: true,
                description: "Четверг"
            },
            {
                useDefault: true,
                description: "Пятница"
            },
            {
                isWorkingDay: false,
                description: "Суббота"
            },
        ],
        defaultDaySettings: {
            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,
        },
    };
    // Применяем рабочий график к календарю
    workCalendar.setSchedule(workSchedule);
    // Сохраняем рабочий календарь
    await workCalendar.save();
    

    Returns Readonly<WorkSchedule<"weekly", CalendarScheduleDaySettings>>

getSpecialCalendar

  • Получить связанный календарь исключительных дней.

    Returns Promise<SpecialCalendar | undefined>

resetSpecialCalendar

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

    Returns void

save

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

    Returns Promise<void>

setSchedule

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

    Parameters

    Returns void

setSpecialCalendar

  • Привязать календарь исключительных дней.

    Parameters

    Returns void