@ -17,6 +17,7 @@ namespace :user_score do
users [ m . author . id ] = users [ m . author . id ] . to_i + 2
users [ m . author . id ] = users [ m . author . id ] . to_i + 2
project = m . project
project = m . project
unless project . nil?
unless project . nil?
if m . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
@ -25,6 +26,8 @@ namespace :user_score do
end
end
end
end
end
puts " :post_message calculate Completed. collaboration users count: #{ users . count } "
puts " :post_message calculate Completed. collaboration users count: #{ users . count } "
# 对缺陷的留言
# 对缺陷的留言
@ -32,12 +35,15 @@ namespace :user_score do
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
project = j . project
project = j . project
unless project . nil?
unless project . nil?
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
end
end
end
end
puts " :post_issue_message calculate Completed. collaboration users count: #{ users . count } "
puts " :post_issue_message calculate Completed. collaboration users count: #{ users . count } "
@ -46,6 +52,7 @@ namespace :user_score do
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
project = j . project
project = j . project
unless project . nil?
unless project . nil?
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
@ -54,6 +61,8 @@ namespace :user_score do
end
end
end
end
end
puts " :change_issue_status calculate Completed. collaboration users count: #{ users . count } "
puts " :change_issue_status calculate Completed. collaboration users count: #{ users . count } "
# 对留言的回复
# 对留言的回复
@ -67,12 +76,15 @@ namespace :user_score do
users [ m . author . id ] = users [ m . author . id ] . to_i + 1
users [ m . author . id ] = users [ m . author . id ] . to_i + 1
project = m . project
project = m . project
unless project . nil?
unless project . nil?
if m . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
end
end
end
end
puts " :reply_posting calculate Completed. collaboration users count: #{ users . count } "
puts " :reply_posting calculate Completed. collaboration users count: #{ users . count } "
@ -116,69 +128,90 @@ namespace :user_score do
#踩帖
#踩帖
users_skill [ pt . user . id ] = users_skill [ pt . user . id ] . to_i - 2 #踩别人帖-2分
users_skill [ pt . user . id ] = users_skill [ pt . user . id ] . to_i - 2 #踩别人帖-2分
unless project . nil?
unless project . nil?
if pt . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( pt . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( pt . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > pt . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > pt . user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
end
end
if level == 1
if level == 1
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 2 #帖子被一级会员踩-2分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 2 #帖子被一级会员踩-2分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
end
end
elsif level == 2
elsif level == 2
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 4 #帖子被二级会员踩-4分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 4 #帖子被二级会员踩-4分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 4
end
end
end
elsif level == 3
elsif level == 3
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 6 #帖子被三级会员踩-6分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 6 #帖子被三级会员踩-6分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 6
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 6
end
end
end
end
end
elsif pt . praise_or_tread == 1
elsif pt . praise_or_tread == 1
#顶贴
#顶贴
if level == 1
if level == 1
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 4 #帖子被一级会员顶+4分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 4 #帖子被一级会员顶+4分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
elsif level == 2
elsif level == 2
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 6 #帖子被二级会员顶+6分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 6 #帖子被二级会员顶+6分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 6
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 6
end
end
end
elsif level == 3
elsif level == 3
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 8 #帖子被三级会员顶+8分 add praise_tread
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 8 #帖子被三级会员顶+8分 add praise_tread
unless project . nil?
unless project . nil?
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 8
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 8
end
end
end
end
end
end
end
end
end
@ -201,12 +234,15 @@ namespace :user_score do
users_active [ changeset . user . id ] = users_active [ changeset . user . id ] . to_i + 4
users_active [ changeset . user . id ] = users_active [ changeset . user . id ] . to_i + 4
project = changeset . project
project = changeset . project
unless project . nil?
unless project . nil?
if changeset . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( changeset . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( changeset . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > changeset . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > changeset . user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
end
end
puts " :push_code calculate Completed. active users count: #{ users_active . count } "
puts " :push_code calculate Completed. active users count: #{ users_active . count } "
#提交文档
#提交文档
@ -217,12 +253,15 @@ namespace :user_score do
users_active [ document . user . id ] = users_active [ document . user . id ] . to_i + 4
users_active [ document . user . id ] = users_active [ document . user . id ] . to_i + 4
project = document . project
project = document . project
unless project . nil?
unless project . nil?
if document . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( document . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( document . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > document . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > document . user . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
end
end
puts " :push_document calculate Completed. active users count: #{ users_active . count } "
puts " :push_document calculate Completed. active users count: #{ users_active . count } "
#提交附件
#提交附件
@ -238,12 +277,15 @@ namespace :user_score do
if attachment . container . class . to_s == " Project "
if attachment . container . class . to_s == " Project "
project = attachment . project
project = attachment . project
unless project . nil?
unless project . nil?
if attachment . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( attachment . author . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( attachment . author . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > attachment . author . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > attachment . author . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
end
end
# end
# end
@ -255,6 +297,7 @@ namespace :user_score do
users_active [ j . user . id ] = users_active [ j . user . id ] . to_i + 2
users_active [ j . user . id ] = users_active [ j . user . id ] . to_i + 2
project = j . project
project = j . project
unless project . nil?
unless project . nil?
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
@ -262,18 +305,22 @@ namespace :user_score do
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
end
end
puts " :update_issue_ratio calculate Completed. active users count: #{ users_active . count } "
puts " :update_issue_ratio calculate Completed. active users count: #{ users_active . count } "
#发布缺陷
#发布缺陷
Issue . includes ( :author ) . all . each do | issue |
Issue . includes ( :author ) . all . each do | issue |
users_active [ issue . author . id ] = users_active [ issue . author . id ] . to_i + 4
users_active [ issue . author . id ] = users_active [ issue . author . id ] . to_i + 4
project = issue . project
project = issue . project
unless project . nil?
unless project . nil?
if issue . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( issue . author . id , project . id )
user_grade = UserGrade . find_by_user_id_and_project_id ( issue . author . id , project . id )
if user_grade . nil?
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > issue . author . id , :project_id = > project . id )
user_grade = UserGrade . create ( :user_id = > issue . author . id , :project_id = > project . id )
end
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
end
end
end
puts " :post_issue calculate Completed. active users count: #{ users_active . count } "
puts " :post_issue calculate Completed. active users count: #{ users_active . count } "