Jak wygenerować fakturę Prestashop według nazwy klienta?

Cel bloga

Po przeczytaniu tego bloga będziemy mogli wygenerować fakturę PDF według nazwy klienta.

Problem Statement

W tej chwili,

Wymaganie

Musimy zmodyfikować poniższe pliki, aby naprawić to samo. Nadpisujemy odpowiednią funkcję i definicję pliku klasy, aby uniknąć jakichkolwiek zmian w plikach podstawowych. Poniżej znajduje się lista plików klas, które zostaną nadpisane

root / classes / pdf / HTMLTemplateInvoice.php

Procedura rozwiązania problemu

1. Utwórz plik HTMLTemplateInvoice.php na ścieżce zastąp \ klas \ pdf i umieść pod nim kod. To spowoduje zapisanie nazwy pliku faktury.

<? php / ** * @override HTMLTemplateInvoice.php * / class HTMLTemplateInvoice extends HTMLTemplateInvoiceCore {/ ** * Zwraca szablon nazwy pliku * * @return ciąg nazwy pliku * / public function getFilename () {$ id_lang = Kontekst :: getContext () -> język-> id; $ id_shop = (int) $ this-> order-> id_shop; $ format = '% 1 $ s% 2 $ 06d'; if (Konfiguracja :: get ("PS_INVOICE_USE_YEAR")) {$ format = Konfiguracja :: get ("PS_INVOICE_YEAR_POS")? "% 1 $ s% 3 $ s-% 2 $ 06d": "% 1 $ s% 2 $ 06d-% 3 $ s"; } / * zmiany rozpoczęte *, aby dodać nazwę klienta * / $ klient = nowy klient ((int) $ this-> order-> id_customer); return sprintf ($ format, Konfiguracja :: get ("PS_INVOICE_PREFIX", $ id_lang, null, $ id_shop), $ this-> order_invoice-> number, date ('Y', strtotime ($ this-> order_invoice-> date_add) )) .'_ '. $ customer-> firstname .'_'. $ customer-> lastname. '. pdf'; / * zmienia koniec * /}}

2. Po utworzeniu pliku php w folderze override. Wyczyść pamięć podręczną z Back-office-> Advance Parameter -> Performance. 3. Teraz wygeneruj fakturę, przechodząc do Back-office-> Orders.

Zobacz poniższe zrzuty ekranu

Faktura Prestashop

Faktura Prestashop

Faktura Prestashop

Kliknij tutaj, aby pobrać cały projekt.

Podsumowanie

Po wykonaniu powyższej procedury będziesz mógł zmienić nazwę faktury.


Mayank Kumar

Mayank Kumar

Mayank Kumar with 2.5 years of experience as Software Engineer working on Knowband. Being a Computer Science graduate loves to face challenges, explore new things and self-motivator.

Leave a Reply

Your email address will not be published. Required fields are marked *