File: /home/undanet/www/PortalEmpleo/src/Repository/DBImpugnacionDocRepository.php
<?php
namespace PortalEmpleo\Repository;
require __DIR__ . '/../../vendor/autoload.php';
require_once __DIR__ . '/../../bootstrap.php';
use Dotenv\Dotenv;
use PortalEmpleo\Entity\DboCandidato;
use PortalEmpleo\Entity\DboConvocatoria;
use PortalEmpleo\Entity\DboImpugnacionDoc;
use PortalEmpleo\Entity\DboImpugnacion;
use PortalEmpleo\Entity\WpUsers;
use PortalEmpleo\Entity\WpUsermeta;
use Doctrine\Common\Collections\Criteria;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class DBImpugnacionDocRepository extends AbstractController
{
private $dotenv;
private $entityManager;
public function __construct()
{
}
private function loadEnv()
{
try{
$dotenv = Dotenv::createImmutable(__DIR__ . "/../../");
$dotenv->load();
$em = getEntityManager();
return $em;
}
catch (Exception $ex){
echo $exception->getMessage();
return null;
}
}
private function loadEnvWP()
{
try{
$dotenv = Dotenv::createImmutable(__DIR__ . "/../../");
$dotenv->load();
$em = getEntityManagerWP();
return $em;
}
catch (Exception $ex){
echo $exception->getMessage();
return null;
}
}
public function obtenerImpugnacionesDoc($lang, $codigoconvocatoria)
{
try
{
$entityManager = $this->loadEnv();
$ltrbvlc = $entityManager->getRepository(DboImpugnacionDoc::class)
->createQueryBuilder('c')
->where('c.codigoconvocatoria = :cvt')
->andwhere('c.baja = false')
->setParameter('cvt', $codigoconvocatoria)
->addOrderBy('c.idimpugnaciondoc', 'ASC')
->getQuery()
->execute();
if (!$ltrbvlc) {
return ;
}
$entityManager->getConnection()->close();
return $ltrbvlc;
}
catch (Exception $ex)
{
echo $exception->getMessage();
}
}
public function insertarImpugnacionDoc($impugnaciondoc)
{
try
{
if(is_object($impugnaciondoc))
{
$entityManager = $this->loadEnv();
$trbVlc = new DboImpugnacionDoc();
$trbVlc = $trbVlc->setRutaDoc($impugnaciondoc->getRutaDoc());
$trbVlc = $trbVlc->setFecha($impugnaciondoc->getFecha());
$trbVlc = $trbVlc->setEsRequisito($impugnaciondoc->getEsRequisito());
$trbVlc = $trbVlc->setBaja($impugnaciondoc->getBaja());
if( $impugnaciondoc->getIdImpugnacionDoc() != 0 )
$trbVlc = $trbVlc->setIdImpugnacionDoc( $impugnaciondoc->getIdImpugnacionDoc() );
$cdt = $entityManager->getRepository(DboCandidato::class)->find(($impugnaciondoc->getCodigocandidato())->getIdcandidato());
$entityManager->clear();
if (!$cdt) {
throw $this->createNotFoundException(
'No se encuentra el candidato con el id '. ($impugnaciondoc->getCodigocandidato())->getIdcandidato()
);
}
$trbVlc = $trbVlc->setCodigocandidato2($cdt);
$cvt = $entityManager->getRepository(DboConvocatoria::class)->find(($impugnaciondoc->getCodigoconvocatoria())->getIdconvocatoria());
$entityManager->clear();
if (!$cvt) {
throw $this->createNotFoundException(
'No se encuentra la convocatoria con el id '. ($impugnaciondoc->getCodigoconvocatoria())->getIdconvocatoria()
);
}
$trbVlc = $trbVlc->setCodigoconvocatoria2($cvt);
$entityManager->merge($trbVlc);
$entityManager->flush();
$entityManager->clear();
$entityManager->getConnection()->close();
return $trbVlc;
}
}
catch (Exception $ex)
{
echo $exception->getMessage();
}
}
public function removeImpugnacionDoc($idimpugnaciondoc)
{
try
{
$entityManager = $this->loadEnv();
$impugnaciondoc = $entityManager->getRepository(DboImpugnacionDoc::class)->find($idimpugnaciondoc);
if (!$impugnaciondoc) {
echo 'No product found for idimpugnaciondoc '. $idimpugnaciondoc ;
}
$impugnaciondoc->setBaja(true);
$entityManager->merge($impugnaciondoc);
$entityManager->flush();
$entityManager->clear();
return $impugnaciondoc;
}
catch (Exception $ex)
{
echo $exception->getMessage();
}
}
}
?>