<?php
namespace App\Controller\Admin;
use App\Entity\Accueil;
use App\Entity\AncienEvenement;
use App\Entity\Prices;
use App\Entity\Demande;
use App\Entity\Document;
use App\Entity\Blog;
use App\Entity\AstpUser;
use App\Entity\Adherent;
use App\Entity\PayementMethod;
use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use App\Entity\EvenementAVenir;
use App\Entity\Congre;
use Doctrine\Persistence\ManagerRegistry;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
class DashboardController extends AbstractDashboardController
{
/**
* @Route("/admin", name="admin")
*/
public function index(): Response
{
return $this->render('bundles/EasyAdminBundle/welcome.html.twig', array(
'form' => 'anis'
));
}
/**
* @Route("/admin/export/{id}/{type}", name="export")
*/
public function getall(ManagerRegistry $doctrine,$id,$type): Response
{
$title="";
$tab=[];
if($type=="adherent")
{
$payement = $doctrine->getRepository(PayementMethod::class)->findBy(
['url' => "123456789"]
);
if(count($payement)>0)
{
foreach($payement as $item)
{
if($item->getIdUser()!=null) array_push($tab,['nom'=>$item->getIdUser(),'phone'=>$item->getIdUser()->getPhone(),'email'=>$item->getIdUser()->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>"0",'supp'=>$item->getSupp(),'total'=>($item->getMontant()+$item->getSupp()),'adhesion'=>"0",'surplace'=>$item->getSurPlace(),'file'=>$item->getFile(),'accomp'=>$item->getAccomp()]);
else array_push($tab,['nom'=>$item->getNom()." ".$item->getPrenom(),'phone'=>$item->getPhone(),'email'=>$item->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>$item->getPourcentage(),'supp'=>$item->getSupp(),'total'=>$item->getTotal(),'surplace'=>$item->getSurPlace(),'file'=>$item->getFile(),'accomp'=>$item->getAccomp()]);
}
}
}
else if($type=="autre")
{
$ancien = $doctrine->getRepository(EvenementAVenir::class)->find($id);
$title=$ancien->getTitre();
$payement = $doctrine->getRepository(PayementMethod::class)->findBy(
['evenementautre' => $id]
);
if(count($payement)>0)
{
foreach($payement as $item)
{
if(!empty($item->getNom()))
{
if($item->getIdUser()!=null) array_push($tab,['nom'=>$item->getIdUser(),'phone'=>$item->getIdUser()->getPhone(),'email'=>$item->getIdUser()->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>"0",'supp'=>$item->getSupp(),'total'=>($item->getMontant()+$item->getSupp()),'adhesion'=>"0",'surplace'=>$item->getSurPlace(),'file'=>$item->getFile(),'accomp'=>$item->getAccomp()]);
else array_push($tab,['nom'=>$item->getNom()." ".$item->getPrenom(),'phone'=>$item->getPhone(),'email'=>$item->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>$item->getPourcentage(),'supp'=>$item->getSupp(),'total'=>$item->getTotal(),'surplace'=>$item->getSurPlace(),'file'=>$item->getFile(),'accomp'=>$item->getAccomp()]);
}
}
}
}else
{
$ancien = $doctrine->getRepository(Congre::class)->find($id);
$id=$ancien->getId();
$title=$ancien->getTitre();
$payement = $doctrine->getRepository(PayementMethod::class)->findBy(
['evenementId' => $id]
);
if(count($payement)>0)
{
foreach($payement as $item)
{
if($item->getIdUser()!=null) {
array_push($tab,['nom'=>$item->getIdUser(),'phone'=>$item->getIdUser()->getPhone(),'email'=>$item->getIdUser()->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>$item->getPourcentage(),'supp'=>$item->getSupp(),'total'=>$item->getTotal(),'adhesion'=>$item->getAdhesion(),'accomp'=>$item->getAccomp()]);
}
else {
array_push($tab,['nom'=>$item->getNom()." ".$item->getPrenom(),'phone'=>$item->getPhone(),'email'=>$item->getEmail(),'montant'=>$item->getMontant(),'dateAd'=>$item->getDateAd(),'pai'=>$item->getPai(),'pourcentage'=>$item->getPourcentage(),'supp'=>$item->getSupp(),'total'=>$item->getTotal(),'surplace'=>$item->getSurPlace(),'file'=>$item->getFile(),'accomp'=>$item->getAccomp()]);
}
}
}
}
return $this->render('bundles/EasyAdminBundle/export.html.twig', array(
'title' => $title,'tab'=>$tab
));
}
/**
* @Route("/admin/export", name="mainexport")
*/
public function export(): Response
{
return $this->render('bundles/EasyAdminBundle/mainexport.html.twig', array(
'form' => 'anis'
));
}
public function configureDashboard(): Dashboard
{
return Dashboard::new()
->setTitle('Astp');
}
public function configureMenuItems(): iterable
{
yield MenuItem::linkToDashboard('Dashboard', 'fa fa-home');
yield MenuItem::linkToCrud('Accueil', 'fa fa-home', Accueil::class);
yield MenuItem::linkToCrud('Evenement a venir', 'fa fa-calendar', EvenementAVenir::class);
yield MenuItem::linkToCrud('Congre', 'fa fa-calendar',Congre::class);
yield MenuItem::linkToCrud('Document', 'fa fa-user',Document::class);
yield MenuItem::linkToCrud('Blog', 'fa fa-user',Blog::class);
yield MenuItem::linkToCrud('Paiment', 'fa fa-user',PayementMethod::class);
}
}