You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 7 Next »
Методы этого класса предназначены для работы с объектами SimpleSchedule, например, для получения названия календаря, определения соответствия текущего и рабочего времени и возврата разницы между этими двумя значениями.
SimpleSchedule(id, timezoneTitle)
Используйте этот конструктор для создания нового объекта SimpleSchedule.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
id | String | Нет | Нет |
timezoneTitle | String | Нет | 'UTC' |
Пример:
const schedule = new SimpleSchedule('157165292607666710', 'UTC');
duration(startDateTime, endDateTime)
Используйте этот метод, чтобы определить разницу во времени по календарю между значениями startDateTime и endDateTime на основе часового пояса календаря или, если не указано, часового пояса сессии.
Передаваемое значение datetime должно быть в календаре. Чтобы это проверить, используйте метод isInSchedule(datetime).
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
startDateTime | SimpleDateTime object | Да | Нет |
endDateTime | SimpleDateTime object | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
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()); // Информация: 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)
Используйте этот метод, чтобы определить, является ли указанные время и дата рабочими.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
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