/** * @param Project $project * @return Project */ public function saveProject(Project $project) { $id = $project->getProjectId(); $data = $project->getArrayCopy(); if ($id > 0) { $this->update($data, array('projectId' => $id)); } else { unset($data['projectId']); $this->insert($data); } if (!$project->getProjectId()) { $project->setProjectId($this->getLastInsertValue()); } return $project; }