Files
simrsx-be/internal/domain/satusehat-entities/patient/entity.go
T
2025-09-12 08:57:05 +07:00

93 lines
2.4 KiB
Go

package patient
type Patient struct {
ResourceType string `json:"resourceType"`
// Meta Meta `json:"meta"`
// Identifier []Identifier `json:"identifier"`
Active bool `json:"active"`
// Name []HumanName `json:"name"`
// Telecom []ContactPoint `json:"telecom"`
Gender string `json:"gender" gorm:"size:10"`
BirthDate string `json:"birthDate"`
DeceasedBool bool `json:"deceasedBoolean"`
// Address []Address `json:"address"`
// MaritalStatus MaritalStatus `json:"maritalStatus"`
MultipleBirthInteger int `json:"multipleBirthInteger"`
// Contact []Contact `json:"contact"`
// Communication []Communication `json:"communication"`
// Extension []Extension `json:"extension"`
}
type Meta struct {
Profile []string `json:"profile"`
}
type Identifier struct {
Use string `json:"use"`
System string `json:"system"`
Value string `json:"value"`
}
type HumanName struct {
Use string `json:"use"`
Text string `json:"text"`
}
type ContactPoint struct {
System string `json:"system"`
Value string `json:"value"`
Use string `json:"use"`
}
type Address struct {
Use string `json:"use"`
Line []string `json:"line"`
City string `json:"city"`
PostalCode string `json:"postalCode"`
Country string `json:"country"`
Extension []Extension `json:"extension"`
}
type Extension struct {
URL string `json:"url"`
Extension []SubExtension `json:"extension,omitempty"`
ValueCode string `json:"valueCode,omitempty"`
ValueAddress *Address `json:"valueAddress,omitempty"`
}
type SubExtension struct {
URL string `json:"url"`
ValueCode string `json:"valueCode"`
}
type MaritalStatus struct {
Coding []Coding `json:"coding"`
Text string `json:"text"`
}
type Coding struct {
System string `json:"system"`
Code string `json:"code"`
Display string `json:"display,omitempty"`
}
type Contact struct {
Relationship []Relationship `json:"relationship"`
Name HumanName `json:"name"`
Telecom []ContactPoint `json:"telecom"`
}
type Relationship struct {
Coding []Coding `json:"coding"`
}
type Communication struct {
Language Language `json:"language"`
Preferred bool `json:"preferred"`
}
type Language struct {
Coding []Coding `json:"coding"`
Text string `json:"text"`
}