// Метод будет вызван для GET-запроса вида {Адрес приложения}/api/deals?stage={Стадия1}&stage={Стадия2} метод ПолучитьСделки(Запрос: HttpСервисЗапрос) знч Стадии = Запрос.Параметры.ПолучитьВсе("stage") Запрос.Ответ.Заголовки.Установить("Content-Type", "application/json") исп ПотокЗаписиТела = Запрос.Ответ.ОткрытьПотокЗаписиТела() ЗаписатьДанныеСделокВПоток(ПотокЗаписиТела, Стадии) ; // Метод будет вызван для GET-запроса вида {Адрес приложения}/api/deals/{deal} метод ПолучитьСделку(Запрос: HttpСервисЗапрос) знч КодСделки = Запрос.Параметры.ПолучитьПервый("deal") если КодСделки != Неопределено знч ДанныеСделки = ПолучитьДанныеСделки(КодСделки) если ДанныеСделки != Неопределено знч ТелоОтвета = СериализацияJson.ЗаписатьОбъект(ДанныеСделки) Запрос.Ответ.Заголовки.Установить("Content-Type", "application/json") Запрос.Ответ.УстановитьТело(ТелоОтвета) возврат ; ; Запрос.Ответ.УстановитьКодСтатуса(404) Запрос.Ответ.УстановитьТело("Сделка не найдена") ; метод ЗаписатьДанныеСделокВПоток(ПотокЗаписи: ПотокЗаписи, Стадии: ЧитаемыйМассив<Строка>) знч Запрос = Запрос{ ВЫБРАТЬ Сделки.Код КАК Код, Сделки.ДатаСоздания КАК ДатаСоздания, Сделки.Клиент КАК Клиент, Сделки.Наименование КАК Наименование, Сделки.Стадия КАК Стадия, Сделки.СуммаВВалютеСделки КАК Сумма, Сделки.ВалютаСделки.Код КАК Валюта ИЗ Сделки КАК Сделки ГДЕ Сделки.Стадия.Наименование В (%Стадии) ИЛИ %{Стадии.Пусто()} } ПотокЗаписи.Записать("[") пер Первый = Истина для СтрокаРезультата из Запрос.Выполнить() если не Первый ПотокЗаписи.Записать(",\n") ; Первый = Ложь знч СделкаСоответствие: Соответствие<Строка, Объект?> = { "Код" : СтрокаРезультата.Код, "ДатаСоздания" : СтрокаРезультата.ДатаСоздания, "Клиент" : СтрокаРезультата.Клиент.Представление(), "Наименование" : СтрокаРезультата.Наименование, "Стадия" : СтрокаРезультата.Стадия.Представление(), "Сумма" : СтрокаРезультата.Сумма, "Валюта" : СтрокаРезультата.Валюта } ПотокЗаписи.Записать(СериализацияJson.ЗаписатьОбъект(СделкаСоответствие)) ; ПотокЗаписи.Записать("]") ; метод ПолучитьДанныеСделки(КодСделки: Строка): ЧитаемоеСоответствие<Строка, Объект?>? знч Запрос = Запрос{ ВЫБРАТЬ Сделки.Код КАК Код, Сделки.ДатаСоздания КАК ДатаСоздания, Сделки.Клиент КАК Клиент, Сделки.Наименование КАК Наименование, Сделки.Стадия КАК Стадия, Сделки.СуммаВВалютеСделки КАК Сумма, Сделки.ВалютаСделки.Код КАК Валюта ИЗ Сделки КАК Сделки ГДЕ Сделки.Код == %КодСделки } возврат Запрос.Выполнить().Преобразовать(СтрокаРезультата -> { "Код" : СтрокаРезультата.Код, "ДатаСоздания" : СтрокаРезультата.ДатаСоздания, "Клиент" : СтрокаРезультата.Клиент.Представление(), "Наименование" : СтрокаРезультата.Наименование, "Стадия" : СтрокаРезультата.Стадия.Представление(), "Сумма" : СтрокаРезультата.Сумма, "Валюта" : СтрокаРезультата.Валюта } ).ЕдинственныйИлиУмолчание() ;