예제 #1
0
 /**
  * save the items
  *
  * @param unknown $sender
  * @param unknown $param
  * @throws Exception
  *
  */
 public function deactivateItems($sender, $param)
 {
     $results = $errors = array();
     try {
         $class = trim($this->_focusEntity);
         $id = isset($param->CallbackParameter->item_id) ? $param->CallbackParameter->item_id : array();
         $creditNote = CreditNote::get($id);
         if (!$creditNote instanceof CreditNote) {
             throw new Exception('Invalid Credit Note passed in');
         }
         $creditNote->setActive(false)->save();
         $results['item'] = $creditNote->getJson(array('order' => $creditNote->getOrder() instanceof Order ? '' : $creditNote->getOrder()->getJson(), 'customer' => $creditNote->getCustomer()->getJson()));
     } catch (Exception $ex) {
         $errors[] = $ex->getMessage() . $ex->getTraceAsString();
     }
     $param->ResponseData = StringUtilsAbstract::getJson($results, $errors);
 }
예제 #2
0
 /**
  * get Credit Note Items by credit note
  * 
  * @param CreditNote|string $creditNote
  * @return Ambigous <NULL, unknown>
  */
 public static function getByCreditNote($creditNote)
 {
     $creditNote = $creditNote instanceof CreditNote ? $creditNote : CreditNote::get(trim($creditNote));
     $creditNote = $creditNote instanceof CreditNote ? $creditNote : (count($creditNotes = CreditNote::getAllByCriteria('creditNoteNo = ?', array(trim($creditNote)), true, 1, 1)) > 0 ? $creditNotes[0] : null);
     return $creditNote instanceof CreditNote ? count($items = self::getAllByCriteria('creditNoteId = ?', array($creditNote->getId()), true)) > 0 ? $items : null : null;
 }
예제 #3
0
 /**
  *
  * @param unknown $sender
  * @param unknown $params
  */
 public function addComments($sender, $params)
 {
     $results = $errors = array();
     try {
         Dao::beginTransaction();
         if (!isset($params->CallbackParameter->creditNote) || !($creditNote = CreditNote::get($params->CallbackParameter->creditNote->id)) instanceof CreditNote) {
             throw new Exception('System Error: invalid CreditNote passed in!');
         }
         if (!isset($params->CallbackParameter->comments) || ($comments = trim($params->CallbackParameter->comments)) === '') {
             throw new Exception('System Error: invalid comments passed in!');
         }
         $comment = Comments::addComments($creditNote, $comments, Comments::TYPE_NORMAL);
         $results = $comment->getJson();
         Dao::commitTransaction();
     } catch (Exception $ex) {
         Dao::rollbackTransaction();
         $errors[] = $ex->getMessage();
     }
     $params->ResponseData = StringUtilsAbstract::getJson($results, $errors);
 }