src/Controller/DashboardController.php line 38

  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\CategoryResidence;
  4. use App\Entity\Locataire;
  5. use App\Entity\Location;
  6. use App\Entity\Payment;
  7. use App\Entity\User;
  8. use App\Entity\UserEntreprise;
  9. use App\Repository\AdminRepository;
  10. use App\Repository\CategoryResidenceRepository;
  11. use App\Repository\EntrepriseRepository;
  12. use App\Repository\HabitatRepository;
  13. use App\Repository\LocataireRepository;
  14. use App\Repository\MoisRepository;
  15. use App\Repository\PaymentRepository;
  16. use App\Repository\ResidenceRepository;
  17. use App\Repository\SubscriptionRepository;
  18. use App\Repository\UserEntrepriseRepository;
  19. use App\Repository\UserRepository;
  20. use App\Service\SmsService;
  21. use Doctrine\ORM\EntityManagerInterface;
  22. use Doctrine\Persistence\ManagerRegistry;
  23. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  24. use Symfony\Component\HttpFoundation\JsonResponse;
  25. use Symfony\Component\HttpFoundation\RedirectResponse;
  26. use Symfony\Component\HttpFoundation\Request;
  27. use Symfony\Component\HttpFoundation\Response;
  28. use Symfony\Component\Routing\Annotation\Route;
  29. use Symfony\Contracts\HttpClient\HttpClientInterface;
  30. use function Webmozart\Assert\Tests\StaticAnalysis\allMaxCount;
  31. class DashboardController extends AbstractController
  32. {
  33.     #[Route('/admin'name'app_dashboard')]
  34.     public function index(EntityManagerInterface $emUserEntrepriseRepository $userEntrepriseRepositoryUserRepository $userRepositorySubscriptionRepository $subscriptionRepositoryEntrepriseRepository $entrepriseRepository): Response
  35.     {
  36. //        $users = $userRepository->findAll();
  37. //        foreach ($users as $user){
  38. //            $existing = $userEntrepriseRepository->findOneBy([
  39. //                'user'       => $user,
  40. //                'entreprise' => $user->getEntreprise(),
  41. //            ]);
  42. //            if (!$existing) {
  43. //                if($user->getEntreprise()) {
  44. //                    $link = new UserEntreprise();
  45. //                    $link->setUser($user);
  46. //                    $link->setEntreprise($user->getEntreprise());
  47. //                    $link->setRole('STAFF');
  48. //                    $link->setStatus(true);
  49. //                    $em->persist($link);
  50. //                    $em->flush();
  51. //                }
  52. //            }
  53. //        }
  54.         $entreprises $entrepriseRepository->findBy(['admin' => $this->getUser()], ['id' => 'DESC']);
  55.         $activeEntreprises count($entrepriseRepository->findBy(['admin' => $this->getUser(), 'status' => true]));
  56.         $allEntrepriseCount count($entreprises);
  57.         $entreprise $entrepriseRepository->findOneBy(['admin' => $this->getUser()]);
  58.         $subscriptionCount count($subscriptionRepository->findBy(['entreprise' => $entreprise'paid' => true]));
  59.         return $this->render('dashboard/index.html.twig', [
  60.             'entreprises' => $entreprises,
  61.             'activeEntreprise' => $activeEntreprises,
  62.             'allEntrepriseCount' => $allEntrepriseCount,
  63.             'subscriptionCount' => $subscriptionCount
  64.         ]);
  65.     }
  66. }