From 58c0b5ea20226a7ce011d74656ce5bcb71bc1dac Mon Sep 17 00:00:00 2001 From: Sarathlal Sarangadharan Date: Thu, 25 Apr 2024 15:37:30 +0100 Subject: [PATCH] TD-4067: Issue in elearning when multiple version is available has been resolved --- .../Activity/GetUserLatestActivityCheck.sql | 3 ++- .../Activity/GetUserLearningActivities.sql | 3 ++- .../Activity/ResourceActivityRepository.cs | 15 ++++++++++----- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLatestActivityCheck.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLatestActivityCheck.sql index e38ff401c..fdd97300c 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLatestActivityCheck.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLatestActivityCheck.sql @@ -7,6 +7,7 @@ -- Modification History -- Sarathlal 20-02-2024 -- Sarathlal 23-04-2024 TD-2954: Audio/Video/Assessment issue resolved and duplicate issue also resolved +-- Sarathlal 25-04-2024 TD-4067: Resource with muliple version issue resolved ------------------------------------------------------------------------------- CREATE PROCEDURE [activity].[GetUserLatestActivityCheck] ( @@ -17,7 +18,7 @@ AS BEGIN SELECT --Resource activity starts here - [t2].[Id] as Id,[t2].[UserId] as UserId,[t7].[ResourceId] as ResourceId,[t2].[ResourceVersionId] as ResourceVersionId,[t7].[NodePathId],[t2].[AmendDate],[t2].[Deleted],[t2].[CreateUserId],[t2].[CreateDate],[t2].[AmendUserId] + [t2].[Id] as Id,[t2].[UserId] as UserId,[t7].[ResourceId] as ResourceId,[t2].[ResourceVersionId] as ResourceVersionId,[t2].[NodePathId],[t2].[AmendDate],[t2].[Deleted],[t2].[CreateUserId],[t2].[CreateDate],[t2].[AmendUserId] ,[t2].[LaunchResourceActivityId],[t2].[MajorVersion],[t2].[MinorVersion],[t2].[ActivityStatusId],[t2].[ActivityStart],[t2].[ActivityEnd],[t9].[DurationSeconds],[t2].[Score] --Node path clumns starts here ,[t6].[AmendDate] as NodePath_AmendDate,[t6].[AmendUserId] as NodePath_AmendUserId,[t6].[CatalogueNodeId] as NodePath_CatalogueNode, [t6].[CreateDate] as NodePath_CreateDate, [t6].[CreateUserId] as NodePath_CreateUserId, [t6].[Deleted] as NodePath_Deleted, [t6].[IsActive] as NodePath_IsActive diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLearningActivities.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLearningActivities.sql index a4abe5f8f..d8b8d3c5a 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLearningActivities.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Activity/GetUserLearningActivities.sql @@ -9,6 +9,7 @@ -- Sarathlal 14-12-2023 -- Sarathlal 08-03-2024 -- Sarathlal 23-04-2024 TD-2954: Audio/Video/Assessment issue resolved and duplicate issue also resolved +-- Sarathlal 25-04-2024 TD-4067: Resource with muliple version issue resolved ------------------------------------------------------------------------------- CREATE PROCEDURE [activity].[GetUserLearningActivities] ( @userId INT @@ -57,7 +58,7 @@ BEGIN SELECT --Resource activity starts here - [t2].[Id] as Id,[t2].[UserId] as UserId,[t7].[ResourceId] as ResourceId,[t2].[ResourceVersionId] as ResourceVersionId,[t7].[NodePathId],[t2].[AmendDate],[t2].[Deleted],[t2].[CreateUserId],[t2].[CreateDate],[t2].[AmendUserId] + [t2].[Id] as Id,[t2].[UserId] as UserId,[t7].[ResourceId] as ResourceId,[t2].[ResourceVersionId] as ResourceVersionId,[t2].[NodePathId],[t2].[AmendDate],[t2].[Deleted],[t2].[CreateUserId],[t2].[CreateDate],[t2].[AmendUserId] ,[t2].[LaunchResourceActivityId],[t2].[MajorVersion],[t2].[MinorVersion],[t2].[ActivityStatusId],[t2].[ActivityStart],[t2].[ActivityEnd],[t9].[DurationSeconds],[t2].[Score] --Node path clumns starts here ,[t6].[AmendDate] as NodePath_AmendDate,[t6].[AmendUserId] as NodePath_AmendUserId,[t6].[CatalogueNodeId] as NodePath_CatalogueNode, [t6].[CreateDate] as NodePath_CreateDate, [t6].[CreateUserId] as NodePath_CreateUserId, [t6].[Deleted] as NodePath_Deleted, [t6].[IsActive] as NodePath_IsActive diff --git a/WebAPI/LearningHub.Nhs.Repository/Activity/ResourceActivityRepository.cs b/WebAPI/LearningHub.Nhs.Repository/Activity/ResourceActivityRepository.cs index 155033513..46a7405fa 100644 --- a/WebAPI/LearningHub.Nhs.Repository/Activity/ResourceActivityRepository.cs +++ b/WebAPI/LearningHub.Nhs.Repository/Activity/ResourceActivityRepository.cs @@ -502,12 +502,17 @@ private void BindResourceNestedData(List result) i.Resource.Deleted = i.Resource_Deleted; int resourceTypeId = i.Resource_ResourceTypeId; i.Resource.ResourceTypeEnum = (ResourceTypeEnum)resourceTypeId; - ResourceReference resourceReference = new ResourceReference(); - resourceReference.OriginalResourceReferenceId = i.ResourceReference_OriginalResourceReferenceId; - resourceReference.NodePathId = i.ResourceReference_NodePathId; - resourceReference.ResourceId = i.ResourceReference_ResourceId; + var resourceReferences = result.Where(x => x.Id == i.Id && x.ResourceVersionId == i.ResourceVersionId).ToList(); List resourceReferenceList = new List(); - resourceReferenceList.Add(resourceReference); + foreach (var b in resourceReferences) + { + ResourceReference resourceReference = new ResourceReference(); + resourceReference.OriginalResourceReferenceId = b.ResourceReference_OriginalResourceReferenceId; + resourceReference.NodePathId = b.ResourceReference_NodePathId; + resourceReference.ResourceId = b.ResourceReference_ResourceId; + resourceReferenceList.Add(resourceReference); + } + i.Resource.ResourceReference = resourceReferenceList; }); }