@ -17,11 +17,14 @@ namespace :user_score do
users [ m . author . id ] = users [ m . author . id ] . to_i + 2
project = m . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
if m . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 2
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 2
end
end
@ -32,11 +35,14 @@ namespace :user_score do
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
project = j . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
end
puts " :post_issue_message calculate Completed. collaboration users count: #{ users . count } "
@ -46,11 +52,14 @@ namespace :user_score do
users [ j . user . id ] = users [ j . user . id ] . to_i + 1
project = j . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
end
@ -67,11 +76,14 @@ namespace :user_score do
users [ m . author . id ] = users [ m . author . id ] . to_i + 1
project = m . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
if m . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( m . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > m . author . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 1
end
end
puts " :reply_posting calculate Completed. collaboration users count: #{ users . count } "
@ -116,38 +128,50 @@ namespace :user_score do
#踩帖
users_skill [ pt . user . id ] = users_skill [ pt . user . id ] . to_i - 2 #踩别人帖-2分
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( pt . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > pt . user . id , :project_id = > project . id )
if pt . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( pt . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > pt . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
if level == 1
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 2 #帖子被一级会员踩-2分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 2
end
elsif level == 2
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 4 #帖子被二级会员踩-4分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 4
end
elsif level == 3
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i - 6 #帖子被三级会员踩-6分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 6
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i - 6
end
end
elsif pt . praise_or_tread == 1
@ -155,29 +179,38 @@ namespace :user_score do
if level == 1
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 4 #帖子被一级会员顶+4分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
elsif level == 2
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 6 #帖子被二级会员顶+6分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 6
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 6
end
elsif level == 3
users_skill [ target_user . id ] = users_skill [ target_user . id ] . to_i + 8 #帖子被三级会员顶+8分 add praise_tread
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
if target_user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( target_user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > target_user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 8
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 8
end
end
end
@ -201,11 +234,14 @@ namespace :user_score do
users_active [ changeset . user . id ] = users_active [ changeset . user . id ] . to_i + 4
project = changeset . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( changeset . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > changeset . user . id , :project_id = > project . id )
if changeset . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( changeset . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > changeset . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
puts " :push_code calculate Completed. active users count: #{ users_active . count } "
@ -217,11 +253,14 @@ namespace :user_score do
users_active [ document . user . id ] = users_active [ document . user . id ] . to_i + 4
project = document . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( document . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > document . user . id , :project_id = > project . id )
if document . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( document . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > document . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
puts " :push_document calculate Completed. active users count: #{ users_active . count } "
@ -238,11 +277,14 @@ namespace :user_score do
if attachment . container . class . to_s == " Project "
project = attachment . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( attachment . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > attachment . author . id , :project_id = > project . id )
if attachment . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( attachment . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > attachment . author . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
@ -255,11 +297,13 @@ namespace :user_score do
users_active [ j . user . id ] = users_active [ j . user . id ] . to_i + 2
project = j . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
if j . user . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( j . user . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > j . user . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
puts " :update_issue_ratio calculate Completed. active users count: #{ users_active . count } "
@ -268,11 +312,14 @@ namespace :user_score do
users_active [ issue . author . id ] = users_active [ issue . author . id ] . to_i + 4
project = issue . project
unless project . nil?
user_grade = UserGrade . find_by_user_id_and_project_id ( issue . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > issue . author . id , :project_id = > project . id )
if issue . author . member_of? ( project )
user_grade = UserGrade . find_by_user_id_and_project_id ( issue . author . id , project . id )
if user_grade . nil?
user_grade = UserGrade . create ( :user_id = > issue . author . id , :project_id = > project . id )
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
grades [ user_grade . id ] = grades [ user_grade . id ] . to_i + 4
end
end
puts " :post_issue calculate Completed. active users count: #{ users_active . count } "