parent
17e6f0ee4f
commit
eacc0fdf53
|
@ -29,6 +29,7 @@ class BidsController < ApplicationController
|
|||
helper :projects
|
||||
helper :words
|
||||
helper :welcome
|
||||
helper :project_score
|
||||
|
||||
def find_project_by_bid_id
|
||||
@bid = Bid.find(params[:id])
|
||||
|
|
|
@ -414,7 +414,7 @@ module UserScoreHelper
|
|||
#发帖数
|
||||
def memo_num(user,project=nil)
|
||||
if project.nil?
|
||||
Message.includes(:author).joins(:board).where("#{Message.table_name}.parent_id IS NULL and #{Message.table_name}.author_id = '#{user.id}' and #{Board.table_name}.project_id != -1").all.count
|
||||
Message.includes(:author).joins(:board).where("#{Message.table_name}.parent_id IS NULL and #{Message.table_name}.author_id = '#{user.id}' and #{Board.table_name}.project_id != -1").all.count #+ Memo.includes(:author).where("parent_id IS NULL and author_id = '#{user.id}'").all.count
|
||||
else
|
||||
Message.includes(:author).joins(:board).where("#{Message.table_name}.parent_id IS NULL and #{Message.table_name}.author_id = '#{user.id}' and #{Board.table_name}.project_id = #{project.id}").all.count
|
||||
end
|
||||
|
@ -458,26 +458,26 @@ module UserScoreHelper
|
|||
option_number.replay_for_message = replay_for_message_num(user,project)#JournalsForMessage.includes(:user).where("m_parent_id IS NOT NULL and user_id = #{user.id}").count
|
||||
update_score(option_number)
|
||||
end
|
||||
#====================================contiue here=====================================================
|
||||
|
||||
def replay_for_message_num(user,project=nil)
|
||||
if project.nil?
|
||||
JournalsForMessage.includes(:user).where("m_parent_id IS NOT NULL and user_id = #{user.id}").count
|
||||
JournalsForMessage.includes(:user).where("m_parent_id IS NOT NULL and user_id = #{user.id} and jour_type = 'Project'").count
|
||||
else
|
||||
|
||||
JournalsForMessage.includes(:user).where("m_parent_id IS NOT NULL and user_id = #{user.id} and jour_type = 'Project' and jour_id = '#{project.id}'").count
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
#更新对帖子的回复数量
|
||||
def update_replay_for_memo(user,type)
|
||||
def update_replay_for_memo(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.replay_for_memo = Message.includes(:author).where("parent_id IS NOT NULL and author_id = #{user.id}").all.count #+ Memo.includes(:author).where("parent_id IS NOT NULL and author_id = #{user.id}").all.count
|
||||
option_number.replay_for_memo = replay_for_memo_num(user,project)#Message.includes(:author).where("parent_id IS NOT NULL and author_id = #{user.id}").all.count #+ Memo.includes(:author).where("parent_id IS NOT NULL and author_id = #{user.id}").all.count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
def replay_for_memo_num(user,project=nil)
|
||||
if project.nil?
|
||||
Message.includes(:author).where("parent_id IS NOT NULL and author_id = #{user.id}").all.count
|
||||
Message.includes(:author).joins(:board).where("#{Message.table_name}.parent_id IS NOT NULL and #{Message.table_name}.author_id = '#{user.id}' and #{Board.table_name}.project_id != -1").all.count
|
||||
else
|
||||
Message.includes(:author).joins(:board).where("#{Message.table_name}.parent_id IS NOT NULL and #{Message.table_name}.author_id = '#{user.id}' and #{Board.table_name}.project_id = #{project.id}").all.count
|
||||
end
|
||||
|
@ -495,32 +495,13 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新帖子踩各项数量
|
||||
def update_tread(user,type)
|
||||
def update_tread(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.tread = PraiseTread.where("praise_tread_object_type = 'Issue' || praise_tread_object_type = 'Message' and praise_or_tread = 0 and user_id = '#{user.id}'").all.count
|
||||
pts = PraiseTread.where("praise_tread_object_type = 'Issue' || praise_tread_object_type = 'Message' and praise_or_tread = 0").all
|
||||
result = []
|
||||
result1 = []
|
||||
result2 = []
|
||||
pts.each do |pt|
|
||||
obj = PraiseTread.find_object_by_type_and_id(pt.praise_tread_object_type, pt.praise_tread_object_id)
|
||||
if obj.nil?
|
||||
next
|
||||
end
|
||||
target_user = obj.author
|
||||
level = UserLevels.get_level(pt.user)#pt.user.get_level
|
||||
project = pt.project
|
||||
if level == 1 && target_user.id = user.id
|
||||
result << pt
|
||||
elsif level == 2 && target_user.id = user.id
|
||||
result1 << pt
|
||||
elsif level == 3 && target_user.id = user.id
|
||||
result2 << pt
|
||||
end
|
||||
end
|
||||
option_number.tread_by_one = result.count
|
||||
option_number.tread_by_two = result1.count
|
||||
option_number.tread_by_three = result2.count
|
||||
tread_nums = tread_num(user,project)
|
||||
option_number.tread = tread_nums[:tread]
|
||||
option_number.tread_by_one = tread_nums[:tead_by_one]
|
||||
option_number.tread_by_two = tread_nums[:tread_by_two]
|
||||
option_number.tread_by_three = tread_nums[:tread_by_three]
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -579,31 +560,12 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新帖子顶数量
|
||||
def update_praise(user,type)
|
||||
def update_praise(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
pts = PraiseTread.where("praise_tread_object_type = 'Issue' || praise_tread_object_type = 'Message' and praise_or_tread = 1").all
|
||||
result = []
|
||||
result1 = []
|
||||
result2 = []
|
||||
pts.each do |pt|
|
||||
obj = PraiseTread.find_object_by_type_and_id(pt.praise_tread_object_type, pt.praise_tread_object_id)
|
||||
if obj.nil?
|
||||
next
|
||||
end
|
||||
target_user = obj.author
|
||||
level = UserLevels.get_level(pt.user)#pt.user.get_level
|
||||
project = pt.project
|
||||
if level == 1 && target_user.id = user.id
|
||||
result << pt
|
||||
elsif level == 2 && target_user.id = user.id
|
||||
result1 << pt
|
||||
elsif level == 3 && target_user.id = user.id
|
||||
result2 << pt
|
||||
end
|
||||
end
|
||||
option_number.praise_by_one = result.count
|
||||
option_number.praise_by_two = result1.count
|
||||
option_number.praise_by_three = result2.count
|
||||
praise_nums = praise_num(user,project)
|
||||
option_number.praise_by_one = praise_nums[:praise_by_one]
|
||||
option_number.praise_by_two = praise_nums[:praise_by_two]
|
||||
option_number.praise_by_three = praise_nums[:praise_by_three]
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -643,6 +605,9 @@ module UserScoreHelper
|
|||
if obj.nil?
|
||||
next
|
||||
end
|
||||
#if obj.project.id == -1
|
||||
# next
|
||||
#end
|
||||
target_user = obj.author
|
||||
level = UserLevels.get_level(pt.user)#pt.user.get_level
|
||||
project = pt.project
|
||||
|
@ -660,9 +625,9 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新提交代码次数
|
||||
def update_changeset(user,type)
|
||||
def update_changeset(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.changeset = Changeset.includes(:user).where("user_id = '#{user.id}'").all.count
|
||||
option_number.changeset = changeset_num(user,project)#Changeset.includes(:user).where("user_id = '#{user.id}'").all.count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -676,9 +641,9 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新文档提交次数
|
||||
def update_document(user,type)
|
||||
def update_document(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.document = Document.includes(:user).where("user_id = '#{user.id}'").all.count
|
||||
option_number.document = document_num(user,project)#Document.includes(:user).where("user_id = '#{user.id}'").all.count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -692,9 +657,9 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新附件提交数量
|
||||
def update_attachment(user,type)
|
||||
def update_attachment(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.attachment = Attachment.includes(:author).where("author_id = '#{user.id}'").all.count
|
||||
option_number.attachment = attachment_num(user,project)#Attachment.includes(:author).where("author_id = '#{user.id}'").all.count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -707,9 +672,9 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新缺陷完成度次数
|
||||
def update_issue_done_ratio(user,type)
|
||||
def update_issue_done_ratio(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.issue_done_ratio = Journal.joins(:details, :user).where("#{JournalDetail.table_name}.prop_key = 'done_ratio' and #{User.table_name}.id = '#{user.id}'").count
|
||||
option_number.issue_done_ratio = issue_done_ratio_num(user,project) #Journal.joins(:details, :user).where("#{JournalDetail.table_name}.prop_key = 'done_ratio' and #{User.table_name}.id = '#{user.id}'").count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -723,9 +688,9 @@ module UserScoreHelper
|
|||
end
|
||||
|
||||
#更新发布缺陷次数
|
||||
def update_post_issue(user,type)
|
||||
def update_post_issue(user,type,project=nil)
|
||||
option_number = get_option_number(user,type)
|
||||
option_number.post_issue = Issue.includes(:author).where("author_id = '#{user.id}'").all.count
|
||||
option_number.post_issue = post_issue_num(user,project) #Issue.includes(:author).where("author_id = '#{user.id}'").all.count
|
||||
update_score(option_number)
|
||||
end
|
||||
|
||||
|
@ -737,7 +702,8 @@ module UserScoreHelper
|
|||
end
|
||||
end
|
||||
|
||||
def user_scores(user,type)
|
||||
|
||||
def user_scores(user,type,project=nil)
|
||||
ooption_num = get_option_number(user,type,project)
|
||||
update_score(ooption_num)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue