mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-01-26 05:37:27 +02:00
B24: Учет рабочего времени
This commit is contained in:
parent
905e4d7871
commit
557a7d1507
File diff suppressed because it is too large
Load Diff
@ -1987,6 +1987,147 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Начать учет времени
|
||||
// Начинает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.open](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_open.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Время - Дата - Время начала учета. Дата должна совпадать с текущей. Текущее время по ум. - time
|
||||
// Отчет - Строка - Причина изменения. Обязателен при указании Время и отключенном свободном графике - report
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция НачатьУчетВремени(Знач URL
|
||||
, Знач IDПользователя = ""
|
||||
, Знач Время = ""
|
||||
, Знач Отчет = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.open");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("TIME" , Время , "ДатаISOZ", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("REPORT" , Отчет , "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Завершить учет времени
|
||||
// Завершает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.close](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_close.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Время - Дата - Время заверш. учета. Дата должна совпадать с текущей. Текущее время по ум. - time
|
||||
// Отчет - Строка - Причина изменения. Обязателен при указании Время и отключенном свободном графике - report
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ЗавершитьУчетВремени(Знач URL
|
||||
, Знач IDПользователя = ""
|
||||
, Знач Время = ""
|
||||
, Знач Отчет = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.close");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("TIME" , Время , "ДатаISOZ", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("REPORT" , Отчет , "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Приостановить учет времени
|
||||
// Приостанавливает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.pause](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_pause.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПриостановитьУчетВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.pause");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить статус учета времени
|
||||
// Получает статус учета времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.status](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_status.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСтатусУчетаВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.status");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить настройки учета времени
|
||||
// Получает настройки учета времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.settings](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_settings.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьНастройкиУчетаВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.settings");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСХранилищами
|
||||
|
@ -3055,6 +3055,11 @@
|
||||
Bitrix24_ПолучитьСписокТрудозатратЗадачи(ПараметрыТеста);
|
||||
Bitrix24_ИзменитьТрудозатратыЗадачи(ПараметрыТеста);
|
||||
Bitrix24_УдалитьТрудозатратыЗадачи(ПараметрыТеста);
|
||||
Bitrix24_НачатьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПриостановитьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСтатусУчетаВремени(ПараметрыТеста);
|
||||
Bitrix24_ЗавершитьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьНастройкиУчетаВремени(ПараметрыТеста);
|
||||
|
||||
OPI_Bitrix24.УдалитьЗадачу(URL, IDЗадачи);
|
||||
|
||||
@ -3896,6 +3901,20 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксУчетВремени(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["STATUS"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксНастройкиУчетаВремени(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["UF_TIMEMAN"]).ИмеетТип("Булево");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АтомарныеТесты
|
||||
@ -10035,6 +10054,143 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_НачатьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.НачатьУчетВремени(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НачатьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
Время = OPI_Инструменты.ПолучитьТекущуюДату() - Час;
|
||||
Отчет = "Опоздание";
|
||||
|
||||
Результат = OPI_Bitrix24.НачатьУчетВремени(URL, IDПользователя, Время, Отчет, );
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НачатьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ЗавершитьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ЗавершитьУчетВремени(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
Время = OPI_Инструменты.ПолучитьТекущуюДату();
|
||||
Отчет = "Отгул";
|
||||
|
||||
Результат = OPI_Bitrix24.ЗавершитьУчетВремени(URL, IDПользователя, Время, Отчет, );
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПриостановитьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПриостановитьУчетВремени(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПриостановитьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПриостановитьУчетВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПриостановитьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСтатусУчетаВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСтатусУчетаВремени(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтатусУчетаВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСтатусУчетаВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтатусУчетаВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьНастройкиУчетаВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьНастройкиУчетаВремени(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиУчетаВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксНастройкиУчетаВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьНастройкиУчетаВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиУчетаВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксНастройкиУчетаВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область YandexDisk
|
||||
|
@ -510,6 +510,10 @@
|
||||
ИначеЕсли Тип = "ДатаISO" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьДату(Значение);
|
||||
Значение = XMLСтрока(Значение);
|
||||
|
||||
ИначеЕсли Тип = "ДатаISOZ" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьДату(Значение);
|
||||
Значение = XMLСтрока(Значение) + "Z";
|
||||
|
||||
ИначеЕсли Тип = "Коллекция" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Значение);
|
||||
@ -528,8 +532,8 @@
|
||||
|
||||
ИначеЕсли Тип = "Число" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьЧисло(Значение);
|
||||
|
||||
Иначе
|
||||
|
||||
ИначеЕсли Не Тип = "Текущий" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Значение);
|
||||
|
||||
КонецЕсли;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// OneScript: ./OInt/core/Modules/OPI_Bitrix24.os
|
||||
// OneScript: ./OInt/core/Modules/OPI_Bitrix24.os
|
||||
// Lib: Bitrix24
|
||||
// CLI: bitrix24
|
||||
|
||||
@ -1987,6 +1987,147 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Начать учет времени
|
||||
// Начинает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.open](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_open.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Время - Дата - Время начала учета. Дата должна совпадать с текущей. Текущее время по ум. - time
|
||||
// Отчет - Строка - Причина изменения. Обязателен при указании Время и отключенном свободном графике - report
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция НачатьУчетВремени(Знач URL
|
||||
, Знач IDПользователя = ""
|
||||
, Знач Время = ""
|
||||
, Знач Отчет = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.open");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("TIME" , Время , "ДатаISOZ", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("REPORT" , Отчет , "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Завершить учет времени
|
||||
// Завершает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.close](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_close.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Время - Дата - Время заверш. учета. Дата должна совпадать с текущей. Текущее время по ум. - time
|
||||
// Отчет - Строка - Причина изменения. Обязателен при указании Время и отключенном свободном графике - report
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ЗавершитьУчетВремени(Знач URL
|
||||
, Знач IDПользователя = ""
|
||||
, Знач Время = ""
|
||||
, Знач Отчет = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.close");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("TIME" , Время , "ДатаISOZ", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("REPORT" , Отчет , "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Приостановить учет времени
|
||||
// Приостанавливает учет времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.pause](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_pause.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПриостановитьУчетВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.pause");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить статус учета времени
|
||||
// Получает статус учета времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.status](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_status.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСтатусУчетаВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.status");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить настройки учета времени
|
||||
// Получает настройки учета времени пользователя
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [timeman.settings](@dev.1c-bitrix.ru/rest_help/timeman/base/timeman_settings.php)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDПользователя - Строка, Число - ID пользователя для учета. Текущий по умолчанию - userid
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьНастройкиУчетаВремени(Знач URL, Знач IDПользователя = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "timeman.settings");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка" , Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСХранилищами
|
||||
|
@ -1,4 +1,4 @@
|
||||
// OneScript: ./OInt/tools/Modules/internal/Modules/OPI_Инструменты.os
|
||||
// OneScript: ./OInt/tools/Modules/internal/Modules/OPI_Инструменты.os
|
||||
|
||||
// MIT License
|
||||
|
||||
@ -510,6 +510,10 @@
|
||||
ИначеЕсли Тип = "ДатаISO" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьДату(Значение);
|
||||
Значение = XMLСтрока(Значение);
|
||||
|
||||
ИначеЕсли Тип = "ДатаISOZ" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьДату(Значение);
|
||||
Значение = XMLСтрока(Значение) + "Z";
|
||||
|
||||
ИначеЕсли Тип = "Коллекция" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Значение);
|
||||
@ -528,8 +532,8 @@
|
||||
|
||||
ИначеЕсли Тип = "Число" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьЧисло(Значение);
|
||||
|
||||
Иначе
|
||||
|
||||
ИначеЕсли Не Тип = "Текущий" Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Значение);
|
||||
|
||||
КонецЕсли;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
|
||||
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
|
||||
|
||||
// MIT License
|
||||
|
||||
@ -3055,6 +3055,11 @@
|
||||
Bitrix24_ПолучитьСписокТрудозатратЗадачи(ПараметрыТеста);
|
||||
Bitrix24_ИзменитьТрудозатратыЗадачи(ПараметрыТеста);
|
||||
Bitrix24_УдалитьТрудозатратыЗадачи(ПараметрыТеста);
|
||||
Bitrix24_НачатьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПриостановитьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСтатусУчетаВремени(ПараметрыТеста);
|
||||
Bitrix24_ЗавершитьУчетВремени(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьНастройкиУчетаВремени(ПараметрыТеста);
|
||||
|
||||
OPI_Bitrix24.УдалитьЗадачу(URL, IDЗадачи);
|
||||
|
||||
@ -3896,6 +3901,20 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксУчетВремени(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["STATUS"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксНастройкиУчетаВремени(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["UF_TIMEMAN"]).ИмеетТип("Булево");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АтомарныеТесты
|
||||
@ -10035,6 +10054,143 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_НачатьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.НачатьУчетВремени(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НачатьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
Время = OPI_Инструменты.ПолучитьТекущуюДату() - Час;
|
||||
Отчет = "Опоздание";
|
||||
|
||||
Результат = OPI_Bitrix24.НачатьУчетВремени(URL, IDПользователя, Время, Отчет, );
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НачатьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ЗавершитьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ЗавершитьУчетВремени(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
Время = OPI_Инструменты.ПолучитьТекущуюДату();
|
||||
Отчет = "Отгул";
|
||||
|
||||
Результат = OPI_Bitrix24.ЗавершитьУчетВремени(URL, IDПользователя, Время, Отчет, );
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПриостановитьУчетВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПриостановитьУчетВремени(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПриостановитьУчетВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПриостановитьУчетВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПриостановитьУчетВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСтатусУчетаВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСтатусУчетаВремени(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтатусУчетаВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСтатусУчетаВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтатусУчетаВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксУчетВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьНастройкиУчетаВремени(ПараметрыФункции)
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
URL = "https://b24-gb03za.bitrix24.by/rest/1/tfvwyd1ole6c3504";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьНастройкиУчетаВремени(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиУчетаВремени (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксНастройкиУчетаВремени(Результат); // SKIP
|
||||
|
||||
Час = 3600;
|
||||
|
||||
//URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 1;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьНастройкиУчетаВремени(URL, IDПользователя);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиУчетаВремени", "Bitrix24");
|
||||
|
||||
Проверка_БитриксНастройкиУчетаВремени(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область YandexDisk
|
||||
|
Loading…
x
Reference in New Issue
Block a user