From 130f9f87c256caafa60e319f49a3ed751bb9ff6c Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 10 Jun 2014 17:33:31 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=AE=9E=E7=8E=B0=E4=BD=9C=E4=B8=9A=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=88=90=E5=91=98=E7=9A=84=E7=BF=BB=E9=A1=B5=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=202.=E7=BE=8E=E5=8C=96=E4=BD=9C=E4=B8=9A=E6=88=90?= =?UTF-8?q?=E5=91=98=E7=95=8C=E9=9D=A2=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/homework_attach_controller.rb | 18 ++++++++++++++++++ app/helpers/homework_attach_helper.rb | 5 +++-- .../homework_attach/_homework_member.html.erb | 11 +++++++---- .../_member_list_partial.html.erb | 3 +++ .../get_homework_member_list.js.erb | 2 ++ config/routes.rb | 2 ++ 6 files changed, 35 insertions(+), 6 deletions(-) create mode 100644 app/views/homework_attach/_member_list_partial.html.erb create mode 100644 app/views/homework_attach/get_homework_member_list.js.erb diff --git a/app/controllers/homework_attach_controller.rb b/app/controllers/homework_attach_controller.rb index e20a5a86..cd7c0b81 100644 --- a/app/controllers/homework_attach_controller.rb +++ b/app/controllers/homework_attach_controller.rb @@ -80,6 +80,8 @@ class HomeworkAttachController < ApplicationController if User.current.admin? || User.current.member_of?(@bid.courses.first) #该课程的学生的集合 @members = @bid.courses.first.members.joins(:member_roles).where("member_roles.role_id IN (:role_id) and user_id <> #{User.current.id}", {:role_id => [5, 10]}) + + @members = paginateHelper @members,10 #@all_user = [] #@bid.courses.first.members.each do |member| # @all_user << member.user @@ -96,6 +98,22 @@ class HomeworkAttachController < ApplicationController end end + def get_homework_member_list + @bid = Bid.find(params[:bid_id]) + if User.current.admin? || User.current.member_of?(@bid.courses.first) + #该课程的学生的集合 + @members = @bid.courses.first.members.joins(:member_roles).where("member_roles.role_id IN (:role_id) and user_id <> #{User.current.id}", {:role_id => [5, 10]}) + + @members = paginateHelper @members,10 + else + raise "error" + end + + respond_to do |format| + format.js + end + end + #获取指定作业的所有成员 def members_for_homework homework people = [] diff --git a/app/helpers/homework_attach_helper.rb b/app/helpers/homework_attach_helper.rb index 95327edd..0e34573e 100644 --- a/app/helpers/homework_attach_helper.rb +++ b/app/helpers/homework_attach_helper.rb @@ -19,7 +19,8 @@ module HomeworkAttachHelper def render_new_members_for_homework members #scope = Principal.active.sorted.not_member_of(project).like(params[:q]) #scope = project.members - principals = paginateHelper members,10 + #principals = paginateHelper members,10 + principals = members #principal_count = members.count #limit = 10 #principal_pages = Redmine::Pagination::Paginator.new principal_count, limit, params['page'] #by young @@ -27,7 +28,7 @@ module HomeworkAttachHelper #principals = members[offset, limit] s = content_tag('div', member_check_box_tags_ex('membership[user_ids][]', principals), :id => 'principals') links = pagination_links_full(@obj_pages, @obj_count, :per_page_links => false) {|text, parameters, options| - link_to text, new_homework_attach_path( parameters.merge(:q => params[:q], :format => 'js')), :remote => true } + link_to text, get_homework_member_list_homework_attach_index_path( parameters.merge(:q => params[:q], bid_id: params[:id]||@bid)), :remote => true } return s + content_tag('div', content_tag('ul', links), :class => 'pagination_new') end diff --git a/app/views/homework_attach/_homework_member.html.erb b/app/views/homework_attach/_homework_member.html.erb index ed268f65..ff25064a 100644 --- a/app/views/homework_attach/_homework_member.html.erb +++ b/app/views/homework_attach/_homework_member.html.erb @@ -1,23 +1,26 @@ <%= error_messages_for 'member' %> -
+
- + + <% for m in (1..10) %> - + + + <% end %>
<%= l(:label_user) %> <%= l(:label_role_plural) %>
<%= link_to_user User.current %> 发布人员 发布人员 删除
-
+
<%= l(:label_member_new) %> diff --git a/app/views/homework_attach/_member_list_partial.html.erb b/app/views/homework_attach/_member_list_partial.html.erb new file mode 100644 index 00000000..ca422f0d --- /dev/null +++ b/app/views/homework_attach/_member_list_partial.html.erb @@ -0,0 +1,3 @@ +
+ <%= render_new_members_for_homework(members) %> +
\ No newline at end of file diff --git a/app/views/homework_attach/get_homework_member_list.js.erb b/app/views/homework_attach/get_homework_member_list.js.erb new file mode 100644 index 00000000..64fa22cb --- /dev/null +++ b/app/views/homework_attach/get_homework_member_list.js.erb @@ -0,0 +1,2 @@ +$('#principals_for_new_member').replaceWith('<%= j(render :partial => "member_list_partial", locals:{members: @members})%>'); + diff --git a/config/routes.rb b/config/routes.rb index 91c2047b..8722a48c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -26,11 +26,13 @@ RedmineApp::Application.routes.draw do resources :homework_attach do collection do + get 'get_homework_member_list' match 'addjours', via: [:get, :post] match 'add_jour_reply', via: [:get,:post] match 'destroy_jour', via: [:get,:post] end end + resources :open_source_projects do collection do match 'search', via: [:get, :post]