添加迁移

代码优化
This commit is contained in:
huang 2015-08-31 16:41:52 +08:00
parent 3807c4ea2a
commit b5c0d03590
4 changed files with 90 additions and 18 deletions

View File

@ -202,24 +202,24 @@ class JournalsForMessage < ActiveRecord::Base
# 用户留言消息通知
def act_as_user_feedback_message
# 主留言
receivers = []
if self.reply_id == 0
if self.user_id != self.jour_id # 过滤自己给自己的留言消息
receivers << self.jour
end
else # 留言回复
reply_to = User.find(self.reply_id)
if self.user_id != self.reply_id # 添加我回复的那个人
receivers << reply_to
end
if self.user_id != self.parent.jour_id && self.reply_id != self.parent.jour_id # 给东家发信息,如果回复的对象是东家则不发
receivers << self.parent.jour
end
end
if self.jour_type == 'Principal'
receivers.each do |r|
self.user_feedback_messages << UserFeedbackMessage.new(:user_id => r.id, :journals_for_message_id => self.id, :journals_for_message_type => "Principal", :viewed => false)
receivers = []
if self.reply_id == 0
if self.user_id != self.jour_id # 过滤自己给自己的留言消息
receivers << self.jour
end
else # 留言回复
reply_to = User.find(self.reply_id)
if self.user_id != self.reply_id # 添加我回复的那个人
receivers << reply_to
end
if self.user_id != self.parent.jour_id && self.reply_id != self.parent.jour_id # 给东家发信息,如果回复的对象是东家则不发
receivers << self.parent.jour
end
end
receivers.each do |r|
self.user_feedback_messages << UserFeedbackMessage.new(:user_id => r.id, :journals_for_message_id => self.id, :journals_for_message_type => "Principal", :viewed => false)
end
end
end

View File

@ -20,9 +20,9 @@
<!--<li><%#= link_to "项目新闻", user_message_path(User.current, :type => 'forge_news'), :class => "resourcesGrey" %></li>-->
<!--<li><%#= link_to "新闻回复", user_message_path(User.current, :type => 'forge_news_reply'), :class => "resourcesGrey" %></li>-->
<%# 项目相关消息 %>
<!--<li><%#= link_to "贴吧帖子", user_message_path(User.current, :type => 'forum'), :class => "resourcesGrey" %></li>-->
<li><%= link_to "贴吧帖子", user_message_path(User.current, :type => 'forum'), :class => "resourcesGrey" %></li>
<%# 系统贴吧 %>
<!--<li><%#= link_to "用户留言",user_message_path(User.current, :type => 'user_feedback'), :class => "resourcesGrey" %></li>-->
<li><%= link_to "用户留言",user_message_path(User.current, :type => 'user_feedback'), :class => "resourcesGrey" %></li>
</ul>
</li>

View File

@ -0,0 +1,36 @@
# encoding: UTF-8
class UserFeedbackMessage < ActiveRecord::Migration
def up
JournalsForMessage.all.each do |jour_for_message|
transaction do
# 主留言
if jour_for_message.jour_type == 'Principal'
receivers = []
if jour_for_message.reply_id == 0
if jour_for_message.user_id != jour_for_message.jour_id # 过滤自己给自己的留言消息
receivers << jour_for_message.jour
end
else # 留言回复
reply_to = User.find(jour_for_message.reply_id)
if jour_for_message.user_id != jour_for_message.reply_id # 添加我回复的那个人
receivers << reply_to
end
unless jour_for_message.parent.nil?
if jour_for_message.user_id != jour_for_message.parent.jour_id && jour_for_message.reply_id != jour_for_message.parent.jour_id # 给东家发信息,如果回复的对象是东家则不发
receivers << jour_for_message.parent.jour
end
end
end
unless receivers.blank?
receivers.each do |r|
jour_for_message.user_feedback_messages << UserFeedbackMessage.new(:user_id => r.id, :journals_for_message_id => jour_for_message.id, :journals_for_message_type => "Principal", :viewed => false)
end
end
end
end
end
end
def down
end
end

View File

@ -0,0 +1,36 @@
class AboutMemoMessage < ActiveRecord::Migration
def up
Memo.all.each do |memo|
transaction do
# 贴吧帖子
receivers = []
u = User.find(6)
receivers << u
# 主贴
if memo.parent_id.nil?
if memo.author_id != memo.forum.creator_id # 发帖人不是吧主
receivers << memo.forum.creator
end
else # 回帖
# 添加吧主
if memo.author_id != memo.forum.creator_id
receivers << memo.forum.creator
end
# 添加发帖人
unless memo.parent.nil?
if memo.author_id != memo.parent.author_id
receivers << memo.parent.author
puts memo.id
end
end
end
receivers.each do |r|
memo.memo_messages << MemoMessage.new(:user_id => r.id, :forum_id => memo.forum_id, :memo_id => memo.id, :memo_type => "Memo", :viewed => false)
end
end
end
end
def down
end
end