From 7e7757dec28c97ce2dee74f9934560068482acd2 Mon Sep 17 00:00:00 2001 From: Louwar Date: Mon, 13 Mar 2023 15:15:23 +0100 Subject: [PATCH] Update Entity --- .../{DbDataManager.cs => ManagerChampion.cs} | 14 +++++++--- Sources/EFManager/ManagerData.cs | 25 ++++++++++++++++++ Sources/EFManager/ManagerTranslate.cs | 26 +++++++++++++++++++ Sources/EFlib/EFChampion.cs | 10 ++++++- Sources/EFlib/EFChampionClass.cs | 19 ++++++++++++++ Sources/EFlib/EFRune.cs | 18 +++++++++++++ Sources/EFlib/EFRunePage.cs | 17 ++++++++++++ Sources/EFlib/EFSkill.cs | 16 ++++++++++++ Sources/EFlib/EFSkin.cs | 4 ++- Sources/EFlib/EFlib.csproj | 4 +++ 10 files changed, 147 insertions(+), 6 deletions(-) rename Sources/EFManager/{DbDataManager.cs => ManagerChampion.cs} (88%) create mode 100644 Sources/EFManager/ManagerData.cs create mode 100644 Sources/EFManager/ManagerTranslate.cs create mode 100644 Sources/EFlib/EFChampionClass.cs create mode 100644 Sources/EFlib/EFRune.cs create mode 100644 Sources/EFlib/EFRunePage.cs create mode 100644 Sources/EFlib/EFSkill.cs diff --git a/Sources/EFManager/DbDataManager.cs b/Sources/EFManager/ManagerChampion.cs similarity index 88% rename from Sources/EFManager/DbDataManager.cs rename to Sources/EFManager/ManagerChampion.cs index 5f83e2b..992c1e2 100644 --- a/Sources/EFManager/DbDataManager.cs +++ b/Sources/EFManager/ManagerChampion.cs @@ -1,12 +1,18 @@ -using Model; +using EFlib; +using Microsoft.IdentityModel.Tokens; +using Model; namespace EFManager { - public class DbDataManager : IChampionsManager + public class ManagerChampion : IChampionsManager { - public Task AddItem(Champion? item) + public SQLiteContext context = new SQLiteContext(); + + public async Task AddItem(Champion? item) { - throw new NotImplementedException(); + //await context.AddAsync(item.); TO DO + await context.SaveChangesAsync(); + return item; } public Task DeleteItem(Champion? item) diff --git a/Sources/EFManager/ManagerData.cs b/Sources/EFManager/ManagerData.cs new file mode 100644 index 0000000..4aa040f --- /dev/null +++ b/Sources/EFManager/ManagerData.cs @@ -0,0 +1,25 @@ +using Model; +using EFlib; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EFManager +{ + public class ManagerData : IDataManager + { + public ManagerData() + { + //ChampionMgr = new ChampionManager(this); TO DO + } + public IChampionsManager ChampionsMgr { get; set; } + + public ISkinsManager SkinsMgr { get; set; } + + public IRunesManager RunesMgr { get; set; } + + public IRunePagesManager RunePagesMgr { get; set; } + } +} diff --git a/Sources/EFManager/ManagerTranslate.cs b/Sources/EFManager/ManagerTranslate.cs new file mode 100644 index 0000000..e0fad67 --- /dev/null +++ b/Sources/EFManager/ManagerTranslate.cs @@ -0,0 +1,26 @@ +using EFlib; +using Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EFManager +{ + public static class ManagerTranslate + { + // Champion + public static EFChampion toEF(this Champion Champ) => new EFChampion { Name = Champ.Name, Bio = Champ.Bio, Icon = Champ.Icon }; + public static Champion toModel(this EFChampion EFChamp) => new Champion(EFChamp.Name); + + // Skin + public static EFSkin toEF(this Skin Skin) => new EFSkin { Name = Skin.Name, Description = Skin.Description, Icon = Skin.Icon, Price = Skin.Price }; + public static Skin toModel(this EFSkin EFSkin) => new Skin(EFSkin.Name, EFSkin.champion.toModel()); + + // Skill + + //Rune + + } +} diff --git a/Sources/EFlib/EFChampion.cs b/Sources/EFlib/EFChampion.cs index 9392406..6cc6f8a 100644 --- a/Sources/EFlib/EFChampion.cs +++ b/Sources/EFlib/EFChampion.cs @@ -1,4 +1,8 @@  +using Model; +using System.Collections.Immutable; +using System.Collections.ObjectModel; + namespace EFlib { public class EFChampion @@ -12,6 +16,10 @@ namespace EFlib //[MaxLength(500)] public string Bio { get; set; } public string Icon { get; set; } - + public ReadOnlyDictionary Characteristics { get; private set; } + public EFChampionClass Class { get; set; } + public ReadOnlyCollection Skins { get; private set; } + public ImmutableHashSet Skills { get; private set; } + public LargeImage Image { get; set; } } } \ No newline at end of file diff --git a/Sources/EFlib/EFChampionClass.cs b/Sources/EFlib/EFChampionClass.cs new file mode 100644 index 0000000..ebdd17a --- /dev/null +++ b/Sources/EFlib/EFChampionClass.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Model; + +namespace EFlib +{ + public class EFChampionClass + { + [Key] + [ForeignKey("ChampionEntity")] + public int Id { get; set; } + public ChampionClass Class { get; set; } + } +} diff --git a/Sources/EFlib/EFRune.cs b/Sources/EFlib/EFRune.cs new file mode 100644 index 0000000..f360716 --- /dev/null +++ b/Sources/EFlib/EFRune.cs @@ -0,0 +1,18 @@ +using Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection.Metadata; +using System.Text; +using System.Threading.Tasks; + +namespace EFlib +{ + public class EFRune + { + public string Name { get; set; } + public string Description { get; set; } + public RuneFamily Family { get; set; } + public LargeImage Image { get; set; } + } +} diff --git a/Sources/EFlib/EFRunePage.cs b/Sources/EFlib/EFRunePage.cs new file mode 100644 index 0000000..035fd18 --- /dev/null +++ b/Sources/EFlib/EFRunePage.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using static Model.RunePage; + +namespace EFlib +{ + public class EFRunePage + { + public string Name { get; set; } + public ReadOnlyDictionary Runes { get; private set; } + + } +} diff --git a/Sources/EFlib/EFSkill.cs b/Sources/EFlib/EFSkill.cs new file mode 100644 index 0000000..7af417f --- /dev/null +++ b/Sources/EFlib/EFSkill.cs @@ -0,0 +1,16 @@ +using Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EFlib +{ + public class EFSkill + { + public string Name { get; set; } + public string Description { get; set; } + public SkillType SkillType { get; set; } + } +} diff --git a/Sources/EFlib/EFSkin.cs b/Sources/EFlib/EFSkin.cs index b1aaf63..76488da 100644 --- a/Sources/EFlib/EFSkin.cs +++ b/Sources/EFlib/EFSkin.cs @@ -1,11 +1,13 @@ namespace EFlib { - internal class EFSkin + public class EFSkin { /**** Attributs ****/ public string Name { get; set; } public string Description { get; set; } public string Icon { get; set; } public float Price { get; set; } + public EFChampion champion { get; set; } + } } diff --git a/Sources/EFlib/EFlib.csproj b/Sources/EFlib/EFlib.csproj index 98c38c9..330fd62 100644 --- a/Sources/EFlib/EFlib.csproj +++ b/Sources/EFlib/EFlib.csproj @@ -20,4 +20,8 @@ + + + +