Дозволено негативне замовлення, при Grand Total менше 0


15

Один з наших клієнтів попросив, щоб його персонал, що подає замовлення, міг подавати замовлення із загальною від’ємною кількістю замовлення. Додаток вже дозволяє негативні позиції, що працює чудово, доки решта замовлення становитиме позитивну велику суму.

Здається, що Magento дуже намагається не мати загального негативного порядку. Перегляд зібраних підсумків показує, що Magento застосує подарункову карту на зворотну суму. Якщо я відключу подарункову карту, вона застосовує Кредитний магазин (навіть якщо кредиту не існує). Я підозрюю, що це просто примха (і, можливо, червона оселедець).

Чи може хто-небудь допомогти визначити, де Magento примушує 0 як максимальну величину загальної суми, і як ми можемо піти на виконання запиту? Я не хочу просто встановлювати загальну суму, так як я хочу, щоб Magento все обчислював нормально, лише з урахуванням від'ємного Grand Total.

Дух питання полягає в технічній доцільності, але після того, як це буде вирішено, мене цікавлять будь-які «готчі» або думки, які могли б перешкодити використанню негативних підсумків порядку з нетехнічної точки зору.


1
Чи можете ви сказати нам, чому ви цього хочете?
орієнтири

@benmarks - Як я знаю, ви знаєте, іноді "саме цього хоче клієнт" козирять логіку та розум. Вони хочуть надати своїм людям з продажу (використовуючи замовлену форму замовлення) повну свободу у створенні замовлення та цінах (що вже працює, навіть для позицій з негативною ціною - доти, доки загальна сума замовлення вище 0. Це просто це на крок далі, щоб ціле замовлення за бажанням було негативним). Дякуємо за будь-яку допомогу, яку ви можете надати!
Моргон

Ви можете навести приклад із реального світу, де це було б корисно?
Джеймс Анелай - TheExtensionLab

Як ти будеш мати справу з кредитними пам’ятками?
Майкель Коек

@MaikelKoek - Клієнт насправді не робить кредитні пам’ятки такими, як є, тому я не думаю, що це не вплине.
Моргон

Відповіді:


4

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

Проведення пошуку в ядрі Magento для max(0повернення результатів у таких областях:

  • Enterprise_CustomerBalance_Model_Observer::creditmemoDataImport()
  • Enterprise_GiftCard_Model_Catalog_Product_Price_Giftcard::getFinalPrice()
  • Mage_Bundle_Model_Product_Price::getFinalPrice()
  • Mage_Catalog_Model_Product_Type_Price::getFinalPrice()
  • Mage_Catalog_Model_Product_Type_Configurable_Price::getFinalPrice()
  • Mage_Catalog_Model_Product_Type_Grouped_Price::getFinalPrice()
  • Mage_CatalogRule_Helper_Data::calcPriceRule()
  • Mage_Downloadable_Model_Product_Price::getFinalPrice()
  • Mage_SalesRule_Model_Validator::process()
  • Mage_Tax_Block_Sales_Order_Tax::_initSubtotal()
  • Mage_Tax_Model_Sales_Total_Quote_Tax (multiple uses)

І багато іншого в шаблонах у областях adminhtml та frontend. Можливо, вам доведеться переписати багато з цих моделей, щоб досягти бажаної функціональності.

Ви можете розглянути альтернативи нижче:

  • Надайте продавцям реєстрацію в адміністраторі Magento та дозвольте їм створювати замовлення звідти - повний контроль над ціноутворенням предметів тощо
  • Використовуйте кредит у магазині, якщо клієнт повинен отримати кредит (я припускаю, що це буде замовлення з від’ємною сумою?)

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


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