seeds
This commit is contained in:
1 parent
b2bfb72863
commit
9f857aeeda
5 files changed
+104
-10
No files matched your search
@@ -0,0 +1,68 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Server.Models;
|
||||
|
||||
namespace Server.Controllers;
|
||||
|
||||
[ApiController]
|
||||
[Route("[controller]")]
|
||||
public class LapController : ControllerBase {
|
||||
private readonly ILogger<LapController> _logger;
|
||||
private SpaceRaceDbContext _db;
|
||||
|
||||
public LapController(ILogger<LapController> logger, SpaceRaceDbContext db) {
|
||||
_logger = logger;
|
||||
_db = db;
|
||||
}
|
||||
|
||||
[HttpGet()]
|
||||
public IEnumerable<LapDTO> Get() {
|
||||
return _db.Laps.Select(c => new LapDTO {
|
||||
Id = c.Id,
|
||||
UserId = c.UserId,
|
||||
Map = c.Map,
|
||||
Time = c.Time,
|
||||
Created = c.Created,
|
||||
});
|
||||
}
|
||||
|
||||
// [HttpGet()]
|
||||
// public LapStorageDTO UserLaps(Guid userId, string mapName) {
|
||||
// List<Lap> laps = _db.Laps
|
||||
// .Where(l => l.Id == userId)
|
||||
// .Where(l => l.Map == mapName);
|
||||
|
||||
// int completions = _db.Laps
|
||||
// .Where(l => l.Map == mapName)
|
||||
// .Count();
|
||||
|
||||
// int position = _db.Database<Laps>.sql("""
|
||||
// SELECT
|
||||
// """);
|
||||
|
||||
// return new LapStorageDTO {
|
||||
// Map = mapName,
|
||||
// Laps = laps,
|
||||
// public int Completions { get; set; }
|
||||
// public int Position { get; set; }
|
||||
|
||||
// }
|
||||
// }
|
||||
|
||||
[HttpPost()]
|
||||
public async Task<Lap> Post(LapDTO dto) {
|
||||
Lap existing = _db.Laps
|
||||
.SingleOrDefault(l => l.UserId == dto.UserId && l.Map == dto.Map);
|
||||
|
||||
Lap v = new Lap {
|
||||
Id = Guid.NewGuid(),
|
||||
UserId = dto.UserId,
|
||||
Map = dto.Map,
|
||||
Time = dto.Time,
|
||||
Created = DateTimeOffset.UtcNow,
|
||||
};
|
||||
|
||||
_db.Laps.Add(v);
|
||||
await _db.SaveChangesAsync();
|
||||
return v;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user