more rank stuff, might be ready for use
This commit is contained in:
@@ -25,8 +25,7 @@ namespace TOOHUCardAPI.Data.JsonConverters
|
||||
JsonSerializer serializer)
|
||||
{
|
||||
JObject jo = JObject.Load(reader);
|
||||
RankEntryDTO dto = new RankEntryDTO();
|
||||
serializer.Populate(reader, dto);
|
||||
RankEntryDTO dto = jo.ToObject<RankEntryDTO>();
|
||||
dto.Cards = jo.Properties().Where(prop => prop.Name.Contains("card"))
|
||||
.Select(i => KeyValuePair.Create(i.Name, i.Value))
|
||||
.ToDictionary(kv => kv.Key, kv => kv.Value.ToObject<string>());
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace TOOHUCardAPI.Data.Models
|
||||
public RankType RankType { get; set; }
|
||||
public string Username { get; set; }
|
||||
public User User { get; set; }
|
||||
public long AccountId { get; set; }
|
||||
public string Version { get; set; }
|
||||
public int Wave { get; set; }
|
||||
public long Damage { get; set; }
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace TOOHUCardAPI.Data.Repositories
|
||||
|
||||
private IQueryable<RankEntry> AllIncluded()
|
||||
{
|
||||
return _appDbContext.RankEntries.Include(i => i.TowersUsed);
|
||||
return _appDbContext.RankEntries.Include(i => i.TowersUsed).Include(i => i.User);
|
||||
}
|
||||
|
||||
public async Task<IEnumerable<RankEntry>> GetRankEntries(RankType rankType)
|
||||
@@ -33,6 +33,7 @@ namespace TOOHUCardAPI.Data.Repositories
|
||||
public async Task InsertRankEntry(RankEntry entry)
|
||||
{
|
||||
await _appDbContext.RankEntries.AddAsync(entry);
|
||||
await _appDbContext.SaveChangesAsync();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -25,6 +25,7 @@ namespace TOOHUCardAPI.Data.Services
|
||||
public async Task<List<RankEntryDTO>> GetRankEntries(RankType rankType)
|
||||
{
|
||||
var rankEntries = await _rankRepository.GetRankEntries(rankType);
|
||||
_logger.LogInformation("Got rank entries for {RankType}", rankType.ToString());
|
||||
return rankEntries.Select(entry => entry.ToRankEntryDTO()).ToList();
|
||||
}
|
||||
|
||||
@@ -40,12 +41,14 @@ namespace TOOHUCardAPI.Data.Services
|
||||
RankType = RankTypeExtensions.ParseRankType(entry.RankType),
|
||||
Username = entry.Username,
|
||||
User = await _userRepository.GetUser(entry.SteamId),
|
||||
AccountId = entry.UserId,
|
||||
Version = entry.Version,
|
||||
Wave = entry.Wave,
|
||||
Damage = entry.Damage,
|
||||
TowersUsed = towersUsed
|
||||
};
|
||||
await _rankRepository.InsertRankEntry(toUpload);
|
||||
_logger.LogInformation("Uploaded a rank entry for {SteamId}", entry.SteamId);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user