diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index baf74f979..83c75ca0c 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -559,7 +559,11 @@ class UsersController < ApplicationController
if(params[:type].blank? || params[:type] == "1") #全部
visible_course = Course.where("is_public = 1 && is_delete = 0")
visible_course_ids = visible_course.empty? ? "(-1)" : "(" + visible_course.map{|course| course.id}.join(",") + ")"
- @homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and (name like '%#{search}%')").order("created_at desc")
+ all_homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}'")
+ all_user_ids = all_homeworks.map{|hw| hw.user_id}
+ user_str_ids = search_user_by_name all_user_ids, search
+ user_ids = user_str_ids.empty? ? "(-1)" : "(" + user_str_ids.join(",") + ")"
+ @homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and (name like '%#{search}%' or user_id in #{user_ids})").order("created_at desc")
elsif params[:type] == "2" #课程资源
@homeworks = HomeworkCommon.where("user_id = #{@user.id} and publish_time <= '#{Date.today}' and (name like '%#{search}%')").order("created_at desc")
end
diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb
index efb67a2ac..36b81b353 100644
--- a/app/helpers/users_helper.rb
+++ b/app/helpers/users_helper.rb
@@ -606,4 +606,16 @@ module UsersHelper
type
end
+ #根据姓名搜索用户
+ def search_user_by_name user_ids, name
+ result_ids = []
+ user_ids.each do |user_id|
+ user = User.find user_id
+ username = user.lastname.to_s.downcase + user.firstname.to_s.downcase
+ if username.include?(name)
+ result_ids << user_id
+ end
+ end
+ result_ids
+ end
end
diff --git a/app/views/users/_homework_search_input.html.erb b/app/views/users/_homework_search_input.html.erb
index 21d1b9625..a4b966bf2 100644
--- a/app/views/users/_homework_search_input.html.erb
+++ b/app/views/users/_homework_search_input.html.erb
@@ -1,4 +1,4 @@
-
+