diff --git a/src/webparts/requestPortal/forms/Vacation/README.md b/src/webparts/requestPortal/forms/Vacation/README.md index 6bd206d..5ba7ace 100644 --- a/src/webparts/requestPortal/forms/Vacation/README.md +++ b/src/webparts/requestPortal/forms/Vacation/README.md @@ -45,9 +45,9 @@ массиве `file_company_bins`, общий `company_bin` не передаётся. Подписант один — сам сотрудник, от имени физического лица; БИН нужны ЭДО только чтобы выбрать сертификат Sigex (mTLS) нужной компании. Запрос один на все файлы: ЭДО принимает его целиком или отклоняет целиком (например, если у какой-то - компании не распознан), поэтому повтор безопасен. Если у компании нет сертификата Sigex, ЭДО всё равно - сохраняет её документ, но подписать его нельзя, пока администратор не загрузит сертификат. Ответ 200 - значит «принято»: в зелёном сообщении просто «Документы отправлены на подписание в ЭДО». + компании не распознан), поэтому повтор безопасен. Сертификат Sigex компании нужен ЭДО только для mTLS + (карточка документа): без него документ принимается и подписывается как обычно. Ответ 200 значит + «принято»: в зелёном сообщении просто «Документы отправлены на подписание в ЭДО». - **ИИН** берётся из `GET /Employee/ByEmail` (поле `Iin`), **БИН компаний** — из `GET /Dictionary/Companies` по `CompanyId` каждой записи сотрудника (`shared/edo/signingTarget.ts`). Компания без БИН в справочнике пропускается и показывается в сообщении; остальные уходят. diff --git a/src/webparts/requestPortal/shared/edo/edo.service.ts b/src/webparts/requestPortal/shared/edo/edo.service.ts index 712c604..d0fc56f 100644 --- a/src/webparts/requestPortal/shared/edo/edo.service.ts +++ b/src/webparts/requestPortal/shared/edo/edo.service.ts @@ -31,17 +31,13 @@ export interface IEdoSigningResult { documents: Array<{ id: string; fileName: string; - /** БИН компании файла. */ - companyBin: string; - /** У компании нет сертификата Sigex: файл сохранён, но подписать его нельзя до загрузки сертификата. */ - awaitingCertificate: boolean; }>; } /** Ответ ЭДО в snake_case — только поля, которые читаем. */ interface IEdoResponseBody { cabinet_url?: string; - documents?: Array<{ id?: string; file_name?: string; company_bin?: string; awaiting_certificate?: boolean }>; + documents?: Array<{ id?: string; file_name?: string }>; } /** @@ -93,9 +89,7 @@ export async function submitSigningRequest( cabinetUrl: body.cabinet_url || '', documents: (body.documents || []).map((d) => ({ id: d.id || '', - fileName: d.file_name || '', - companyBin: d.company_bin || '', - awaitingCertificate: d.awaiting_certificate === true + fileName: d.file_name || '' })) }; }