/** * Enter description here... * * @param RM_Holder_iHolderable $obEquipment * @param RM_Holder_Object $obDestinationHolder * @return int */ public function moveEntity(RM_Holder_iHolderable $obEntity, RM_Holder_Object $obDestinationHolder) { $obEntity->setHolder($obDestinationHolder); return $obEntity->save(); }
/** * Remove equipment from invoice * * @param RM_Holder_iHolderable $obEntity * @return void */ public function removeEntity(RM_Holder_iHolderable $obEntity) { if (!$this->canChangeItemState()) { return FALSE; } $this->_items(); if ($this->is_deleted || $this->state == RM_Holder_Invoice_State::CLOSED) { throw new RM_Base_Exception_BadUsage(__METHOD__ . ' : change closed invoice'); } if (!isset($this->_items[$obEntity->guidType()][$obEntity->id()])) { throw new RM_Base_Exception_BadUsage(__METHOD__ . ' : remove unknown entity'); } if (!$this->_items[$obEntity->guidType()][$obEntity->id()]->changeState(RM_Holder_Invoice_Item_State::DEL)) { return FALSE; } $this->_items[$obEntity->guidType()][$obEntity->id()]->mdate = M('Date')->dbDateTime(); if ($this->_items[$obEntity->guidType()][$obEntity->id()]->save()) { unset($this->_items[$obEntity->guidType()][$obEntity->id()]); $obEntity->setInvoice(); $obEntity->save(); } return TRUE; }