Класс discountRule и его дочерние классы (модуль emarket) — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «=Класс discountRule и его дочерние классы= == Описание == Класс является абстрактным - базовый кла…»)
 
Строка 20: Строка 20:
 
=== create() ===
 
=== create() ===
  
Метод  <span style="font-weight:bold">create()</span> создает объект скидки нужного типа(класса)
+
Метод  <span style="font-weight:bold">create()</span> создает объект правила скидки нужного типа(класса)
  
 
<p>'''Параметры:''' </p>  
 
<p>'''Параметры:''' </p>  
 
  discount<span style="font-weight:bold"> $discount</span>:
 
  discount<span style="font-weight:bold"> $discount</span>:
 
объект представляющий собой скидку
 
объект представляющий собой скидку
  umiObject<span style="font-weight:bold"> $modTypeObject</span>:
+
  umiObject<span style="font-weight:bold"> $ruleTypeObject</span>:
объект представляющий тип модификатора
+
объект представляющий тип правила
<p>'''Результат:''' объект модификатор цены скидки нужного типа</p>
+
<p>'''Результат:''' объект правило скидки нужного типа</p>
 
<br/>
 
<br/>
  
Строка 38: Строка 38:
 
  discount<span style="font-weight:bold"> $discount</span>:
 
  discount<span style="font-weight:bold"> $discount</span>:
 
объект представляющий собой скидку
 
объект представляющий собой скидку
<p>'''Результат:''' объект модификатор цены скидки нужного типа</p>
+
<p>'''Результат:''' объект правило скидки нужного типа</p>
 
<br/>
 
<br/>
  
 
=== getList() ===
 
=== getList() ===
  
Метод <span style="font-weight:bold">getList()</span> получает список доступных можификаторов типа скидки
+
Метод <span style="font-weight:bold">getList()</span> получает список доступных правил  скидки
 
<p>'''Параметры:''' </p>  
 
<p>'''Параметры:''' </p>  
 
  int<span style="font-weight:bold"> $discountTypeId=false</span>:
 
  int<span style="font-weight:bold"> $discountTypeId=false</span>:
 
идентификатор типа скидки
 
идентификатор типа скидки
<p>'''Результат:'''array список модификаторов</p>
+
<p>'''Результат:'''array список правил</p>
 
<br/>
 
<br/>
  
=== recalcPrice()===
 
 
Метод <span style="font-weight:bold">recalcPrice()</span> пересчитывает цену с учетом модификатора.
 
Метод является абстрактным и определяется в дочерних классах
 
 
<p>'''Параметры:''' </p>
 
int<span style="font-weight:bold"> $price</span>:
 
цена на товар, заказ
 
<p>'''Результат:'''</p>
 
<br/>
 
  
 
== Дочерние классы ==
 
== Дочерние классы ==

Версия 16:01, 18 апреля 2014

Класс discountRule и его дочерние классы

Описание

Класс является абстрактным - базовый класс для правил скидок. Классами наследниками являются классы, представляющие типы правил:

  • На определенные товары
  • На временной промежуток
  • На сумму покупок пользователя
  • На группу пользователей
  • На пользователей
  • На связанные товары
  • На сумму заказа

Исходный код класса находится в файле classes\modules\emarket\classes\discount\discountRule.php


Методы

create()

Метод create() создает объект правила скидки нужного типа(класса)

Параметры:

discount $discount:

объект представляющий собой скидку

umiObject $ruleTypeObject:

объект представляющий тип правила

Результат: объект правило скидки нужного типа


get()

Метод get() получает объект скидки

Параметры:

int $modObjectId:

идентификатор объекта модификатора скидки

discount $discount:

объект представляющий собой скидку

Результат: объект правило скидки нужного типа


getList()

Метод getList() получает список доступных правил скидки

Параметры:

int $discountTypeId=false:

идентификатор типа скидки

Результат:array список правил



Дочерние классы

Стандартно у класса discountModificator имеется два дочерних класса procDiscountModificator и absoluteDiscountModificator, которые изменяют цену, соответственно, на заданный процент скидки либо на фиксированное число. В каждом классе описан один публичный метод - recalcPrice

recalcPrice()

Метод recalcPrice() пересчитывает цену с учетом модификатора.

Параметры:

int $originalPrice:

цена на товар, заказ без учета скидки

Результат: int цена с учетом скидки