diff options
Diffstat (limited to 'store/sql_team_store.go')
-rw-r--r-- | store/sql_team_store.go | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/store/sql_team_store.go b/store/sql_team_store.go index cc6343169..023ce8a5a 100644 --- a/store/sql_team_store.go +++ b/store/sql_team_store.go @@ -589,24 +589,20 @@ func (s SqlTeamStore) GetTeamsUnreadForUser(teamId, userId string) StoreChannel go func() { result := StoreResult{} - var members []*model.TeamUnread - _, err := s.GetReplica().Select(&members, + var data []*model.ChannelUnread + _, err := s.GetReplica().Select(&data, `SELECT - Channels.TeamId, - SUM(Channels.TotalMsgCount - ChannelMembers.MsgCount) as MsgCount, - SUM(ChannelMembers.MentionCount) as MentionCount + Channels.TeamId, Channels.TotalMsgCount, ChannelMembers.MsgCount, ChannelMembers.MentionCount, ChannelMembers.NotifyProps FROM - Channels, - ChannelMembers + Channels, ChannelMembers WHERE - Channels.Id = ChannelMembers.ChannelId AND Channels.DeleteAt = 0 AND - ChannelMembers.UserId = :UserId AND Channels.TeamId != :TeamId - GROUP BY - Channels.TeamId`, map[string]interface{}{"UserId": userId, "TeamId": teamId}) + Id = ChannelId AND UserId = :UserId AND DeleteAt = 0 AND TeamId != :TeamId`, + map[string]interface{}{"UserId": userId, "TeamId": teamId}) + if err != nil { result.Err = model.NewLocAppError("SqlTeamStore.GetTeamsUnreadForUser", "store.sql_team.get_unread.app_error", nil, "userId="+userId+" "+err.Error()) } else { - result.Data = members + result.Data = data } storeChannel <- result |