/**
  * @param Position $position
  * @return Position
  */
 public function savePosition(Position $position)
 {
     $id = $position->getPositionId();
     $data = $position->getArrayCopy();
     if ($id > 0) {
         $this->update($data, array('positionId' => $id));
     } else {
         unset($data['positionId']);
         $this->insert($data);
     }
     if (!$position->getPositionId()) {
         $position->setPositionId($this->getLastInsertValue());
     }
     return $position;
 }