PLT-5070: Server side component of Telemetry. (#5514)

Этот коммит содержится в:
George Goldberg
2017-02-24 17:33:59 +00:00
коммит произвёл GitHub
родитель ba028ed74b
Коммит f182d196ff
13 изменённых файлов: 861 добавлений и 354 удалений

Просмотреть файл

@@ -1438,3 +1438,42 @@ func (us SqlUserStore) performSearch(searchQuery string, term string, options ma
return result
}
func (us SqlUserStore) AnalyticsGetInactiveUsersCount() StoreChannel {
storeChannel := make(StoreChannel, 1)
go func() {
result := StoreResult{}
if count, err := us.GetReplica().SelectInt("SELECT COUNT(Id) FROM Users WHERE DeleteAt > 0"); err != nil {
result.Err = model.NewLocAppError("SqlUserStore.AnalyticsGetInactiveUsersCount", "store.sql_user.analytics_get_inactive_users_count.app_error", nil, err.Error())
} else {
result.Data = count
}
storeChannel <- result
close(storeChannel)
}()
return storeChannel
}
func (us SqlUserStore) AnalyticsGetSystemAdminCount() StoreChannel {
storeChannel := make(StoreChannel, 1)
go func() {
result := StoreResult{}
if count, err := us.GetReplica().SelectInt("SELECT count(*) FROM Users WHERE Roles LIKE :Roles and DeleteAt = 0", map[string]interface{}{"Roles": "%system_admin%"}); err != nil {
result.Err = model.NewLocAppError("SqlUserStore.AnalyticsGetSystemAdminCount", "store.sql_user.analytics_get_system_admin_count.app_error", nil, err.Error())
} else {
result.Data = count
}
storeChannel <- result
close(storeChannel)
}()
return storeChannel
}