{% set presta_external_id = prestashop ? prestashop.externalId : null %} {% set presta_is_linked = presta_external_id is not empty %}

PrestaShop — lokalny draft produktu

Dane zapisane tutaj są lokalnym draftem w Symfony i źródłem prawdy przed ręcznym wypchnięciem produktu do PrestaShop.

Status Presta{{ prestashop ? prestashop.statusLabel : 'Brak rekordu' }}
Intent Presta{{ prestashop ? prestashop.intentLabel : '—' }}
Draft istnieje{{ draft_exists ? 'Tak' : 'Nie, formularz pokazuje wartości domyślne' }}
Status draftu{{ draft.statusLabel }}
Ostatnia edycja draftu{{ draft.updatedAt ? draft.updatedAt|date('d-m-Y H:i') : '—' }}
Ostatnia synchronizacja słowników{{ integration and integration.lastSyncAt ? integration.lastSyncAt|date('d-m-Y H:i') : '—' }}

Powiązanie PrestaShop

{% if presta_is_linked %}
Projekt jest już powiązany z produktem PrestaShop ID {{ presta_external_id }}. Publikacja jako nowy produkt jest zablokowana, aby nie utworzyć duplikatu. {% if prestashop.externalUrl %}
Otwórz produkt w PrestaShop {% endif %}
{% else %}

Projekt nie jest jeszcze powiązany z produktem PrestaShop.

{% endif %}
{% if default_setting %}

Domyślne mapowanie dla tego typu produktu

Tryb wariantów: {{ default_setting.variantGenerationModeLabel }} Cena: {{ default_setting.basePrice ?: '—' }} Ilość: {{ default_setting.baseQuantity is not null ? default_setting.baseQuantity : '—' }} Profil: {{ default_setting.variantProfile ? default_setting.variantProfile.name : '—' }} Mapa JSON: {{ default_setting.jsonVariantMapping ? default_setting.jsonVariantMapping.name : '—' }}
{% endif %} {% set dictionary_readiness = dictionary_readiness ?? { ready: false, missing: ['brak danych readiness'], warnings: [], counts: {} } %} {% set dictionary_counts = dictionary_readiness.counts|default({}) %}
Status słowników PrestaShop
Kategorie: {{ dictionary_counts.categories|default(0) }} Cechy: {{ dictionary_counts.features|default(0) }} Wartości cech: {{ dictionary_counts.feature_values|default(0) }} Grupy atrybutów: {{ dictionary_counts.attribute_groups|default(0) }} Wartości atrybutów: {{ dictionary_counts.attribute_values|default(0) }} Perfect For: {{ dictionary_counts.perfect_for_cards|default(0) }} Custom tagi: {{ dictionary_counts.custom_tags|default(0) }}
{% if dictionary_readiness.ready %}
Słowniki PrestaShop wymagane przed publikacją są gotowe.
{% else %}
Słowniki PrestaShop nie są jeszcze gotowe do publikacji. {% if dictionary_readiness.missing is not empty %} Brakuje: {{ dictionary_readiness.missing|join(', ') }}. {% endif %} Kliknij „Pobierz słowniki z Presty” przed uzupełnianiem i publikacją draftu.
{% endif %} {% if dictionary_readiness.warnings is defined and dictionary_readiness.warnings is not empty %}
Ostrzeżenia słowników:
{% endif %}
{% if draft.lastValidationErrorsJson is not empty %}
Ostatnia walidacja:
{% endif %}

1. Dane podstawowe

2. Opisy

3. SEO

4. Kategorie

Jeśli kategoria główna nie jest zaznaczona jako dodatkowa, system dopisze ją automatycznie przy zapisie. Przed publikacją kategorie są walidowane względem lokalnych słowników.

5. Perfect For

6. Custom tagi

7. Cechy

{% for feature in draft.features %} {% else %} {% endfor %}
CechaWartośćAkcje
{{ feature.featureNameSnapshot ?: ('#' ~ feature.featurePrestaId) }} {{ feature.featureValueSnapshot ?: ('#' ~ feature.featureValuePrestaId) }}
Nie dodano jeszcze cech do draftu.

8. Atrybuty i warianty

{% for groupId, bucket in attributes_by_group %}
{{ bucket.group ? bucket.group.nameForLang : ('Grupa #' ~ groupId) }} {% for value in bucket.values %} {% else %} Brak wartości. {% endfor %}
{% else %}

Brak atrybutów. Najpierw pobierz słowniki z Presty.

{% endfor %}
{% if default_setting and default_setting.variantGenerationMode == 'variant_profile' and default_setting.variantProfile %}
Źródło: {{ default_setting.variantProfile.name }}
{% endif %}
Import wariantów z JSON

JSON importuje warianty do lokalnego draftu. Każda para key=value musi istnieć w mapie JSON wariantów.

{% for variant in draft.variants %} {% else %} {% endfor %}
WariantReferencePrice impactCena końcowaIlośćAktywny
{{ variant.attributesLabel }}
Brak wariantów. Wybierz atrybuty i kliknij „Wygeneruj warianty”.
{% if draft.variants|length > 0 %}
{% endif %}

9. Podgląd danych technicznych

{{ {
            status: draft.status,
            reference: draft.reference,
            main_category_presta_id: draft.mainCategoryPrestaId,
            category_ids: draft.categoryIdsJson,
            perfect_for_ids: draft.perfectForIdsJson,
            custom_tag_ids: draft.customTagIdsJson,
            variants_count: draft.variants|length
        }|json_encode(constant('JSON_PRETTY_PRINT')) }}