Skip to content

Commit

Permalink
Criação das classes BrandController, BrandDAO e ImagemDAO [Issue #788]
Browse files Browse the repository at this point in the history
  • Loading branch information
GabrielPintoSouza committed Nov 8, 2024
1 parent 3411bcd commit 24ad0a5
Show file tree
Hide file tree
Showing 3 changed files with 89 additions and 3 deletions.
34 changes: 31 additions & 3 deletions html/apoio/controller/BrandController.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,33 @@
<?php
require_once '../dao/ConexaoDAO.php';
require_once '../dao/BrandDAO.php';
require_once '../model/Brand.php';

class BrandController{

}
class BrandController
{

private $pdo;

public function __construct()
{
try {
$this->pdo = ConexaoDAO::conectar();
} catch (PDOException $e) {
//implementar tratamento de erro
exit();
}
}

public function getBrand(): ?Brand
{
try {
$brandDao = new BrandDAO($this->pdo);
$brand = $brandDao->getBrand();

return $brand;
} catch (PDOException $e) {
//implementar tratamento de erro
exit("erro: {$e->getMessage()}");
}
}
}
32 changes: 32 additions & 0 deletions html/apoio/dao/BrandDAO.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<?php
require_once '../dao/ImagemDAO.php';

class BrandDAO{
private $pdo;

public function __construct(PDO $pdo)
{
$this->pdo = $pdo;
}

public function getBrand(){
$sql = "SELECT paragrafo FROM selecao_paragrafo WHERE nome_campo = 'ContribuiçãoMSG'";
$resultado = $this->pdo->query($sql);

if($resultado->rowCount() < 1){
return null;
}

$mensagem = $resultado->fetch(PDO::FETCH_ASSOC)['paragrafo'];

$imagemDao = new ImagemDAO($this->pdo);
$imagem = $imagemDao->getImagem();

if(is_null($imagem)){
return null;
}

$brand = new Brand($imagem, $mensagem);
return $brand;
}
}
26 changes: 26 additions & 0 deletions html/apoio/dao/ImagemDAO.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?php
require_once '../model/Imagem.php';

class ImagemDAO{
private $pdo;

public function __construct(PDO $pdo)
{
$this->pdo = $pdo;
}

public function getImagem(){
$sql = "SELECT imagem.imagem, imagem.tipo FROM imagem, campo_imagem, tabela_imagem_campo WHERE campo_imagem.id_campo=tabela_imagem_campo.id_campo AND imagem.id_imagem=tabela_imagem_campo.id_imagem AND campo_imagem.nome_campo='Logo'";

$resultado = $this->pdo->query($sql);

if($resultado->rowCount() < 1){
return null;
}

$imagemData = $resultado->fetch(PDO::FETCH_ASSOC);

$imagem = new Imagem($imagemData['imagem'], $imagemData['tipo']);
return $imagem;
}
}

0 comments on commit 24ad0a5

Please sign in to comment.