Created
May 9, 2017 08:48
-
-
Save dnahrebecki/a49e0a46bf29f58cc13406b91f2f182d to your computer and use it in GitHub Desktop.
[OroCommerce] Checkout without shipping
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{% block _checkout_form_fields_widget -%} | |
{% from 'OroAddressBundle::macros.html.twig' import renderAddress %} | |
{% if workflowItem.data.get('disallow_billing_address_edit') %} | |
{% set billingAddress = checkout.billingAddress %} | |
<fieldset class="grid__row grid__row--offset-none"> | |
<div class="grid__column grid__column--offset-y grid__column--6"> | |
{{ renderAddress(checkout.billingAddress) }} | |
</div> | |
</fieldset> | |
{% else %} | |
{% import 'OroCheckoutBundle:layouts/default/oro_checkout_frontend_checkout/templates:address.html.twig' as address %} | |
{% set hasCustomAddress = false %} | |
{% if form.billing_address.id.vars.value %} | |
{% set hasCustomAddress = not form.billing_address.vars.value.customerUserAddress and not form.billing_address.vars.value.customerAddress %} | |
{% endif %} | |
{% set billingAddress = form.billing_address.vars.value %} | |
<div data-page-component-module="oroui/js/app/components/view-component" | |
data-page-component-options="{{ { | |
view: 'orocheckout/js/app/views/address-view', | |
selectors: { | |
address: '#' ~ form.billing_address.customerAddress.vars.id, | |
region: '#' ~ form.billing_address.region.vars.id, | |
fieldsContainer: '#checkout-address-fields-container' | |
} | |
}|json_encode }}"> | |
<div class="grid"> | |
<div class="grid__row grid__row--offset-none"> | |
<div class="grid__column grid__column--6"> | |
{{ form_row(form.billing_address.customerAddress) }} | |
</div> | |
</div> | |
</div> | |
{{ address.address_form(form.billing_address, form.save_billing_address, hasCustomAddress) }} | |
</div> | |
{% endif %} | |
{% set hideShipping = false %} | |
{% if billingAddress %} | |
{% set typedAddress = billingAddress.customerAddress %} | |
{% if typedAddress is empty %} | |
{% set typedAddress = billingAddress.customerUserAddress %} | |
{% endif %} | |
{% set hideShipping = typedAddress is not empty and not typedAddress.hasTypeWithName('shipping') %} | |
{% endif %} | |
{% if form.state_token is defined %} | |
{{ form_row(form.state_token) }} | |
{% endif %} | |
{%- endblock %} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
workflows: | |
b2b_flow_no_shipping_checkout: | |
entity: Oro\Bundle\CheckoutBundle\Entity\Checkout | |
entity_attribute: checkout | |
steps_display_ordered: true | |
defaults: | |
active: true | |
exclusive_record_groups: | |
- b2b_checkout_flow | |
priority: 150 | |
applications: ['commerce'] | |
attributes: | |
billing_address: | |
property_path: checkout.billingAddress | |
save_billing_address: | |
property_path: checkout.saveBillingAddress | |
po_number: | |
property_path: checkout.poNumber | |
ship_until: | |
property_path: checkout.shipUntil | |
customer_notes: | |
property_path: checkout.customerNotes | |
payment_method: | |
property_path: checkout.paymentMethod | |
billing_address_has_shipping: | |
type: boolean | |
allow_manual_source_remove: | |
type: boolean | |
disallow_billing_address_edit: | |
type: boolean | |
disallow_shipping_address_edit: | |
type: boolean | |
disallow_shipping_method_edit: | |
type: boolean | |
remove_source: | |
type: boolean | |
auto_remove_source: | |
type: boolean | |
source_remove_label: | |
type: string | |
edit_order_link: | |
type: string | |
payment_in_progress: | |
type: bool | |
payment_validate: | |
type: bool | |
payment_save_for_later: | |
type: bool | |
state_token: | |
type: string | |
internal_state_token: | |
type: string | |
order: | |
type: entity | |
options: | |
class: Oro\Bundle\OrderBundle\Entity\Order | |
steps: | |
enter_billing_address: | |
order: 10 | |
allowed_transitions: | |
- continue_to_payment | |
enter_payment: | |
order: 40 | |
allowed_transitions: | |
- payment_error | |
- continue_to_order_review | |
- back_to_billing_address | |
order_review: | |
order: 50 | |
allowed_transitions: | |
- place_order | |
- verify_payment | |
- finish_checkout | |
- payment_error | |
- back_to_billing_address | |
- back_to_payment | |
order_created: | |
order: 60 | |
is_final: true | |
transitions: | |
__start__: | |
is_start: true | |
is_hidden: true | |
step_to: enter_billing_address | |
transition_definition: __start___definition | |
start_from_shoppinglist: | |
is_start: true | |
step_to: enter_billing_address | |
is_unavailable_hidden: true | |
transition_definition: start_from_shoppinglist_definition | |
frontend_options: | |
icon: fa-briefcase | |
init_routes: | |
- oro_shopping_list_frontend_view | |
acl_resource: [CHECKOUT_CREATE, $.result.shoppingList] | |
start_from_quickorderform: | |
is_start: true | |
step_to: enter_billing_address | |
is_unavailable_hidden: true | |
transition_definition: start_from_quickorderform_definition | |
frontend_options: | |
icon: fa-briefcase | |
class: 'btn--action' | |
data: | |
component_name: oro_shopping_list_to_checkout_quick_add_processor | |
page-component-module: oroproduct/js/app/components/quick-add-form-button-component | |
page-component-options: | |
component_name: '[name$="[component]"]' | |
init_routes: | |
- oro_product_frontend_quick_add | |
- oro_product_frontend_quick_add_copy_paste | |
- oro_product_frontend_quick_add_import | |
acl_resource: [CREATE, entity:commerce@Oro\Bundle\CheckoutBundle\Entity\Checkout] | |
continue_to_payment: | |
step_to: enter_payment | |
transition_definition: continue_to_payment_definition | |
frontend_options: | |
is_checkout_continue: true | |
is_checkout_show_errors: true | |
page_component_module: 'orocheckout/js/app/components/shipping-transition-button-component' | |
form_options: | |
form_init: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.initCheckoutState | |
attribute_fields: | |
billing_address: | |
form_type: oro_checkout_address | |
options: | |
object: $checkout | |
isEditEnabled: true | |
addressType: 'billing' | |
required: true | |
translation_domain: messages | |
constraints: | |
- Valid: ~ | |
- NotBlank: ~ | |
- Oro\Bundle\OrderBundle\Validator\Constraints\OrderAddress: | |
validationGroups: ['Checkout'] | |
disabled: $disallow_billing_address_edit | |
save_billing_address: | |
options: | |
state_token: | |
form_type: hidden | |
options: | |
data: $internal_state_token | |
continue_to_order_review: | |
step_to: order_review | |
transition_definition: continue_to_order_review_definition | |
frontend_options: | |
is_checkout_continue: true | |
is_checkout_show_errors: true | |
page_component_module: 'orocheckout/js/app/components/payment-transition-button-component' | |
form_options: | |
form_init: | |
- '@assign_value': [$payment_validate, true] | |
- '@call_service_method': | |
service: oro_payment.provider.payment_transaction | |
method: getActiveValidatePaymentTransaction | |
method_parameters: [$payment_method] | |
attribute: $.result.validatePaymentTransaction | |
- '@assign_value': | |
conditions: | |
'@not_empty': [$.result.validatePaymentTransaction] | |
parameters: [$payment_validate, false] | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.initCheckoutState | |
attribute_fields: | |
payment_method: ~ | |
payment_validate: | |
form_type: checkbox | |
payment_save_for_later: | |
form_type: checkbox | |
state_token: | |
form_type: hidden | |
options: | |
data: $internal_state_token | |
back_to_billing_address: | |
step_to: enter_billing_address | |
transition_definition: clear_payment_method_and_recalculate_state_definition | |
is_unavailable_hidden: true | |
frontend_options: | |
is_checkout_back: true | |
back_to_payment: | |
step_to: enter_payment | |
transition_definition: recalculate_state_definition | |
is_unavailable_hidden: true | |
frontend_options: | |
is_checkout_back: true | |
verify_payment: | |
step_to: enter_payment | |
transition_definition: verify_payment_definition | |
is_hidden: true | |
frontend_options: | |
is_checkout_verify: true | |
place_order: | |
step_to: order_review | |
transition_definition: place_order_definition | |
display_type: page | |
frontend_options: | |
is_checkout_continue: true | |
is_checkout_show_errors: true | |
form_options: | |
form_init: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.initCheckoutState | |
attribute_fields: | |
remove_source: ~ | |
po_number: ~ | |
ship_until: ~ | |
customer_notes: | |
form_type: textarea | |
state_token: | |
form_type: hidden | |
options: | |
data: $internal_state_token | |
finish_checkout: | |
step_to: order_created | |
transition_definition: finish_checkout_definition | |
is_hidden: true | |
payment_error: | |
step_to: enter_payment | |
transition_definition: unblock_and_recalculate_definition | |
is_hidden: true | |
transition_definitions: | |
start_from_quickorderform_definition: | |
preactions: | |
- '@call_service_method': | |
attribute: $.result.isAllowed | |
service: oro_shopping_list.processor.quick_add_to_checkout | |
method: isAllowed | |
preconditions: | |
'@and': | |
- '@not_empty': $init_context | |
- '@equal': [true, $.result.isAllowed] | |
start_from_shoppinglist_definition: | |
preactions: | |
- '@find_entity': | |
conditions: | |
'@not_empty': $init_context | |
parameters: | |
class: $init_context.entityClass | |
identifier: $init_context.entityId | |
attribute: $.result.shoppingList | |
preconditions: | |
'@has_elements': $.result.shoppingList.lineItems | |
actions: | |
- '@run_action_group': | |
action_group: start_shoppinglist_checkout | |
parameters_mapping: | |
shoppingList: $.result.shoppingList | |
showErrors: true | |
results: | |
data.checkout: $.checkout | |
result.redirectUrl: $.redirectUrl | |
__start___definition: | |
actions: | |
- '@assign_value': [$payment_save_for_later, true] | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.startCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.startCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
back_to_billing_address_definition: | |
preconditions: | |
'@equal': [$checkout_finished, false] | |
actions: | |
- '@assign_value': [$billing_address_has_shipping, true] | |
- '@assign_value': [$payment_method, null] | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
continue_to_payment_definition: | |
preactions: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.currentCheckoutState | |
- '@get_checkout_state': | |
entity: $checkout | |
token: $state_token | |
attribute: $.result.tokenCheckoutState | |
- '@tree': | |
conditions: | |
'@not': | |
- '@check_checkout_states': | |
entity: $checkout | |
state1: $.result.currentCheckoutState | |
state2: $.result.tokenCheckoutState | |
actions: | |
- '@assign_value': [$.result.savedCheckoutState, $.result.tokenCheckoutState] | |
- '@delete_checkout_state': | |
entity: $checkout | |
token: $state_token | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.currentCheckoutState | |
token: $state_token | |
- '@call_service_method': | |
service: oro_checkout.factory.shipping_context_factory | |
method: create | |
method_parameters: [$checkout] | |
attribute: $.result.shippingContext | |
preconditions: | |
'@and': | |
- '@quote_acceptable': [$checkout.sourceEntity, true] | |
- '@order_line_item_has_count': | |
message: oro.checkout.workflow.condition.order_line_item_has_count.message | |
parameters: | |
entity: $checkout | |
- '@checkout_has_applicable_shipping_methods': | |
message: oro.checkout.workflow.condition.shipping_method_is_not_available.message | |
checkout: $checkout | |
conditions: | |
'@and': | |
- '@or': | |
- '@empty': $.result.savedCheckoutState | |
- '@check_checkout_states': | |
message: oro.checkout.workflow.condition.content_of_order_was_changed.message | |
parameters: | |
entity: $checkout | |
state1: $.result.initCheckoutState | |
state2: $.result.savedCheckoutState | |
actions: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
continue_to_order_review_definition: | |
preactions: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.currentCheckoutState | |
- '@get_checkout_state': | |
entity: $checkout | |
token: $state_token | |
attribute: $.result.tokenCheckoutState | |
- '@run_action_group': | |
action_group: oro_update_shipping_price | |
parameters_mapping: | |
checkout: $checkout | |
- '@tree': | |
conditions: | |
'@not': | |
- '@check_checkout_states': | |
entity: $checkout | |
state1: $.result.currentCheckoutState | |
state2: $.result.tokenCheckoutState | |
actions: | |
- '@assign_value': [$.result.savedCheckoutState, $.result.tokenCheckoutState] | |
- '@delete_checkout_state': | |
entity: $checkout | |
token: $state_token | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.currentCheckoutState | |
token: $state_token | |
- '@call_service_method': | |
service: oro_checkout.factory.payment_context_factory | |
method: create | |
method_parameters: [$checkout] | |
attribute: $.result.paymentContext | |
preconditions: | |
'@and': | |
- '@equal': [$checkout_finished, false] | |
- '@quote_acceptable': [$checkout.sourceEntity, true] | |
- '@order_line_item_has_count': | |
message: oro.checkout.workflow.condition.order_line_item_has_count.message | |
parameters: | |
entity: $checkout | |
- '@checkout_has_applicable_shipping_methods': | |
message: oro.checkout.workflow.condition.shipping_method_is_not_available.message | |
checkout: $checkout | |
- '@has_applicable_payment_methods': | |
message: oro.checkout.workflow.condition.payment_method_is_not_applicable.message | |
context: $.result.paymentContext | |
conditions: | |
'@and': | |
- '@or': | |
- '@empty': $.result.savedCheckoutState | |
- '@check_checkout_states': | |
message: oro.checkout.workflow.condition.content_of_order_was_changed.message | |
parameters: | |
entity: $checkout | |
state1: $.result.initCheckoutState | |
state2: $.result.savedCheckoutState | |
- '@not_empty': | |
message: Payment method was not selected | |
parameters: $checkout.paymentMethod | |
- '@payment_method_applicable': | |
message: oro.checkout.workflow.condition.payment_method_is_not_applicable.message | |
payment_method: $checkout.paymentMethod | |
context: $.result.paymentContext | |
- '@check_request': | |
message: Invalid request | |
parameters: | |
is_ajax: true | |
expected_key: _wid | |
expected_value: ajax_checkout | |
actions: | |
- '@tree': | |
conditions: | |
'@equal': [$payment_validate, true] | |
actions: | |
- '@assign_constant_value': [$.result.validateAction, Oro\Bundle\PaymentBundle\Method\PaymentMethodInterface::VALIDATE] | |
- '@assign_url': | |
attribute: $.result.successUrl | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
- '@assign_url': | |
attribute: $.result.failureUrl | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: 'payment_error' | |
- '@payment_validate': | |
conditions: | |
'@payment_method_supports': | |
payment_method: $checkout.paymentMethod | |
action: $.result.validateAction | |
attribute: $.result.responseData | |
object: $checkout | |
paymentMethod: $checkout.paymentMethod | |
transactionOptions: | |
saveForLaterUse: $payment_save_for_later | |
successUrl: $.result.successUrl | |
failureUrl: $.result.failureUrl | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
verify_payment_definition: | |
preconditions: | |
'@and': | |
- '@equal': [$checkout_finished, false] | |
- '@order_line_item_has_count': | |
message: oro.checkout.workflow.condition.order_line_item_has_count.message | |
parameters: | |
entity: $checkout | |
- '@require_payment_redirect': | |
payment_method: $payment_method | |
- '@or': | |
- '@not': | |
- '@check_request': | |
is_ajax: true | |
expected_key: _wid | |
expected_value: ajax_checkout | |
- '@not': | |
- '@check_request': | |
is_ajax: true | |
expected_key: transition | |
expected_value: continue_to_order_review | |
actions: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
place_order_definition: | |
preactions: | |
- '@flash_message': | |
conditions: | |
'@and': | |
- '@equal': [$payment_in_progress, true] | |
- '@equal': [$checkout.completed, false] | |
message: oro.checkout.workflow.condition.payment_has_not_been_processed.message | |
type: 'warning' | |
- '@tree': | |
conditions: | |
'@not_empty': [$.id] | |
actions: | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.currentCheckoutState | |
- '@get_checkout_state': | |
entity: $checkout | |
token: $state_token | |
attribute: $.result.tokenCheckoutState | |
- '@tree': | |
conditions: | |
'@not': | |
- '@check_checkout_states': | |
entity: $checkout | |
state1: $.result.currentCheckoutState | |
state2: $.result.tokenCheckoutState | |
actions: | |
- '@assign_value': [$.result.savedCheckoutState, $.result.tokenCheckoutState] | |
- '@delete_checkout_state': | |
entity: $checkout | |
token: $state_token | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.currentCheckoutState | |
token: $state_token | |
- '@call_service_method': | |
service: oro_checkout.factory.payment_context_factory | |
method: create | |
method_parameters: [$checkout] | |
attribute: $.result.paymentContext | |
preconditions: | |
'@and': | |
- '@not_empty': $.result.paymentContext | |
- '@quote_acceptable': [$checkout.sourceEntity, true] | |
- '@payment_method_applicable': | |
message: oro.checkout.workflow.condition.payment_method_is_not_applicable.message | |
payment_method: $checkout.paymentMethod | |
context: $.result.paymentContext | |
conditions: | |
'@and': | |
- '@extendable': | |
message: 'oro.checkout.workflow.b2b_flow_checkout.transition.place_order.condition.extendable.message' | |
events: ['extendable_condition.before_order_create'] | |
- '@or': | |
- '@empty': $.result.savedCheckoutState | |
- '@check_checkout_states': | |
message: oro.checkout.workflow.condition.content_of_order_was_changed.message | |
parameters: | |
entity: $checkout | |
state1: $.result.initCheckoutState | |
state2: $.result.savedCheckoutState | |
actions: | |
# Place order | |
- '@get_class_name': | |
object: $checkout.sourceEntity.sourceDocument | |
attribute: $.result.sourceDocumentEntityClassName | |
- '@duplicate': | |
target: $checkout.billingAddress | |
attribute: $.result.billingAddress | |
settings: | |
- [[setNull], [propertyName, [id]]] | |
- [[keep], [propertyName, [customerAddress]]] | |
- [[keep], [propertyName, [customerUserAddress]]] | |
- [[keep], [propertyName, [city]]] | |
- [[keep], [propertyName, [country]]] | |
- [[keep], [propertyName, [region]]] | |
- [[keep], [propertyName, [organization]]] | |
- [[shallowCopy], [propertyType, ['\DateTime']]] | |
- '@flush_entity': $.result.billingAddress | |
- '@call_service_method': | |
service: oro_payment_term.provider.payment_term | |
method: getCurrentPaymentTerm | |
attribute: $.result.paymentTerm | |
- '@get_order_line_items': | |
attribute: $.result.lineItems | |
checkout: $checkout | |
- '@create_order': | |
attribute: $order | |
checkout: $checkout | |
data: | |
billingAddress: $.result.billingAddress | |
sourceEntityClass: $.result.sourceDocumentEntityClassName | |
paymentTerm: $.result.paymentTerm | |
lineItems: $.result.lineItems | |
- '@call_service_method': | |
service: oro_order.handler.order_totals_handler | |
method: fillSubtotals | |
method_parameters: | |
- $order | |
- '@flush_entity': $order | |
- '@tree': | |
actions: | |
- '@assign_url': | |
attribute: $.result.successUrl | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: 'finish_checkout' | |
- '@assign_url': | |
attribute: $.result.failureUrl | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: 'payment_error' | |
- '@assign_url': | |
attribute: $.result.failedShippingAddressUrl | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: 'back_to_shipping_address_on_fail_address' | |
- '@payment_purchase': | |
attribute: $.result.responseData | |
object: $order | |
amount: $order.total | |
currency: $order.currency | |
paymentMethod: $payment_method | |
transactionOptions: | |
successUrl: $.result.successUrl | |
failureUrl: $.result.failureUrl | |
failedShippingAddressUrl: $.result.failedShippingAddressUrl | |
- '@assign_value': [$payment_in_progress, true] | |
- '@extendable': | |
events: [extendable_action.finish_checkout] | |
- '@redirect': | |
conditions: | |
'@and': | |
- '@equal': ["$.result.responseData[purchaseSuccessful]", true] | |
- '@payment_method_supports': | |
payment_method: $payment_method | |
action: 'validate' | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: finish_checkout | |
- '@redirect': | |
conditions: | |
'@and': | |
- '@equal': ["$.result.responseData[purchaseSuccessful]", false] | |
- '@payment_method_supports': | |
payment_method: $payment_method | |
action: 'validate' | |
route: oro_checkout_frontend_checkout | |
route_parameters: | |
id: $checkout.id | |
transition: payment_error | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
finish_checkout_definition: | |
conditions: | |
'@and': | |
- '@not_empty': [$order] | |
- '@equal': [$payment_in_progress, true] | |
actions: | |
# Save billing address if required | |
- '@assign_constant_value': [$.result.typeBillingName, Oro\Bundle\AddressBundle\Entity\AddressType::TYPE_BILLING] | |
- '@tree': | |
conditions: | |
'@and': | |
- '@equal': [$checkout.saveBillingAddress, true] | |
- '@empty': $order.billingAddress.customerAddress | |
- '@empty': $order.billingAddress.customerUserAddress | |
- '@acl_granted': 'oro_order_address_billing_allow_manual' | |
actions: | |
- '@find_entity': | |
class: Oro\Bundle\AddressBundle\Entity\AddressType | |
attribute: $.result.typeBilling | |
identifier: $.result.typeBillingName | |
- '@create_entity': | |
attribute: $.result.customerBillingAddress | |
class: Oro\Bundle\CustomerBundle\Entity\CustomerUserAddress | |
data: | |
frontendOwner: $checkout.customerUser | |
owner: $checkout.owner | |
systemOrganization: $checkout.organization | |
label: $order.billingAddress.label | |
organization: $order.billingAddress.organization | |
street: $order.billingAddress.street | |
street2: $order.billingAddress.street2 | |
city: $order.billingAddress.city | |
postalCode: $order.billingAddress.postalCode | |
country: $order.billingAddress.country | |
region: $order.billingAddress.region | |
regionText: $order.billingAddress.regionText | |
namePrefix: $order.billingAddress.namePrefix | |
firstName: $order.billingAddress.firstName | |
middleName: $order.billingAddress.middleName | |
lastName: $order.billingAddress.lastName | |
nameSuffix: $order.billingAddress.nameSuffix | |
phone: $order.billingAddress.phone | |
- '@call_method': | |
object: $.result.customerBillingAddress | |
method: addType | |
method_parameters: | |
- $.result.typeBilling | |
- '@flush_entity': | |
conditions: | |
'@not_empty': $.result.customerBillingAddress | |
parameters: [$.result.customerBillingAddress] | |
- '@send_email_template': | |
parameters: | |
from: $order.owner.email | |
to: $order.customerUser.email | |
template: 'order_confirmation_email' | |
entity: $order | |
- '@assign_value': [$checkout.completed, true] | |
- '@tree': | |
conditions: | |
'@not_empty': $order | |
actions: | |
- '@count': | |
value: $order.lineItems | |
attribute: $checkout.completedData.itemsCount | |
- '@assign_value': [$.result.orders, []] | |
- '@get_class_name': | |
object: $order | |
attribute: $.result.orderClassName | |
- '@call_service_method': | |
service: oro_entity.entity_alias_resolver | |
method: getAlias | |
method_parameters: [$.result.orderClassName] | |
attribute: $.result.orders[0].entityAlias | |
- '@call_service_method': | |
service: oro_entity.doctrine_helper | |
method: getEntityIdentifier | |
method_parameters: [$order] | |
attribute: $.result.orders[0].entityId | |
- '@assign_value': [$checkout.completedData.orders, $.result.orders] | |
- '@assign_value': [$.result.sourceEntity, $checkout.sourceEntity] | |
- '@tree': | |
conditions: | |
'@not_empty': $.result.sourceEntity | |
actions: | |
- '@assign_value': | |
conditions: | |
'@instanceof': [$.result.sourceEntity, Oro\Bundle\SaleBundle\Entity\QuoteDemand] | |
parameters: | |
attribute: $.result.sourceEntity | |
value: $.result.sourceEntity.quote | |
- '@call_service_method': | |
service: oro_entity.entity_name_resolver | |
method: getName | |
method_parameters: [$.result.sourceEntity] | |
attribute: $checkout.completedData.startedFrom | |
- '@assign_value': | |
- [$checkout.completedData.currency, $order.currency] | |
- [$checkout.completedData.subtotal, $order.subtotalObject.value] | |
- [$checkout.completedData.total, $order.totalObject.value] | |
- '@remove_entity': | |
conditions: | |
'@or': | |
- '@equal': [$auto_remove_source, true] | |
- '@and': | |
- '@equal': [$allow_manual_source_remove, true] | |
- '@equal': [$remove_source, true] | |
parameters: [$checkout.sourceEntity] | |
recalculate_state_definition: | |
preconditions: | |
'@equal': [$checkout_finished, false] | |
actions: | |
- '@assign_value': [$payment_in_progress, false] | |
- '@run_action_group': | |
action_group: oro_update_shipping_price | |
parameters_mapping: | |
checkout: $checkout | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
clear_payment_method_and_recalculate_state_definition: | |
preconditions: | |
'@equal': [$checkout_finished, false] | |
actions: | |
- '@assign_value': [$payment_method, null] | |
- '@assign_value': [$payment_in_progress, false] | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] | |
unblock_and_recalculate_definition: | |
actions: | |
- '@assign_value': [$payment_method, null] | |
- '@assign_value': [$payment_in_progress, false] | |
- '@generate_checkout_state_snapshot': | |
entity: $checkout | |
attribute: $.result.actualCheckoutState | |
- '@save_checkout_state': | |
entity: $checkout | |
state: $.result.actualCheckoutState | |
attribute: $state_token | |
- '@assign_value': [$internal_state_token, $state_token] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment