public function buscarProdutoPorId($id) { $comando = 'select * from produto where id = ?'; $cp = $this->bd->prepare($comando); $resultado = $cp->execute(array($id)); $produto = new Produto(); $fornecedor = new Fornecedor(); while ($r = $cp->fetchObject()) { $produto->setId($r->id); $produto->setNome($r->nome); $produto->setDescricao($r->descricao); $fornecedor->setId($r->idFornecedor); } $comando = 'select * from fornecedor where id = ?'; $cp = $this->bd->prepare($comando); $resultado = $cp->execute(array($fornecedor->getId())); while ($r = $cp->fetchObject()) { $fornecedor->setNome($r->nome); $fornecedor->setDescricao($r->descricao); $fornecedor->setCidade($r->cidade); $fornecedor->setEndereco($r->endereco); $fornecedor->setBairro($r->bairro); $fornecedor->setNumero($r->numero); } $produto->setFornecedor($fornecedor); return $produto; }
public function atualizarFornecedor() { $campos = array('idFornecedor', 'nome', 'descricao', 'cidade', 'endereco', 'bairro', 'numero'); $telefones = array('idTel', 'ddd', 'numeroTel', 'referenciaTel'); $qtdDeTelefones = 2; $qtdDeEmails = 2; $status = ""; $validacaoOk = true; $fornecedorTemp = new Fornecedor(); //Validação simples dos campos de fornecedor //Forma genércia para a validação de quaisquer campos foreach ($campos as $c) { if (!isset($_POST["{$c}"])) { $status = $status . "Campo " . $c . " nao enviado <br />"; $validacaoOk = false; } else { if (strlen($_POST["{$c}"]) <= 0) { $status = $status . "Preencha o campo " . $c . " corretamente <br />"; $validacaoOk = false; } } } //Validação simples dos telefones //Forma genércia para a validação de quaisquer campos em qualquer quantidade for ($i = 0; $i < $qtdDeTelefones; $i++) { foreach ($telefones as $t) { if (!isset($_POST["{$t}"][$i])) { $status = $status . "Campo " . $t . " nao enviado <br />"; $validacaoOk = false; } else { if (strlen($_POST["{$t}"][$i]) <= 0) { $status = $status . "Preencha o campo " . $t . " corretamente <br />"; $validacaoOk = false; } } } } if ($validacaoOk) { $fornecedor = new Fornecedor(); $fornecedor->setId($_POST['idFornecedor']); $fornecedor->setNome($_POST['nome']); $fornecedor->setDescricao($_POST['descricao']); $fornecedor->setCidade($_POST['cidade']); $fornecedor->setEndereco($_POST['endereco']); $fornecedor->setBairro($_POST['bairro']); $fornecedor->setNumero($_POST['numero']); //Depois de validar os telefones, posso adiciona-los ao fornecedor for ($i = 0; $i < $qtdDeTelefones; $i++) { $fornecedor->adicionarTelefone($_POST['ddd']["{$i}"], $_POST['numeroTel']["{$i}"], $_POST['referenciaTel']["{$i}"], $_POST['idTel'][$i]); } //Depois de verificar o envio dos emails, posso adiciona-los ao fornecedor for ($i = 0; $i < $qtdDeEmails; $i++) { $email = new Email(); $email->setId($_POST['idEmail'][$i]); $email->setEmail($_POST["email"]["{$i}"]); $email->setReferencia($_POST["referenciaEmail"]["{$i}"]); $fornecedor->adicionarEmail($email); } $status = $this->service->atualizarFornecedor($fornecedor); } $fornecedores = $this->service->listarFornecedores(); include 'View/Content/listarFornecedores.php'; }
public function buscarFornecedorPorId($id) { //A estrutura continua sendo para vários registros, mas como é uma //buscar por id, só teremos um fornecedor, logo teremos loops unitários. $comando1 = 'select * from fornecedor where id = ?'; $cp1 = $this->bd->prepare($comando1); $resultado = $cp1->execute(array($id)); while ($f = $cp1->fetchObject()) { $fornecedor = new Fornecedor(); $fornecedor->setId($f->id); $fornecedor->setNome($f->nome); $fornecedor->setDescricao($f->descricao); $fornecedor->setCidade($f->cidade); $fornecedor->setEndereco($f->endereco); $fornecedor->setBairro($f->bairro); $fornecedor->setNumero($f->numero); $comando2 = 'select * from telefone where idFornecedor = ?'; $cp2 = $this->bd->prepare($comando2); $resultado = $cp2->execute(array($id)); while ($t = $cp2->fetchObject()) { $fornecedor->adicionarTelefone($t->ddd, $t->numero, $t->referencia, $t->id); } $comando3 = 'select * from email where idFornecedor = ?'; $cp3 = $this->bd->prepare($comando3); $resultado = $cp3->execute(array($id)); while ($e = $cp3->fetchObject()) { $email = new Email(); $email->setId($e->id); $email->setEmail($e->email); $email->setReferencia($e->referencia); $fornecedor->adicionarEmail($email); } } return $fornecedor; }