10.1. PersistenceManager.class.php
<?php
/**
* @package model */
/**
* Interface que define um Manager, classe responsável pelo gerenciamento * de persistência de alguma classe do Model. Todos os Managers deste módulo * devem implementar no mínimo os métodos definidos por este contrato.
*
* Essa idéia segue o design pattern DAO (Data Access Object).
*
* @static
* @package model */
interface PersistenceManager {
/**
* Método utilizado para obtenção de todas as entidades da classe Model correspondente.
*
* @param string $mapKey Chave que deve ser utilizado para mapear os objetos no
<kbd>array</kbd> de saída.
* Pode ser <kbd>null</kbd> - nesse caso o <kbd>array</kbd> terá índices numéricos por default.
* @return array Retorna um <kbd>array</kbd> contendo os objetos encontrados. No caso de não
* haver nenhum objeto, <kbd>array</kbd> estará vazio.
*/
public static function fetchAll($mapKey = null);
/**
* Método utilizado para obtenção de uma entidade da classe Model correspondente através de sua chave primária.
*
* @param mixed $key Chave da entidade desejada, segundo a definição de chave primária da classe Model.
* @return mixed Retorna o objeto encontrado ou <kbd>null</kbd>, caso não encontre.
*/
public static function findByKey($key);
/**
* Método utilizado para obtenção de uma lista de entidade da classe Model correspondente através de consulta
* pelos parâmetros fornecidos através de um objeto de exemplo da classe Model.
*
* @param mixed $model Objeto modelo com parâmetros a serem utilizados para pesquisa.
* @param bool $andOperator Se <kbd>true</kbd> indica que deve ser utilizado o operador booleano AND na pesquisa,
* em caso contrário será utilizado o operador OR, por padrão.
* @return array Retorna um <kbd>array</kbd> contendo os objetos encontrados. No caso de não
* haver nenhum objeto, <kbd>array</kbd> estará vazio.
*/
public static function findByExample($model, $andOperator);
/**
* Método utilizado para gravação de uma entidade da classe Model correspondente. A semântica da operação,
* se vai ser uma inserção ou atualização, é dependente de cada classe Model e deve ser especificada na
* implementação do método pela classe concreta. O exemplo mais comum para chave primária inteira é assumir
* que o ID 0 (zero) sinaliza uma entidade ainda não persistida no banco de dados (e que deve ser inserida)
* e que ID diferente disso mostra que a entidade já existe na base (devendo portanto ser apenas atualizada).
*
* @param mixed $model Objeto a ser gravado.
* @return array Retorna um <kbd>array</kbd> contendo os erros que ocorreram. No caso de não
* haver nenhum erro, <kbd>array</kbd> estará vazio.
*/
public static function save($model);
/**
* Método utilizado para exclusão de uma entidade da classe Model correspondente através de sua chave primária.
*
* @param mixed $key Chave da entidade a ser excluída, segundo a definição de chave primária da classe Model.
* @return array Retorna um <kbd>array</kbd> contendo os erros que ocorreram. No caso de não
* haver nenhum erro, <kbd>array</kbd> estará vazio.
*/
public static function delete($key);
/**
* Retorna um <kbd>array</kbd> associativo para utilização em caixas de seleção, por exemplo. Cada elemento do
* <kbd>array</kbd> terá como chave um identificador da entidade (ID, p.ex.) e como valor uma informação
* significativa para o usuário (Nome, p.ex.).
*
* @return array Retorna um <kbd>array</kbd> contendo as informações encontradas. No caso de não
* haver nenhum registro, <kbd>array</kbd> estará vazio.
*/
public static function getMap();
}
?>
10.2. TipoUnidadeFisicaManager.class.php
* Classe que define o gerenciador de persistência para a classe <kbd>TipoUnidadeFisica</kbd>.
* * @static
* @see PersistenceManager * @package model
*/
class TipoUnidadeFisicaManager implements PersistenceManager {
/**
* @see PersistenceManager::fetchAll() */
public static function fetchAll($mapKey = null) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM tipo_unidade_fisica ORDER BY nome");
$stmt->execute();
* @see PersistenceManager::findByKey() */
public static function findByKey($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT nome FROM tipo_unidade_fisica WHERE id = :id ORDER BY nome");
* @see PersistenceManager::findByExample() */
public static function findByExample($tipoUnidadeFisica, $andOperator) { $pdo = Util::getPDOHandler();
}
$sql = $sql . " ORDER BY nome";
$stmt = $pdo->prepare($sql);
if ($tipoUnidadeFisica->getNome() != "") {
$nome = Util::getLikeString($tipoUnidadeFisica->getNome());
$stmt->bindParam(":nome", $nome);
}
$stmt->execute();
$lista = array();
while ($row = $stmt->fetch()) {
$tipoUnidadeFisica= new TipoUnidadeFisica();
$tipoUnidadeFisica->setId($row["id"]);
$tipoUnidadeFisica->setNome($row["nome"]);
$lista[] = $tipoUnidadeFisica;
}
return $lista;
}
/**
* @see PersistenceManager::save() */
public static function save($tipoUnidadeFisica) { $pdo = Util::getPDOHandler();
if ($tipoUnidadeFisica->getId() == 0) {
$sql = "INSERT INTO tipo_unidade_fisica (nome) VALUES (:nome)";
} else {
$sql = "UPDATE tipo_unidade_fisica SET nome = :nome WHERE id = :id";
}
$stmt = $pdo->prepare($sql);
if ($tipoUnidadeFisica->getId() != 0) { $id = $tipoUnidadeFisica->getId();
$stmt->bindParam(":id", $id);
}
$nome = $tipoUnidadeFisica->getNome();
$stmt->bindParam(":nome", $nome);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::delete() */
public static function delete($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("DELETE FROM tipo_unidade_fisica WHERE id = :id");
$stmt->bindParam(":id", $key);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::getMap() */
public static function getMap() { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM tipo_unidade_fisica");
$stmt->execute();
$map = array();
while ($row = $stmt->fetch()) { $map[$row["id"]] = $row["nome"];
}
return $map;
} }
?>
10.3. TipoDisciplinaManager.class.php
* Classe que define o gerenciador de persistência para a classe <kbd>TipoDisciplina</kbd>.
*
* @static
* @see PersistenceManager * @package model
*/
class TipoDisciplinaManager implements PersistenceManager {
/**
* @see PersistenceManager::fetchAll() */
public static function fetchAll($mapKey = null) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM tipo_disciplina ORDER BY nome");
$stmt->execute();
* @see PersistenceManager::findByKey() */
public static function findByKey($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT nome FROM tipo_disciplina WHERE id = :id ORDER BY nome");
* @see PersistenceManager::findByExample() */
public static function findByExample($tipoDisciplina, $andOperator) { $pdo = Util::getPDOHandler();
}
$sql = $sql . " ORDER BY nome";
$stmt = $pdo->prepare($sql);
if ($tipoDisciplina->getNome() != "") {
$nome = Util::getLikeString($tipoDisciplina->getNome());
$stmt->bindParam(":nome", $nome);
}
$stmt->execute();
$lista = array();
while ($row = $stmt->fetch()) {
$tipoDisciplina= new TipoDisciplina();
$tipoDisciplina->setId($row["id"]);
$tipoDisciplina->setNome($row["nome"]);
$lista[] = $tipoDisciplina;
}
return $lista;
}
/**
* @see PersistenceManager::save() */
public static function save($tipoDisciplina) { $pdo = Util::getPDOHandler();
if ($tipoDisciplina->getId() == 0) {
$sql = "INSERT INTO tipo_disciplina (nome) VALUES (:nome)";
} else {
$sql = "UPDATE tipo_disciplina SET nome = :nome WHERE id = :id";
}
$stmt = $pdo->prepare($sql);
if ($tipoDisciplina->getId() != 0) { $id = $tipoDisciplina->getId();
$stmt->bindParam(":id", $id);
}
$nome = $tipoDisciplina->getNome();
$stmt->bindParam(":nome", $nome);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::delete() */
public static function delete($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("DELETE FROM tipo_disciplina WHERE id = :id");
$stmt->bindParam(":id", $key);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::getMap() */
public static function getMap() { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM tipo_disciplina");
$stmt->execute();
$map = array();
while ($row = $stmt->fetch()) { $map[$row["id"]] = $row["nome"];
}
return $map;
} }
?>
10.4. StatusTurmaManager.class.php
* Classe que define o gerenciador de persistência para a classe <kbd>StatusTurma</kbd>.
*
* @static
* @see PersistenceManager * @package model
*/
class StatusTurmaManager implements PersistenceManager {
/**
* @see PersistenceManager::fetchAll() */
public static function fetchAll($mapKey = null) { $pdo = Util::getPDOHandler();
* @see PersistenceManager::findByKey() */
public static function findByKey($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT nome FROM status_turma WHERE id = :id ORDER BY nome");
* @see PersistenceManager::findByExample() */
public static function findByExample($statusTurma, $andOperator) { $pdo = Util::getPDOHandler();
}
public static function save($statusTurma) { $pdo = Util::getPDOHandler();
* @see PersistenceManager::delete() */
* @see PersistenceManager::getMap() */
public static function getMap() { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM status_turma");
$stmt->execute();
$map = array();
while ($row = $stmt->fetch()) { $map[$row["id"]] = $row["nome"];
}
return $map;
} }
?>
10.5. StatusMatriculaCursoManager.class.php
* Classe que define o gerenciador de persistência para a classe
<kbd>StatusMatriculaCurso</kbd>.
*
* @static
* @see PersistenceManager * @package model
*/
class StatusMatriculaCursoManager implements PersistenceManager {
/**
* @see PersistenceManager::fetchAll() */
public static function fetchAll($mapKey = null) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM status_matricula_curso ORDER BY nome");
$stmt->execute();
* @see PersistenceManager::findByKey() */
public static function findByKey($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT nome FROM status_matricula_curso WHERE id = :id ORDER BY nome");
* @see PersistenceManager::findByExample() */
public static function findByExample($statusMatriculaCurso, $andOperator) { $pdo = Util::getPDOHandler();
$sql = "SELECT id, nome FROM status_matricula_curso WHERE";
$sql .= $andOperator ? " 1 = 1" : " 1 = 2";
$operador = $andOperator ? "AND" : "OR";
if ($statusMatriculaCurso->getNome() != "") {
$sql .= " $operador LOWER(nome) LIKE :nome";
}
$sql = $sql . " ORDER BY nome";
$stmt = $pdo->prepare($sql);
if ($statusMatriculaCurso->getNome() != "") {
$nome = Util::getLikeString($statusMatriculaCurso->getNome());
$stmt->bindParam(":nome", $nome);
}
$stmt->execute();
$lista = array();
while ($row = $stmt->fetch()) {
$statusMatriculaCurso= new StatusMatriculaCurso();
$statusMatriculaCurso->setId($row["id"]);
$statusMatriculaCurso->setNome($row["nome"]);
$lista[] = $statusMatriculaCurso;
}
return $lista;
}
/**
* @see PersistenceManager::save() */
public static function save($statusMatriculaCurso) { $pdo = Util::getPDOHandler();
if ($statusMatriculaCurso->getId() == 0) {
$sql = "INSERT INTO status_matricula_curso (nome) VALUES (:nome)";
} else {
$sql = "UPDATE status_matricula_curso SET nome = :nome WHERE id = :id";
}
$stmt = $pdo->prepare($sql);
if ($statusMatriculaCurso->getId() != 0) { $id = $statusMatriculaCurso->getId();
$stmt->bindParam(":id", $id);
}
$nome = $statusMatriculaCurso->getNome();
$stmt->bindParam(":nome", $nome);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::delete() */
public static function delete($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("DELETE FROM status_matricula_curso WHERE id = :id");
$stmt->bindParam(":id", $key);
$stmt->execute();
return array();
}
/**
* @see PersistenceManager::getMap() */
public static function getMap() { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM status_matricula_curso");
$stmt->execute();
$map = array();
while ($row = $stmt->fetch()) { $map[$row["id"]] = $row["nome"];
}
return $map;
} }
?>
10.6. StatusMatriculaTurmaManager.class.php
* Classe que define o gerenciador de persistência para a classe
<kbd>StatusMatriculaTurma</kbd>.
*
* @static
* @see PersistenceManager * @package model
*/
class StatusMatriculaTurmaManager implements PersistenceManager {
/**
* @see PersistenceManager::fetchAll() */
public static function fetchAll($mapKey = null) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM status_matricula_turma ORDER BY nome");
$stmt->execute();
* @see PersistenceManager::findByKey() */
public static function findByKey($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT nome FROM status_matricula_turma WHERE id = :id ORDER BY nome");
* @see PersistenceManager::findByExample() */
public static function findByExample($statusMatriculaTurma, $andOperator) { $pdo = Util::getPDOHandler();
$sql = "SELECT id, nome FROM status_matricula_turma WHERE";
$sql .= $andOperator ? " 1 = 1" : " 1 = 2";
$operador = $andOperator ? "AND" : "OR";
if ($statusMatriculaTurma->getNome() != "") {
$sql .= " $operador LOWER(nome) LIKE :nome";
}
$sql = $sql . " ORDER BY nome";
$stmt = $pdo->prepare($sql);
if ($statusMatriculaTurma->getNome() != "") {
$nome = Util::getLikeString($statusMatriculaTurma->getNome());
$stmt->bindParam(":nome", $nome);
public static function save($statusMatriculaTurma) { $pdo = Util::getPDOHandler();
* @see PersistenceManager::delete() */
public static function delete($key) { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("DELETE FROM status_matricula_turma WHERE id = :id");
$stmt->bindParam(":id", $key);
* @see PersistenceManager::getMap() */
public static function getMap() { $pdo = Util::getPDOHandler();
$stmt = $pdo->prepare("SELECT id, nome FROM status_matricula_turma");
$stmt->execute();
$map = array();
while ($row = $stmt->fetch()) { $map[$row["id"]] = $row["nome"];
}
return $map;
} }
?>