Skip to content

Commit caac5f1

Browse files
committed
service dependency issue
1 parent 19f0a1b commit caac5f1

File tree

4 files changed

+49
-0
lines changed

4 files changed

+49
-0
lines changed

AdminUI/LearningHub.Nhs.AdminUI/ServiceCollectionExtension.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ public static void ConfigureServices(this IServiceCollection services, IConfigur
8686
services.AddSingleton(configuration);
8787

8888
services.AddScoped<ILearningHubApiFacade, LearningHubApiFacade>();
89+
services.AddScoped<IOpenApiFacade, OpenApiFacade>();
8990
services.AddScoped<IResourceService, ResourceService>();
9091
services.AddScoped<IUserService, UserService>();
9192
services.AddScoped<IUserGroupService, UserGroupService>();
@@ -132,11 +133,19 @@ public static void ConfigureServices(this IServiceCollection services, IConfigur
132133
ServerCertificateCustomValidationCallback =
133134
HttpClientHandler.DangerousAcceptAnyServerCertificateValidator,
134135
});
136+
services.AddHttpClient<IOpenApiHttpClient, OpenApiHttpClient>()
137+
.ConfigurePrimaryHttpMessageHandler(
138+
() => new HttpClientHandler
139+
{
140+
ServerCertificateCustomValidationCallback =
141+
HttpClientHandler.DangerousAcceptAnyServerCertificateValidator,
142+
});
135143
}
136144
else
137145
{
138146
services.AddHttpClient<ILearningHubHttpClient, LearningHubHttpClient>();
139147
services.AddHttpClient<IUserApiHttpClient, UserApiHttpClient>();
148+
services.AddHttpClient<IOpenApiHttpClient, OpenApiHttpClient>();
140149
}
141150

142151
services.AddTransient<CookieEventHandler>();

OpenAPI/LearningHub.Nhs.OpenApi.Services.Interface/Services/ICatalogueService.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,13 @@ public interface ICatalogueService
2626
/// <returns>BulkCatalogueViewModel.</returns>
2727
public Task<BulkCatalogueViewModel> GetAllCatalogues();
2828

29+
/// <summary>
30+
/// The GetCatalogues.
31+
/// </summary>
32+
/// <param name="searchTerm">The searchTerm.</param>
33+
/// <returns>The catalogues.</returns>
34+
List<CatalogueViewModel> GetCatalogues(string searchTerm);
35+
2936
/// <summary>
3037
/// The GetCatalogue.
3138
/// </summary>

OpenAPI/LearningHub.Nhs.OpenApi.Services/Services/CatalogueService.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
using LearningHub.Nhs.Models.Email.Models;
1212
using LearningHub.Nhs.Models.Entities;
1313
using LearningHub.Nhs.Models.Entities.Activity;
14+
using LearningHub.Nhs.Models.Entities.Hierarchy;
1415
using LearningHub.Nhs.Models.Entities.Resource;
1516
using LearningHub.Nhs.Models.Enums;
1617
using LearningHub.Nhs.Models.Resource;
@@ -183,6 +184,25 @@ public CatalogueBasicViewModel GetBasicCatalogue(int catalogueNodeId)
183184
return this.mapper.Map<CatalogueBasicViewModel>(catalogue);
184185
}
185186

187+
/// <summary>
188+
/// The GetCatalogues.
189+
/// </summary>
190+
/// <param name="searchTerm">The searchTerm.</param>
191+
/// <returns>The catalogues.</returns>
192+
public List<CatalogueViewModel> GetCatalogues(string searchTerm)
193+
{
194+
IQueryable<CatalogueNodeVersion> catalogueVersions = this.catalogueNodeVersionRepository.GetAll()
195+
.Include(x => x.Keywords)
196+
.Include(x => x.CatalogueNodeVersionProvider).Where(x => !x.Deleted)
197+
.Include(x => x.NodeVersion)
198+
.ThenInclude(x => x.Node);
199+
if (!string.IsNullOrEmpty(searchTerm))
200+
{
201+
catalogueVersions = catalogueVersions.Where(x => x.Name.ToLower().Contains(searchTerm.ToLower()));
202+
}
203+
204+
return this.mapper.ProjectTo<CatalogueViewModel>(catalogueVersions).ToList();
205+
}
186206

187207
/// <summary>
188208
/// The GetCatalogue.

OpenAPI/LearningHub.Nhs.OpenApi/Controllers/CatalogueController.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,19 @@ public async Task<IActionResult> GetAllCataloguesAsync(string filterChar = null)
5050
return this.Ok(response);
5151
}
5252

53+
/// <summary>
54+
/// The GetCatalogue.
55+
/// </summary>
56+
/// <param name="searchTerm">The searchTerm.</param>
57+
/// <returns>The catalogues.</returns>
58+
[HttpGet]
59+
[Route("Catalogues")]
60+
public IActionResult GetCatalogues(string searchTerm)
61+
{
62+
var catalogues = this.catalogueService.GetCatalogues(searchTerm);
63+
return this.Ok(catalogues);
64+
}
65+
5366
/// <summary>
5467
/// The GetCatalogue.
5568
/// </summary>

0 commit comments

Comments
 (0)