From 083a5478daca83bd91a5f53b532bba1fb4c226be Mon Sep 17 00:00:00 2001 From: Jolys Enzo Date: Thu, 23 Mar 2023 11:05:27 +0100 Subject: [PATCH] get ecurie modif --- Sources/Dto/Factories/EcurieFactorie.cs | 3 ++ Sources/Entity_Framework/BDD.db-shm | Bin 0 -> 32768 bytes Sources/Entity_Framework/BDD.db-wal | 0 .../Extraction_BDD/ExtractionEcuries.cs | 29 +++++++++++++++--- Sources/Modele/Classe/Ecurie.cs | 4 +++ 5 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 Sources/Entity_Framework/BDD.db-shm create mode 100644 Sources/Entity_Framework/BDD.db-wal diff --git a/Sources/Dto/Factories/EcurieFactorie.cs b/Sources/Dto/Factories/EcurieFactorie.cs index 4505841..0d8f2fe 100644 --- a/Sources/Dto/Factories/EcurieFactorie.cs +++ b/Sources/Dto/Factories/EcurieFactorie.cs @@ -15,6 +15,9 @@ namespace Dto.Factories EcurieDTO ecurieDTO = new EcurieDTO(); ecurieDTO.Name = ecurie.name; + ecurieDTO.Owner = ecurie.Owner.ModeleToDTO(); + ecurieDTO.Members = ecurie.Members.Select( e => e.ModeleToDTO()).ToList(); + ecurieDTO.WaitingsMembers = ecurie.WaitingMembers.Select(e => e.ModeleToDTO()).ToList(); return ecurieDTO; } diff --git a/Sources/Entity_Framework/BDD.db-shm b/Sources/Entity_Framework/BDD.db-shm new file mode 100644 index 0000000000000000000000000000000000000000..fe9ac2845eca6fe6da8a63cd096d9cf9e24ece10 GIT binary patch literal 32768 zcmeIuAr62r3> GetEcuries() { - IEnumerable result = new List(); - + IEnumerable result = new List(); + IEnumerable list = new List(); using (BDDContext db = new BDDContext()) { - result = db.Ecuries.ToList().Select(e => e.EntityToModele()); + result = db.Ecuries.ToList(); + foreach (Ecuries ecu in result) + { + Ecurie ecurie = new Ecurie(); + ecurie.name = ecu.Name; + ecurie.Owner = (from pilote in db.Pilotes + from relation in db.RelationEcuriePilote + from ecuTMP in db.Ecuries + where ecuTMP.Id == relation.IdEcurie && relation.IdPilote == pilote.Id && relation.Grade == "Owner" && ecu.Id == ecuTMP.Id + select pilote).Select( e => e.EntityToModele()).First(); + + ecurie.Members = (from relation in db.RelationEcuriePilote + from pilotes in db.Pilotes + where relation.IdPilote == pilotes.Id && relation.IdEcurie == ecu.Id && relation.Grade == "Member" + select pilotes).ToList().Select(e => e.EntityToModele()).ToList(); + + ecurie.WaitingMembers = (from relation in db.RelationEcuriePilote + from pilotes in db.Pilotes + where relation.IdPilote == pilotes.Id && relation.IdEcurie == ecu.Id && relation.Grade == "WaitingMember" + select pilotes).ToList().Select(e => e.EntityToModele()).ToList(); + list.ToList().Add(ecurie); + } } + return Task.FromResult>(list); - return Task.FromResult>(result); } public Task GetOneEcurie(string name) diff --git a/Sources/Modele/Classe/Ecurie.cs b/Sources/Modele/Classe/Ecurie.cs index 01e5346..869e32a 100644 --- a/Sources/Modele/Classe/Ecurie.cs +++ b/Sources/Modele/Classe/Ecurie.cs @@ -9,6 +9,10 @@ namespace Modele.Classe public class Ecurie { public string name { get; set; } + public Pilote Owner { get; set; } + public List Members { get; set; } + public List WaitingMembers { get; set; } + public Ecurie(string nameArg = "Inconnu !") {