update mappping

This commit is contained in:
meninjar
2026-08-04 11:46:50 +00:00
parent b8e219868d
commit ccd5a0974d
4 changed files with 21 additions and 25 deletions

No files matched your search

@@ -27,7 +27,7 @@ type DiagnosticReportRequest struct {
PerformerID string `json:"performer_id,omitempty"`
PerformerName string `json:"performer_name,omitempty"`
ResultObservationIDs []string `json:"result_observation_ids,omitempty"`
ResultObservationIDs string `json:"result_observation_ids,omitempty"`
ResultObservationSystem []string `json:"result_observation_system,omitempty"`
ResultObservationCode []string `json:"result_observation_code,omitempty"`
ResultObservationDisplay []string `json:"result_observation_display,omitempty"`
@@ -37,7 +37,7 @@ type DiagnosticReportRequest struct {
SpecimenCode []string `json:"specimen_code,omitempty"`
SpecimenDisplay []string `json:"specimen_display,omitempty"`
BasedOnIDs []string `json:"based_on_service_request_ids,omitempty"`
BasedOnIDs string `json:"based_on_service_request_ids,omitempty"`
BasedOnSystem []string `json:"based_on_service_request_system,omitempty"`
BasedOnCode []string `json:"based_on_service_request_code,omitempty"`
BasedOnDisplay []string `json:"based_on_service_request_display,omitempty"`
@@ -73,11 +73,9 @@ func MapRequestToFHIR(req DiagnosticReportRequest) satusehat.FHIRPayload {
payload.Set("performer", []map[string]interface{}{perf})
}
if len(req.ResultObservationIDs) > 0 {
results := make([]map[string]interface{}, 0, len(req.ResultObservationIDs))
for _, id := range req.ResultObservationIDs {
results = append(results, map[string]interface{}{"reference": "Observation/" + id})
}
if req.ResultObservationIDs != "" {
results := make([]map[string]interface{}, 0, 1)
results = append(results, map[string]interface{}{"reference": "Observation/" + req.ResultObservationIDs})
payload.Set("result", results)
}
if len(req.SpecimenIDs) > 0 {
@@ -87,11 +85,9 @@ func MapRequestToFHIR(req DiagnosticReportRequest) satusehat.FHIRPayload {
}
payload.Set("specimen", specs)
}
if len(req.BasedOnIDs) > 0 {
basedOns := make([]map[string]interface{}, 0, len(req.BasedOnIDs))
for _, id := range req.BasedOnIDs {
basedOns = append(basedOns, map[string]interface{}{"reference": "ServiceRequest/" + id})
}
if req.BasedOnIDs != "" {
basedOns := make([]map[string]interface{}, 0, 1)
basedOns = append(basedOns, map[string]interface{}{"reference": "ServiceRequest/" + req.BasedOnIDs})
payload.Set("basedOn", basedOns)
}
if len(req.ImagingStudyIDs) > 0 {