...
Doctor exists in GMC and TIS (and gmc details match up) - this works fine ✅
Doctor exists in GMC only - an error is thrown when trying to fetch details for the non existent doctor in TIS ⚠️
Doctor exists in TIS only - an error is thrown when trying to fetch notes for the non-existent doctor in reval (and would also be thrown when fetching connection history) ⚠️
Current Operation
Two connection URLS are called on page load
/api/trainee/{gmcId}
- This appears to populate the sidebar/api/connection/{gmcId}
Proposal 1
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Proposal 2
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Proposal 3
Code Block |
---|
from("direct:trainee")
.multicast(AGGREGATOR)
.parallelProcessing()
.to("direct:trainee-details")
.to("direct:traineenotes-get")
.to(// gmc doctor endpoint)
from("direct:trainee-details")
.setHeader(OIDC_ACCESS_TOKEN_HEADER).method(keycloakBean, GET_TOKEN_METHOD)
.setHeader(AggregationKey.HEADER).constant("programme")
.toD(serviceUrl + API_TRAINEE);
from("direct:traineenotes-get")
.setHeader(AggregationKey.HEADER).constant("notes")
.toD(coreServiceUrl + API_TRAINEENOTES);
from(/*"direct:gmcdoctorendpoint"*/)
.setHeader(AggregationKey.HEADER).constant("doctor")
.toD(coreServiceUrl /*gmcDoctorEndpoint*/); |
Drawio | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|