Плагин Shopware 6: добавьте пользовательские поля для подтверждения оформления заказа и сохранения по заказуPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Плагин Shopware 6: добавьте пользовательские поля для подтверждения оформления заказа и сохранения по заказу

Сообщение Anonymous »

Проблема < /strong>
Я создаю пользовательскую интеграцию платежей в Shopware 6 и хочу включить дополнительные пользовательские поля (EAN Information) в заказ, когда клиент подтверждает это. {% sw_extends '@Storefront/storefront/page/checkout/confirm/index.html.twig' %}

{% block page_checkout_aside_actions %}
{{ parent() }}


EAN Information OSt

EAN Firma


EAN Nummer


EAN Revisions Nummer


EAN Reference




{% endblock %}
< /code>
В моем пользовательском обработчике платежей (метод оплаты) я пытаюсь прочитать пользовательские данные из requestDatabag: < /p>
public function pay(SyncPaymentTransactionStruct $transaction, RequestDataBag $dataBag, SalesChannelContext $salesChannelContext): void
{
$transactionId = $transaction->getOrderTransaction()->getId();
$orderId = $transaction->getOrder()->getId();

try {
$customEan = $dataBag->get('customEan');

$customFields = [
'ean_firma' => $customEan['eanFirma'] ?? '',
'ean_nummer' => $customEan['eanNummer'] ?? '',
'ean_revisions_nummer' => $customEan['eanRevisionsNummer'] ?? '',
'ean_reference' => $customEan['eanReference'] ?? ''
];

file_put_contents(__DIR__ . '/ean.log', json_encode($customFields, JSON_PRETTY_PRINT));

$this->orderRepository->update([
[
'id' => $orderId,
'customFields' => [
'swag_ean_payment' => $customFields
]
]
], $salesChannelContext->getContext());

$this->transactionStateHandler->paid($transactionId, $salesChannelContext->getContext());
} catch (\Exception $e) {
// Handle exception
}
}
< /code>
Вопрос < /strong>
где или как я могу гарантировать, что пользовательские поля (Customean [...]) фактически представлены с помощью порядка и доступны в функции Pay () через базу данных $? Похоже, что поля не отправляются с формой подтверждения. Как я могу зацепить представление формы, чтобы включить эти пользовательские данные?

Подробнее здесь: https://stackoverflow.com/questions/796 ... e-on-order
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»