Magento Przyrost każdej nowej faktury Przyrost o 5?

21

Muszę zwiększać każdy nowy identyfikator faktury o 5, próbowałem poniżej kodu.

Ale zmieniłem wszystkie faktury, przesyłki, zamówienia i noty kredytowe.

Potrzebuję przyrostu każdej nowej faktury o 5, przyrostu dostawy o 5 i przyrostu noty kredytowej o 3.

Przyrost zamówienia sprzedaży o 1 (normalny).

W jaki sposób mogę to zrobić .?

Niech ktoś mi pomoże.

class Mage_Eav_Model_Entity_Increment_Numeric extends Mage_Eav_Model_Entity_Increment_Abstract    
{
   public function getNextId()
    {
        $last = $this->getLastId();

        if (strpos($last, $this->getPrefix()) === 0) {
            $last = (int)substr($last, strlen($this->getPrefix()));
        } else {
            $last = (int)$last;
        }

        $next = $last + 5;

        return $this->format($next);
    }
}
VijayS91
źródło
Chcę wiedzieć, dlaczego potrzebujesz takiego zachowania?
Rajeev K Tomy
@programmer_rkt nauka podstawowych funkcji Magento ...! Moja TL daje przykładowe zadanie.
VijayS91
@VijayS Uważam, że atwix.com/magento/custom-order-and-customer-numbers to dobry post na blogu o tworzeniu niestandardowego modelu przyrostowego
David Manners

Odpowiedzi:

4

Możesz napisać wyzwalacze dla ID lub napisać procedurę, aby zmienić identyfikator autoinkrementacji, aby ustawić na +5 za każdym razem, gdy wstawiany jest rekord. Pamiętaj, aby zmienić relacje rodzic-dziecko.


źródło
1

Można ustawić różne modele przyrostów dla każdego typu dokumentu w bazie danych. Teraz używają tej samej klasy, więc zmiany dotyczą wszystkich typów.

Alternatywnie możesz sprawdzić typ jednostki w ramach tej metody i zastosować niestandardową logikę przyrostu liczby.

Jako trzecią opcję możesz wyszukać w magento connect niestandardowe rozszerzenie numeru zamówienia.

Amasty
źródło