diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserGroupId.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserGroupId.sql index bcfc1aa4e..4f65b529c 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserGroupId.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserGroupId.sql @@ -18,6 +18,7 @@ AS BEGIN SELECT + CAST([Sequence] AS int) AS [Key], RoleUserGroupId, UserGroupId, UserGroupName, diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserId.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserId.sql index ff05f806c..09b16949d 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserId.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Hub/RoleUserGroupGetByUserId.sql @@ -18,6 +18,7 @@ AS BEGIN SELECT + CAST([Sequence] AS int) AS [Key], RoleUserGroupId, rug.UserGroupId, UserGroupName, diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyInProgressDashboardResources.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyInProgressDashboardResources.sql index 22709e898..7464de6e3 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyInProgressDashboardResources.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyInProgressDashboardResources.sql @@ -6,6 +6,7 @@ -- Modification History -- -- 24 Jun 2024 OA Initial Revision +-- 27 Jun 2024 SA My Learning Dashboard Tray showing Wrong Counts ------------------------------------------------------------------------------- CREATE PROCEDURE [resources].[GetMyInProgressDashboardResources] @@ -25,9 +26,7 @@ BEGIN DECLARE @MaxRows INT = @MaxPageNUmber * @FetchRows DECLARE @OffsetRows INT = (@PageNumber - 1) * @FetchRows - DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); - DECLARE @Resources TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityCount [int] NOT NULL); - + DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); INSERT INTO @MyActivity SELECT TOP (@MaxRows) ra.ResourceId, MAX(ra.Id) ResourceActivityId @@ -100,6 +99,24 @@ BEGIN OFFSET @OffsetRows ROWS FETCH NEXT @FetchRows ROWS ONLY - SELECT @TotalRecords = CASE WHEN COUNT(*) > 12 THEN @MaxRows ELSE COUNT(*) END FROM @MyActivity + SELECT @TotalRecords = CASE WHEN COUNT(ma.ResourceActivityId) > 12 THEN @MaxRows ELSE COUNT(*) END + FROM @MyActivity ma + JOIN activity.ResourceActivity ra ON ra.id = ma.ResourceActivityId + JOIN resources.resourceversion rv ON rv.id = ra.ResourceVersionId AND rv.Deleted = 0 + JOIN Resources.Resource r ON r.Id = rv.ResourceId + JOIN hierarchy.Publication p ON rv.PublicationId = p.Id AND p.Deleted = 0 + JOIN resources.ResourceVersionRatingSummary rvrs ON rv.Id = rvrs.ResourceVersionId AND rvrs.Deleted = 0 + JOIN hierarchy.NodeResource nr ON r.Id = nr.ResourceId AND nr.Deleted = 0 + JOIN hierarchy.Node n ON n.Id = nr.NodeId AND n.Hidden = 0 AND n.Deleted = 0 + JOIN hierarchy.NodePath np ON np.NodeId = n.Id AND np.Deleted = 0 AND np.IsActive = 1 + JOIN hierarchy.NodeVersion nv ON nv.NodeId = np.CatalogueNodeId AND nv.VersionStatusId = 2 AND nv.Deleted = 0 + JOIN hierarchy.CatalogueNodeVersion cnv ON cnv.NodeVersionId = nv.Id AND cnv.Deleted = 0 + LEFT JOIN hub.UserBookmark ub ON ub.UserId = @UserId AND ub.ResourceReferenceId = (SELECT TOP 1 rr.OriginalResourceReferenceId + FROM [resources].[ResourceReference] rr + JOIN hierarchy.NodePath np on np.id = rr.NodePathId and np.NodeId = n.Id and np.Deleted = 0 + WHERE rr.ResourceId = rv.ResourceId AND rr.Deleted = 0) + LEFT JOIN ( SELECT DISTINCT CatalogueNodeId + FROM [hub].[RoleUserGroupView] rug JOIN hub.UserUserGroup uug ON rug.UserGroupId = uug.UserGroupId + WHERE rug.ScopeTypeId = 1 and rug.RoleId in (1,2,3) and uug.Deleted = 0 and uug.UserId = @userId) auth ON n.Id = auth.CatalogueNodeId END \ No newline at end of file diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyRecentCompletedDashboardResources.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyRecentCompletedDashboardResources.sql index 686ef7efe..cb12b2a10 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyRecentCompletedDashboardResources.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetMyRecentCompletedDashboardResources.sql @@ -6,6 +6,7 @@ -- Modification History -- -- 24 Jun 2024 OA Initial Revision +-- 27 Jun 2024 SA Removed unused temp tables ------------------------------------------------------------------------------- CREATE PROCEDURE [resources].[GetMyRecentCompletedDashboardResources] @@ -26,7 +27,6 @@ BEGIN DECLARE @OffsetRows INT = (@PageNumber - 1) * @FetchRows DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); - DECLARE @Resources TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityCount [int] NOT NULL); INSERT INTO @MyActivity SELECT TOP (@MaxRows) ra.ResourceId, MAX(ra.Id) ResourceActivityId @@ -96,6 +96,24 @@ ORDER BY ma.ResourceActivityId DESC, rv.Title OFFSET @OffsetRows ROWS FETCH NEXT @FetchRows ROWS ONLY - SELECT @TotalRecords = CASE WHEN COUNT(*) > 12 THEN @MaxRows ELSE COUNT(*) END FROM @MyActivity +SELECT @TotalRecords = CASE WHEN COUNT(ma.ResourceActivityId) > 12 THEN @MaxRows ELSE COUNT(*) END +FROM @MyActivity ma +JOIN activity.ResourceActivity ra ON ra.id = ma.ResourceActivityId +JOIN resources.resourceversion rv ON rv.id = ra.ResourceVersionId AND rv.Deleted = 0 +JOIN Resources.Resource r ON r.Id = rv.ResourceId +JOIN hierarchy.Publication p ON rv.PublicationId = p.Id AND p.Deleted = 0 +JOIN resources.ResourceVersionRatingSummary rvrs ON rv.Id = rvrs.ResourceVersionId AND rvrs.Deleted = 0 +JOIN hierarchy.NodeResource nr ON r.Id = nr.ResourceId AND nr.Deleted = 0 +JOIN hierarchy.Node n ON n.Id = nr.NodeId AND n.Hidden = 0 AND n.Deleted = 0 +JOIN hierarchy.NodePath np ON np.NodeId = n.Id AND np.Deleted = 0 AND np.IsActive = 1 +JOIN hierarchy.NodeVersion nv ON nv.NodeId = np.CatalogueNodeId AND nv.VersionStatusId = 2 AND nv.Deleted = 0 +JOIN hierarchy.CatalogueNodeVersion cnv ON cnv.NodeVersionId = nv.Id AND cnv.Deleted = 0 +LEFT JOIN hub.UserBookmark ub ON ub.UserId = @UserId AND ub.ResourceReferenceId = (SELECT TOP 1 rr.OriginalResourceReferenceId + FROM [resources].[ResourceReference] rr + JOIN hierarchy.NodePath np on np.id = rr.NodePathId and np.NodeId = n.Id and np.Deleted = 0 + WHERE rr.ResourceId = rv.ResourceId AND rr.Deleted = 0) +LEFT JOIN ( SELECT DISTINCT CatalogueNodeId + FROM [hub].[RoleUserGroupView] rug JOIN hub.UserUserGroup uug ON rug.UserGroupId = uug.UserGroupId + WHERE rug.ScopeTypeId = 1 and rug.RoleId in (1,2,3) and uug.Deleted = 0 and uug.UserId = @userId) auth ON n.Id = auth.CatalogueNodeId END \ No newline at end of file diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetPopularDashboardResources.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetPopularDashboardResources.sql index f35761471..c9904f0fc 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetPopularDashboardResources.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetPopularDashboardResources.sql @@ -6,6 +6,7 @@ -- Modification History -- -- 24 Jun 2024 OA Initial Revision +-- 27 Jun 2024 SA Removed unused temp tables ------------------------------------------------------------------------------- CREATE PROCEDURE [resources].[GetPopularDashboardResources] @@ -25,7 +26,6 @@ BEGIN DECLARE @MaxRows INT = @MaxPageNUmber * @FetchRows DECLARE @OffsetRows INT = (@PageNumber - 1) * @FetchRows - DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); DECLARE @Resources TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityCount [int] NOT NULL); diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRatedDashboardResources.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRatedDashboardResources.sql index 2e2539044..56b994092 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRatedDashboardResources.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRatedDashboardResources.sql @@ -6,6 +6,7 @@ -- Modification History -- -- 24 Jun 2024 OA Initial Revision +-- 27 Jun 2024 SA Removed unused temp tables ------------------------------------------------------------------------------- CREATE PROCEDURE [resources].[GetRatedDashboardResources] @@ -25,10 +26,6 @@ BEGIN DECLARE @MaxRows INT = @MaxPageNUmber * @FetchRows DECLARE @OffsetRows INT = (@PageNumber - 1) * @FetchRows - DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); - DECLARE @Resources TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityCount [int] NOT NULL); - - SELECT TOP(@MaxRows) r.Id AS ResourceId ,( SELECT TOP 1 rr.OriginalResourceReferenceId FROM [resources].[ResourceReference] rr diff --git a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRecentDashboardResources.sql b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRecentDashboardResources.sql index 8aa063b42..5ba8fdd4a 100644 --- a/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRecentDashboardResources.sql +++ b/WebAPI/LearningHub.Nhs.Database/Stored Procedures/Resources/GetRecentDashboardResources.sql @@ -6,6 +6,7 @@ -- Modification History -- -- 24 Jun 2024 OA Initial Revision +-- 27 Jun 2024 SA Removed unused temp tables ------------------------------------------------------------------------------- CREATE PROCEDURE [resources].[GetRecentDashboardResources] @@ -25,9 +26,6 @@ BEGIN DECLARE @MaxRows INT = @MaxPageNUmber * @FetchRows DECLARE @OffsetRows INT = (@PageNumber - 1) * @FetchRows - DECLARE @MyActivity TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityId [int] NOT NULL); - DECLARE @Resources TABLE (ResourceId [int] NOT NULL PRIMARY KEY, ResourceActivityCount [int] NOT NULL); - SELECT TOP(@MaxRows) r.Id AS ResourceId ,( SELECT TOP 1 rr.OriginalResourceReferenceId FROM [resources].[ResourceReference] rr diff --git a/WebAPI/LearningHub.Nhs.Database/Views/RoleUserGroupView.sql b/WebAPI/LearningHub.Nhs.Database/Views/RoleUserGroupView.sql index f6dac03ec..b76083d5f 100644 --- a/WebAPI/LearningHub.Nhs.Database/Views/RoleUserGroupView.sql +++ b/WebAPI/LearningHub.Nhs.Database/Views/RoleUserGroupView.sql @@ -14,6 +14,7 @@ CREATE VIEW [hub].[RoleUserGroupView] AS SELECT + ROW_NUMBER() OVER(ORDER BY rug.Id) AS [Sequence], rug.Id AS RoleUserGroupId, ug.Id AS UserGroupId, ug.[Name] AS UserGroupName, diff --git a/WebAPI/LearningHub.Nhs.Repository/LearningHubDbContext.cs b/WebAPI/LearningHub.Nhs.Repository/LearningHubDbContext.cs index 8d685dbd1..ef4775cd8 100644 --- a/WebAPI/LearningHub.Nhs.Repository/LearningHubDbContext.cs +++ b/WebAPI/LearningHub.Nhs.Repository/LearningHubDbContext.cs @@ -782,8 +782,6 @@ protected override void OnModelCreating(ModelBuilder modelBuilder) { mapping.Map(modelBuilder); } - - modelBuilder.Entity().HasNoKey(); } } }