public function loadFrom(Pap_Db_Commission $commission){ $this->tier = $commission->getTier(); $this->type = $commission->getCommissionType(); $this->value = $commission->getCommissionValue(); $this->subtype = $commission->getSubtype(); $this->groupid = $commission->getGroupId(); $this->typeid = $commission->getCommissionTypeId(); }
public function loadSubTypeCommissions($subType) { $commission = new Pap_Db_Commission(); $commission->setGroupId($this->commissionGroupId); $commission->setTypeId($this->commissionTypeId); $commission->setSubtype($subType); foreach ($commission->loadCollection() as $commission) { $this->setField($this->preffixCommissionFormName($subType, $commission->getTier(), "commission"), $commission->getCommissionValue()); $this->setField($this->preffixCommissionFormName($subType, $commission->getTier(), "commissionType"), $commission->getCommissionType()); } }
public function recompute(Pap_Db_Commission $commission) { $commissionType = $commission->getCommissionType(); $commissionValue = $commission->getCommissionValue(); $realTotalCost = $this->getTotalCost() - $this->getFixedCost(); if ($commissionType == Pap_Db_Commission::COMMISSION_TYPE_PERCENTAGE) { $newValue = $realTotalCost * ($commissionValue/100); } else if($commissionType == Pap_Db_Commission::COMMISSION_TYPE_FIXED) { $newValue = $commissionValue; } else { return; } $newValue = $newValue * $this->getSplit(); if ($this->getType() == Pap_Db_Transaction::TYPE_REFUND || $this->getType() == Pap_Db_Transaction::TYPE_CHARGE_BACK) { $newValue *= -1; } $this->setCommission($newValue); }