You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.4 KiB
115 lines
3.4 KiB
using DTO;
|
|
using Model;
|
|
using static System.Net.Mime.MediaTypeNames;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace EntityFramwork.Factories
|
|
{
|
|
public static class Factories
|
|
{
|
|
|
|
// Factorie Champion
|
|
public static EntityChampions ChampionModelToEntity(this Champion champ)
|
|
{
|
|
EntityChampions entity = new EntityChampions();
|
|
|
|
entity.Name = champ.Name;
|
|
entity.Bio = champ.Bio;
|
|
entity.Icon = champ.Icon;
|
|
entity.Classe = champ.Class.ToString();
|
|
|
|
return entity;
|
|
}
|
|
|
|
public static Champion EntityChampionToModele(this EntityChampions entity)
|
|
{
|
|
ChampionClass classe = ChampionClass.Unknown;
|
|
string image;
|
|
|
|
switch (entity.Classe)
|
|
{
|
|
case "Assassin":
|
|
classe = ChampionClass.Assassin;
|
|
break;
|
|
|
|
case "Fighter":
|
|
classe = ChampionClass.Fighter;
|
|
break;
|
|
|
|
case "Mage":
|
|
classe = ChampionClass.Mage;
|
|
break;
|
|
|
|
case "Support":
|
|
classe = ChampionClass.Support;
|
|
break;
|
|
|
|
case "Tank":
|
|
classe = ChampionClass.Tank;
|
|
break;
|
|
}
|
|
using (BDDContext db = new BDDContext())
|
|
{
|
|
image = db.Images.Where(e => e.Id == entity.ImageId).First().Base64;
|
|
}
|
|
|
|
return new Champion(entity.Name,champClass:classe,icon:entity.Icon,bio:entity.Bio,image:image);
|
|
}
|
|
|
|
// Skins
|
|
public static EntitySkins SkinsModelToEntity(this Skin skin)
|
|
{
|
|
EntitySkins entity= new EntitySkins();
|
|
|
|
entity.Price = skin.Price;
|
|
entity.Icon = skin.Icon;
|
|
entity.Name = skin.Name;
|
|
entity.Description = skin.Description;
|
|
|
|
return entity;
|
|
}
|
|
|
|
public static Skin SkinEntityToModele(this EntitySkins entity)
|
|
{
|
|
Champion champ;
|
|
LargeImage image;
|
|
using (BDDContext db = new BDDContext())
|
|
{
|
|
champ = db.Champions.Where(e => e.Id == entity.ChampionId).First().EntityChampionToModele();
|
|
image = db.Images.Where(e => e.Id == entity.ImageId).First().ImageEntityToModele();
|
|
}
|
|
return new Skin(entity.Name, champ, entity.Price, entity.Icon, image.Base64, entity.Description);
|
|
}
|
|
|
|
|
|
public static EntityRunes RuneModelToEntity(this Rune rune)
|
|
{
|
|
EntityRunes entity = new EntityRunes();
|
|
|
|
entity.Name= rune.Name;
|
|
entity.Icon= rune.Icon;
|
|
entity.Description = rune.Description;
|
|
entity.Family = rune.Family.ToString();
|
|
|
|
return entity;
|
|
}
|
|
|
|
public static EntitySkill SkillModeleToEntity(this Skill skill,int championId)
|
|
{
|
|
EntitySkill entity = new EntitySkill();
|
|
|
|
entity.Name = skill.Name;
|
|
entity.Description = skill.Description;
|
|
entity.Type = skill.Type.ToString();
|
|
entity.ChampionId = championId;
|
|
|
|
return entity;
|
|
}
|
|
|
|
public static LargeImage ImageEntityToModele(this EntityLargeImage entity)
|
|
{
|
|
return new LargeImage(entity.Base64);
|
|
}
|
|
}
|
|
}
|