66 lines
4.5 KiB
Go
66 lines
4.5 KiB
Go
package encounter
|
|
|
|
import (
|
|
_struct "api-poliklinik/pkg/models/struct"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
type Encounter struct {
|
|
ResourceType string `json:"resourceType,omitempty" bson:"resourceType,omitempty"`
|
|
ID primitive.ObjectID `json:"id,omitempty" bson:"_id,omitempty"`
|
|
Identifier []_struct.Identifier `json:"identifier,omitempty" bson:"identifier,omitempty"`
|
|
Status string `json:"status,omitempty" bson:"status,omitempty"`
|
|
Class _struct.CodeableConcept `json:"class,omitempty" bson:"class,omitempty"`
|
|
Type []_struct.CodeableConcept `json:"type,omitempty" bson:"type,omitempty"`
|
|
ServiceType _struct.CodeableConcept `json:"serviceType,omitempty" bson:"serviceType,omitempty"`
|
|
Priority _struct.CodeableConcept `json:"priority,omitempty" bson:"priority,omitempty"`
|
|
Subject _struct.Reference `json:"subject,omitempty" bson:"subject,omitempty"`
|
|
EpisodeOfCare []_struct.Reference `json:"episodeOfCare,omitempty" bson:"episodeOfCare,omitempty"`
|
|
BasedOn []_struct.Reference `json:"basedOn,omitempty" bson:"basedOn,omitempty"`
|
|
Participant []EncounterParticipant `json:"participant,omitempty" bson:"participant,omitempty"`
|
|
Appointment []_struct.Reference `json:"appointment,omitempty" bson:"appointment,omitempty"`
|
|
Period _struct.Period `json:"period,omitempty" bson:"period,omitempty"`
|
|
Length _struct.Quantity `json:"length,omitempty" bson:"length,omitempty"`
|
|
ReasonCode []_struct.CodeableConcept `json:"reasonCode,omitempty" bson:"reasonCode,omitempty"`
|
|
Diagnosis []EncounterDiagnosis `json:"diagnosis,omitempty" bson:"diagnosis,omitempty"`
|
|
Account []_struct.Reference `json:"account,omitempty" bson:"account,omitempty"`
|
|
Hospitalization Hospitalization `json:"hospitalization,omitempty" bson:"hospitalization,omitempty"`
|
|
Location []EncounterLocation `json:"location,omitempty" bson:"location,omitempty"`
|
|
ServiceProvider _struct.Reference `json:"serviceProvider,omitempty" bson:"serviceProvider,omitempty"`
|
|
PartOf _struct.Reference `json:"partOf,omitempty" bson:"partOf,omitempty"`
|
|
}
|
|
|
|
// EncounterParticipant mendefinisikan orang yang terlibat dalam pertemuan
|
|
type EncounterParticipant struct {
|
|
Type []_struct.CodeableConcept `json:"type,omitempty" bson:"type,omitempty"`
|
|
Period _struct.Period `json:"period,omitempty" bson:"period,omitempty"`
|
|
Individual _struct.Reference `json:"individual,omitempty" bson:"individual,omitempty"`
|
|
}
|
|
|
|
// EncounterDiagnosis mendefinisikan diagnosis yang terkait dengan pertemuan
|
|
type EncounterDiagnosis struct {
|
|
Condition _struct.Reference `json:"condition,omitempty" bson:"condition,omitempty"`
|
|
Use _struct.CodeableConcept `json:"use,omitempty" bson:"use,omitempty"`
|
|
Rank int `json:"rank,omitempty" bson:"rank,omitempty"`
|
|
}
|
|
|
|
// Hospitalization mendefinisikan detail tentang rawat inap yang terkait dengan pertemuan
|
|
type Hospitalization struct {
|
|
PreAdmissionIdentifier _struct.Identifier `json:"preAdmissionIdentifier,omitempty" bson:"preAdmissionIdentifier,omitempty"`
|
|
AdmitSource _struct.CodeableConcept `json:"admitSource,omitempty" bson:"admitSource,omitempty"`
|
|
ReAdmission _struct.CodeableConcept `json:"reAdmission,omitempty" bson:"reAdmission,omitempty"`
|
|
DietPreference []_struct.CodeableConcept `json:"dietPreference,omitempty" bson:"dietPreference,omitempty"`
|
|
SpecialCourtesy []_struct.CodeableConcept `json:"specialCourtesy,omitempty" bson:"specialCourtesy,omitempty"`
|
|
SpecialArrangement []_struct.CodeableConcept `json:"specialArrangement,omitempty" bson:"specialArrangement,omitempty"`
|
|
Destination _struct.Reference `json:"destination,omitempty" bson:"destination,omitempty"`
|
|
DischargeDisposition _struct.CodeableConcept `json:"dischargeDisposition,omitempty" bson:"dischargeDisposition,omitempty"`
|
|
}
|
|
|
|
// EncounterLocation mendefinisikan lokasi di mana pertemuan terjadi
|
|
type EncounterLocation struct {
|
|
Location _struct.Reference `json:"location,omitempty" bson:"location,omitempty"`
|
|
Status string `json:"status,omitempty" bson:"status,omitempty"`
|
|
PhysicalType _struct.CodeableConcept `json:"physicalType,omitempty" bson:"physicalType,omitempty"`
|
|
Period _struct.Period `json:"period,omitempty" bson:"period,omitempty"`
|
|
}
|