@@ -93,6 +93,24 @@ public Collection<Concept> executeIdentifierLookup(@PathParam("sourceKey") Strin
93
93
94
94
return getSourceJdbcTemplate (source ).query (sql_statement , this .rowMapper );
95
95
}
96
+
97
+ public Collection <Concept > executeIncludedConceptLookup (String sourceKey , ConceptSetExpression conceptSetExpression ) {
98
+ Source source = getSourceRepository ().findBySourceKey (sourceKey );
99
+ String tableQualifier = source .getTableQualifier (SourceDaimon .DaimonType .Vocabulary );
100
+
101
+ ConceptSetExpressionQueryBuilder builder = new ConceptSetExpressionQueryBuilder ();
102
+ String query = builder .buildExpressionQuery (conceptSetExpression );
103
+
104
+ query = SqlRender .renderSql (query , new String []{"cdm_database_schema" }, new String []{tableQualifier });
105
+
106
+ String sql_statement = ResourceHelper .GetResourceAsString ("/resources/vocabulary/sql/lookupIdentifiers.sql" );
107
+ sql_statement = SqlRender .renderSql (sql_statement , new String []{"identifiers" , "CDM_schema" }, new String []{
108
+ query , tableQualifier });
109
+ sql_statement = SqlTranslate .translateSql (sql_statement , "sql server" , source .getSourceDialect ());
110
+
111
+ return getSourceJdbcTemplate (source ).query (sql_statement , this .rowMapper );
112
+ }
113
+
96
114
97
115
/**
98
116
* @summary Lookup source codes in the specified vocabulary
@@ -151,6 +169,23 @@ public Collection<Concept> executeMappedLookup(@PathParam("sourceKey") String so
151
169
return getSourceJdbcTemplate (source ).query (sql_statement , this .rowMapper );
152
170
}
153
171
172
+ public Collection <Concept > executeMappedLookup (String sourceKey , ConceptSetExpression conceptSetExpression ) {
173
+ Source source = getSourceRepository ().findBySourceKey (sourceKey );
174
+ String tableQualifier = source .getTableQualifier (SourceDaimon .DaimonType .Vocabulary );
175
+
176
+ ConceptSetExpressionQueryBuilder builder = new ConceptSetExpressionQueryBuilder ();
177
+ String query = builder .buildExpressionQuery (conceptSetExpression );
178
+
179
+ query = SqlRender .renderSql (query , new String []{"cdm_database_schema" }, new String []{tableQualifier });
180
+
181
+ String sql_statement = ResourceHelper .GetResourceAsString ("/resources/vocabulary/sql/getMappedSourcecodes.sql" );
182
+ sql_statement = SqlRender .renderSql (sql_statement , new String []{"identifiers" , "CDM_schema" }, new String []{
183
+ query , tableQualifier });
184
+ sql_statement = SqlTranslate .translateSql (sql_statement , "sql server" , source .getSourceDialect ());
185
+
186
+ return getSourceJdbcTemplate (source ).query (sql_statement , this .rowMapper );
187
+ }
188
+
154
189
@ Path ("search" )
155
190
@ POST
156
191
@ Produces (MediaType .APPLICATION_JSON )
0 commit comments