Skip to content

Commit ada4ae8

Browse files
committed
P1 P2 P3 endpoint expansion
1 parent 34bbb27 commit ada4ae8

File tree

153 files changed

+16825
-20
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

153 files changed

+16825
-20
lines changed

OpenAPI/LearningHub.Nhs.OpenApi.Models/Configuration/AzureConfig.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,9 @@ public class AzureConfig
99
/// Gets or sets the azure blob settings.
1010
/// </summary>
1111
public AzureBlobSettings AzureBlobSettings { get; set; } = null!;
12+
/// <summary>
13+
/// Gets or sets the azure storage queue.
14+
/// </summary>
15+
public string AzureStorageQueueConnectionString { get; set; } = null!;
1216
}
1317
}

OpenAPI/LearningHub.Nhs.OpenApi.Models/Configuration/FindwiseConfig.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ namespace LearningHub.Nhs.OpenApi.Models.Configuration
55
/// </summary>
66
public class FindwiseConfig
77
{
8+
/// <summary>
9+
/// Gets or sets the base url for the Findwise Index endpoint.
10+
/// </summary>
11+
public string IndexUrl { get; set; } = null!;
12+
813
/// <summary>
914
/// Gets or sets the base url for the Findwise search service.
1015
/// </summary>
@@ -25,6 +30,16 @@ public class FindwiseConfig
2530
/// </summary>
2631
public int DefaultItemLimitForSearch { get; set; }
2732

33+
/// <summary>
34+
/// Gets or sets the description limit.
35+
/// </summary>
36+
public int DescriptionLengthLimit { get; set; }
37+
38+
/// <summary>
39+
/// Gets or sets the description length.
40+
/// </summary>
41+
public int MaximumDescriptionLength { get; set; }
42+
2843
/// <summary>
2944
/// Gets or sets the collection ids.
3045
/// </summary>
@@ -34,5 +49,15 @@ public class FindwiseConfig
3449
/// Gets or sets the special search characters.
3550
/// </summary>
3651
public string SpecialSearchCharacters { get; set; } = null!;
52+
53+
/// <summary>
54+
/// Gets or sets the index method.
55+
/// </summary>
56+
public string IndexMethod { get; set; } = null!;
57+
58+
/// <summary>
59+
/// Gets or sets the search component.
60+
/// </summary>
61+
public string UrlSearchComponent { get; set; } = null!;
3762
}
3863
}

