mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-22 20:55:46 +08:00
51 lines
1.7 KiB
Ruby
51 lines
1.7 KiB
Ruby
owner_common = $redis_cache.hgetall("v2-owner-common:#{item[0]}")
|
|
deleted_data = $redis_cache.smembers("v2-project-rank-deleted")
|
|
$redis_cache.zrem("v2-user-project-rank:#{item[0]}", deleted_data) unless deleted_data.blank?
|
|
popular_project = $redis_cache.zrevrange("v2-user-project-rank:#{item[0]}", 0, 1, withscores: true)[0]
|
|
json.id item[0]
|
|
json.score item[1]
|
|
json.name owner_common["name"]
|
|
json.type owner_common["type"]
|
|
json.login owner_common["login"]
|
|
json.avatar_url owner_common["avatar_url"]
|
|
if popular_project.blank?
|
|
json.project nil
|
|
else
|
|
popular_project_common = $redis_cache.hgetall("v2-project-common:#{popular_project[0]}")
|
|
json.project do
|
|
json.id popular_project[0]
|
|
json.name popular_project_common["name"]
|
|
json.identifier popular_project_common["identifier"]
|
|
json.description popular_project_common["description"]
|
|
end
|
|
end
|
|
|
|
ids = $redis_cache.zrevrange("v2-user-project-rank:#{item[0]}", 0, 999, withscores: true).map{|a|a[0]}
|
|
visits = 0
|
|
forks = 0
|
|
watchers = 0
|
|
praises = 0
|
|
issues = 0
|
|
pulls = 0
|
|
commits = 0
|
|
issues = 0
|
|
ids.each do |pid|
|
|
project_common = $redis_cache.hgetall("v2-project-common:#{pid}")
|
|
visits = visits + project_common["visits"].to_i
|
|
forks = forks + project_common["forks"].to_i
|
|
watchers = watchers + project_common["watchers"].to_i
|
|
praises = praises + project_common["praises"].to_i
|
|
issues = issues + project_common["issues"].to_i
|
|
pulls = pulls + project_common["pullrequests"].to_i
|
|
commits = commits + project_common["commits"].to_i
|
|
issues = issues + project_common["issues"].to_i
|
|
end
|
|
|
|
json.visits visits
|
|
json.forks forks
|
|
json.watchers watchers
|
|
json.praises praises
|
|
json.issues issues
|
|
json.pulls pulls
|
|
json.commits commits
|
|
json.issues issues |