<?php
abstract class daoGenerico{
private $entityManager;
/**
* Class Constructor
* @param $entityManager
*/
public function __construct()
{
if (file_exists("../../../../../bootstrap.php")){
require("../../../../../bootstrap.php");
}
else{
require("bootstrap.php");
}
$this->entityManager = $entityManager;
}
/**
* @return mixed
*/
public function getEntityManager()
{
return $this->entityManager;
}
abstract public function listAll();
protected function listarTodo($nombre){
$repositorio = 'php\com\dBarrio\model\dto\\'.$nombre;
$repository = $this->getEntityManager()->getRepository($repositorio);
//->find($id);
$entityList = $repository->findAll();
if (!$entityList) {
throw $this->createNotFoundException(
'No product found'
);
}
return $entityList;
}
abstract public function findById($id);
function buscarPorId($nombre, $id){
$repositorio = 'model\dto\\'.$nombre;
$repository = $this->getEntityManager()->getRepository($repositorio);
$entity = $repository->find($id);
return $entity;
}
function insert($entity){
$entityM= $this->getEntityManager();
//->find($id);
$entityM->merge($entity);
$entityM->flush();
}
} ?>
<?php
require_once('daoGenerico.php');
class daoMunicipios extends daoGenerico{
public function listAll(){
return parent::listarTodo('Municipios');
}
public function findById($id){
return parent::buscarPorId('Municipios', $id);
}
public function buscarPorIdProvincia($idProvincia){
$repositorio = 'php\com\dBarrio\model\dto\Municipios';
$repository = $this->getEntityManager()->getRepository($repositorio);
$entity = $repository->findOneBy(array('idProvincia' => $idProvincia));
return $entity;
}
}
?>
<?php
require_once "./src/php/com/dBarrio/model/dao/daoUsuario.php";
require_once "./src/php/com/dBarrio/model/dao/daoTipoUsuario.php";
require_once "./src/php/com/dBarrio/model/dao/daoProvincias.php";
require_once "./src/php/com/dBarrio/model/dao/daoMunicipios.php";
require_once "./src/php/com/dBarrio/model/dto/Usuario.php";
class UsuariosController extends ControladorBase{
public $daoUsuario;
public $daoTipoUsuario;
public $daoProvincias;
public $daoMunicipios;
public function __construct() {
parent::__construct();
$this->daoUsuario = new daoUsuario();
$this->daoTipoUsuario = new daoTipoUsuario();
$this->daoProvincias = new daoProvincias();
$this->daoMunicipios = new daoMunicipios();
}
public function index(){
//Conseguimos todos los usuarios
$tipoUsuarios=$this->daoTipoUsuario->listAll();
$provincias=$this->daoProvincias->listAll();
$municipios=$this->daoMunicipios->buscarPorIdProvincia(15);
var_dump($municipios);
//Cargamos la vista index y le pasamos valores
$this->view("index",array(
"tipoUsuario"=>$tipoUsuarios,
"provincias" => $provincias
));
}
} ?>
<?php
require_once "../model/dao/daoMunicipios.php";
$dao = new daoMunicipios();
var_dump($_GET);
$municipiosArr = $dao->buscarPorIdProvincia($_GET["idProvincia"]);
$municipiosStr = "";
foreach($municipiosArr as $municipio) {
$municipiosStr .= "<option value='".$municipio->getIdmunicipio()."'>".$municipio->getNombre()."</option>";
}
echo $municipiosStr;
?>