Diego Botelho Martins

NOTE: To use the advanced features of this site you need javascript turned on.

Home Artigos PHP Mapeamento Objeto-Relacional da Teoria à Prática - Página 2
Mapeamento Objeto-Relacional da Teoria à Prática - Página 2 PDF Imprimir E-mail
Escrito por Diego Botelho   
Dom, 25 de Outubro de 2009 00:00
Índice do Artigo
Mapeamento Objeto-Relacional da Teoria à Prática
Introdução
A Classe Cliente.php
Todas as Páginas


<?php

class ClienteException extends Exception { }

/**
* Classe responsável pelo gerenciamento das informações de um cliente
*
* @package MeuSistema
* @subpackage Clientes
* @author Diego Botelho < Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo. >
* @link http://www.diegobotelho.com.br
* @date 2007-01-30 21:07:00
*/
class Cliente
{
/**
* @var int
* @access private
*/
private $cli_id;

/**
*
* @var int
* @access private
*/
private $cli_idCategoria;

/**
* @var object
* @access private
*/
private $objIdCategoria;

/**
* @var string
* @access private
*/
private $cli_nome;

/**
* @var string
* @access private
*/
private $cli_cpf;

/**
* @var string
* @access private
*/
private $cli_email;

//----------------------------------------------------------------------

/**
* Seta o valor do atributo $cli_id
* @param int $intId
* @access public
*/
public function setId($intId)
{
$this->cli_id = $intId;
}

/**
* Obtém o valor do atributo $cli_id
* @access public
*/
public function getId()
{
return $this->cli_id;
}

//... A mesma coisa para os outros atributos

//----------------------------------------------------------------------

/**
* Construtor da classe
* @access public
*/
public function __construct()
{
$this->setId("");
$this->setIdCategoria("");
$this->setCategoria(new Categoria);
$this->setNome("");
$this->setCpf("");
$this->setEmail("");
}

/**
* Destrutor da classe
* @access public
*/
public function __destruct(){}

/**
* Cadastra um novo cliente
* @access public
*/
public function cadastrar()
{
try {
DaoCliente::insert($this);
} catch(Exception $e) {
throw new ClienteException($e->getMessage());
}
}

/**
* Altera um cliente existente
* @access public
*/
public function alterar()
{
try {
DaoCliente::update($this);
} catch(Exception $e) {
throw new ClienteException($e->getMessage());
}
}

/**
* Exclui um cliente existente
* @access public
*/
public function excluir()
{
try {
DaoCliente::delete($this);
} catch(Exception $e) {
throw new ClienteException($e->getMessage());
}
}

/**
* Recupera um cliente armazenado em meio persistente
* @access public
*/
public function carregar()
{
try {
DaoCliente::load($this);

// Carregando a categoria do cliente
DaoCategoria::setId($this->idCategoria);
DaoCategoria::load($this->objCategoria);
} catch(Exception $e {
throw new ClienteException($e->getMessage());
}
}
}
?>



Comentários
Adicionar novo Busca
Escrever um comentário
Nome:
E-mail:
 
Website:
Título:

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Última atualização em Seg, 14 de Dezembro de 2009 07:54
  Compartilhe no Orkut!