/** * @param \System\Model\Controller $item * @return true|false */ public function save($item) { $data = array('moduleId' => $item->getModuleId(), 'name' => $item->getName(), 'description' => $item->getDescription() ?: null, 'status' => $item->getStatus(), 'createdById' => $item->getCreatedById(), 'createdDateTime' => $item->getCreatedDateTime(), 'updatedDateTime' => $item->getUpdatedDateTime() ?: null); $results = false; $dbAdapter = $this->getDbAdapter(); if (null === ($id = $item->getId())) { $insert = $this->getDbSql()->insert(self::TABLE_NAME); $insert->values($data); $query = $this->getDbSql()->buildSqlString($insert); $results = $dbAdapter->query($query, $dbAdapter::QUERY_MODE_EXECUTE); $item->setId($dbAdapter->getDriver()->getLastGeneratedValue()); } else { $update = $this->getDbSql()->update(self::TABLE_NAME); $update->set($data); $update->where(array("id" => (int) $item->getId())); $selectString = $this->getDbSql()->buildSqlString($update); $results = $dbAdapter->query($selectString, $dbAdapter::QUERY_MODE_EXECUTE); } return $results; }