You are viewing an old version of this page. View the current version.
Compare with Current View Page History
Version 1 Next »
Этот серверный класс представляет собой методы для работы с объектами SimpleSchedule, например, для получения названия расписания, определения соответствия текущего и рабочего времени и возврата разницы между двумя значениями времени.
SimpleSchedule(id, timezoneTitle)
Используйте этот метод, чтобы создать новый объект SimpleSchedule.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
id | String | Да | Нет |
timezoneTitle | String | Нет | 'UTC' |
Пример:
const schedule = new SimpleSchedule('157165292607666710', 'UTC');
duration(startDateTime, endDateTime)
Используйте этот метод, чтобы определить количество секунд в расписании между двумя значениями Datetime на основе часового пояса расписания или, если не указано, часового пояса сессии.
Передаваемое значение dateTime должно быть в расписании. Чтобы это проверить, используйте метод isInSchedule(datetime).
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
startDateTime | SimpleDateTime | Да | Нет |
endDateTime | SimpleDateTime | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
SimpleDuration | Разница между двумя значениями времени. |
Пример:
const startDatetime = new SimpleDateTime('2022-01-25 08:00:00'); const endDatetime = new SimpleDateTime('2022-01-29 08:00:00'); const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id const duration = schedule.duration(startDatetime, endDatetime); ss.info(duration.getValue()); // Info: 1970-01-02 08:00:00
getName()
Используйте этот метод, чтобы получить название определенного расписания.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Название расписания |
Пример:
const schedule = new SimpleSchedule('157165292607666710'); ss.info(schedule.getName()); // Info: 8x5 excluding Russian Holidays
isInSchedule(datetime)
Используйте этот метод, чтобы проверить, включает ли текущее расписание указанный параметр datetime или они не совпадают.
Исключенные сегменты расписания возвращают значение «true» при проверке этим методом.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
datetime | SimpleDateTime | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | This method returns 'true' if the specified datetime is in schedule; otherwise, it returns 'false'. |
Пример:
const nowDatetime = new SimpleDateTime(); const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id ss.info(schedule.isInSchedule(nowDatetime)); // Info: false
isValid()
Используйте этот метод, чтобы проверить валидность указанного объекта SimpleSchedule.
Объект считается невалидным, когда:
- Переданное расписание не существует.
- Расписание не содержит элементов расписания рабочего типа, например Исключая или Отгул.
В обоих случаях, указанных выше, метод isValid() возвращает значение "false".
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает значение "true", если расписание валидно, если нет, метод возвращает значение "false". |
Пример:
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id ss.info(schedule.isValid()); // Info: true
isWorkingTime(datetime)
Используйте этот метод, чтобы определить, является ли указанные время и дата рабочими.
Метод возвращает значение "true" для исключенных сегментов расписания.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
datetime | SimpleDateTime | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает значение "true", если указанные дата и время являются рабочим временем, в противном случае метод возвращает значение "false". |
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id const firstDatetime = new SimpleDateTime('2020-12-15 05:59:59'); const secondDatetime = new SimpleDateTime('2020-12-15 06:00:00'); ss.info(schedule.isWorkingTime(firstDatetime)); // Info: false ss.info(schedule.isWorkingTime(secondDatetime)); // Info: true
load(sysId, timezoneTitle)
Этот метод запускает расписание, указанное с помощью sys_id.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
sysId | String | Да | Нет |
timezoneTitle | String (empty string by default) | Нет | '' |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Этот метод не возвращает значение. |
Пример:
const schedule = new SimpleSchedule(); schedule.load('157165292607666710'); // sys_schedule.sys_id
setTimeZone(timezoneTitle)
Используйте этот метод, чтобы определить, какой часовой пояс применить к текущему расписанию.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
timezoneTitle | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Этот метод не возвращает значение. |
Пример:
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id schedule.setTimeZone('US/Central');
whenNext(datetime, timezoneTitle)
Используйте этот метод, чтобы вернуть количество оставшихся секунд до начала следующего элемента расписания.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
datetime | SimpleDateTime | Да | Нет |
timezoneTitle | String | Нет | '' |
Возвращаемое значение:
Тип | Описание |
---|---|
SimpleDuration | Объект SimpleDuration |
Пример:
const startDatetime = new SimpleDateTime(); const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id ss.info('Seconds Left: ' + schedule.whenNext(startDatetime).getDurationSeconds()); // Info: Seconds Left: 6052
whenWillExpire(startDateTime, finalWorkingSeconds)
Этот метод определяет время после передачи значения рабочих секунд, указанного в параметре finalWorkingSeconds.
Параметр finalWorkingSeconds не поддерживает отрицательные значения.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
startDate | SimpleDateTime | Да | Нет |
finalWorkingSeconds | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Объект SimpleDateTime или 'null' | Метод возвращает объект SimpleDateTime. |
Если объект класса SimpleSchedule не является валидным (метод isValid() возвращает "false" для этого объекта), метод whenWillExpire() возвращает "null".
Пример:
const startDatetime = new SimpleDateTime('2022-01-23 08:00:00'); const finalWorkingSeconds = 5 * 8 * 3600; // duration of 5 eight-hour days in seconds const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id ss.info(schedule.whenWillExpire(startDatetime, finalWorkingSeconds).getValue()); // Info: 2022-01-28 18:30:00
- No labels