removed the unnecessary/unused default "type" column. Correctly allowed the Type column defined in search-parameters.json to be available on multiple (5) resource types.

This commit is contained in:
Jason Kulatunga 2024-02-24 17:12:14 -08:00
parent 492fc27de3
commit 4255fa64b2
No known key found for this signature in database
58 changed files with 209 additions and 227 deletions

View File

@ -50,8 +50,8 @@ type FhirAccount struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// E.g. patient, expense, depreciation
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -75,7 +75,7 @@ func (s *FhirAccount) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -192,6 +192,11 @@ func (s *FhirAccount) PopulateAndExtractSearchParameters(resourceRaw json.RawMes
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Account.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -68,9 +68,6 @@ type FhirAdverseEvent struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirAdverseEvent) GetSearchParameters() map[string]string {
@ -99,7 +96,6 @@ func (s *FhirAdverseEvent) GetSearchParameters() map[string]string {
"subject": "reference",
"substance": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -141,8 +141,17 @@ type FhirAllergyIntolerance struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
/*
Multiple Resources:
* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)
* [Composition](composition.html): Kind of composition (LOINC if possible)
* [DocumentManifest](documentmanifest.html): Kind of document set
* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)
* [Encounter](encounter.html): Specific type of encounter
* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management
*/
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// unconfirmed | confirmed | refuted | entered-in-error
// https://hl7.org/fhir/r4/search.html#token
@ -176,7 +185,7 @@ func (s *FhirAllergyIntolerance) GetSearchParameters() map[string]string {
"source_resource_type": "keyword",
"source_uri": "keyword",
"text": "keyword",
"type": "special",
"type": "token",
"verificationStatus": "token",
}
return searchParameters
@ -345,6 +354,11 @@ func (s *FhirAllergyIntolerance) PopulateAndExtractSearchParameters(resourceRaw
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.type | Composition.type | DocumentManifest.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
// extracting VerificationStatus
verificationStatusResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.verificationStatus')")
if err == nil && verificationStatusResult.String() != "undefined" {

View File

@ -47,8 +47,17 @@ func TestFhirAllergyIntolerance_ExtractSearchParameters(t *testing.T) {
},
}, testVerificationStatus)
//TODO: Special field, ignoring
//require.Equal(t, "allergy", allergyIntoleranceModel.Type)
require.NotEmpty(t, allergyIntoleranceModel.Type)
var testType SearchParameterTokenType
require.NoError(t, err)
err = json.Unmarshal(json.RawMessage(allergyIntoleranceModel.Type), &testType)
require.NoError(t, err)
require.Equal(t, SearchParameterTokenType{
{
Code: "allergy",
},
}, testType)
var testCategory SearchParameterTokenType
require.NoError(t, err)
@ -87,21 +96,28 @@ func TestFhirAllergyIntolerance_ExtractSearchParameters(t *testing.T) {
},
}, testCodeSystem)
//var testPatient SearchParameterTokenType
//require.NoError(t, err)
//err = json.Unmarshal(json.RawMessage(allergyIntoleranceModel.Code), &testCodeSystem)
//require.NoError(t, err)
//require.Equal(t, SearchParameterTokenType{
// {
// Code: "39065001",
// System: "http://snomed.info/sct",
// Text: "Burn of ear",
// },
//}, testCodeSystem)
require.Equal(t, "2012-06-12T00:00:00Z", allergyIntoleranceModel.Onset.Format(time.RFC3339))
//TODO: require.Equal(t, "2004", allergyIntoleranceModel.Recorder)
//require.Equal(t, "2004", allergyIntoleranceModel.Asserter)
var testRecorder SearchParameterReferenceType
require.NoError(t, err)
err = json.Unmarshal(json.RawMessage(allergyIntoleranceModel.Recorder), &testRecorder)
require.NoError(t, err)
require.Equal(t, SearchParameterReferenceType{
{
Reference: "Practitioner/example",
},
}, testRecorder)
var testAsserter SearchParameterReferenceType
require.NoError(t, err)
err = json.Unmarshal(json.RawMessage(allergyIntoleranceModel.Asserter), &testAsserter)
require.NoError(t, err)
require.Equal(t, SearchParameterReferenceType{
{
Reference: "Patient/example",
},
}, testAsserter)
require.Equal(t, "2012-06", allergyIntoleranceModel.LastDate.Format("2006-01"))
var testSeverity SearchParameterTokenType
@ -117,7 +133,22 @@ func TestFhirAllergyIntolerance_ExtractSearchParameters(t *testing.T) {
},
}, testSeverity)
//TODO: Manifestation
var testManifestation SearchParameterTokenType
require.NoError(t, err)
err = json.Unmarshal(json.RawMessage(allergyIntoleranceModel.Manifestation), &testManifestation)
require.NoError(t, err)
require.Equal(t, SearchParameterTokenType{
{
System: "http://snomed.info/sct",
Code: "39579001",
Text: "Anaphylactic reaction",
},
{
System: "http://snomed.info/sct",
Code: "64305001",
Text: "Urticaria",
},
}, testManifestation)
}
//func TestFhirAllergyIntolerance2_ExtractSearchParameters(t *testing.T) {

