Press "Enter" to skip to content

Numer zamówienia (numer referencyjny) jako cyfra. Jak to zrobić w PrestaShop 8.1.7?

Admin 1

Poruszaliśmy to juz w artykule:

Numer zamówienia jako cyfra a nie ciąg losowych znaków

Dla najnowszej obecnie wersji PrestaShop 8.1.7 wykonaj nast. modyfikacje:

Otwórz plik:

classes/order/Order.php

Porada: Wykonaj kopię bezpieczeństwa tego pliku.

Kod tej funkcji:

public static function generateReference()
{
    $reference = Hook::exec('actionGenerateDocumentReference', [
        'type' => 'order',
    ]);

    return !empty($reference) ? $reference : strtoupper(Tools::passwdGen(9, 'NO_NUMERIC'));
}

Zamień na:

public static function generateReference()
{
    $reference = Hook::exec('actionGenerateDocumentReference', [
        'type' => 'order',
    ]);

    $last = Db::getInstance()->getValue('SELECT MAX(id_order) FROM '._DB_PREFIX_.'orders');

    return !empty($reference) ? $reference : str_pad((int)$last + 1, 9, '000000000', STR_PAD_LEFT);
}

Uwaga! Wykonanie w przyszłości akutalizacji może nadpisać ten plik. Wypadało by to wykonać w oparciu o overrides. Ale to juz temat na inny artykuł 😉

grafika:alphacoders.com

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Zobacz także !
Błędny status "BRAK TOWARU" - jak to naprawić?