@DocumentId private Integer conceptClassId;
@DocumentId private Integer conceptMapId; @ContainedIn private Concept concept; @IndexedEmbedded(includeEmbeddedObjectId = true) private ConceptReferenceTerm conceptReferenceTerm;
@Indexed public class PatientIdentifier extends BaseChangeableOpenmrsData implements java.io.Serializable, Cloneable, Comparable<PatientIdentifier> { @DocumentId private Integer patientIdentifierId; @IndexedEmbedded(includeEmbeddedObjectId = true) private Patient patient; @Fields({ @Field(name = "identifierPhrase", analyzer = @Analyzer(definition = LuceneAnalyzers.PHRASE_ANALYZER), boost = @Boost(8f)), @Field(name = "identifierExact", analyzer = @Analyzer(definition = LuceneAnalyzers.EXACT_ANALYZER), boost = @Boost(4f)), @Field(name = "identifierStart", analyzer = @Analyzer(definition = LuceneAnalyzers.START_ANALYZER), boost = @Boost(2f)), @Field(name = "identifierAnywhere", analyzer = @Analyzer(definition = LuceneAnalyzers.ANYWHERE_ANALYZER)) }) private String identifier; @IndexedEmbedded(includeEmbeddedObjectId = true) private PatientIdentifierType identifierType; @Field private Boolean preferred = false;
@Indexed @AnalyzerDef(name = "ConceptNameAnalyzer", tokenizer = @TokenizerDef(factory = StandardTokenizerFactory.class), filters = { @TokenFilterDef(factory = StandardFilterFactory.class), @TokenFilterDef(factory = LowerCaseFilterFactory.class) }) @Analyzer(definition = "ConceptNameAnalyzer") public class ConceptName extends BaseOpenmrsObject implements Auditable, Voidable, java.io.Serializable { @DocumentId private Integer conceptNameId; @IndexedEmbedded(includeEmbeddedObjectId = true) private Concept concept; @Field private String name; @Field(analyze = Analyze.NO) @FieldBridge(impl = LocaleFieldBridge.class) @Field private Boolean voided = false; @Field private ConceptNameType conceptNameType; @Field private Boolean localePreferred = false;
@Indexed public class Drug extends BaseChangeableOpenmrsMetadata { @DocumentId private Integer drugId; @IndexedEmbedded(includeEmbeddedObjectId = true) private Concept concept; @IndexedEmbedded(includeEmbeddedObjectId = true) private Set<DrugReferenceMap> drugReferenceMaps;
@DocumentId private Integer conceptReferenceTermId; @Field(analyze = Analyze.NO) private String code;
@Field @NumericField @FieldBridge(impl = BigDecimalNumericFieldBridge.class) public BigDecimal myValue; @Id
@Indexed public class ConceptComplex extends Concept {
@AnalyzerDefs({ @AnalyzerDef(name = LuceneAnalyzers.PHRASE_ANALYZER, tokenizer = @TokenizerDef(factory = KeywordTokenizerFactory.class), filters = { @TokenFilterDef(factory = ClassicFilterFactory.class), @TokenFilterDef(factory = LowerCaseFilterFactory.class) }), @AnalyzerDef(name = LuceneAnalyzers.EXACT_ANALYZER, tokenizer = @TokenizerDef(factory = WhitespaceTokenizerFactory.class), filters = { @TokenFilterDef(factory = ClassicFilterFactory.class), @TokenFilterDef(factory = LowerCaseFilterFactory.class) }), @AnalyzerDef(name = LuceneAnalyzers.START_ANALYZER, tokenizer = @TokenizerDef(factory = WhitespaceTokenizerFactory.class), filters = { @TokenFilterDef(factory = ClassicFilterFactory.class), @TokenFilterDef(factory = LowerCaseFilterFactory.class), @TokenFilterDef(factory = EdgeNGramFilterFactory.class, params = { @Parameter(name = "minGramSize", value = "2"), @Parameter(name = "maxGramSize", value = "20") }) }), @AnalyzerDef(name = LuceneAnalyzers.ANYWHERE_ANALYZER, tokenizer = @TokenizerDef(factory = WhitespaceTokenizerFactory.class), filters = { @TokenFilterDef(factory = ClassicFilterFactory.class), @TokenFilterDef(factory = LowerCaseFilterFactory.class), @TokenFilterDef(factory = NGramFilterFactory.class, params = { @Parameter(name = "minGramSize", value = "2"),
@Field() @Column(name = "SP_MISSING", nullable = true) private Boolean myMissing = Boolean.FALSE; @Field @Column(name = "SP_NAME", length = MAX_SP_NAME, nullable = false) private String myParamName; @ContainedIn private ResourceTable myResource; private Long myResourcePid; @Field() @Column(name = "RES_TYPE", nullable = false) private String myResourceType; @Field() @Column(name = "SP_UPDATED", nullable = true) // TODO: make this false after HAPI 2.3 @Temporal(TemporalType.TIMESTAMP)
@Field private Boolean searchable = false;
@Factory public SearchMapping getSearchMapping() { SearchMapping mapping = new SearchMapping();
@Key public FilterKey getKey() { StandardFilterKey key = new StandardFilterKey(); key.addParameter(includeTerms); key.addParameter(excludeTerms); return key; }
@Indexed public class PersonAttribute extends BaseChangeableOpenmrsData implements java.io.Serializable, Comparable<PersonAttribute> { @DocumentId private Integer personAttributeId; @IndexedEmbedded(includeEmbeddedObjectId = true) private Person person; @IndexedEmbedded private PersonAttributeType attributeType; @Fields({ @Field(name = "valuePhrase", analyzer = @Analyzer(definition = LuceneAnalyzers.PHRASE_ANALYZER), boost = @Boost(8f)), @Field(name = "valueExact", analyzer = @Analyzer(definition = LuceneAnalyzers.EXACT_ANALYZER), boost = @Boost(4f)), @Field(name = "valueStart", analyzer = @Analyzer(definition = LuceneAnalyzers.START_ANALYZER), boost = @Boost(2f)), @Field(name = "valueAnywhere", analyzer = @Analyzer(definition = LuceneAnalyzers.ANYWHERE_ANALYZER)) }) private String value;
@DocumentId private Integer patientIdentifierTypeId; @Field private Boolean required = Boolean.FALSE;
@DocumentId private Integer drugReferenceMapId; @ContainedIn private Drug drug; @IndexedEmbedded(includeEmbeddedObjectId = true) private ConceptReferenceTerm conceptReferenceTerm;
@Indexed public class ConceptNumeric extends Concept {
@DocumentId private Integer conceptDatatypeId;
@Indexed public class PersonName extends BaseChangeableOpenmrsData implements java.io.Serializable, Cloneable, Comparable<PersonName> { @DocumentId private Integer personNameId; @IndexedEmbedded(includeEmbeddedObjectId = true) private Person person; @Fields({ @Field(name = "givenNameExact", analyzer = @Analyzer(definition = LuceneAnalyzers.EXACT_ANALYZER), boost = @Boost(8f)), @Field(name = "givenNameStart", analyzer = @Analyzer(definition = LuceneAnalyzers.START_ANALYZER), boost = @Boost(4f)), @Field(name = "givenNameAnywhere", analyzer = @Analyzer(definition = LuceneAnalyzers.ANYWHERE_ANALYZER), boost = @Boost(2f)) }) private String givenName; private String prefix; @Fields({ @Field(name = "middleNameExact", analyzer = @Analyzer(definition = LuceneAnalyzers.EXACT_ANALYZER), boost = @Boost(4f)), @Field(name = "middleNameStart", analyzer = @Analyzer(definition = LuceneAnalyzers.START_ANALYZER), boost = @Boost(2f)), @Field(name = "middleNameAnywhere", analyzer = @Analyzer(definition = LuceneAnalyzers.ANYWHERE_ANALYZER)) }) private String middleName; @Fields({ @Field(name = "familyNameExact", analyzer = @Analyzer(definition = LuceneAnalyzers.EXACT_ANALYZER), boost = @Boost(8f)), @Field(name = "familyNameStart", analyzer = @Analyzer(definition = LuceneAnalyzers.START_ANALYZER), boost = @Boost(4f)), @Field(name = "familyNameAnywhere", analyzer = @Analyzer(definition = LuceneAnalyzers.ANYWHERE_ANALYZER), boost = @Boost(2f)), })