View File

@ -80,9 +80,6 @@ type FhirAppointment struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirAppointment) GetSearchParameters() map[string]string {
@ -115,7 +112,6 @@ func (s *FhirAppointment) GetSearchParameters() map[string]string {
"status": "token",
"supportingInfo": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -32,9 +32,6 @@ type FhirBinary struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirBinary) GetSearchParameters() map[string]string {
@ -51,7 +48,6 @@ func (s *FhirBinary) GetSearchParameters() map[string]string {
"source_resource_type": "keyword",
"source_uri": "keyword",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -142,9 +142,6 @@ type FhirCarePlan struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirCarePlan) GetSearchParameters() map[string]string {
@ -180,7 +177,6 @@ func (s *FhirCarePlan) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -106,9 +106,6 @@ type FhirCareTeam struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirCareTeam) GetSearchParameters() map[string]string {
@ -132,7 +129,6 @@ func (s *FhirCareTeam) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -77,9 +77,6 @@ type FhirClaim struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// The kind of financial resource
// https://hl7.org/fhir/r4/search.html#token
Use datatypes.JSON `gorm:"column:use;type:text;serializer:json" json:"use,omitempty"`
@ -114,7 +111,6 @@ func (s *FhirClaim) GetSearchParameters() map[string]string {
"status": "token",
"subdetailUdi": "reference",
"text": "keyword",
"type": "special",
"use": "token",
}
return searchParameters

View File

@ -59,9 +59,6 @@ type FhirClaimResponse struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// The type of claim
// https://hl7.org/fhir/r4/search.html#token
Use datatypes.JSON `gorm:"column:use;type:text;serializer:json" json:"use,omitempty"`
@ -90,7 +87,6 @@ func (s *FhirClaimResponse) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
"use": "token",
}
return searchParameters

View File

@ -148,8 +148,17 @@ type FhirComposition struct {
// Human Readable name/title
// https://hl7.org/fhir/r4/search.html#string
Title datatypes.JSON `gorm:"column:title;type:text;serializer:json" json:"title,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
/*
Multiple Resources:
* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)
* [Composition](composition.html): Kind of composition (LOINC if possible)
* [DocumentManifest](documentmanifest.html): Kind of document set
* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)
* [Encounter](encounter.html): Specific type of encounter
* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management
*/
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -183,7 +192,7 @@ func (s *FhirComposition) GetSearchParameters() map[string]string {
"subject": "reference",
"text": "keyword",
"title": "string",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -358,6 +367,11 @@ func (s *FhirComposition) PopulateAndExtractSearchParameters(resourceRaw json.Ra
if err == nil && titleResult.String() != "undefined" {
s.Title = []byte(titleResult.String())
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.type | Composition.type | DocumentManifest.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -139,9 +139,6 @@ type FhirCondition struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// unconfirmed | provisional | differential | confirmed | refuted | entered-in-error
// https://hl7.org/fhir/r4/search.html#token
VerificationStatus datatypes.JSON `gorm:"column:verificationStatus;type:text;serializer:json" json:"verificationStatus,omitempty"`
@ -180,7 +177,6 @@ func (s *FhirCondition) GetSearchParameters() map[string]string {
"stage": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"verificationStatus": "token",
}
return searchParameters

View File

@ -127,9 +127,6 @@ type FhirConsent struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirConsent) GetSearchParameters() map[string]string {
@ -160,7 +157,6 @@ func (s *FhirConsent) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -59,8 +59,8 @@ type FhirCoverage struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// The kind of coverage (health plan, auto, Workers Compensation)
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -87,7 +87,7 @@ func (s *FhirCoverage) GetSearchParameters() map[string]string {
"status": "token",
"subscriber": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -211,6 +211,11 @@ func (s *FhirCoverage) PopulateAndExtractSearchParameters(resourceRaw json.RawMe
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Coverage.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -50,9 +50,6 @@ type FhirCoverageEligibilityRequest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirCoverageEligibilityRequest) GetSearchParameters() map[string]string {
@ -75,7 +72,6 @@ func (s *FhirCoverageEligibilityRequest) GetSearchParameters() map[string]string
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -56,9 +56,6 @@ type FhirCoverageEligibilityResponse struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirCoverageEligibilityResponse) GetSearchParameters() map[string]string {
@ -83,7 +80,6 @@ func (s *FhirCoverageEligibilityResponse) GetSearchParameters() map[string]strin
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -53,8 +53,8 @@ type FhirDevice struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// The type of the device
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// UDI Barcode (RFID or other technology) string in *HRF* format.
// https://hl7.org/fhir/r4/search.html#string
@ -88,7 +88,7 @@ func (s *FhirDevice) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
"type": "token",
"udiCarrier": "string",
"udiDi": "string",
"url": "uri",
@ -205,6 +205,11 @@ func (s *FhirDevice) PopulateAndExtractSearchParameters(resourceRaw json.RawMess
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Device.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
// extracting UdiCarrier
udiCarrierResult, err := vm.RunString("extractStringSearchParameters(fhirResource, 'Device.udiCarrier.carrierHRF')")
if err == nil && udiCarrierResult.String() != "undefined" {

View File

@ -148,9 +148,6 @@ type FhirDeviceRequest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirDeviceRequest) GetSearchParameters() map[string]string {
@ -184,7 +181,6 @@ func (s *FhirDeviceRequest) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -162,9 +162,6 @@ type FhirDiagnosticReport struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirDiagnosticReport) GetSearchParameters() map[string]string {
@ -196,7 +193,6 @@ func (s *FhirDiagnosticReport) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -98,8 +98,17 @@ type FhirDocumentManifest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
/*
Multiple Resources:
* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)
* [Composition](composition.html): Kind of composition (LOINC if possible)
* [DocumentManifest](documentmanifest.html): Kind of document set
* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)
* [Encounter](encounter.html): Specific type of encounter
* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management
*/
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -128,7 +137,7 @@ func (s *FhirDocumentManifest) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -270,6 +279,11 @@ func (s *FhirDocumentManifest) PopulateAndExtractSearchParameters(resourceRaw js
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.type | Composition.type | DocumentManifest.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -143,8 +143,17 @@ type FhirDocumentReference struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
/*
Multiple Resources:
* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)
* [Composition](composition.html): Kind of composition (LOINC if possible)
* [DocumentManifest](documentmanifest.html): Kind of document set
* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)
* [Encounter](encounter.html): Specific type of encounter
* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management
*/
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -183,7 +192,7 @@ func (s *FhirDocumentReference) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -383,6 +392,11 @@ func (s *FhirDocumentReference) PopulateAndExtractSearchParameters(resourceRaw j
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.type | Composition.type | DocumentManifest.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -148,8 +148,17 @@ type FhirEncounter struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
/*
Multiple Resources:
* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)
* [Composition](composition.html): Kind of composition (LOINC if possible)
* [DocumentManifest](documentmanifest.html): Kind of document set
* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)
* [Encounter](encounter.html): Specific type of encounter
* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management
*/
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -188,7 +197,7 @@ func (s *FhirEncounter) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -388,6 +397,11 @@ func (s *FhirEncounter) PopulateAndExtractSearchParameters(resourceRaw json.RawM
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'AllergyIntolerance.type | Composition.type | DocumentManifest.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -50,9 +50,6 @@ type FhirEndpoint struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirEndpoint) GetSearchParameters() map[string]string {
@ -75,7 +72,6 @@ func (s *FhirEndpoint) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -41,9 +41,6 @@ type FhirEnrollmentRequest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirEnrollmentRequest) GetSearchParameters() map[string]string {
@ -63,7 +60,6 @@ func (s *FhirEnrollmentRequest) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -41,9 +41,6 @@ type FhirEnrollmentResponse struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirEnrollmentResponse) GetSearchParameters() map[string]string {
@ -63,7 +60,6 @@ func (s *FhirEnrollmentResponse) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -80,9 +80,6 @@ type FhirExplanationOfBenefit struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirExplanationOfBenefit) GetSearchParameters() map[string]string {
@ -115,7 +112,6 @@ func (s *FhirExplanationOfBenefit) GetSearchParameters() map[string]string {
"status": "token",
"subdetailUdi": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -126,9 +126,6 @@ type FhirFamilyMemberHistory struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirFamilyMemberHistory) GetSearchParameters() map[string]string {
@ -153,7 +150,6 @@ func (s *FhirFamilyMemberHistory) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -86,9 +86,6 @@ type FhirGoal struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirGoal) GetSearchParameters() map[string]string {
@ -112,7 +109,6 @@ func (s *FhirGoal) GetSearchParameters() map[string]string {
"subject": "reference",
"targetDate": "date",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -113,9 +113,6 @@ type FhirImagingStudy struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirImagingStudy) GetSearchParameters() map[string]string {
@ -148,7 +145,6 @@ func (s *FhirImagingStudy) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -127,9 +127,6 @@ type FhirImmunization struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// Vaccine Product Administered
// https://hl7.org/fhir/r4/search.html#token
VaccineCode datatypes.JSON `gorm:"column:vaccineCode;type:text;serializer:json" json:"vaccineCode,omitempty"`
@ -163,7 +160,6 @@ func (s *FhirImmunization) GetSearchParameters() map[string]string {
"statusReason": "token",
"targetDisease": "token",
"text": "keyword",
"type": "special",
"vaccineCode": "token",
}
return searchParameters

View File

@ -71,8 +71,8 @@ type FhirInsurancePlan struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// A code for the type of organization
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -103,7 +103,7 @@ func (s *FhirInsurancePlan) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -247,6 +247,11 @@ func (s *FhirInsurancePlan) PopulateAndExtractSearchParameters(resourceRaw json.
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'InsurancePlan.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -71,8 +71,8 @@ type FhirLocation struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// A code for the type of location
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -103,7 +103,7 @@ func (s *FhirLocation) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -247,6 +247,11 @@ func (s *FhirLocation) PopulateAndExtractSearchParameters(resourceRaw json.RawMe
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Location.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -62,8 +62,8 @@ type FhirMedia struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// Classification of media as image, video, or audio
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// Imaging view, e.g. Lateral or Antero-posterior
// https://hl7.org/fhir/r4/search.html#token
@ -94,7 +94,7 @@ func (s *FhirMedia) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
"view": "token",
}
return searchParameters
@ -232,6 +232,11 @@ func (s *FhirMedia) PopulateAndExtractSearchParameters(resourceRaw json.RawMessa
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Media.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
// extracting View
viewResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Media.view')")
if err == nil && viewResult.String() != "undefined" {

View File

@ -76,9 +76,6 @@ type FhirMedication struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirMedication) GetSearchParameters() map[string]string {
@ -104,7 +101,6 @@ func (s *FhirMedication) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -132,9 +132,6 @@ type FhirMedicationAdministration struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirMedicationAdministration) GetSearchParameters() map[string]string {
@ -163,7 +160,6 @@ func (s *FhirMedicationAdministration) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -133,8 +133,8 @@ type FhirMedicationDispense struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// Returns dispenses of a specific type
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// Returns dispenses handed over on this date
// https://hl7.org/fhir/r4/search.html#date
@ -169,7 +169,7 @@ func (s *FhirMedicationDispense) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
"whenhandedover": "date",
"whenprepared": "date",
}
@ -305,6 +305,11 @@ func (s *FhirMedicationDispense) PopulateAndExtractSearchParameters(resourceRaw
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'MedicationDispense.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
// extracting Whenhandedover
whenhandedoverResult, err := vm.RunString("extractDateSearchParameters(fhirResource, 'MedicationDispense.whenHandedOver')")
if err == nil && whenhandedoverResult.String() != "undefined" {

View File

@ -149,9 +149,6 @@ type FhirMedicationRequest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirMedicationRequest) GetSearchParameters() map[string]string {
@ -183,7 +180,6 @@ func (s *FhirMedicationRequest) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -126,9 +126,6 @@ type FhirMedicationStatement struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirMedicationStatement) GetSearchParameters() map[string]string {
@ -155,7 +152,6 @@ func (s *FhirMedicationStatement) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -113,9 +113,6 @@ type FhirNutritionOrder struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirNutritionOrder) GetSearchParameters() map[string]string {
@ -143,7 +140,6 @@ func (s *FhirNutritionOrder) GetSearchParameters() map[string]string {
"status": "token",
"supplement": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -192,9 +192,6 @@ type FhirObservation struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// The value of the observation, if the value is a CodeableConcept
// https://hl7.org/fhir/r4/search.html#token
ValueConcept datatypes.JSON `gorm:"column:valueConcept;type:text;serializer:json" json:"valueConcept,omitempty"`
@ -248,7 +245,6 @@ func (s *FhirObservation) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"valueConcept": "token",
"valueDate": "date",
"valueQuantity": "quantity",

View File

@ -68,8 +68,8 @@ type FhirOrganization struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// A code for the type of organization
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -99,7 +99,7 @@ func (s *FhirOrganization) GetSearchParameters() map[string]string {
"source_resource_type": "keyword",
"source_uri": "keyword",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -238,6 +238,11 @@ func (s *FhirOrganization) PopulateAndExtractSearchParameters(resourceRaw json.R
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Organization.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -74,9 +74,6 @@ type FhirOrganizationAffiliation struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirOrganizationAffiliation) GetSearchParameters() map[string]string {
@ -107,7 +104,6 @@ func (s *FhirOrganizationAffiliation) GetSearchParameters() map[string]string {
"specialty": "token",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -194,9 +194,6 @@ type FhirPatient struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirPatient) GetSearchParameters() map[string]string {
@ -235,7 +232,6 @@ func (s *FhirPatient) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -172,9 +172,6 @@ type FhirPerson struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirPerson) GetSearchParameters() map[string]string {
@ -209,7 +206,6 @@ func (s *FhirPerson) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -173,9 +173,6 @@ type FhirPractitioner struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirPractitioner) GetSearchParameters() map[string]string {
@ -209,7 +206,6 @@ func (s *FhirPractitioner) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -95,9 +95,6 @@ type FhirPractitionerRole struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirPractitionerRole) GetSearchParameters() map[string]string {
@ -127,7 +124,6 @@ func (s *FhirPractitionerRole) GetSearchParameters() map[string]string {
"specialty": "token",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -162,9 +162,6 @@ type FhirProcedure struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirProcedure) GetSearchParameters() map[string]string {
@ -196,7 +193,6 @@ func (s *FhirProcedure) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -56,9 +56,6 @@ type FhirProvenance struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// When the activity occurred
// https://hl7.org/fhir/r4/search.html#date
When *time.Time `gorm:"column:when;type:datetime" json:"when,omitempty"`
@ -86,7 +83,6 @@ func (s *FhirProvenance) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"target": "reference",
"text": "keyword",
"type": "special",
"when": "date",
}
return searchParameters

View File

@ -77,9 +77,6 @@ type FhirQuestionnaire struct {
// The human-friendly name of the questionnaire
// https://hl7.org/fhir/r4/search.html#string
Title datatypes.JSON `gorm:"column:title;type:text;serializer:json" json:"title,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
// The uri that identifies the questionnaire
// https://hl7.org/fhir/r4/search.html#uri
Url string `gorm:"column:url;type:text" json:"url,omitempty"`
@ -117,7 +114,6 @@ func (s *FhirQuestionnaire) GetSearchParameters() map[string]string {
"subjectType": "token",
"text": "keyword",
"title": "string",
"type": "special",
"url": "uri",
"version": "token",
}

View File

@ -62,9 +62,6 @@ type FhirQuestionnaireResponse struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirQuestionnaireResponse) GetSearchParameters() map[string]string {
@ -91,7 +88,6 @@ func (s *FhirQuestionnaireResponse) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -166,9 +166,6 @@ type FhirRelatedPerson struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirRelatedPerson) GetSearchParameters() map[string]string {
@ -201,7 +198,6 @@ func (s *FhirRelatedPerson) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"telecom": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -53,9 +53,6 @@ type FhirSchedule struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirSchedule) GetSearchParameters() map[string]string {
@ -79,7 +76,6 @@ func (s *FhirSchedule) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"specialty": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -157,9 +157,6 @@ type FhirServiceRequest struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirServiceRequest) GetSearchParameters() map[string]string {
@ -196,7 +193,6 @@ func (s *FhirServiceRequest) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -56,9 +56,6 @@ type FhirSlot struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirSlot) GetSearchParameters() map[string]string {
@ -83,7 +80,6 @@ func (s *FhirSlot) GetSearchParameters() map[string]string {
"start": "date",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -62,8 +62,8 @@ type FhirSpecimen struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
// The specimen type
// https://hl7.org/fhir/r4/search.html#token
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
@ -91,7 +91,7 @@ func (s *FhirSpecimen) GetSearchParameters() map[string]string {
"status": "token",
"subject": "reference",
"text": "keyword",
"type": "special",
"type": "token",
}
return searchParameters
}
@ -228,6 +228,11 @@ func (s *FhirSpecimen) PopulateAndExtractSearchParameters(resourceRaw json.RawMe
if err == nil && textResult.String() != "undefined" {
s.Text = textResult.String()
}
// extracting Type
typeResult, err := vm.RunString("extractTokenSearchParameters(fhirResource, 'Specimen.type')")
if err == nil && typeResult.String() != "undefined" {
s.Type = []byte(typeResult.String())
}
return nil
}

View File

@ -95,9 +95,6 @@ type FhirVisionPrescription struct {
// Text search against the narrative
// This is a primitive string literal (`keyword` type). It is not a recognized SearchParameter type from https://hl7.org/fhir/r4/search.html, it's Fasten Health-specific
Text string `gorm:"column:text;type:text" json:"text,omitempty"`
// A resource type filter
// https://hl7.org/fhir/r4/search.html#special
Type datatypes.JSON `gorm:"column:type;type:text;serializer:json" json:"type,omitempty"`
}
func (s *FhirVisionPrescription) GetSearchParameters() map[string]string {
@ -119,7 +116,6 @@ func (s *FhirVisionPrescription) GetSearchParameters() map[string]string {
"source_uri": "keyword",
"status": "token",
"text": "keyword",
"type": "special",
}
return searchParameters
}

View File

@ -170,10 +170,6 @@ func main() {
Description: "Text search against the narrative",
FHIRPathExpression: "text",
}
fieldMap["Type"] = DBField{
FieldType: "special",
Description: "A resource type filter",
}
resourceFieldMap[resourceName] = fieldMap
}

View File

@ -27,6 +27,10 @@ type SearchParameterTokenType []struct {
Text string `json:"text"`
}
type SearchParameterReferenceType []struct {
Reference string `json:"reference"`
}
type SearchParameterStringType []string
type SearchParameterDateType []struct {