Jump to content

Faktury zmiana numeru lub usuniecie


konrad_151

Recommended Posts

Witam !

 

Jest jakaś możliwość na usunięcie lub wygenerowanie losowego numeru na fakturze ( http://imgur.com/CFVfISw ) ?

Klient może pobrać fakturę po zakupie, a na nim widnieje ten numer po którym może się domyślić o ilości sprzedanych produktów, wiem że można ustawić żeby zaczęło numeracje od jakiejś liczby ale to nie załatwia problemu :(

Nie rozumiem w ogóle celu istnienia tego numeru. Również po pobraniu faktury jej nazwa ma ten sam numer, która by wypadało zmienić.

 

Przeszukałem forum szukając informacji na ten temat ale nigdzie nie niczego jednoznacznego. Jedynie znalazłem coś takiego ( http://prestashopforum.pl/index.php/topic,4894.0.html ) ale to jest 2011r. i nie wiadomo czy zadziała.

 

Jak Wy sobie z tym radzicie :) ?

Link to comment
Share on other sites

dzięki endriu107 !

 

Numer faktury usunąłem z tego pliku co powiedziałeś i wszystko działa, natomiast co można zrobić z tym kodem z pliku HTMLTemplateInvoice.php (w folderze classes/pdf) aby ta nazwa była jakaś inna ?

 /**
     * Returns the template filename when using bulk rendering
     *
     * @return string filename
     */
    public function getBulkFilename()
    {
        return 'invoices.pdf';
    }

    /**
     * Returns the template filename
     *
     * @return string filename
     */
    public function getFilename()
    {
        $id_lang = Context::getContext()->language->id;
        $id_shop = (int)$this->order->id_shop;
        $format = '%1$s%2$06d';

        if (Configuration::get('PS_INVOICE_USE_YEAR')) {
            $format = Configuration::get('PS_INVOICE_YEAR_POS') ? '%1$s%3$s-%2$06d' : '%1$s%2$06d-%3$s';
        }

        return sprintf(
            $format,
            Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, $id_shop),
            $this->order_invoice->number,
            date('Y', strtotime($this->order_invoice->date_add))
        ).'.pdf';
    }

 

Edited by konrad_151 (see edit history)
Link to comment
Share on other sites

Zamień w

 

 return sprintf(
            $format,
            Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, $id_shop),
            $this->order_invoice->number,
            date('Y', strtotime($this->order_invoice->date_add))
        ).'.pdf';
to:

 

$this->order_invoice->number,
na:

 

intval( "0" . rand(1,9) . rand(0,9) . rand(0,9) . rand(0,9) . rand(0,9) ),
Oczywiście możesz to zamienić na cokolwiek innego, to akurat będzie generowało losowe cyfry.

 

EDIT.

 

Jeszcze dodam że najlepiej zrób to za pomocą override.

Edited by endriu107 (see edit history)
  • Like 1
Link to comment
Share on other sites

Ja w między czasie edytowałem ten kod i pewnie wziąłeś pierwszą wersje którą po kilku sekundach poprawiłem, nie jest również potrzebna deklaracja zmiennej zobacz wyżej na poprawiony to zobaczysz jak powinien wyglądać ostateczny kod.

Link to comment
Share on other sites

  • 2 months later...

Tutaj z faktury całkowicie został usunięty numer, a losowe generowanie zostało dodane tylko do nazwy pliku pdf. Wiele osób potrzebuje czegoś takiego chociażby ze względu na to że faktury wystawiają w innym programie a ten plik ma służyć za potwierdzenie czy też podsumowanie zamówienia, jednocześnie chroniąc sie przed tym że konkurencja podejrzy ilość zamówień.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...