update ignore
This commit is contained in:
No files matched your search
@@ -0,0 +1,45 @@
|
||||
package imagingstudy
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"time"
|
||||
|
||||
"service/pkg/logger"
|
||||
)
|
||||
|
||||
// MapToInternalAPI memetakan data gabungan ke payload API Internal SatuSehat
|
||||
func MapToInternalAPI(dbData *ImagingStudyDB, orgID string) map[string]interface{} {
|
||||
waktu := logger.LocalNow()
|
||||
if dbData.StartedDate.Valid {
|
||||
waktu = dbData.StartedDate.Time
|
||||
}
|
||||
|
||||
procedureCode := dbData.Modality.String
|
||||
if procedureCode == "" {
|
||||
procedureCode = "DX" // Default ke "DX" jika modality kosong
|
||||
}
|
||||
|
||||
payload := map[string]interface{}{
|
||||
"organization_id": orgID,
|
||||
"accession_number": dbData.AccessionNumber.String,
|
||||
"service_request_id": dbData.ServiceRequestID.String,
|
||||
"patient_id": dbData.PatientIHS.String,
|
||||
"encounter_id": dbData.EncounterIHS.String,
|
||||
"status": "available",
|
||||
"started": waktu.Format(time.RFC3339),
|
||||
"procedure_code": procedureCode,
|
||||
}
|
||||
return payload
|
||||
}
|
||||
|
||||
func MapToSyncLog(id string, fhirID string, reqPayload interface{}, respBody []byte, status string, errMsg string) SyncLog {
|
||||
reqBytes, _ := json.Marshal(reqPayload)
|
||||
return SyncLog{
|
||||
ImagingStudyID: id,
|
||||
SatuSehatID: fhirID,
|
||||
RequestPayload: string(reqBytes),
|
||||
ResponsePayload: string(respBody),
|
||||
Status: status,
|
||||
ErrorMessage: errMsg,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user