mirror of
https://github.com/morbalint/kemkas-backend.git
synced 2026-07-17 21:23:46 +00:00
add 2E Varazslatok and rename Character to Karakter
This commit is contained in:
@@ -7,14 +7,14 @@ namespace Kemkas.Web.Services.FirstEdition.Character;
|
||||
|
||||
public interface ICharacter1EDtoToDbModelService
|
||||
{
|
||||
public V1Karakter Convert(Character1eDto dto);
|
||||
public V1Karakter Convert(Karakter1eDto dto);
|
||||
|
||||
public void Update(V1Karakter original, Character1eDto dto);
|
||||
public void Update(V1Karakter original, Karakter1eDto dto);
|
||||
}
|
||||
|
||||
public class Character1EDtoToDbModelService : ICharacter1EDtoToDbModelService
|
||||
{
|
||||
public V1Karakter Convert(Character1eDto dto)
|
||||
public V1Karakter Convert(Karakter1eDto dto)
|
||||
{
|
||||
var karakter = new V1Karakter
|
||||
{
|
||||
@@ -47,7 +47,7 @@ public class Character1EDtoToDbModelService : ICharacter1EDtoToDbModelService
|
||||
return karakter;
|
||||
}
|
||||
|
||||
public void Update(V1Karakter original, Character1eDto dto)
|
||||
public void Update(V1Karakter original, Karakter1eDto dto)
|
||||
{
|
||||
original.Nev = dto.Name;
|
||||
original.Nem = dto.Nem;
|
||||
@@ -76,7 +76,7 @@ public class Character1EDtoToDbModelService : ICharacter1EDtoToDbModelService
|
||||
}
|
||||
|
||||
// TODO: this is unnecessary duplication of business logic!!
|
||||
private static List<V1Szintlepes> ConvertSzintLepes(Character1eDto dto, V1Karakter karakter)
|
||||
private static List<V1Szintlepes> ConvertSzintLepes(Karakter1eDto dto, V1Karakter karakter)
|
||||
{
|
||||
if (dto.HpRolls.Count < dto.Szint - 2)
|
||||
{
|
||||
@@ -131,7 +131,7 @@ public class Character1EDtoToDbModelService : ICharacter1EDtoToDbModelService
|
||||
}).Prepend(level1).ToList();
|
||||
}
|
||||
|
||||
private static List<V1KarakterKepzettseg> ConvertKepzettsegek(Character1eDto dto, V1Karakter karakter)
|
||||
private static List<V1KarakterKepzettseg> ConvertKepzettsegek(Karakter1eDto dto, V1Karakter karakter)
|
||||
{
|
||||
var kepzettsegek = dto.Kepzettsegek.Select(x => new V1KarakterKepzettseg
|
||||
{
|
||||
|
||||
@@ -6,14 +6,14 @@ namespace Kemkas.Web.Services.FirstEdition.Character;
|
||||
|
||||
public interface ICharacterDbModelToDto1EService
|
||||
{
|
||||
public Character1eDto Convert(V1Karakter entity);
|
||||
public Karakter1eDto Convert(V1Karakter entity);
|
||||
}
|
||||
|
||||
public class CharacterDbModelToDto1EService : ICharacterDbModelToDto1EService
|
||||
{
|
||||
public Character1eDto Convert(V1Karakter entity)
|
||||
public Karakter1eDto Convert(V1Karakter entity)
|
||||
{
|
||||
return new Character1eDto
|
||||
return new Karakter1eDto
|
||||
{
|
||||
Name = entity.Nev,
|
||||
Nem = entity.Nem,
|
||||
|
||||
@@ -4,12 +4,12 @@ namespace Kemkas.Web.Services.FirstEdition.Character;
|
||||
|
||||
public interface ICharacterValidationService
|
||||
{
|
||||
public string? Validate(Character1eDto dto);
|
||||
public string? Validate(Karakter1eDto dto);
|
||||
}
|
||||
|
||||
public class CharacterValidationService : ICharacterValidationService
|
||||
{
|
||||
public string? Validate(Character1eDto dto)
|
||||
public string? Validate(Karakter1eDto dto)
|
||||
{
|
||||
// TODO: add validation!!
|
||||
return null;
|
||||
|
||||
@@ -6,14 +6,14 @@ namespace Kemkas.Web.Services.SecondEdition.Character;
|
||||
|
||||
public interface ICharacter2EDtoToDbModelService
|
||||
{
|
||||
public V2Karakter Convert(Character2eDto dto);
|
||||
public V2Karakter Convert(Karakter2eDto dto);
|
||||
|
||||
public void Update(V2Karakter original, Character2eDto dto);
|
||||
public void Update(V2Karakter original, Karakter2eDto dto);
|
||||
}
|
||||
|
||||
public class Character2EDtoToDbModelService : ICharacter2EDtoToDbModelService
|
||||
{
|
||||
public V2Karakter Convert(Character2eDto dto)
|
||||
public V2Karakter Convert(Karakter2eDto dto)
|
||||
{
|
||||
var karakter = new V2Karakter
|
||||
{
|
||||
@@ -78,11 +78,18 @@ public class Character2EDtoToDbModelService : ICharacter2EDtoToDbModelService
|
||||
TulajdonsagNoveles = x.TulajdonsagNoveles == null ? null : TulajdonsagExtensions.Convert(x.TulajdonsagNoveles),
|
||||
TolvajExtraKepzettseg = x.TolvajExtraKepzettseg == null ? null : KepzettsegExtensions.Convert2E(x.TolvajExtraKepzettseg),
|
||||
}).ToList();
|
||||
|
||||
|
||||
karakter.Varazslatok = dto.Varazslatok?.Select(v => new V2KarakterVarazslat
|
||||
{
|
||||
Karakter = karakter,
|
||||
Bekeszitve = v.Bekeszitve,
|
||||
VarazslatId = v.VarazslatId,
|
||||
}).ToHashSet() ?? [];
|
||||
|
||||
return karakter;
|
||||
}
|
||||
|
||||
public void Update(V2Karakter original, Character2eDto dto)
|
||||
public void Update(V2Karakter original, Karakter2eDto dto)
|
||||
{
|
||||
original.Nev = dto.Nev;
|
||||
original.Nem = dto.Nem;
|
||||
@@ -143,9 +150,38 @@ public class Character2EDtoToDbModelService : ICharacter2EDtoToDbModelService
|
||||
TulajdonsagNoveles = x.TulajdonsagNoveles == null ? null : TulajdonsagExtensions.Convert(x.TulajdonsagNoveles),
|
||||
TolvajExtraKepzettseg = x.TolvajExtraKepzettseg == null ? null : KepzettsegExtensions.Convert2E(x.TolvajExtraKepzettseg),
|
||||
}).ToList();
|
||||
|
||||
if (dto.Varazslatok == null)
|
||||
{
|
||||
original.Varazslatok = new HashSet<V2KarakterVarazslat>();
|
||||
}
|
||||
else
|
||||
{
|
||||
var dtoVarazslatok = dto.Varazslatok.ToList();
|
||||
var toAdd = dtoVarazslatok.Where(v => original.Varazslatok.Any(x => x.VarazslatId == v.VarazslatId))
|
||||
.Select(v => new V2KarakterVarazslat
|
||||
{
|
||||
VarazslatId = v.VarazslatId,
|
||||
Bekeszitve = v.Bekeszitve,
|
||||
}).ToList();
|
||||
var toUpdate = original.Varazslatok
|
||||
.Select(x =>
|
||||
{
|
||||
var dtoVarazslat = dtoVarazslatok.FirstOrDefault(v => v.VarazslatId == x.VarazslatId);
|
||||
return (dbVarazslat: x, dtoVarazslat);
|
||||
})
|
||||
.Where(x => x.dtoVarazslat != null)
|
||||
.Select(x =>
|
||||
{
|
||||
x.dbVarazslat.Bekeszitve = x.dtoVarazslat!.Bekeszitve;
|
||||
return x.dbVarazslat;
|
||||
})
|
||||
.ToList();
|
||||
original.Varazslatok = toAdd.Concat(toUpdate).ToHashSet();
|
||||
}
|
||||
}
|
||||
|
||||
private static List<V2KarakterKepzettseg> ConvertKarakterKepzettsegek(Character2eDto dto, V2Karakter karakter)
|
||||
private static List<V2KarakterKepzettseg> ConvertKarakterKepzettsegek(Karakter2eDto dto, V2Karakter karakter)
|
||||
{
|
||||
var kepzettsegek = dto.Kepzettsegek.Select(x => new V2KarakterKepzettseg
|
||||
{
|
||||
|
||||
@@ -6,14 +6,14 @@ namespace Kemkas.Web.Services.SecondEdition.Character;
|
||||
|
||||
public interface ICharacterDbModelToDto2EService
|
||||
{
|
||||
public Character2eDto Convert(V2Karakter entity);
|
||||
public Karakter2eDto Convert(V2Karakter entity);
|
||||
}
|
||||
|
||||
public class CharacterDbModelToDto2EService : ICharacterDbModelToDto2EService
|
||||
{
|
||||
public Character2eDto Convert(V2Karakter entity)
|
||||
public Karakter2eDto Convert(V2Karakter entity)
|
||||
{
|
||||
return new Character2eDto
|
||||
return new Karakter2eDto
|
||||
{
|
||||
Nev = entity.Nev,
|
||||
Nem = entity.Nem,
|
||||
@@ -54,7 +54,12 @@ public class CharacterDbModelToDto2EService : ICharacterDbModelToDto2EService
|
||||
TulajdonsagNoveles = sz.TulajdonsagNoveles?.Convert(),
|
||||
HProll = sz.HpRoll,
|
||||
TolvajExtraKepzettseg = sz.TolvajExtraKepzettseg?.Convert()
|
||||
}).ToList()
|
||||
}).ToList(),
|
||||
Varazslatok = entity.Varazslatok.Select(v => new KarakterVarazslat2eDto
|
||||
{
|
||||
Bekeszitve = v.Bekeszitve,
|
||||
VarazslatId = v.VarazslatId,
|
||||
}).ToList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user