Как Drupal Commerce хранит адреса анонимных пользователей


Я пытаюсь выяснить, как именно Drupal Commerce хранит адреса анонимных пользователей?

Допустим, анонимный пользователь создает корзину покупок и заполняет информацию о доставке, но еще не завершил оформление заказа (например, оплата, поэтому информация о доставке уже сохранена вместе с заказом). На данный момент система уже создала объект доставки, если да, то кому, поскольку идентификатор анонимного пользователя равен 0.

В противном случае, если доставка информация сохраняется только после завершения оформления заказа, но все же, кому она назначена? Кто является владельцем адреса.

Commerce также позволяет анонимному пользователю позже создать учетную запись, в которой есть вся история заказов и адреса доставки, был ли назначен новый неиспользуемый идентификатор пользователя для пользователя, на случай, если он решит зарегистрироваться, связать всю эту информацию, или адрес изначально привязан только к самому заказу, с идентификатором владельца 0, и профиль пользователя создается при регистрации на основании деталей заказа?

Почему я прошу обо всем этом, так это то, что я создаю процесс заказа, в котором адрес назначается для каждого продукта отдельно, и при оформлении заказа каждый продукт с другим адресом доставки перемещается в новый заказ с конкретным адресом доставки. И с учетом этого я все еще хочу сохранить возможность совершать анонимные покупки и пытаюсь выяснить динамику адресов доставки:)

Лучший с уважением,

Алари

Author: Alari Truuts, 2016-03-05

2 answers

Когда данные о выставлении счетов или доставке вводятся во время оформления заказа, они создаются как профиль клиента. У каждого заказа есть поле адреса commerce_customer_billing и, возможно, даже поле commerce_customer_shipping (если включена доставка). В нем содержится ссылка на платежный профиль, который был введен во время оформления заказа (даже для анонимных пользователей).

То же самое относится и к зарегистрированным пользователям, разница лишь в том, что они связаны с пользователем.

Если вы включили правило Create a new account for an anonymous order, оно также установит идентификатор профили выставления счетов и доставки также для нового пользователя.

 1
Author: nvahalik, 2016-03-06 22:42:26

Commerce всегда будет создавать нового пользователя по завершении процесса оформления анонимных заказов. Это происходит в правиле под названием "Создайте новую учетную запись для анонимного заказа":

Администратор/конфигурация/рабочий процесс/правила/реакция/управление/commerce_checkout_new_account

Если вы хотите клонировать заказ, то просто действуйте после выполнения вышеупомянутого правила, создав правило с более высоким весом.

 1
Author: peterpoe, 2016-03-05 22:19:31