OpenAPI/LearningHub.Nhs.OpenApi.Models/Configuration/LearningHubConfig.cs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,41 @@ public class LearningHubConfig
1919
/// Gets or sets <see cref="ContentServerUrl"/>.
2020
/// </summary>
2121
public string ContentServerUrl { get; set; } = null!;
22+
23+
/// <summary>
24+
/// Gets or sets <see cref="EmailConfirmationTokenExpiryMinutes"/>.
25+
/// </summary>
26+
public int EmailConfirmationTokenExpiryMinutes { get; set; } = 0;
27+
28+
/// <summary>
29+
/// Gets or sets <see cref="LearningHubTenantId"/>.
30+
/// </summary>
31+
public int LearningHubTenantId { get; set; } = 0;
32+
33+
/// <summary>
34+
/// Gets or sets <see cref="SupportPages"/>.
35+
/// </summary>
36+
public string SupportPages { get; set; } = null!;
37+
38+
/// <summary>
39+
/// Gets or sets <see cref="SupportForm"/>.
40+
/// </summary>
41+
public string SupportForm { get; set; } = null!;
42+
43+
/// <summary>
44+
/// Gets or sets a value indicating whether <see cref="UseRedisCache"/>.
45+
/// </summary>
46+
public bool UseRedisCache { get; set; } = false;
47+
48+
/// <summary>
49+
/// Gets or sets <see cref="HierarchyEditPublishQueueName"/>.
50+
/// </summary>
51+
public string HierarchyEditPublishQueueName { get; set; } = null!;
52+
53+
/// <summary>
54+
/// Gets or sets <see cref="ResourcePublishQueueRouteName"/>.
55+
/// </summary>
56+
public string ResourcePublishQueueRouteName { get; set; } = null!;
57+
2258
}
2359
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Threading.Tasks;
4+
using LearningHub.Nhs.Models.Entities.Activity;
5+
6+
/// <summary>
7+
/// The AssessmentResourceActivityInteractionAnswer interface.
8+
/// </summary>
9+
public interface IAssessmentResourceActivityInteractionAnswerRepository : IGenericRepository<AssessmentResourceActivityInteractionAnswer>
10+
{
11+
/// <summary>
12+
/// Get Assessment Resource Activity Interaction Answer By Id.
13+
/// </summary>
14+
/// <param name="id">The id.</param>
15+
/// <returns>AssessmentResourceActivityInteractionAnswer.</returns>
16+
Task<AssessmentResourceActivityInteractionAnswer> GetByIdAsync(int id);
17+
}
18+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Collections.Generic;
4+
using System.Threading.Tasks;
5+
using LearningHub.Nhs.Models.Entities.Activity;
6+
7+
/// <summary>
8+
/// The AssessmentResourceActivityInteraction interface.
9+
/// </summary>
10+
public interface IAssessmentResourceActivityInteractionRepository : IGenericRepository<AssessmentResourceActivityInteraction>
11+
{
12+
/// <summary>
13+
/// Get Assessment Resource Activity Interaction By Id.
14+
/// </summary>
15+
/// <param name="id">The id.</param>
16+
/// <returns>AssessmentResourceActivityInteraction.</returns>
17+
Task<AssessmentResourceActivityInteraction> GetByIdAsync(int id);
18+
19+
/// <summary>
20+
/// Get the assessment resource activity interaction for the given user, activity, and question block.
21+
/// </summary>
22+
/// <param name="userId">The user id.</param>
23+
/// <param name="assessmentResourceActivityId">The assessment resource activity id.</param>
24+
/// <param name="questionBlockId">The question block id.</param>
25+
/// <returns>AssessmentResourceActivityInteraction.</returns>
26+
Task<AssessmentResourceActivityInteraction> GetInteractionForQuestion(int userId, int assessmentResourceActivityId, int questionBlockId);
27+
28+
/// <summary>
29+
/// Creates an assessment activity interaction.
30+
/// </summary>
31+
/// <param name="userId">The user id.</param>
32+
/// <param name="interaction">The interaction.</param>
33+
/// <returns>The task.</returns>
34+
Task<int> CreateInteraction(int userId, AssessmentResourceActivityInteraction interaction);
35+
36+
/// <summary>
37+
/// Gets all the interactions for a given assessment resource activity.
38+
/// </summary>
39+
/// <param name="assessmentResourceActivityId">The assessment resource activity id.</param>
40+
/// <returns>The list of interactions.</returns>
41+
Task<List<AssessmentResourceActivityInteraction>> GetInteractionsForAssessmentResourceActivity(int assessmentResourceActivityId);
42+
}
43+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Collections.Generic;
4+
using LearningHub.Nhs.Models.Entities.Activity;
5+
6+
/// <summary>
7+
/// The IAssessmentResourceActivityMatchQuestionRepository interface.
8+
/// </summary>
9+
public interface IAssessmentResourceActivityMatchQuestionRepository : IGenericRepository<AssessmentResourceActivityMatchQuestion>
10+
{
11+
/// <summary>
12+
/// Get Assessment Resource Activity by Assessment Resource Activity Id.
13+
/// </summary>
14+
/// <param name="id">The assessment resource activity id.</param>
15+
/// <returns>The Assessment Resource Activity.</returns>
16+
IEnumerable<AssessmentResourceActivityMatchQuestion> GetByAssessmentResourceActivityIdAsync(int id);
17+
}
18+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Threading.Tasks;
4+
using LearningHub.Nhs.Models.Entities.Activity;
5+
6+
/// <summary>
7+
/// The AssessmentResourceActivity interface.
8+
/// </summary>
9+
public interface IAssessmentResourceActivityRepository : IGenericRepository<AssessmentResourceActivity>
10+
{
11+
/// <summary>
12+
/// Get Assessment Resource Activity By Id.
13+
/// </summary>
14+
/// <param name="id">The id.</param>
15+
/// <returns>AssessmentResourceActivity.</returns>
16+
Task<AssessmentResourceActivity> GetByIdAsync(int id);
17+
18+
/// <summary>
19+
/// Gets the latest assessment resource activity for the given resource version id and user id.
20+
/// </summary>
21+
/// <param name="resourceVersionId">The resource version id.</param>
22+
/// <param name="userId">The user id.</param>
23+
/// <returns>The assessment resource activity task.</returns>
24+
Task<AssessmentResourceActivity> GetLatestAssessmentResourceActivity(int resourceVersionId, int userId);
25+
}
26+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Threading.Tasks;
4+
using LearningHub.Nhs.Models.Entities.Activity;
5+
6+
/// <summary>
7+
/// The MediaResourceActivityInteraction interface.
8+
/// </summary>
9+
public interface IMediaResourceActivityInteractionRepository : IGenericRepository<MediaResourceActivityInteraction>
10+
{
11+
/// <summary>
12+
/// Get Media Resource Activity Interaction By Id.
13+
/// </summary>
14+
/// <param name="id">The id.</param>
15+
/// <returns>MediaResourceActivityInteraction.</returns>
16+
Task<MediaResourceActivityInteraction> GetByIdAsync(int id);
17+
18+
/// <summary>
19+
/// Performs the analysis of media resource activity to populate the played segment data.
20+
/// </summary>
21+
/// <param name="userId">The user id.</param>
22+
/// <param name="resourceVersionId">The resource version id.</param>
23+
/// <param name="mediaResourceActivityId">The mediaResourceActivityId.</param>
24+
/// <returns>The <see cref="Task"/>.</returns>
25+
Task CalculatePlayedMediaSegments(int userId, int resourceVersionId, int mediaResourceActivityId);
26+
}
27+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
2+
{
3+
using System.Threading.Tasks;
4+
using LearningHub.Nhs.Models.Entities.Activity;
5+
6+
/// <summary>
7+
/// The MediaResourceActivity interface.
8+
/// </summary>
9+
public interface IMediaResourceActivityRepository : IGenericRepository<MediaResourceActivity>
10+
{
11+
/// <summary>
12+
/// Get Media Resource Activity By Id.
13+
/// </summary>
14+
/// <param name="id">The id.</param>
15+
/// <returns>MediaResourceActivity.</returns>
16+
Task<MediaResourceActivity> GetByIdAsync(int id);
17+
}
18+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// <copyright file="INodeActivityRepository.cs" company="NHS England">
2+
// Copyright (c) NHS England.
3+
// </copyright>
4+
namespace LearningHub.Nhs.OpenApi.Repositories.Interface.Repositories.Activity
5+
{
6+
using LearningHub.Nhs.Models.Entities.Activity;
7+
8+
/// <summary>
9+
/// INodeActivityRepository.
10+
/// </summary>
11+
public interface INodeActivityRepository : IGenericRepository<NodeActivity>
12+
{
13+
}
14+
}

0 commit comments

Comments
 (0)