Skip to content

Instantly share code, notes, and snippets.

@pqr
Created August 16, 2023 18:05
Show Gist options
  • Save pqr/69c017546ca94ff59cb9f1d0ff62ba55 to your computer and use it in GitHub Desktop.
Save pqr/69c017546ca94ff59cb9f1d0ff62ba55 to your computer and use it in GitHub Desktop.
Ревью кода на 1С
Функция ПолучитьОтветЗадачи(Запрос) Экспорт
Метод = Запрос.Параметры.Получить("метод");
Token = Запрос.ПараметрыЗапроса.Получить("token");
ДанныеАвторизации = ПолучитьДанныеАвторизации(Token);
Если ДанныеАвторизации.Пользователь.Пустая() Тогда
Возврат СформироватьОтвет(ДанныеАвторизации.ЗаголовокОтвета);
КонецЕсли;
Если Метод = "list" Тогда
ТелоОтвета = СформироватьТелоОтветаЗадачиСписок(Данныедвторизации.Пользователь);
Возврат СформироватьОтвет(ДанныеАвторизации.ЗаголовокОтвета, ТелоОтвета);
КонецЕсли;
Если Метод = "item" Тогда
Id = Запрос.ПараметрыЗапроса.Получить("id");
Если Id = Неопределено Тогда
ЗаголовокОтвета = СформироватьЗаголовок(400, "The parameter ""id"" has not been discovered");
Возврат СформироватьОтвет(ДанныеАвторизации.ЗаголовокОтвета, ТелоОтвета);
КонецЕсли;
Id = СокрЛП(Id);
Если НЕ СтроковыефункцииКлиентСервер.ЭтоУникальныйидентификатор(Id) Тогда
ЗаголовокОтвета = СформироватьЗаголовок(400, "Invalid id");
Возврат СформироватьОтвет(ЗаголовокОтвета);
КонецЕсли;
УИД = Новый УникальныйИдентификатор(Id);
ЗадачаСсылка = Документы.ЗадачаСотрудника.ПолучитьСсылку(УИД);
Если НЕ ОбщегоНазначения.СсылкаСуществует(ЗадачаСсылка) Тогда
ЗаголовокОтвета = СформироватьЗаголовок(404, "id not exist");
Возврат СформироватьОтвет(ЗаголовокОтвета);
КонецЕсли;
ТелоОтвета = СформироватьТелоОтветаЗадачиЭлемент(ДанныеАвторизации.Пользователь, ЗадачаСсылка);
Возврат СформироватьОтвет(ДанныеАвторизации.ЗаголовокОтвета, ТелоОтвета);
КонецЕсли;
ЗаголовокОтвета = СформироватьЗаголовок(400, "invalid method ""/" + Метод + """");
Возврат СформироватьОтвет(ЗаголовокОтвета);
КонецФункции;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment