contentstorage/caclient/stub/src/caclientproxy.cpp
changeset 127 7b66bc3c6dc9
parent 116 305818acdca4
equal deleted inserted replaced
126:efda7c0771b9 127:7b66bc3c6dc9
   851     if (sortAttribute == NameSortAttribute) {
   851     if (sortAttribute == NameSortAttribute) {
   852         queryString.append(oldQueryString).append(" ORDER BY EN_TEXT ");
   852         queryString.append(oldQueryString).append(" ORDER BY EN_TEXT ");
   853     } else if (sortAttribute == CreatedTimestampSortAttribute) {
   853     } else if (sortAttribute == CreatedTimestampSortAttribute) {
   854         queryString.append(oldQueryString).append(
   854         queryString.append(oldQueryString).append(
   855             " ORDER BY EN_CREATION_TIME ");
   855             " ORDER BY EN_CREATION_TIME ");
   856     } else if (sortAttribute == MostUsedSortAttribute) {
       
   857         queryString.append("SELECT ENTRY_ID FROM (").append(oldQueryString).append(
       
   858             " \
       
   859                 ) LEFT JOIN \
       
   860                 (SELECT LA_ENTRY_ID, COUNT(*) AS USAGE_DATA FROM CA_LAUNCH GROUP BY LA_ENTRY_ID) \
       
   861                 ON ENTRY_ID = LA_ENTRY_ID ORDER BY USAGE_DATA ");
       
   862     } else if (sortAttribute == LastUsedSortAttribute) {
       
   863         queryString.append("SELECT ENTRY_ID FROM (").append(oldQueryString).append(
       
   864             " \
       
   865                 ) LEFT JOIN \
       
   866                 (SELECT LA_ENTRY_ID, MAX(LA_LAUNCH_TIME) AS USAGE_DATA FROM CA_LAUNCH GROUP BY LA_ENTRY_ID) \
       
   867                 ON ENTRY_ID = LA_ENTRY_ID ORDER BY USAGE_DATA ");
       
   868     } else if (parent && sortAttribute == DefaultSortAttribute) {
   856     } else if (parent && sortAttribute == DefaultSortAttribute) {
   869         queryString.append(oldQueryString).append(
   857         queryString.append(oldQueryString).append(
   870             " ORDER BY GE_GROUP_ID, GE_POSITION ");
   858             " ORDER BY GE_GROUP_ID, GE_POSITION ");
   871     } else if (!parent && sortAttribute == DefaultSortAttribute) {
   859     } else if (!parent && sortAttribute == DefaultSortAttribute) {
   872         queryString.append(oldQueryString).append(" ORDER BY ENTRY_ID ");
   860         queryString.append(oldQueryString).append(" ORDER BY ENTRY_ID ");
   873     } else {
   861     } else {
   874         queryString.append(oldQueryString);
   862         queryString.append(oldQueryString);
   875     }
   863     }
   876 
   864 
   877     if (sortAttribute == NameSortAttribute || sortAttribute
   865     if (sortAttribute == NameSortAttribute || sortAttribute
   878             == CreatedTimestampSortAttribute || sortAttribute
   866             == CreatedTimestampSortAttribute ||
   879             == MostUsedSortAttribute || sortAttribute == LastUsedSortAttribute
   867             (sortAttribute == DefaultSortAttribute && parent)) {
   880             || (sortAttribute == DefaultSortAttribute && parent)) {
       
   881         if (sortOrder == Qt::AscendingOrder)
   868         if (sortOrder == Qt::AscendingOrder)
   882             queryString.append(" ASC ");
   869             queryString.append(" ASC ");
   883         else
   870         else
   884             queryString.append(" DESC ");
   871             queryString.append(" DESC ");
   885     }
   872     }