src/Controller/API/APIUserController.php line 62
<?php/*** Created by PhpStorm.* User: JMR* Date: 04/11/2024* Time: 15:42*/namespace App\Controller\API;use App\Entity\SystemeClient;use App\Repository\CamionRepository;use App\Repository\SystemeClientRepository;use App\Repository\UserRepository;use ContainerDxZtSzB\getCache_SecurityExpressionLanguageService;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\HttpFoundation\JsonResponse;use Symfony\Component\Routing\Annotation\Route;use Symfony\Component\HttpFoundation\Request;use Lexik\Bundle\JWTAuthenticationBundle\Services\JWTTokenManagerInterface;use Symfony\Component\Security\Core\User\UserProviderInterface;use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;use Symfony\Component\Security\Core\Security;use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface;#[Route('/api_user', name: 'api_user')]class APIUserController extends AbstractController{private $security;public function __construct(Security $security){$this->security = $security;}#[Route('/update_mdp/{mdp}', name: 'get_user_update_mdp', methods: ['GET'])]public function updateMdp( Request $request,$mdp, UserRepository $userRepository, UserPasswordHasherInterface $passwordHasher): JsonResponse{$user = $this->security->getUser();if (!$user) {return $this->json(['error' => 'User not authenticated'], 401);}$return = array('valide'=>0);if($mdp!=null) {$hashedPassword = $passwordHasher->hashPassword($user,$mdp);$user->setPassword($hashedPassword);$userRepository->save($user, true);$return['valide']=1;}return $this->json($return);}#[Route('/get_user_by_systeme_client/{idSystemeClient}', name: 'get_user_get_user_by_systeme', methods: ['GET'])]public function getUserBySystemeClientAction(Request $request,$idSystemeClient, SystemeClientRepository $systemeClientRepository, UserRepository $userRepository){$return = array('valide'=>0,'hydra:member'=>array(),'nomClient'=>'','logoClient'=>'');$SC = $systemeClientRepository->find($idSystemeClient);$users = $userRepository->findAllChauffeurOrderByNomSansPneu($SC);if(is_object($SC)) {$return['nomClient'] = $SC->getNom();//$return['logoClient'] = $SC->getLogo();if (!empty($users)) {foreach ($users as $user) {$userRole = array();if($user->getRoleAdmin()==true){$userRole[] = 'ROLE_ADMIN';}else if($user->getRoleChauffeur()==true){$userRole[] = 'ROLE_CHAUFFEUR';}else{$userRole[] = 'ROLE_USER';}$return['hydra:member'][] = array('id' => $user->getId(), 'email' => $user->getEmail(),'roles' => $userRole, '@id' => $_SERVER['SCRIPT_NAME'] . '/api/users/' . $user->getId(),'name' => $user->getInitiales());}$return['valide'] = 1;}}return new JsonResponse($return);}}