ЭДО: сертификат компании нужен только для mTLS, портал больше не разбирает awaiting_certificate
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -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`). Компания без БИН в справочнике
|
||||
пропускается и показывается в сообщении; остальные уходят.
|
||||
|
||||
@@ -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 || ''
|
||||
}))
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user