diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index 6b516633e..0eb9cf3a5 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -1,63 +1,82 @@ +# encoding: utf-8 ## This helper be included in applicationHelper module CoursesHelper =begin - 1. define TeacherRoles, StudentRoles - 2. define count function - 3. define search by roles - 4. define search member function +1. define TeacherRoles, StudentRoles +2. define count function +3. define search by roles +4. define search member function =end - TeacherRoles = [3, 4, 7, 9] - StudentRoles = [5, 10] - - ## return people count - - # 返回教师数量,即roles表中定义的Manager - def teacherCount project - # searchCountByRoles project, TeacherRoles - # or - searchTeacherAndAssistant(project).count - end - # 返回学生数量,即roles表中定义的Reporter - def studentCount project - # searchCountByRoles project,StudentRoles - # or - searchStudent(project).count - end - - # ===================================================================================== - # return people list - def searchTeacherAndAssistant project - searchPeopleByRoles(project, TeacherRoles) - end - - def searchStudent project - searchPeopleByRoles(project, StudentRoles) - end - # ===================================================================================== - - def searchCountByRoles project, roles_id - people = searchPeopleByRoles project, roles_id - people.count - end - - def searchPeopleByRoles project, roles_id - people = [] - begin - people = project.members.joins(:member_roles).where("member_roles.role_id IN (:role_id)", {:role_id => roles_id}) - rescue Exception => e - logger.error "[CoursesHelper] ===> #{e}" - end - people - end - - #useless - def searchPeopleByRole project, role_id - people = [] - begin - people = project.members.joins(:member_roles).where("member_roles.role_id = :role_id", {:role_id => role_id }) - rescue Exception => e - logger.error "[CoursesHelper] ===> #{e}" - end - people - end + TeacherRoles = [3, 4, 7, 9] + StudentRoles = [5, 10] + + ## return people count + + # 返回教师数量,即roles表中定义的Manager + def teacherCount project + # searchCountByRoles project, TeacherRoles + # or + searchTeacherAndAssistant(project).count + end + + # 返回学生数量,即roles表中定义的Reporter + def studentCount project + # searchCountByRoles project,StudentRoles + # or + searchStudent(project).count + end + + # ===================================================================================== + # return people list + def searchTeacherAndAssistant project + searchPeopleByRoles(project, TeacherRoles) + end + + def searchStudent project + searchPeopleByRoles(project, StudentRoles) + end + # ===================================================================================== + + def searchCountByRoles project, roles_id + people = searchPeopleByRoles project, roles_id + people.count + end + + def searchPeopleByRoles project, roles_id + people = [] + begin + people = project.members.joins(:member_roles).where("member_roles.role_id IN (:role_id)", {:role_id => roles_id}) + rescue Exception => e + logger.error "[CoursesHelper] ===> #{e}" + end + people + end + + #useless + def searchPeopleByRole project, role_id + people = [] + begin + people = project.members.joins(:member_roles).where("member_roles.role_id = :role_id", {:role_id => role_id }) + rescue Exception => e + logger.error "[CoursesHelper] ===> #{e}" + end + people + end + + def findCourseTime project + #logger.error "=============================#{l(:date)[:formats][:long] } " + date_format = l(:zh_date)[:formats][:default] + @course = Course.find_by_extra(@project.identifier) + str = "" + begin + unless @course.nil? + str = DateTime.parse(@course.setup_time.to_s).strftime("#{date_format}").to_s unless @course.setup_time.blank? + str << '-' unless @course.setup_time.blank? + str << DateTime.parse(@course.endup_time.to_s).strftime("#{date_format}").to_s unless @course.endup_time.blank? + end + rescue Exception => e + logger.error "[CoursesHelper] ===> #{e}" + end + str + end end diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb index 9f9d0f35d..9f4513f1b 100644 --- a/app/helpers/projects_helper.rb +++ b/app/helpers/projects_helper.rb @@ -66,19 +66,20 @@ module ProjectsHelper content = ''.html_safe case state when 0 - + content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected") + when 1 - + content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) + when 2 + content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected") - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) + end content = content_tag('ul', content) content_tag('div', content, :class => "tabs_enterprise") @@ -107,27 +108,27 @@ module ProjectsHelper content_tag('div', content, :class => "tabs") end - def sort_course(state, project_type) - content = ''.html_safe - case state - when 0 - - content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected") - when 1 - - content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected") - content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) - when 2 - content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) - content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected") - content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) - end - content = content_tag('ul', content) - content_tag('div', content, :class => "tabs") - end + # def sort_course(state, project_type) + # content = ''.html_safe + # case state + # when 0 +# + # content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) + # content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) + # content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected") + # when 1 +# + # content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected") + # content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type))) + # content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) + # when 2 + # content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type))) + # content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected") + # content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type))) + # end + # content = content_tag('ul', content) + # content_tag('div', content, :class => "tabs") + # end #Added by young diff --git a/app/views/bids/_list_projects.html.erb b/app/views/bids/_list_projects.html.erb index 774b22a3f..ad36c0534 100644 --- a/app/views/bids/_list_projects.html.erb +++ b/app/views/bids/_list_projects.html.erb @@ -43,7 +43,7 @@ -
- <%= l(:label_user_for_project_grade) %>: <%= UserGrade.find_by_user_id_and_project_id(member[:user_id], @project.id).grade %> + <%= l(:label_user_for_project_grade) %>: <%= UserGrade.find_by_user_id_and_project_id(member[:user_id], @project.id).grade %>