@ -67,12 +67,15 @@ class AdminController < ApplicationController
defexcellent_all_courses
name=params[:name]
@order=""
ifparams[:order]=='asc'
courses=Course.find_by_sql("SELECT c.*,count(c.id) FROM courses c,course_activities ca WHERE c.id = ca.course_id AND c.name like '%#{name}%' GROUP BY c.id ORDER BY count(c.id) asc, c.id desc")
@sort=""
ifparams[:sort]&&(params[:order]=='act')
courses=Course.find_by_sql("SELECT c.*,count(c.id) FROM courses c,course_activities ca WHERE c.id = ca.course_id AND c.name like '%#{name}%' GROUP BY c.id ORDER BY count(c.id) #{params[:sort]}, c.id desc")
@order=params[:order]
elsifparams[:order]=='desc'
courses=Course.find_by_sql("SELECT c.*,count(c.id) FROM courses c,course_activities ca WHERE c.id = ca.course_id AND c.name like '%#{name}%' GROUP BY c.id ORDER BY count(c.id) DESC, c.id desc")
@sort=params[:sort]
elsifparams[:sort]&&(params[:order]=='time')
courses=Course.find_by_sql("SELECT * FROM courses WHERE name like '%#{name}%' ORDER BY time #{params[:sort]},id desc")
@org_activities=OrgActivity.where("(org_act_type='OrgDocumentComment'and org_act_id in (#{@org_subfield_ids.join(",")})) || (container_type='OrgSubfield' and container_id=#{@org_subfield.id})").order('updated_at desc').page(params[:page]||1).per(10)
messages=MessageAll.where("(user_id =? and message_type !=?) or message_type =?",@user.id,"SystemMessage","SystemMessage").includes(:message).order("created_at desc")
@message_alls=CourseMessage.where("course_message_type in ('HomeworkCommon','StudentWorksScore','JournalsForMessage','StudentWork','Exercise') and user_id =?",@user.id).order("created_at desc")
@message_alls=CourseMessage.where("course_message_type in ('HomeworkCommon','StudentWorksScore','JournalsForMessage','StudentWork','Exercise') and user_id =? and course_id NOT IN #{course_ids}",@user.id).order("created_at desc")
when'course_message'
@message_alls=CourseMessage.where("course_message_type =? and user_id =?","Message",@user.id).order("created_at desc")
@message_alls=CourseMessage.where("course_message_type =? and user_id =? and course_id NOT IN #{course_ids}","Message",@user.id).order("created_at desc")
when'course_news'
# 课程通知包含发布的通知和回复的通知
@message_alls=CourseMessage.where("course_message_type in ('News', 'Comment') and user_id =?",@user.id).order("created_at desc")
@message_alls=CourseMessage.where("course_message_type in ('News', 'Comment') and user_id =? and course_id NOT IN #{course_ids}",@user.id).order("created_at desc")
when'poll'
@message_alls=CourseMessage.where("course_message_type =? and user_id =?","Poll",@user.id).order("created_at desc")
@message_alls=CourseMessage.where("course_message_type =? and user_id =? and course_id NOT IN #{course_ids}","Poll",@user.id).order("created_at desc")
#项目相关消息
when'issue'
@message_alls=ForgeMessage.where("forge_message_type in ('Issue', 'Journal') and user_id =?",@user.id).order("created_at desc")
has_many:members,:include=>[:principal,:roles],:conditions=>"#{Principal.table_name}.type='User' AND #{Principal.table_name}.status=#{Principal::STATUS_ACTIVE}"