Add-on: Teillieferungen an verschiedene Lieferadressen

Das Add-on Teillieferungen ermöglicht es eine Teilmenge oder die gesamte Menge einer Warenkorbposition einer zusätzlichen
Lieferadresse zuzuordnen.

Ist das Modul aktiviert, kann man im Backen unter Add-ons → Teillieferungen die Funktionalität pro Shop aktivieren.

Warenkorb

Im Warenkorb können einzelnen Positionen eine oder mehrere Teillieferungen zugeordnet werden.

Versandkosten

Die Versandkosten werden anhand des Teilgewichtes (Versandkosten gewischtsbezogen) und der hinterlegten Versandkostentabelle berechnet.

Bei nicht gewichtsbezogenen Versandkosten wird der hinterlegte Versandkostenpreis pro Lieferadresse angewendet.


Mailtemplates

In den Mailtemplatevorlagen unter Shop → Aktionen → Vorlagen kann für in der Shopbetreibermail und der Bestellermail
folgender Code zur Anzeige der Teillieferungen verwendet werden.

{foreach from=$orderItem item=item}
<tr bgcolor="{cycle values="#ffffff,#fefefe"}" style="padding:3px;">
    <td>{$item->name}

    {if isset($item->personalizationDataShort)}
    <br>
    <small>{$item->personalizationDataShort}</small>{/if}
    </td>

    <td>{if isset($item->articleId)}{$item->quantityValue}{/if}</td>

    <td>€ {($item->total->getAmount()/100)|number_format:2}</td>
    {if isset($item->remark)}
       <td>{$item->remark}</td>
    {/if}
</tr>

{if isset($item->partialDeliveries)}
    {foreach from=$item->partialDeliveries item=partialDelivery}
    <tr>
       <td>
          Teillieferung:<br>
          {$partialDelivery->partialDeliveryAddress->company1}<br>
          {$partialDelivery->partialDeliveryAddress->zip} {$partialDelivery->partialDeliveryAddress->town}<br>
          {$partialDelivery->partialDeliveryAddress->street}<br>
        </td>
       <td colspan=99>
          {$partialDelivery->quantity}
       </td>
    </tr>
    {/foreach}

{/if}

{/foreach}


Für die Mails an Dienstleister unter Verwaltung → Dienstleister → bearbeiten kann
folgender Code zur Anzeige der Teillieferungen verwendet werden.


    <table class="items" width="660" border="0">
        <thead>
            <tr>
                <td style="border-color: #000; border-style: solid; border-width: 1px 0;">Pos.</td>
                <td style="border-color: #000; border-style: solid; border-width: 1px 0;">Bezeichnung</td>
                <td style="border-color: #000; border-style: solid; border-width: 1px 0;">Menge</td>
                <td align="right" style="border-color: #000; border-style: solid; border-width: 1px 0;">Summe</td>
            </tr>
        </thead>
        <tbody>
            {assign var=pos value=1}
            {foreach from=$orderItems key=orderItemKey item=orderItem}
            <tr>
                <td>{$pos++}</td>
                <td>{$orderItem.s_desc}{if $cart[item].persdata}{$cart[item].persdata}{/if}</td>
                <td>{$orderItem.s_qty}</td>
                <td align="right">{($orderItem.s_ntotal/100)|number_format:2:',':'.'} €</td>
            </tr>
            {if isset($orderItem.partialDeliveries)}
            {foreach from=$orderItem.partialDeliveries item=partialDelivery}
            <tr>
                <td>
                        Teillieferung:<br>
                        {$partialDelivery.partialDeliveryAddress.company1}<br>
                        {$partialDelivery.partialDeliveryAddress.zip} {$partialDelivery.partialDeliveryAddress.town}<br>
                        {$partialDelivery.partialDeliveryAddress.street}<br>
                </td>
                <td></td>
                <td colspan=99>
                    {$partialDelivery.quantity}
                </td>
                </tr>
            {/foreach}
            {/if}

            {/foreach}
        </tbody>
    </table>

Backend


Im Backend können die Teillieferungen in der Einzelansicht der Bestellungen eingesehen werden