更改:贡献者贡献占比计算
This commit is contained in:
parent
76028a71f0
commit
b8869bd0e2
|
@ -31,6 +31,26 @@ module Watchable
|
||||||
following.size
|
following.size
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def simple_contribution_perc(project, perc=nil)
|
||||||
|
@project = project
|
||||||
|
@user = self
|
||||||
|
|
||||||
|
def cal_perc(count_user, count_all)
|
||||||
|
(count_user * 1.0 / (count_all + 0.000000001)).round(5)
|
||||||
|
end
|
||||||
|
|
||||||
|
if (@project['use_blockchain'] == true or @project['use_blockchain'] == 1) && @user.id.present?
|
||||||
|
balance_user = Blockchain::BalanceQueryOneProject.call({"user_id": @user.id, "project_id": @project.id})
|
||||||
|
balance_all = Blockchain::RepoBasicInfo.call({"project_id": @project.id})["cur_supply"]
|
||||||
|
score = cal_perc(balance_user, balance_all)
|
||||||
|
score = (score * 100).round(1).to_s + "%"
|
||||||
|
else
|
||||||
|
score = perc
|
||||||
|
end
|
||||||
|
|
||||||
|
score
|
||||||
|
end
|
||||||
|
|
||||||
def contribution_perc(project)
|
def contribution_perc(project)
|
||||||
@project = project
|
@project = project
|
||||||
@user = self
|
@user = self
|
||||||
|
|
|
@ -6,6 +6,7 @@ if user.blank?
|
||||||
json.type nil
|
json.type nil
|
||||||
json.name contributor["login"]
|
json.name contributor["login"]
|
||||||
json.image_url User::Avatar.get_letter_avatar_url(contributor["login"])
|
json.image_url User::Avatar.get_letter_avatar_url(contributor["login"])
|
||||||
|
json.contribution_perc User.new(login: contributor["login"], mail: contributor["email"]).simple_contribution_perc(project, contributor["contribution_perc"])
|
||||||
else
|
else
|
||||||
json.contributions contributor["contributions"]
|
json.contributions contributor["contributions"]
|
||||||
# json.gid contributor["id"]
|
# json.gid contributor["id"]
|
||||||
|
@ -14,5 +15,5 @@ else
|
||||||
json.name user["name"]
|
json.name user["name"]
|
||||||
json.image_url user["avatar_url"]
|
json.image_url user["avatar_url"]
|
||||||
db_user = User.find_by_id(user["id"])
|
db_user = User.find_by_id(user["id"])
|
||||||
json.contribution_perc db_user.contribution_perc(project) if db_user.present?
|
json.contribution_perc db_user.simple_contribution_perc(project) if db_user.present?
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue