Beispiel #1
0
 /**
  * @param OrderBase $order
  * @return Entity\Result
  */
 public static function doCalculate(OrderBase $order)
 {
     $result = new Result();
     if ($order->getPersonTypeId() !== null) {
         if (!($personTypeList = static::load($order->getSiteId(), $order->getPersonTypeId()))) {
             $result->addError(new Entity\EntityError(GetMessage('SKGP_PERSON_TYPE_NOT_FOUND'), 'PERSON_TYPE_ID'));
         }
         return $result;
     }
     if (($personTypeList = static::load($order->getSiteId())) && !empty($personTypeList) && is_array($personTypeList)) {
         $firstPersonType = reset($personTypeList);
         $order->setPersonTypeId($firstPersonType["ID"]);
     } else {
         $result->addError(new Entity\EntityError(GetMessage('SKGP_PERSON_TYPE_EMPTY'), 'PERSON_TYPE_ID'));
     }
     return $result;
 }