Magento Кожне нове збільшення рахунку-фактура збільшується на 5?


21

Мені потрібно збільшити кожен новий ідентифікатор рахунку на 5, я спробував нижче коду.

Але змінили всі рахунки-фактури, поставки, замовлення та кредитні пам’ятки.

Мені потрібно кожне нове збільшення ідентифікатора рахунків-фактур на 5, приріст відвантажень на 5 та збільшення кредитних пам’яток на 3.

Також збільшення замовлення на продаж на 1 (звичайне).

Як я можу це зробити?

Хто-небудь мені допоможе.

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);
    }
}

Мені цікаво знати, навіщо вам така поведінка?
Радєєв К Томі

@programmer_rkt вивчення основного функціоналу Magento ...! Мій TL дає зразок завдання.
VijayS91

@VijayS Я вважаю, що atwix.com/magento/custom-order-and-customer-numbers є гарною публікацією в блозі про створення власної моделі збільшення
Девід Маннерс

Відповіді:


4

Ви можете написати тригери для ідентифікатора або ви можете написати процедуру, щоб змінити ідентифікатор автоматичного підвищення на +5 кожен раз, коли вставляється запис. Не забудьте змінити відносини батько-дитина.


1

Ви можете встановити різні моделі збільшення для кожного типу документа в базі даних. Зараз вони використовують один і той же клас, тому зміни впливають на всі типи.

Крім того, ви можете перевірити тип сутності всередині цього методу та застосувати власну логіку збільшення числа.

Як третій варіант, ви можете шукати підключення magento для розширення спеціального номера замовлення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.