feature: FHIR R4 Inbound Facade

This commit is contained in:
voltsrage
2026-06-21 13:53:38 +08:00
parent 9f96f54007
commit a43db52813
42 changed files with 2873 additions and 3 deletions
+58
View File
@@ -0,0 +1,58 @@
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="$(cd "${SCRIPT_DIR}/.." && pwd)"
echo "=== Phase 30 verification ==="
echo "1. Integration tests"
dotnet test "${ROOT_DIR}/VigilCareClinicalAPI.Tests" \
--filter "FullyQualifiedName~FhirIngest" \
--no-restore
echo "2. Manual FHIR checks (requires running stack)"
BASE_URL="${BASE_URL:-http://localhost:5270}"
API_KEY="${API_KEY:-dev-integration-key-change-in-production}"
fhir_post() {
local path="$1" body="$2"
curl -sf -X POST "${BASE_URL}${path}" \
-H "Content-Type: application/fhir+json" \
-H "X-Api-Key: ${API_KEY}" \
-d "${body}"
}
echo "2a. CapabilityStatement"
curl -sf "${BASE_URL}/fhir/R4/metadata" -H "X-Api-Key: ${API_KEY}" | jq -e '.resourceType == "CapabilityStatement"'
echo "2b. Admit transaction bundle"
fhir_post "/fhir/R4" '{
"resourceType": "Bundle",
"type": "transaction",
"entry": [
{
"resource": {
"resourceType": "Patient",
"identifier": [{ "system": "http://hospital.example/mrn", "value": "MRN-VERIFY-001" }],
"name": [{ "family": "Verify", "given": ["Phase30"] }],
"birthDate": "1975-06-01",
"gender": "male"
},
"request": { "method": "POST", "url": "Patient" }
},
{
"resource": {
"resourceType": "Encounter",
"status": "in-progress",
"class": { "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode", "code": "IMP" },
"identifier": [{ "system": "http://hospital.example/visit", "value": "VISIT-VERIFY-001" }],
"subject": { "identifier": { "system": "http://hospital.example/mrn", "value": "MRN-VERIFY-001" } },
"participant": [{ "individual": { "display": "Dr. Verify" } }]
},
"request": { "method": "POST", "url": "Encounter" }
}
]
}' | jq -e '.type == "transaction-response"'
echo "Phase 30 verification complete."