Bonjour à tous,
Tout d'abord merci pour vos futures réponses.
Ce que je voudrai, c'est trier une liste en fonction d'un certain champ.
voilà mon entité:
Je voudrai récupérer le FicheNC et ensuite avoir accès aux champs de FicheNC qui est cette entité:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 class Identifiants { /** * @ORM\Id() * @ORM\GeneratedValue() * @ORM\Column(type="integer") */ private $id; /** * @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="ficheEnvoyee", fetch="EAGER") * @ORM\JoinColumn(nullable=false) */ private $User; /** * @ORM\ManyToOne(targetEntity="App\Entity\FicheNC", inversedBy="userRenseigne", fetch="EAGER") * @ORM\JoinColumn(nullable=false) */ private $FicheNC; /** * @ORM\Column(type="string", length=255, nullable=true) */ private $Statut; public function getId(): ?int { return $this->id; } public function getUserFiche(): ?User { return $this->User; } public function setUserFiche(?User $User): self { $this->User = $User; return $this; } public function getFicheNC(): ?FicheNC { return $this->FicheNC; } public function setFicheNCUser(?FicheNC $FicheNC): self { $this->FicheNC = $FicheNC; return $this; } public function getStatut(): ?string { return $this->Statut; } public function setStatut(?string $Statut): self { $this->Statut = $Statut; return $this; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96 class FicheNC { /** * @ORM\Id() * @ORM\GeneratedValue() * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=255) */ private $date; /** * @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="ficheNC") * @ORM\JoinColumn(nullable=true) */ private $user; /** * @ORM\OneToMany(targetEntity="App\Entity\Identifiants", mappedBy="FicheNC") */ private $userRenseigne; public function __construct() { $this->userRenseigne = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getDate(): ?string { return $this->date; } public function setDate(string $date): self { $this->date = $date; return $this; } public function getUser(): ?User { return $this->user; } public function setUser(?User $user): self { $this->user = $user; return $this; } /** * @return Collection|Identifiants[] */ public function getUserRenseigne(): Collection { return $this->userRenseigne; //retourne la liste des identifiants liés à la fiche } public function addUserRenseigne(Identifiants $userRenseigne): self { if (!$this->userRenseigne->contains($userRenseigne)) { $this->userRenseigne[] = $userRenseigne; $userRenseigne->setFicheNCUser($this); //à changer si erreur } return $this; } public function removeUserRenseigne(Identifiants $userRenseigne): self { if ($this->userRenseigne->contains($userRenseigne)) { $this->userRenseigne->removeElement($userRenseigne); // set the owning side to null (unless already changed) if ($userRenseigne->getFicheNC() === $this) { $userRenseigne->setFicheNCUser(null);//a chager si erreur } } return $this; } }
Voici un exemple de ce que je veux faire, cet exemple est avec le champ Statut de l'entité Identifiant:
Cependant j'aimerai le faire également avec le champ date de l'entité FicheNC. Pour cela il faudrait que à la place de là où il y a 'Statut' ici: ['Statut'=>'desc'] je puisse faire une chemin qui, de l'identifiant trouve la fiche et de la fiche trouve la date. Je n'ai cependant aucune idée de la syntaxe pour trouver ce chemin à cet endroit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $listeFichesEnvoyeesStatut=$this ->getDoctrine() ->getRepository(Identifiants::class) ->findBy( ['User'=>$utilisateur], //récupere les identifiants de l'utilisateur connecté uniquement récupéré avec $utilisateur=$this->getUser(); ['Statut'=>'desc'] );
Merci à tous pour vos réponses !
Partager