Exemple #1
0
 /**
  * Add rule discount description label to address object
  *
  * @param Address $address
  * @param \Magento\SalesRule\Model\Rule $rule
  * @return $this
  */
 public function addDiscountDescription($address, $rule)
 {
     $description = $address->getDiscountDescriptionArray();
     $ruleLabel = $rule->getStoreLabel($address->getQuote()->getStore());
     $label = '';
     if ($ruleLabel) {
         $label = $ruleLabel;
     } else {
         if (strlen($address->getCouponCode())) {
             $label = $address->getCouponCode();
         }
     }
     if (strlen($label)) {
         $description[$rule->getId()] = $label;
     }
     $address->setDiscountDescriptionArray($description);
     return $this;
 }
Exemple #2
0
 /**
  * @param \Magento\Sales\Model\Quote\Address $address
  * @return $this
  */
 public function fetch(\Magento\Sales\Model\Quote\Address $address)
 {
     $amount = $address->getDiscountAmount();
     if ($amount != 0) {
         $title = __('Discount');
         $code = $address->getCouponCode();
         if (strlen($code)) {
             $title = __('Discount (%1)', $code);
         }
         $address->addTotal(array('code' => $this->getCode(), 'title' => $title, 'value' => -$amount));
     }
     return $this;
 }