docusignapi — PHP: Docusign API автоматически заполняет вкладки для шаблона

Цель: автоматическое заполнение некоторых значений с помощью пары клавиш tabLabel / value для шаблонов серверов с использованием бета-версии PHP-клиент Docusign.

Я просмотрел довольно много сообщений от stackoverflow, и, к сожалению, тот, который кажется мне ближе всего, кажется без ответа: Docusign API — предварительное заполнение значений вкладок на конверте, созданном из шаблона

Мне не удалось найти эту опцию «SecureField» в любом виде предпочтений.

В настоящее время поле имени заполняется автоматически только из-за точной установки роли шаблона. Мне не нужно было делать это с помощью клавиши tabLabel, это было сделано автоматически. Я попытался создать вкладку компании, но она не заполняется автоматически, как и случайная текстовая вкладка, которую я пробовал.

В настоящее время я разветвил библиотеку и сделал ее совместимой с PSR-4, и для достижения этой цели я изменил следующие файлы:

ModelRole Model: Модифицировал конструктор, включив в него $ tabs, и установил $ this-> tabs, если установлено $ tabs. Я добавил две функции getTabs () / setTabs ($ tabs), которые ведут себя так же, как get / set RoleName, Name, Email и т. Д.

RequestSignatureResource: в foreach ($ templateRoles as $ templateRole) я добавил ключ ‘tabs’ в array_pusy и поместил $ templateRole-> getTabs ().

Я создал новое TemplateRole («имя роли», «имя человека», «электронная почта», $ tabs).

Я вижу вкладки в данных запроса JSON. Я что-то пропустил?

Я должен также отметить, что я использовал этот пост также для вдохновения: Как предварительно заполнить вкладки в шаблоне сервера с помощью API DocuSign. Проблема в том, что если я добавлю textTabs: {text: {tabLabel: «что-то», значение: «какое-то значение»}}, то я получу ответ от API о том, что мой запрос был недействительным. Я могу предоставить эту конкретную ошибку по запросу, если это необходимо.

2

Решение

Следующее работало для меня:

  $templateRole = new DocuSign\eSign\Model\TemplateRole();
$templateRole->setClientUserId($email);
$templateRole->setEmail($email);
$templateRole->setName($recipientName);
$templateRole->setRoleName($templateRoleName);

$textTab = new \DocuSign\eSign\Model\Text();
// I added this text field manually on docuSign site.
$textTab->setTabLabel("Field Label");
$textTab->setValue('Value');

$tabs = new DocuSign\eSign\Model\Tabs();
$tabs->setTextTabs(array($textTab));

$templateRole->setTabs($tabs);
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]