fix query to get threads info which have any protected messages 13/108413/1
authorKyeonghun Lee <kh9090.lee@samsung.com>
Wed, 4 Jan 2017 08:09:45 +0000 (17:09 +0900)
committerKyeonghun Lee <kh9090.lee@samsung.com>
Wed, 4 Jan 2017 08:16:33 +0000 (00:16 -0800)
Change-Id: I74226a9f9cbfe8acc2f3968e3a30688baf1d1c70
Signed-off-by: Kyeonghun Lee <kh9090.lee@samsung.com>
framework/storage-handler/MsgStorageMessage.cpp
utils/MsgUtilStorage.cpp

index 702c581..ca7ea6b 100755 (executable)
@@ -2774,7 +2774,7 @@ msg_error_t MsgStoGetThreadInfo(msg_thread_id_t threadId, MSG_THREAD_VIEW_S *pTh
 
        snprintf(sqlQuery, sizeof(sqlQuery), "SELECT A.CONV_ID, A.UNREAD_CNT, A.SMS_CNT, A.MMS_CNT, "
                        "A.MAIN_TYPE, A.SUB_TYPE, A.MSG_DIRECTION, A.DISPLAY_TIME, A.DISPLAY_NAME, A.MSG_TEXT, "
-                       "B.PROTECTED, "
+                       "(SELECT COUNT(MSG_ID) FROM %s M WHERE M.CONV_ID = A.CONV_ID AND M.PROTECTED = 1) AS PROTECTED, "
                        "(CASE WHEN B.FOLDER_ID = %d THEN 1 END) AS DRAFT, "
                        "(CASE WHEN B.NETWORK_STATUS = %d THEN 1 END) AS FAILED, "
                        "(CASE WHEN B.NETWORK_STATUS = %d THEN 1 END) AS SENDING "
@@ -2782,6 +2782,7 @@ msg_error_t MsgStoGetThreadInfo(msg_thread_id_t threadId, MSG_THREAD_VIEW_S *pTh
                        "LEFT OUTER JOIN "
                        "%s B ON A.LAST_MSG_ID = B.MSG_ID "
                        "WHERE A.CONV_ID = %d AND A.SMS_CNT + A.MMS_CNT > 0;",
+                       MSGFW_MESSAGE_TABLE_NAME,
                        MSG_DRAFT_ID,
                        MSG_NETWORK_SEND_FAIL,
                        MSG_NETWORK_SENDING,
index ac9342b..946ef51 100755 (executable)
@@ -1669,7 +1669,7 @@ msg_error_t MsgStoGetThreadViewList(const MSG_SORT_RULE_S *pSortRule, msg_struct
 
        snprintf(sqlQuery, sizeof(sqlQuery), "SELECT A.CONV_ID, A.UNREAD_CNT, A.SMS_CNT, A.MMS_CNT, A.MAIN_TYPE, A.SUB_TYPE, "
                        "A.MSG_DIRECTION, A.DISPLAY_TIME, A.DISPLAY_NAME, A.MSG_TEXT, "
-                       "B.PROTECTED, "
+                       "(SELECT COUNT(MSG_ID) FROM %s M WHERE M.CONV_ID = A.CONV_ID AND M.PROTECTED = 1) AS PROTECTED, "
                        "(CASE WHEN B.FOLDER_ID = %d THEN 1 END) AS DRAFT, "
                        "(CASE WHEN B.NETWORK_STATUS = %d THEN 1 END) AS FAILED, "
                        "(CASE WHEN B.NETWORK_STATUS = %d THEN 1 END) AS SENDING "
@@ -1678,6 +1678,7 @@ msg_error_t MsgStoGetThreadViewList(const MSG_SORT_RULE_S *pSortRule, msg_struct
                        "%s B ON A.LAST_MSG_ID = B.MSG_ID "
                        "WHERE A.SMS_CNT + A.MMS_CNT > 0 "
                        "GROUP BY A.CONV_ID ORDER BY A.DISPLAY_TIME DESC;",
+                       MSGFW_MESSAGE_TABLE_NAME,
                        MSG_DRAFT_ID,
                        MSG_NETWORK_SEND_FAIL,
                        MSG_NETWORK_SENDING,