comparison OrthancServer/Search/ISqlLookupFormatter.cpp @ 3078:147497152ce3 db-changes

fix
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 03 Jan 2019 12:47:17 +0100
parents 5ebd2ef5e7ae
children 65e2bfa953ef
comparison
equal deleted inserted replaced
3077:aae1d6d31fef 3078:147497152ce3
258 ISqlLookupFormatter& formatter, 258 ISqlLookupFormatter& formatter,
259 const std::vector<DatabaseConstraint>& lookup, 259 const std::vector<DatabaseConstraint>& lookup,
260 ResourceType queryLevel, 260 ResourceType queryLevel,
261 size_t limit) 261 size_t limit)
262 { 262 {
263 for (size_t i = 0; i < lookup.size(); i++)
264 {
265 std::cout << i << ": " << lookup[i].GetTag() << " - " << EnumerationToString(lookup[i].GetLevel());
266 std::cout << std::endl;
267 }
268
269 assert(ResourceType_Patient < ResourceType_Study && 263 assert(ResourceType_Patient < ResourceType_Study &&
270 ResourceType_Study < ResourceType_Series && 264 ResourceType_Study < ResourceType_Series &&
271 ResourceType_Series < ResourceType_Instance); 265 ResourceType_Series < ResourceType_Instance);
272 266
273 ResourceType upperLevel = queryLevel; 267 ResourceType upperLevel = queryLevel;
334 FormatLevel(static_cast<ResourceType>(level - 1)) + ".internalId=" + 328 FormatLevel(static_cast<ResourceType>(level - 1)) + ".internalId=" +
335 FormatLevel(static_cast<ResourceType>(level)) + ".parentId"); 329 FormatLevel(static_cast<ResourceType>(level)) + ".parentId");
336 } 330 }
337 331
338 sql += (joins + " WHERE " + FormatLevel(queryLevel) + ".resourceType = " + 332 sql += (joins + " WHERE " + FormatLevel(queryLevel) + ".resourceType = " +
339 boost::lexical_cast<std::string>(queryLevel) + comparisons); 333 formatter.FormatResourceType(queryLevel) + comparisons);
340 334
341 if (limit != 0) 335 if (limit != 0)
342 { 336 {
343 sql += " LIMIT " + boost::lexical_cast<std::string>(limit); 337 sql += " LIMIT " + boost::lexical_cast<std::string>(limit);
344 } 338 }