Skip to content

Commit 8ba325a

Browse files
authored
Merge pull request #1579 from bcgov/stories/ecer-5427new
ECER-5427: BaseURL Changes for psp portal invite type
2 parents a747a76 + 521ca6c commit 8ba325a

File tree

5 files changed

+12
-2
lines changed

5 files changed

+12
-2
lines changed

src/ECER.Clients.Api/appsettings.Development.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
},
2828
"PortalApp": {
2929
"BaseUrl": "dev-ecer-registry-portal.apps.silver.devops.gov.bc.ca",
30+
"PspBaseUrl": "[dev psp base url]",
3031
"ReferenceVerificationRoute": "verify"
3132
}
3233
}

src/ECER.Clients.Api/appsettings.Test.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
},
2727
"PortalApp": {
2828
"BaseUrl": "test-ecer-registry-portal.apps.silver.devops.gov.bc.ca",
29+
"PspBaseUrl": "[test psp base url]",
2930
"ReferenceVerificationRoute": "verify"
3031
}
3132
}

src/ECER.Clients.Api/appsettings.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
},
3131
"PortalApp": {
3232
"BaseUrl": "ecer-registry-portal.apps.silver.devops.gov.bc.ca",
33+
"PspBaseUrl": "[psp base url]",
3334
"ReferenceVerificationRoute": "verify"
3435
},
3536
"fileScanner": {

src/ECER.Managers.Admin/Configurer.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ public void Configure([NotNull] ConfigurationContext configurationContext)
2121
public record PortalAppSettings : IOptions<PortalAppSettings>
2222
{
2323
public string BaseUrl { get; set; } = string.Empty;
24+
public string PspBaseUrl { get; set; } = string.Empty;
2425
public string ReferenceVerificationRoute { get; set; } = string.Empty;
2526
public PortalAppSettings Value => this;
2627
}

src/ECER.Managers.Admin/InviteLinkHandlers.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,24 @@
33
using ECER.Managers.Admin.Contract.PortalInvitations;
44
using MediatR;
55
using Microsoft.Extensions.Options;
6+
using ECER.Resources.Documents.PortalInvitations;
67

78
namespace ECER.Managers.Admin;
89

9-
public class InviteLinkHandlers(IPortalInvitationTransformationEngine transformationEngine, IOptions<PortalAppSettings> portalAppSettings)
10+
public class InviteLinkHandlers(IPortalInvitationTransformationEngine transformationEngine, IOptions<PortalAppSettings> portalAppSettings, IPortalInvitationRepository portalInvitationRepository)
1011
: IRequestHandler<GenerateInviteLinkCommand, GenerateInviteLinkCommandResponse>
1112
{
1213
public async Task<GenerateInviteLinkCommandResponse> Handle(GenerateInviteLinkCommand request, CancellationToken cancellationToken)
1314
{
1415
ArgumentNullException.ThrowIfNull(request);
1516

1617
var response = await transformationEngine.Transform(new EncryptInviteTokenRequest(request.PortalInvitation, request.ValidDays))! as EncryptInviteTokenResponse ?? throw new InvalidCastException("Invalid response type");
17-
string verificationLink = $"{portalAppSettings.Value.BaseUrl}/{portalAppSettings.Value.ReferenceVerificationRoute}/{response.VerificationToken}";
18+
var invitation = await portalInvitationRepository.Query(new PortalInvitationQuery(request.PortalInvitation), cancellationToken);
19+
var isPsp = invitation.InviteType == InviteType.PSIProgramRepresentative;
20+
var baseUrl = isPsp && !string.IsNullOrWhiteSpace(portalAppSettings.Value.PspBaseUrl)
21+
? portalAppSettings.Value.PspBaseUrl
22+
: portalAppSettings.Value.BaseUrl;
23+
string verificationLink = $"{baseUrl}/{portalAppSettings.Value.ReferenceVerificationRoute}/{response.VerificationToken}";
1824
return new GenerateInviteLinkCommandResponse(response.PortalInvitation, verificationLink);
1925
}
2026
}

0 commit comments

Comments
 (0)