Skip to content

Commit

Permalink
feat: list patient conditions
Browse files Browse the repository at this point in the history
  • Loading branch information
Muchogoc committed Mar 27, 2023
1 parent 87dc3c1 commit f702051
Show file tree
Hide file tree
Showing 10 changed files with 391 additions and 38 deletions.
1 change: 0 additions & 1 deletion pkg/clinical/application/dto/input.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ type ConditionInput struct {
Code string `json:"condition"`
System string `json:"system"`
Status ConditionStatus `json:"status"`
PatientID string `json:"patientID"`
EncounterID string `json:"encounterID"`
Note string `json:"note"`
OnsetDate *scalarutils.Date `json:"onsetDate"`
Expand Down
5 changes: 2 additions & 3 deletions pkg/clinical/domain/condition.go
Original file line number Diff line number Diff line change
Expand Up @@ -238,9 +238,8 @@ type FHIRConditionStageInput struct {

// FHIRConditionRelayConnection is a Relay connection for Condition
type FHIRConditionRelayConnection struct {
Edges []*FHIRConditionRelayEdge `json:"edges,omitempty"`

PageInfo *firebasetools.PageInfo `json:"pageInfo,omitempty"`
Edges []*FHIRConditionRelayEdge `json:"edges,omitempty"`
PageInfo *firebasetools.PageInfo `json:"pageInfo,omitempty"`
}

// FHIRConditionRelayEdge is a Relay edge for Condition
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -391,7 +391,50 @@ func NewFHIRMock() *FHIRMock {
return true, nil
},
MockSearchFHIRConditionFn: func(ctx context.Context, params map[string]interface{}, tenant dto.TenantIdentifiers) (*domain.FHIRConditionRelayConnection, error) {
return &domain.FHIRConditionRelayConnection{}, nil
id := gofakeit.UUID()
statusSystem := scalarutils.URI("http://terminology.hl7.org/CodeSystem/condition-clinical")
status := "inactive"
uri := scalarutils.URI("1234567345")

return &domain.FHIRConditionRelayConnection{
Edges: []*domain.FHIRConditionRelayEdge{
{
Node: &domain.FHIRCondition{
ID: &id,
Text: &domain.FHIRNarrative{},
Identifier: []*domain.FHIRIdentifier{},
ClinicalStatus: &domain.FHIRCodeableConcept{
Coding: []*domain.FHIRCoding{
{
System: &statusSystem,
Code: scalarutils.Code(string(status)),
Display: string(status),
},
},
Text: string(status),
},
Code: &domain.FHIRCodeableConcept{
Coding: []*domain.FHIRCoding{
{
System: &uri,
Code: scalarutils.Code("1234"),
Display: "1234567",
},
},
Text: "1234",
},
OnsetDateTime: &scalarutils.Date{},
RecordedDate: &scalarutils.Date{},
Subject: &domain.FHIRReference{
ID: &id,
},
Encounter: &domain.FHIRReference{
ID: &id,
},
},
},
},
}, nil
},
MockUpdateFHIRConditionFn: func(ctx context.Context, input domain.FHIRConditionInput) (*domain.FHIRConditionRelayPayload, error) {
return &domain.FHIRConditionRelayPayload{}, nil
Expand Down
3 changes: 3 additions & 0 deletions pkg/clinical/presentation/graph/clinical.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ extend type Query {

getEpisodeOfCare(id: ID!): EpisodeOfCare

# Conditions
listPatientConditions(patientID: ID!): [Condition!]!

# Encounter
listPatientEncounters(patientID: String!): [Encounter!]!

Expand Down
16 changes: 16 additions & 0 deletions pkg/clinical/presentation/graph/clinical.resolvers.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

187 changes: 177 additions & 10 deletions pkg/clinical/presentation/graph/generated/generated.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion pkg/clinical/presentation/graph/inputs.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ input ConditionInput {
code: String!
system: String!
status: ConditionStatus!
patientID: String!
encounterID: String!

onsetDate: Date
Expand Down

0 comments on commit f702051

Please sign in to comment.