Change id types (#114)
* Change id types * Updated more models * Saving changes * Should be it
This commit was merged in pull request #114.
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
# Top-most EditorConfig file
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.cs]
|
||||
# Use 'var' when possible
|
||||
csharp_style_var_for_built_in_types = true:suggestion
|
||||
csharp_style_var_when_type_is_apparent = true:suggestion
|
||||
csharp_style_var_elsewhere = true:suggestion
|
||||
|
||||
# Use expression body for methods
|
||||
csharp_style_expression_bodied_methods = true:silent
|
||||
@@ -149,7 +149,7 @@ public class TokenManager : BaseManager
|
||||
return null;
|
||||
}
|
||||
|
||||
public int? RetrieveUserIdFromToken(string token)
|
||||
public Guid? RetrieveUserIdFromToken(string token)
|
||||
{
|
||||
var parsedToken = this.ContainsBearer(token) ? this.StripBearer(token) : token;
|
||||
var tokenHandler = new JwtSecurityTokenHandler();
|
||||
@@ -159,7 +159,15 @@ public class TokenManager : BaseManager
|
||||
{
|
||||
if (item.Key == "user_id")
|
||||
{
|
||||
return Convert.ToInt32(item.Value);
|
||||
if (item.Value != null)
|
||||
{
|
||||
var id = item.Value.ToString();
|
||||
return Guid.Parse(id!);
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,9 +27,9 @@ public class AccessLevelController : BaseController
|
||||
|
||||
#region HTTP Routes
|
||||
[HttpGet]
|
||||
public IActionResult GetAccessLevels(int? id, int? songId)
|
||||
public IActionResult GetAccessLevels(Guid? id, Guid? songId)
|
||||
{
|
||||
var accLevel = new Models.AccessLevel { Id = 0 };
|
||||
var accLevel = new Models.AccessLevel { };
|
||||
var accessLevelContext = new Database.Contexts.AccessLevelContext(_connectionString!);
|
||||
|
||||
if (id != null)
|
||||
@@ -43,7 +43,7 @@ public class AccessLevelController : BaseController
|
||||
|
||||
var response = new GetAccessLevelsResponse { Data = new List<Models.AccessLevel>() };
|
||||
|
||||
if (accLevel?.Id > 0)
|
||||
if (accLevel?.Id.ToString().Length > 0)
|
||||
{
|
||||
response.Subject = "Successful";
|
||||
response.Data.Add(accLevel);
|
||||
@@ -57,7 +57,7 @@ public class AccessLevelController : BaseController
|
||||
}
|
||||
|
||||
[HttpPatch("{id}")]
|
||||
public IActionResult UpdateAccessLevel(int id, [FromBody] Models.AccessLevel accessLevel)
|
||||
public IActionResult UpdateAccessLevel(Guid id, [FromBody] Models.AccessLevel accessLevel)
|
||||
{
|
||||
var response = new UpdateAccessLevelResponse { Data = new List<Models.AccessLevel>() };
|
||||
var targetLevel = accessLevel.Level;
|
||||
|
||||
@@ -46,7 +46,7 @@ public class AlbumController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("{id}")]
|
||||
public IActionResult GetAlbum(int id)
|
||||
public IActionResult GetAlbum(Guid id)
|
||||
{
|
||||
Album album = new Album { Id = id };
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ public class ArtistController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("{id}")]
|
||||
public IActionResult GetArtist(int id)
|
||||
public IActionResult GetArtist(Guid id)
|
||||
{
|
||||
Artist artist = new Artist { Id = id };
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ public class CoverArtController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("{id}")]
|
||||
public IActionResult GetCoverArt(int id)
|
||||
public IActionResult GetCoverArt(Guid id)
|
||||
{
|
||||
var coverArt = new CoverArt { Id = id };
|
||||
|
||||
@@ -74,7 +74,7 @@ public class CoverArtController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("data/download/{id}")]
|
||||
public async Task<IActionResult> Download(int id, [FromQuery] bool? randomizeFilename)
|
||||
public async Task<IActionResult> Download(Guid id, [FromQuery] bool? randomizeFilename)
|
||||
{
|
||||
var songContext = new SongContext(_connectionString!);
|
||||
var covMgr = new CoverArtManager(this._config!);
|
||||
|
||||
@@ -50,7 +50,7 @@ public class GenreController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("{id}")]
|
||||
public IActionResult GetGenre(int id)
|
||||
public IActionResult GetGenre(Guid id)
|
||||
{
|
||||
var genre = new Genre { Id = id };
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ public class SongCompressedDataController : BaseController
|
||||
|
||||
#region API Routes
|
||||
[HttpGet("{id}")]
|
||||
public async Task<IActionResult> DownloadCompressedSong(int id, [FromQuery] bool? randomizeFilename)
|
||||
public async Task<IActionResult> DownloadCompressedSong(Guid id, [FromQuery] bool? randomizeFilename)
|
||||
{
|
||||
var context = new SongContext(_connectionString!);
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ public class SongController : BaseController
|
||||
}
|
||||
|
||||
[HttpGet("{id}")]
|
||||
public IActionResult GetSong(int id)
|
||||
public IActionResult GetSong(Guid id)
|
||||
{
|
||||
var context = new SongContext(_connectionString!);
|
||||
|
||||
@@ -65,14 +65,14 @@ public class SongController : BaseController
|
||||
|
||||
Console.WriteLine("Here");
|
||||
|
||||
if (song.Id != 0)
|
||||
if (song.Id.ToString().Length != 0)
|
||||
return Ok(song);
|
||||
else
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
[HttpPut("{id}")]
|
||||
public IActionResult UpdateSong(int id, [FromBody] Song song)
|
||||
public IActionResult UpdateSong(Guid id, [FromBody] Song song)
|
||||
{
|
||||
song.Id = id;
|
||||
Console.WriteLine("Retrieving filepath of song");
|
||||
|
||||
@@ -40,7 +40,7 @@ public class SongDataController : BaseController
|
||||
|
||||
|
||||
[HttpGet("download/{id}")]
|
||||
public IActionResult Download(int id, [FromQuery] bool? randomizeFilename)
|
||||
public IActionResult Download(Guid id, [FromQuery] bool? randomizeFilename)
|
||||
{
|
||||
var tokenManager = new TokenManager(this._config!);
|
||||
var songContext = new SongContext(this._connectionString!);
|
||||
@@ -172,7 +172,7 @@ public class SongDataController : BaseController
|
||||
}
|
||||
|
||||
[HttpDelete("delete/{id}")]
|
||||
public IActionResult DeleteSong(int id)
|
||||
public IActionResult DeleteSong(Guid id)
|
||||
{
|
||||
var songContext = new SongContext(_connectionString!);
|
||||
var songMetaData = songContext.RetrieveRecord(new Song { Id = id });
|
||||
|
||||
@@ -32,7 +32,7 @@ public class SongStreamController : BaseController
|
||||
|
||||
#region HTTP endpoints
|
||||
[HttpGet("{id}")]
|
||||
public async Task<IActionResult> StreamSong(int id)
|
||||
public async Task<IActionResult> StreamSong(Guid id)
|
||||
{
|
||||
var context = new SongContext(_config!.GetConnectionString("DefaultConnection")!);
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ public class AccessLevelContext : DbContext
|
||||
#endregion
|
||||
|
||||
#region Methods
|
||||
public Models.AccessLevel? GetAccessLevel(int songId)
|
||||
public Models.AccessLevel? GetAccessLevel(Guid songId)
|
||||
{
|
||||
var accessLevel = this.AccessLevels!.FirstOrDefault(acc => acc.SongId == songId);
|
||||
return accessLevel;
|
||||
@@ -30,6 +30,14 @@ public class AccessLevelContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<Models.AccessLevel>().ToTable("AccessLevel");
|
||||
|
||||
modelBuilder.Entity<Models.AccessLevel>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Models.AccessLevel>().Property(m => m.Level).IsRequired(true);
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -18,6 +18,14 @@ public class AlbumContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<Album>()
|
||||
.ToTable("Album");
|
||||
|
||||
modelBuilder.Entity<Album>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
}
|
||||
|
||||
public Album RetrieveRecord(Album album)
|
||||
|
||||
@@ -18,6 +18,14 @@ public class ArtistContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<Artist>()
|
||||
.ToTable("Artist");
|
||||
|
||||
modelBuilder.Entity<Artist>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
}
|
||||
|
||||
public Artist RetrieveRecord(Artist artist)
|
||||
|
||||
@@ -20,6 +20,13 @@ public class CoverArtContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<CoverArt>()
|
||||
.ToTable("CoverArt");
|
||||
modelBuilder.Entity<CoverArt>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
}
|
||||
|
||||
public CoverArt RetrieveRecord(CoverArt cover)
|
||||
|
||||
@@ -20,6 +20,14 @@ public class GenreContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<Genre>()
|
||||
.ToTable("Genre");
|
||||
|
||||
modelBuilder.Entity<Genre>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -21,6 +21,14 @@ public class SongContext : DbContext
|
||||
modelBuilder.Entity<Song>()
|
||||
.ToTable("Song");
|
||||
|
||||
modelBuilder.Entity<Song>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Song>()
|
||||
.Property(s => s.Year)
|
||||
.IsRequired(false);
|
||||
|
||||
@@ -23,6 +23,14 @@ public class UserContext : DbContext
|
||||
{
|
||||
modelBuilder.Entity<User>()
|
||||
.ToTable("User");
|
||||
|
||||
modelBuilder.Entity<User>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id);
|
||||
|
||||
entity.Property(e => e.Id)
|
||||
.HasColumnType("binary(16)"); // **** Map Guid to BINARY(16) ****
|
||||
});
|
||||
modelBuilder.Entity<User>()
|
||||
.Property(u => u.LastLogin).IsRequired(false);
|
||||
modelBuilder.Entity<User>()
|
||||
|
||||
Reference in New Issue
Block a user