From ce6012ad62be4af59b360bbe5ed816fd4dcce192 Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Mon, 26 Oct 2020 21:34:33 +0330 Subject: [PATCH] Changing PoemNarration key from Guid to int --- .../Controllers/AudioNarrationController.cs | 4 ++-- .../20200830054142_AudioFiles.Designer.cs | 7 ++++--- .../Migrations/20200830054142_AudioFiles.cs | 3 ++- RMuseum/Models/GanjoorAudio/PoemNarration.cs | 2 +- .../ViewModels/PoemNarrationViewModel.cs | 4 ++-- RMuseum/RMuseum.xml | 16 ++++++++-------- RMuseum/Services/IAudioNarrationService.cs | 6 +++--- .../Implementation/AudioNarrationService.cs | 17 ++++++++--------- .../Models/Auth/ViewModels/PublicRAppUser.cs | 19 ++++++++++--------- 9 files changed, 40 insertions(+), 38 deletions(-) diff --git a/RMuseum/Controllers/AudioNarrationController.cs b/RMuseum/Controllers/AudioNarrationController.cs index 4bd999e6..9c48fc88 100644 --- a/RMuseum/Controllers/AudioNarrationController.cs +++ b/RMuseum/Controllers/AudioNarrationController.cs @@ -84,7 +84,7 @@ namespace RMuseum.Controllers [ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(PoemNarrationUpdateViewModel))] [ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))] [ProducesResponseType((int)HttpStatusCode.Forbidden, Type = typeof(string))] - public async Task UpdatePoemNarration(Guid id, [FromBody] PoemNarrationUpdateViewModel metadata) + public async Task UpdatePoemNarration(int id, [FromBody] PoemNarrationUpdateViewModel metadata) { Guid loggedOnUserId = new Guid(User.Claims.FirstOrDefault(c => c.Type == "UserId").Value); @@ -125,7 +125,7 @@ namespace RMuseum.Controllers [ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(PoemNarrationUpdateViewModel))] [ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))] [ProducesResponseType((int)HttpStatusCode.Forbidden, Type = typeof(string))] - public async Task ModeratePoemNarration(Guid id, [FromBody] PoemNarrationModerateViewModel model) + public async Task ModeratePoemNarration(int id, [FromBody] PoemNarrationModerateViewModel model) { Guid loggedOnUserId = new Guid(User.Claims.FirstOrDefault(c => c.Type == "UserId").Value); diff --git a/RMuseum/Migrations/20200830054142_AudioFiles.Designer.cs b/RMuseum/Migrations/20200830054142_AudioFiles.Designer.cs index 675464cd..a4f4e2db 100644 --- a/RMuseum/Migrations/20200830054142_AudioFiles.Designer.cs +++ b/RMuseum/Migrations/20200830054142_AudioFiles.Designer.cs @@ -340,9 +340,10 @@ namespace RMuseum.Migrations modelBuilder.Entity("RMuseum.Models.GanjoorAudio.PoemNarration", b => { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("AudioArtist") .HasColumnType("nvarchar(max)"); diff --git a/RMuseum/Migrations/20200830054142_AudioFiles.cs b/RMuseum/Migrations/20200830054142_AudioFiles.cs index 5c6bf69d..ba28c3db 100644 --- a/RMuseum/Migrations/20200830054142_AudioFiles.cs +++ b/RMuseum/Migrations/20200830054142_AudioFiles.cs @@ -11,7 +11,8 @@ namespace RMuseum.Migrations name: "AudioFiles", columns: table => new { - Id = table.Column(nullable: false), + Id = table.Column(nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), OwnerId = table.Column(nullable: false), GanjoorAudioId = table.Column(nullable: false), GanjoorPostId = table.Column(nullable: false), diff --git a/RMuseum/Models/GanjoorAudio/PoemNarration.cs b/RMuseum/Models/GanjoorAudio/PoemNarration.cs index b7182dfe..1890c772 100644 --- a/RMuseum/Models/GanjoorAudio/PoemNarration.cs +++ b/RMuseum/Models/GanjoorAudio/PoemNarration.cs @@ -12,7 +12,7 @@ namespace RMuseum.Models.GanjoorAudio /// /// Id /// - public Guid Id { get; set; } + public int Id { get; set; } /// /// Owner User diff --git a/RMuseum/Models/GanjoorAudio/ViewModels/PoemNarrationViewModel.cs b/RMuseum/Models/GanjoorAudio/ViewModels/PoemNarrationViewModel.cs index 703a49ed..a7177691 100644 --- a/RMuseum/Models/GanjoorAudio/ViewModels/PoemNarrationViewModel.cs +++ b/RMuseum/Models/GanjoorAudio/ViewModels/PoemNarrationViewModel.cs @@ -18,7 +18,7 @@ namespace RMuseum.Models.GanjoorAudio.ViewModels public PoemNarrationViewModel(PoemNarration src, GanjoorPoem poem) { Id = src.Id; - Owner = new PublicRAppUser(src.Owner); + Owner = src.Owner == null ? null : new PublicRAppUser(src.Owner); GanjoorAudioId = src.GanjoorAudioId; GanjoorPostId = src.GanjoorPostId; AudioOrder = src.AudioOrder; @@ -65,7 +65,7 @@ namespace RMuseum.Models.GanjoorAudio.ViewModels /// /// Id /// - public Guid Id { get; set; } + public int Id { get; set; } /// /// Owner User diff --git a/RMuseum/RMuseum.xml b/RMuseum/RMuseum.xml index 34047c75..a756b3a2 100644 --- a/RMuseum/RMuseum.xml +++ b/RMuseum/RMuseum.xml @@ -635,7 +635,7 @@ default: -1, unfiltered - + updates narration metadata @@ -647,7 +647,7 @@ - + Moderate pending narration @@ -3885,14 +3885,14 @@ - + return selected narration information - + updates metadata for narration @@ -3929,7 +3929,7 @@ - + Moderate pending narration @@ -4689,14 +4689,14 @@ - + return selected narration information - + updates metadata for narration @@ -4732,7 +4732,7 @@ - + Moderate pending narration diff --git a/RMuseum/Services/IAudioNarrationService.cs b/RMuseum/Services/IAudioNarrationService.cs index 85800791..a5207271 100644 --- a/RMuseum/Services/IAudioNarrationService.cs +++ b/RMuseum/Services/IAudioNarrationService.cs @@ -27,7 +27,7 @@ namespace RMuseum.Services /// /// /// - Task> Get(Guid id); + Task> Get(int id); /// /// updates metadata for narration @@ -35,7 +35,7 @@ namespace RMuseum.Services /// /// /// - Task> UpdatePoemNarration(Guid id, PoemNarrationUpdateViewModel metadata); + Task> UpdatePoemNarration(int id, PoemNarrationUpdateViewModel metadata); /// /// imports narration data from ganjoor MySql database @@ -73,7 +73,7 @@ namespace RMuseum.Services /// /// /// - Task> ModeratePoemNarration(Guid id, Guid moderatorId, PoemNarrationModerateViewModel model); + Task> ModeratePoemNarration(int id, Guid moderatorId, PoemNarrationModerateViewModel model); /// /// Get Upload Session (including files) diff --git a/RMuseum/Services/Implementation/AudioNarrationService.cs b/RMuseum/Services/Implementation/AudioNarrationService.cs index eeb978e9..0e6f1e11 100644 --- a/RMuseum/Services/Implementation/AudioNarrationService.cs +++ b/RMuseum/Services/Implementation/AudioNarrationService.cs @@ -38,15 +38,16 @@ namespace RMuseum.Services.Implementation { try { - var source = - _context.AudioFiles + var narrations = _context.AudioFiles .Include(a => a.Owner) .Where(a => (filteredUserId == Guid.Empty || a.OwnerId == filteredUserId) && (status == AudioReviewStatus.All || a.ReviewStatus == status) ) - .OrderByDescending(a => a.UploadDate) + .OrderByDescending(a => a.Id); + var source = + narrations .Join( _context.GanjoorPoems, audio => audio.GanjoorPostId, @@ -54,8 +55,6 @@ namespace RMuseum.Services.Implementation (audio, poem) => new PoemNarrationViewModel(audio, poem) ); - - (PaginationMetadata PagingMeta, PoemNarrationViewModel[] Items) paginatedResult = await QueryablePaginator.Paginate(source, paging); @@ -74,7 +73,7 @@ namespace RMuseum.Services.Implementation /// /// /// - public async Task> Get(Guid id) + public async Task> Get(int id) { try { @@ -101,7 +100,7 @@ namespace RMuseum.Services.Implementation /// /// /// - public async Task> UpdatePoemNarration(Guid id, PoemNarrationUpdateViewModel metadata) + public async Task> UpdatePoemNarration(int id, PoemNarrationUpdateViewModel metadata) { try { @@ -148,7 +147,7 @@ namespace RMuseum.Services.Implementation "SELECT audio_ID, audio_post_ID, audio_order, audio_xml, audio_ogg, audio_mp3, " + "audio_title, audio_artist, audio_artist_url, audio_src, audio_src_url, audio_guid, " + "audio_fchecksum, audio_mp3bsize, audio_oggbsize, audio_date " + - "FROM adab.ganja_gaudio ORDER BY audio_ID", + "FROM adab.ganja_gaudio ORDER BY audio_date", connection )) { @@ -528,7 +527,7 @@ namespace RMuseum.Services.Implementation /// /// /// - public async Task> ModeratePoemNarration(Guid id, Guid moderatorId, PoemNarrationModerateViewModel model) + public async Task> ModeratePoemNarration(int id, Guid moderatorId, PoemNarrationModerateViewModel model) { try { diff --git a/RSecurityBackend/Models/Auth/ViewModels/PublicRAppUser.cs b/RSecurityBackend/Models/Auth/ViewModels/PublicRAppUser.cs index 39ddc95e..48c02588 100644 --- a/RSecurityBackend/Models/Auth/ViewModels/PublicRAppUser.cs +++ b/RSecurityBackend/Models/Auth/ViewModels/PublicRAppUser.cs @@ -19,17 +19,18 @@ namespace RSecurityBackend.Models.Auth.ViewModels /// public PublicRAppUser(RAppUser dbUserInfo) { - if (dbUserInfo != null) + if (dbUserInfo == null) { - Id = dbUserInfo.Id; - Username = dbUserInfo.UserName; - FirstName = dbUserInfo.FirstName; - SureName = dbUserInfo.SureName; - Email = dbUserInfo.Email; - PhoneNumber = dbUserInfo.PhoneNumber; - Status = dbUserInfo.Status; - RImageId = dbUserInfo.RImageId; + return; } + Id = dbUserInfo.Id; + Username = dbUserInfo.UserName; + FirstName = dbUserInfo.FirstName; + SureName = dbUserInfo.SureName; + Email = dbUserInfo.Email; + PhoneNumber = dbUserInfo.PhoneNumber; + Status = dbUserInfo.Status; + RImageId = dbUserInfo.RImageId; } /// /// default constructor