src/Controller/ClientController.php line 99

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Articles;
  4. use App\Entity\UserVendeur;
  5. use App\Entity\ClientUser;
  6. use App\Repository\ArticlesRepository;
  7. use App\Form\ClientUserType;
  8. use App\Repository\UserVendeurRepository;
  9. use App\Tools\Cart\CartTools;
  10. use Doctrine\ORM\EntityManagerInterface;
  11. use App\Repository\OffreRapideRepository;
  12. use App\Entity\Suivre;
  13. use App\Form\SuivreType;
  14. use App\Repository\SuivreRepository;
  15. use Symfony\Component\HttpFoundation\Response;
  16. use Symfony\Component\HttpFoundation\Request;
  17. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  18. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Entity;
  19. use Symfony\Component\Routing\Annotation\Route;
  20. use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;
  21. class ClientController extends AbstractController
  22. {
  23.      
  24.     /**
  25.      * @Route("/base-particulier", name="app_main_particulier")
  26.      */
  27.     public function indexParticulier(CartTools $cartToolsArticlesRepository $ArticlesRepositoryUserVendeurRepository $UserVendeur): Response
  28.     {
  29.         
  30.          $UserVendeur $UserVendeur->findBy(
  31.             [],
  32.             ['datedeCreations' => 'DESC'], 20);
  33.         $articles $ArticlesRepository->findBy(
  34.             [],
  35.             ['datedeCreations' => 'DESC'], 20);
  36.         $articlesLesplusVendu $ArticlesRepository->findBy(
  37.             [],
  38.             ['datedeCreations' => 'DESC'], 6);
  39.         return $this->render('particuliers/baseparticuliers.html.twig', [
  40.             'articles' => $articles,
  41.             'UserVendeur' => $UserVendeur,
  42.             'LesPlusVendu' => $articlesLesplusVendu,
  43.             'totalItems' => $cartTools->getTotalItem(),
  44.             'items' => $cartTools->getFullCart(),
  45.             'totalTVA' => $cartTools->getTotalTVA(),
  46.             'tva' => $cartTools->getTva(),
  47.             'totalTTC' => $cartTools->getTotalTTC(),
  48.         ]);
  49.     }
  50.     /**
  51.      * @Route("/information_livraison_client", name="app_information_livraisonClient")
  52.      */
  53.     public function information_livraisonfonction_client(): Response
  54.     {
  55.         return $this->render('main/information_livraison.html.twig', [
  56.             'controller_name' => 'IndexController',
  57.         ]);
  58.     }
  59.     /**
  60.      * @Route("/boutique-client-notification/", name="app_boutique_client_notification")
  61.      */
  62.     public function boutique_client_notification(): Response
  63.     {
  64.         return $this->render('client/notification.html.twig');
  65.     } 
  66.     /**
  67.      * @Route("/boutique-des-vendeur/{id<[0-9]+>}", name="Mes_boutiques_abonne")
  68.      */
  69.     public function boutique(ClientUser $userClientSuivreRepository $suivreReposRequest $request): Response
  70.     {
  71.         $userClientSuivie $suivreRepos->findBy(
  72.             [],
  73.             ['datedeCreations' => 'DESC'], 20);
  74.         return $this->render('client/boutique.html.twig', [
  75.           'userClient' => $userClient,
  76.           'userClientSuivie' => $userClientSuivie,
  77.           
  78.         ]);
  79.     }
  80.     /**
  81.      * @Route("/toutesboutique-des-vendeur", name="app_touteboutique")
  82.      */
  83.     public function touteboutique(UserVendeurRepository $UserVendeur): Response
  84.     {
  85.         $UserVendeur $UserVendeur->findBy(
  86.             [],
  87.             ['datedeCreations' => 'DESC'], 20);
  88.         return $this->render('client/touteboutique.html.twig', [
  89.           'UserVendeur' => $UserVendeur,
  90.         ]);
  91.     }
  92.     
  93.     /**
  94.      * @Route("/les-plus-vendus", name="app_plusvendus")
  95.      */
  96.     public function plusvendus(ArticlesRepository $articlesRepos): Response
  97.     {
  98.         $articles $articlesRepos->findBy(
  99.             [],
  100.             ['datedeCreations' => 'DESC'], 20);
  101.         return $this->render('client/toulesarticles.html.twig', [
  102.           'articles' => $articles,
  103.         ]);
  104.     }
  105.     /**
  106.      * @Route("/boutique-client-profil/{id<[0-9]+>}", name="app_boutique_client_profil")
  107.      */
  108.     public function boutique_vendeur_profil(ClientUser $clientUser): Response
  109.     {
  110.         return $this->render('client/profil.html.twig'compact('clientUser'));
  111.     }
  112.     /**
  113.      * modification des profils utilisateurs
  114.      * 
  115.      * @Route("/modification-profil/{id<[0-9]+>}/editer", name="app_modifProfil", methods="GET|POST")
  116.      */
  117.     public function modificationOffreRapide(Request $requestEntityManagerInterface $em
  118.         UserVendeurRepository $UserVendeurClientUser $clientUser){
  119.          $form $this->createForm(ClientUserType::class, $clientUser, [
  120.             'method' => 'POST'
  121.          ]);
  122.         $form->handleRequest($request);
  123.         if ($form->isSubmitted() && $form->isValid()) {
  124.             
  125.             $em->flush();
  126.            // $flashy->success('Votre Post à été modifier avec succes !');
  127.            $this->addFlash('success''Votre compte  bien été mis  jour !');
  128.             
  129.             return $this->redirectToRoute('app_main_particulier');
  130.         }
  131.         return $this->render('client/modificationProfil.html.twig', [ 
  132.             'client' => $clientUser,
  133.             'profilModif' => $form->createView()
  134.     ]);
  135.     }
  136.     /**
  137.      * @Route("/livraison", name="app_livraison")
  138.      */
  139.     public function information_livraisonfonction(): Response
  140.     {
  141.         return $this->render('client/livraison.html.twig', [
  142.             'controller_name' => 'IndexController',
  143.         ]);
  144.     } 
  145.     /**
  146.      * @Route("/statut-livraison", name="app_livraison_statut")
  147.      */
  148.     public function statut_livraisonfonction(): Response
  149.     {
  150.         return $this->render('main/statutlivraison.html.twig', [
  151.             'controller_name' => 'IndexController',
  152.         ]);
  153.     } 
  154. }