318 lines
16 KiB
Go
318 lines
16 KiB
Go
// Package clinical mostly about SOAPI
|
|
package clinical
|
|
|
|
type (
|
|
SubjectCode string
|
|
ObjectCode string
|
|
AssessmentCode string
|
|
PlanCode string
|
|
InstructionCode string
|
|
HeadToToeCode string
|
|
McuUrgencyLevelCode string
|
|
McuScopeCode string
|
|
SoapiTypeCode string
|
|
MedicalActionTypeCode string
|
|
VehicleTypeCode string
|
|
GeneralEduCode string
|
|
SpecialEduCode string
|
|
EduAssessmentCode string
|
|
AbilityCode string
|
|
WillCode string
|
|
MedObstacleCode string
|
|
LearnMethodCode string
|
|
LangClassCode string
|
|
TranslatorSrcCode string
|
|
ScreeningFormTypeCode string
|
|
)
|
|
|
|
const (
|
|
SCDetail SubjectCode = "detail" // Detail
|
|
SCPrimaryComplain SubjectCode = "pri-complain" // Keluhan Utama
|
|
SCSecComplain SubjectCode = "sec-complain" // Secondary Complaint
|
|
SCCurrentDiseaseHistory SubjectCode = "cur-disea-hist" // Current Disease History
|
|
SCPastDiseaseHistory SubjectCode = "pas-disea-hist" // Past Disease History
|
|
SCFamilyDiseaseHistory SubjectCode = "fam-disea-hist" // Family Disease History
|
|
SCAllergyHistory SubjectCode = "alg-hist" // Allergic History
|
|
SCAllergyReaction SubjectCode = "alg-react" // Allergic Reaction
|
|
SCMedicationHistory SubjectCode = "med-hist" // Medication History
|
|
SCBloodType SubjectCode = "blood-type" // Blood Type
|
|
|
|
Detail ObjectCode = "detail" // Detail
|
|
OCConsciousnessLevel ObjectCode = "consc-level" // Tingkat Kesadaran
|
|
OCConsciousnessLevelDet ObjectCode = "consc-level-det" // Detail Tingkat Kesadaran
|
|
OCSystolicBloodPressure ObjectCode = "syst-bp" // Tekanan Darah Systolic
|
|
OCDiastolicBloodPressure ObjectCode = "diast-bp" // Tekanan Darah Diastolic
|
|
OCPulse ObjectCode = "pulse" // Nadi
|
|
OCRespiratoryRate ObjectCode = "resp-rate" // Pernafasan
|
|
OCHeartRate ObjectCode = "hear-rt" // Detak Jantung
|
|
OCNeuroCranialis ObjectCode = "neuro-cranialis" // Neurologist Cranialist
|
|
OCSensoris ObjectCode = "sensoris" // Sensoris
|
|
OCReflectFisio ObjectCode = "reflect-fisio" // Refleks Fisiologi
|
|
OCReflectPato ObjectCode = "reflect-pato" // Refleks Patologi
|
|
OCAutonomNeuron ObjectCode = "autonom-neuron" // Saraf Otonom
|
|
OCNeckRom ObjectCode = "neck-rom" // ROM Leher
|
|
OCBodyRom ObjectCode = "body-rom" // ROM Batang Tubuh
|
|
OCAgaRom ObjectCode = "aga-rom" // ROM AGA
|
|
OCAgbRom ObjectCode = "agb-rom" // ROM AGB
|
|
OCNeckMmt ObjectCode = "neck-mmt" // MMT Leher
|
|
OCBodyMmt ObjectCode = "body-mmt" // MMT Batang Tubuh
|
|
OCAgaMmt ObjectCode = "aga-mmt" // MMT AGA
|
|
OCAgbMmt ObjectCode = "agb-mmt" // MMT AGB
|
|
OCLocalis ObjectCode = "localis" // Status Lokalis
|
|
OCMedicalTrouble ObjectCode = "medical-trouble" // Masalah Medis
|
|
OCRehabMedicTrouble ObjectCode = "rehab-medic-trouble" // Masalah Rehab Medik
|
|
OCTemperature ObjectCode = "temp" // Suhu
|
|
OCSpO2 ObjectCode = "spo2" // SpO2
|
|
OCWeight ObjectCode = "weight" // Berat Badan
|
|
OCHeight ObjectCode = "height" // Tinggi Badan
|
|
OCHeadToToe ObjectCode = "head-to-toe" // Kepala Sampai Kaki
|
|
|
|
ACDetail AssessmentCode = "detail" // Detail
|
|
ACEarlyDiag AssessmentCode = "early-diag" // Diagnosis Awal
|
|
ACLateDiag AssessmentCode = "late-diag" // Diagnosis Akhir
|
|
ACSecDiag AssessmentCode = "sec-diag" // Diagnosis Sekunder
|
|
ACEarlyMedDiag AssessmentCode = "early-med-diag" // Diagnosis Medis Awal
|
|
ACLateMedDiag AssessmentCode = "late-med-diag" // Diagnosis Medis Akhir
|
|
ACSecMedDiag AssessmentCode = "sec-med-diag" // Diagnosis Medis Sekunder
|
|
ACEarlyFuncDiag AssessmentCode = "early-func-diag" // Diagnosis Fungsi Awal
|
|
ACLateFuncDiag AssessmentCode = "late-func-diag" // Diagnosis Fungsi Akhir
|
|
ACSecFuncDiag AssessmentCode = "sec-func-diag" // Diagnosis Fungsi Sekunder
|
|
|
|
PCPlan PlanCode = "plan" // Rencana
|
|
|
|
ICDetail InstructionCode = "detail" // Detail Instruksi
|
|
ICMedAct InstructionCode = "medical-act" // Tindakan Medis
|
|
ICSupExam InstructionCode = "supporting-exam" // Pemeriksaan Penunjang
|
|
ICTherapy InstructionCode = "therapy" // Terapi
|
|
ICMedication InstructionCode = "medication" // Obat
|
|
ICMaterial InstructionCode = "material" // BMHP
|
|
ICREhabProg InstructionCode = "rehab-program" // Program Rehab
|
|
ICPhyMod InstructionCode = "physic-modal" // Modalitas Fisik
|
|
ICExcercise InstructionCode = "exercise" // Latihan
|
|
ICOrtPro InstructionCode = "ortes-protesa" // Ortesa Protesa
|
|
ICEducation InstructionCode = "education" // Edukasi
|
|
ICOther InstructionCode = "other" // Lain-lain
|
|
|
|
HTTHead HeadToToeCode = "head"
|
|
HTTEye HeadToToeCode = "eye"
|
|
HTTEar HeadToToeCode = "ear"
|
|
HTTNose HeadToToeCode = "nose"
|
|
HTTMouthThroat HeadToToeCode = "mouth-throat"
|
|
HTTHeadOthers HeadToToeCode = "head-others"
|
|
HTTThorax HeadToToeCode = "thorax"
|
|
HTTHeart HeadToToeCode = "heart"
|
|
HTTLung HeadToToeCode = "lung"
|
|
HTTAbdomen HeadToToeCode = "abdomen"
|
|
HTTLiver HeadToToeCode = "liver"
|
|
HTTBack HeadToToeCode = "back"
|
|
HTTEkstremitas HeadToToeCode = "ekstremitas"
|
|
HTTGender HeadToToeCode = "gender"
|
|
HTTRectum HeadToToeCode = "rectum"
|
|
HTTNeuron HeadToToeCode = "neuron"
|
|
HTTBodyOthers HeadToToeCode = "body-others"
|
|
|
|
MULCCITO McuUrgencyLevelCode = "cito" // CITO
|
|
MULCCITOIGD McuUrgencyLevelCode = "cito-igd" // CITO IGD
|
|
MULCPonek McuUrgencyLevelCode = "ponek" // PONEK
|
|
MULCBG McuUrgencyLevelCode = "blood-gas" // Analisa Gas Darah
|
|
MULCPF McuUrgencyLevelCode = "priority-form" // Form Prioritas
|
|
MULCRT McuUrgencyLevelCode = "routine" // Pemeriksaan Rutin
|
|
|
|
STCEarlyNurse SoapiTypeCode = "early-nursery" // Kajian Awal Keperawatan
|
|
STCEEarlyMedic SoapiTypeCode = "early-medic" // Kajian Awal Rehab Medis
|
|
STCEarlyRehab SoapiTypeCode = "early-rehab" // Kajian Awal Rehab Medik
|
|
STCFunc SoapiTypeCode = "function" // Assessment Fungsi
|
|
STCProgress SoapiTypeCode = "progress" // CPPT
|
|
STCDevRecord SoapiTypeCode = "dev-record" // Catatan Perkembangan
|
|
STCKfrAdm SoapiTypeCode = "kfr-adm" // soapi untuk kfr
|
|
STCKfrSeries SoapiTypeCode = "kfr-series" // soapi untuk kfr
|
|
|
|
MATCChemo MedicalActionTypeCode = "chemo"
|
|
MATCHemo MedicalActionTypeCode = "hemo"
|
|
MATCThalasemia MedicalActionTypeCode = "thalasemia"
|
|
MATCEchocardio MedicalActionTypeCode = "echocardio"
|
|
MATCSpirometry MedicalActionTypeCode = "spirometry"
|
|
|
|
VTCAmbulance VehicleTypeCode = "ambulance" // Ambulans
|
|
VTCTransport VehicleTypeCode = "transport" // Transport
|
|
VTCHearse VehicleTypeCode = "hearse" // Jenazah
|
|
|
|
GECRightObg GeneralEduCode = "right-obg" // Hak dan kewajiban pasien dan keluarga
|
|
GECGeneralConsent GeneralEduCode = "general-consent" // General Consent
|
|
GECService GeneralEduCode = "service" // Pelayanan yang disediakan (jam pelayanan, akses pelayanan dan proses pelayanan)
|
|
GECAltCareSrc GeneralEduCode = "alt-care-src" // Sumber alternatif asuhan di tempat lain/faskes lain
|
|
GECHomePlan GeneralEduCode = "home-plan" // Rencana tindakan di rumah
|
|
GECHomeCare GeneralEduCode = "home-care" // Kebutuhan perawatan di rumah
|
|
GECOrientation GeneralEduCode = "orientation" // Orientasi ruangan
|
|
GECFallRiskPrevention GeneralEduCode = "fall-risk-prevention" // Pencegahan risiko jatuh
|
|
GECAltCare GeneralEduCode = "alt-care" // Alternatif pelayanan
|
|
GECActDelay GeneralEduCode = "act-delay" // Penundaan Tindakan
|
|
GECOthers GeneralEduCode = "others" // Lain - lain
|
|
|
|
SECDiseaseDiagDev SpecialEduCode = "disease-diag-dev" // Diagnosa penyakit dan perkembangannya
|
|
SECSafeMedUsage SpecialEduCode = "safe-med-usage" // Penggunaan obat yang aman,
|
|
SECSideEffect SpecialEduCode = "side-effect" // Efek samping dan reaksi obat
|
|
SECDiet SpecialEduCode = "diet" // Diet/Nutrisi
|
|
SECPainMgmt SpecialEduCode = "pain-mgmt" // Managemen nyeri
|
|
SECMedicalEqUsage SpecialEduCode = "medical-eq-usage" // Penggunaan Peralatan Medis
|
|
SECRehabTechnique SpecialEduCode = "rehab-technique" // Teknik Rehabilitasi
|
|
SECPreventionAct SpecialEduCode = "prevention-act" // Tindakan pencegahan (cuci tangan, pemasangan gelang)
|
|
|
|
EACLearnAbility EduAssessmentCode = "learn-ability" // Kemampuan Belajar
|
|
EACLearnWill EduAssessmentCode = "learn-will" // Kemauan Belajar
|
|
EACObstacle EduAssessmentCode = "obstacle" // Hambatan
|
|
EACLearnMethod EduAssessmentCode = "learn-method" // Metode Pembelajaran
|
|
EACLang EduAssessmentCode = "lang" // Bahasa
|
|
EACLangObstacle EduAssessmentCode = "lang-obstacle" // Hambatan Bahasa
|
|
EACBelief EduAssessmentCode = "belief" // Keyakinan
|
|
|
|
ACAble AbilityCode = "able" // Mampu
|
|
ACNotAble AbilityCode = "not-able" // Tidak Mampu
|
|
|
|
WCReady WillCode = "ready" // Siap
|
|
WCInterested WillCode = "interested" // Tertarik
|
|
WCNotInterested WillCode = "not-interested" // Tidak Tertarik
|
|
|
|
MOCHearing MedObstacleCode = "hearing" // Pendengaran
|
|
MOCSight MedObstacleCode = "sight" // Penglihatan
|
|
MOCPhysical MedObstacleCode = "physical" // Fisik
|
|
MOCEmotional MedObstacleCode = "emotional" // Emosional
|
|
MOCCognitif MedObstacleCode = "cognitif" // Kognitif
|
|
|
|
LMCDemo LearnMethodCode = "demo" // Demonstrasi
|
|
LMCDiscussLeaflet LearnMethodCode = "discuss-leaflet" // Diskusi Leaflet
|
|
|
|
LCCInd LangClassCode = "ind" // Indonesia
|
|
LCCRegion LangClassCode = "region" // Daerah
|
|
LCCForeign LangClassCode = "foreign" // Asing
|
|
|
|
TSCTeam TranslatorSrcCode = "team" // Tim Penerjemah
|
|
TSCFamily TranslatorSrcCode = "family" // Keluarga
|
|
|
|
SFTCA ScreeningFormTypeCode = "form-a" // Formu A
|
|
SFTCB ScreeningFormTypeCode = "form-b" // Formu B
|
|
)
|
|
|
|
type Soapi struct {
|
|
Subject SubjectSection `json:"subject"`
|
|
Object ObjectSection `json:"object"`
|
|
Assessment AssessmentSection `json:"assessment"`
|
|
Plan string `json:"plan"`
|
|
Instruction InstructionSection `json:"instruction"`
|
|
}
|
|
|
|
// ---------------- SUBJECT ----------------
|
|
type SubjectSection struct {
|
|
Detail string `json:"detail,omitempty"`
|
|
PrimComplain string `json:"prim-compl,omitempty"`
|
|
SecComplainQ string `json:"sec-compl,omitempty"`
|
|
PrimaryComplain string `json:"pri-complain,omitempty"`
|
|
SecondaryComplain string `json:"sec-complain,omitempty"`
|
|
CurrentDiseaseHistory string `json:"cur-disea-hist,omitempty"`
|
|
PastDiseaseHistory string `json:"pas-disea-hist,omitempty"`
|
|
FamilyDiseaseHistory string `json:"fam-disea-hist,omitempty"`
|
|
AllergyHistory string `json:"alg-hist,omitempty"`
|
|
AllergyReaction string `json:"alg-react,omitempty"`
|
|
MedicationHistory string `json:"med-hist,omitempty"`
|
|
BloodType string `json:"blood-type,omitempty"`
|
|
}
|
|
|
|
// ---------------- OBJECT ----------------
|
|
type ObjectSection struct {
|
|
Detail string `json:"detail,omitempty"`
|
|
ConsciousnessLevel string `json:"consc-level,omitempty"`
|
|
ConsciousnessLevelDet string `json:"consc-level-det,omitempty"`
|
|
SystolicBloodPressure string `json:"syst-bp,omitempty"`
|
|
DiastolicBloodPressure string `json:"diast-bp,omitempty"`
|
|
Pulse string `json:"pulse,omitempty"`
|
|
RespiratoryRate string `json:"resp-rate,omitempty"`
|
|
HeartRate string `json:"hear-rt,omitempty"`
|
|
NeuroCranialis string `json:"neuro-cranialis,omitempty"`
|
|
Sensoris string `json:"sensoris,omitempty"`
|
|
ReflectFisio string `json:"reflect-fisio,omitempty"`
|
|
ReflectPato string `json:"reflect-pato,omitempty"`
|
|
AutonomNeuron string `json:"autonom-neuron,omitempty"`
|
|
NeckRom string `json:"neck-rom,omitempty"`
|
|
BodyRom string `json:"body-rom,omitempty"`
|
|
AgaRom string `json:"aga-rom,omitempty"`
|
|
AgbRom string `json:"agb-rom,omitempty"`
|
|
NeckMmt string `json:"neck-mmt,omitempty"`
|
|
BodyMmt string `json:"body-mmt,omitempty"`
|
|
AgaMmt string `json:"aga-mmt,omitempty"`
|
|
AgbMmt string `json:"agb-mmt,omitempty"`
|
|
Localis string `json:"localis,omitempty"`
|
|
MedicalTrouble string `json:"medical-trouble,omitempty"`
|
|
RehabMedicTrouble string `json:"rehab-medic-trouble,omitempty"`
|
|
Temperature string `json:"temp,omitempty"`
|
|
SpO2 string `json:"spo2,omitempty"`
|
|
Weight string `json:"weight,omitempty"`
|
|
Height string `json:"height,omitempty"`
|
|
HeadToToe HeadToToe `json:"head-to-toe,omitempty"`
|
|
}
|
|
|
|
// ---------------- ASSESSMENT ----------------
|
|
type AssessmentSection struct {
|
|
Detail string `json:"detail,omitempty"`
|
|
EarlyDiagnosis DiagnosisDetail `json:"early-diag,omitempty"`
|
|
LateDiagnosis DiagnosisDetail `json:"late-diag,omitempty"`
|
|
SecondaryDiag DiagnosisDetail `json:"sec-diag,omitempty"`
|
|
EarlyDiagnosisMed DiagnosisDetail `json:"early-med-diag,omitempty"`
|
|
LateDiagnosisMed DiagnosisDetail `json:"late-med-diag,omitempty"`
|
|
SecondaryDiagnosisMed DiagnosisDetail `json:"sec-med-diag,omitempty"`
|
|
EarlyDiagnosisFunc DiagnosisDetail `json:"early-func-diag,omitempty"`
|
|
LateDiagnosisFunc DiagnosisDetail `json:"late-func-diag,omitempty"`
|
|
SecondaryDiagnosisFunc DiagnosisDetail `json:"sec-func-diag,omitempty"`
|
|
}
|
|
|
|
// nested object {note, codes}
|
|
type DiagnosisDetail struct {
|
|
Note string `json:"note,omitempty"`
|
|
Codes []CodeWithName `json:"codes,omitempty"`
|
|
}
|
|
|
|
// ---------------- INSTRUCTION ----------------
|
|
type InstructionSection struct {
|
|
Detail string `json:"detail,omitempty"`
|
|
MedicalAction CodesWithNote `json:"medical-act,omitempty"`
|
|
SupportingExam []CodeWithName `json:"supporting-exam,omitempty"`
|
|
Therapy string `json:"therapy,omitempty"`
|
|
Medication []CodeWithName `json:"medication,omitempty"`
|
|
Material []CodeWithName `json:"material,omitempty"`
|
|
RehabProgram string `json:"rehab-program,omitempty"`
|
|
PhysicModal string `json:"physic-modal,omitempty"`
|
|
Exercise string `json:"exercise,omitempty"`
|
|
OrtesProsthesis string `json:"ortes-protesa,omitempty"`
|
|
Education string `json:"education,omitempty"`
|
|
Other string `json:"other,omitempty"`
|
|
}
|
|
|
|
// ---------------- CODES ----------------
|
|
type CodeWithName struct {
|
|
Code string `json:"code,omitempty"`
|
|
Name string `json:"name,omitempty"`
|
|
}
|
|
type CodesWithNote struct {
|
|
Note string `json:"note,omitempty"`
|
|
Codes []CodeWithName `json:"codes,omitempty"`
|
|
}
|
|
|
|
type HeadToToe struct {
|
|
Head string `json:"head,omitempty"`
|
|
Eye string `json:"eye,omitempty"`
|
|
Ear string `json:"ear,omitempty"`
|
|
Nose string `json:"nose,omitempty"`
|
|
MouthThroat string `json:"mouth-throat,omitempty"`
|
|
HeadOthers string `json:"head-others,omitempty"`
|
|
Thorax string `json:"thorax,omitempty"`
|
|
Heart string `json:"heart,omitempty"`
|
|
Lung string `json:"lung,omitempty"`
|
|
Abdomen string `json:"abdomen,omitempty"`
|
|
Liver string `json:"liver,omitempty"`
|
|
Back string `json:"back,omitempty"`
|
|
Ekstremitas string `json:"ekstremitas,omitempty"`
|
|
Gender string `json:"gender,omitempty"`
|
|
Rectum string `json:"rectum,omitempty"`
|
|
Neuron string `json:"neuron,omitempty"`
|
|
BodyOthers string `json:"body-others,omitempty"`
|
|
}
|