diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 524bde9d7..3b25438df 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -695,7 +695,6 @@ class CoursesController < ApplicationController # 显示老师和助教的活动 # @authors = searchTeacherAndAssistant(@course) @authors = course_all_member(@course) - Dir.glob("#{Rails.root}/app/models/*.rb").sort.each { |file| require file } events = [] key = "course_events_#{@course.id}".to_sym if Rails.env.production? && Setting.course_cahce_enabled? diff --git a/app/controllers/memos_controller.rb b/app/controllers/memos_controller.rb index 54bcc0496..68f6f6473 100644 --- a/app/controllers/memos_controller.rb +++ b/app/controllers/memos_controller.rb @@ -157,7 +157,7 @@ class MemosController < ApplicationController def update respond_to do |format| - if( @memo.update_column(:subject, params[:memo][:subject]) && + if( #@memo.update_column(:subject, params[:memo][:subject]) && @memo.update_column(:content, params[:memo][:content]) && @memo.update_column(:sticky, params[:memo][:sticky]) && @memo.update_column(:lock, params[:memo][:lock])) diff --git a/app/controllers/repositories_controller.rb b/app/controllers/repositories_controller.rb index d0af82c8c..607c9b5db 100644 --- a/app/controllers/repositories_controller.rb +++ b/app/controllers/repositories_controller.rb @@ -227,7 +227,7 @@ update elsif request.get? respond_to do |format| format.html{ - render :layout => "project_base" + render :layout => "base_projects" } end @@ -376,7 +376,7 @@ update def revision respond_to do |format| - format.html{render :layout => 'project_base'} + format.html{render :layout => 'base_projects'} format.js {render :layout => false} end end diff --git a/app/controllers/student_work_controller.rb b/app/controllers/student_work_controller.rb index c8cbde626..3ca836773 100644 --- a/app/controllers/student_work_controller.rb +++ b/app/controllers/student_work_controller.rb @@ -14,13 +14,21 @@ class StudentWorkController < ApplicationController @show_all = @is_teacher || @homework.homework_type != 1 || @homework.homework_detail_manual.comment_status == 3 if @show_all if @homework.homework_type == 1 || @is_teacher || User.current.admin? - @stundet_works = search_homework_member @homework.student_works.order("#{@order} #{@b_sort}"),@name + if @order == "name" + @stundet_works = search_homework_member @homework.student_works.joins(:user).order("users.lastname #{@b_sort}, users.firstname #{@b_sort}"),@name + else + @stundet_works = search_homework_member @homework.student_works.order("#{@order} #{@b_sort}"),@name + end else my_work = @homework.student_works.where(:user_id => User.current.id) if my_work.empty? @stundet_works = [] else - @stundet_works = search_homework_member @homework.student_works.order("#{@order} #{@b_sort}"),@name + if @order == "name" + @stundet_works = search_homework_member @homework.student_works.joins(:user).order("users.lastname #{@b_sort}, users.firstname #{@b_sort}"),@name + else + @stundet_works = search_homework_member @homework.student_works.order("#{@order} #{@b_sort}"),@name + end end end else #学生 @@ -243,7 +251,7 @@ class StudentWorkController < ApplicationController (SELECT COUNT(*) FROM `student_works_evaluation_distributions` WHERE user_id = student_works.user_id AND student_work_id IN #{work_ids}) AS all_count, (SELECT COUNT(*) FROM `student_works_scores` WHERE user_id = student_works.user_id AND student_work_id IN #{work_ids}) AS has_count FROM `student_works` - WHERE homework_common_id = 213 + WHERE homework_common_id = #{@homework.id} ) AS table_1 ORDER BY absence #{order}") @order = order == "desc" ? "asc" : "desc" diff --git a/app/helpers/student_work_helper.rb b/app/helpers/student_work_helper.rb index 7c85dc5c4..f88b1ff21 100644 --- a/app/helpers/student_work_helper.rb +++ b/app/helpers/student_work_helper.rb @@ -70,4 +70,14 @@ module StudentWorkHelper def has_evaluation_count user,homework StudentWorksScore.joins(:student_work).where("student_works_scores.user_id = #{user.id} AND student_works.homework_common_id = #{homework.id}").count end + + #传入分数,获取对应颜色 + def score_color score + if score + color = score >= 90 ? "c_red" : "c_green" + else + color = "c_grey" + end + color + end end \ No newline at end of file diff --git a/app/views/memos/edit.html.erb b/app/views/memos/edit.html.erb index 6fc361d27..487d923b5 100644 --- a/app/views/memos/edit.html.erb +++ b/app/views/memos/edit.html.erb @@ -21,9 +21,9 @@

<% if @memo.parent.nil? && @memo.children.first.nil? %> - <%= f.text_field :subject, :required => true, :size => 96 ,:readonly => false, :maxlength => 50%> + <%#= f.text_field :subject, :required => true, :size => 96 ,:readonly => false, :maxlength => 50%> <% else %> - <%= f.text_field :subject, :required => true, :size => 96 ,:readonly => true, :style => "border: 1px solid gray", :maxlength => 50%> + <%#= f.text_field :subject, :required => true, :size => 96 ,:readonly => true, :style => "border: 1px solid gray", :maxlength => 50%> <% end %>

<% if User.current.admin?%> diff --git a/app/views/projects/settings/_new_repositories.html.erb b/app/views/projects/settings/_new_repositories.html.erb index 6e0d74849..ca771a487 100644 --- a/app/views/projects/settings/_new_repositories.html.erb +++ b/app/views/projects/settings/_new_repositories.html.erb @@ -33,8 +33,7 @@ <% if repository.scm_name=="Git"%> <%if User.current.allowed_to?(:manage_repository, @project) %> - <%= link_to(l(:label_user_plural), committers_repository_path(repository) - ) %> + <%= link_to(l(:label_user_plural), committers_repository_path(repository)) %> <% end %> <% end %> diff --git a/app/views/projects/settings/_repositories.html.erb b/app/views/projects/settings/_repositories.html.erb index 3d9d71a56..6c340f47c 100644 --- a/app/views/projects/settings/_repositories.html.erb +++ b/app/views/projects/settings/_repositories.html.erb @@ -27,25 +27,15 @@ <% end %> - <% if repository.scm_name=="Subversion"%> - <%if User.current.allowed_to?(:manage_repository, @project) %> - <%= link_to(l(:label_user_plural), committers_repository_path(repository), - :class => 'icon icon-user') %> - <%= link_to(l(:button_edit), edit_repository_path(repository), - :class => 'icon icon-edit') %> - <%= delete_link repository_path(repository) %> - <% end %> - <% elsif repository.scm_name=="Git"%> - <%if User.current.allowed_to?(:manage_repository, @project) %> - - <%= link_to(l(:label_user_plural), committers_repository_path(repository), - :class => 'icon icon-user') %> - <% if repository.login.to_s==User.current.login.to_s %> - <%= delete_link repository_path(repository) %> - <% end %> - <% end %> - <% end %> + <%= link_to(l(:label_user_plural), committers_repository_path(repository), :class => 'icon icon-user') %> + <% if repository.login.to_s==User.current.login.to_s %> + <%= delete_link repository_path(repository) %> + <% end %> + <% end %> <% end %> diff --git a/app/views/student_work/_student_work.html.erb b/app/views/student_work/_student_work.html.erb index e39cb130d..abbd134b0 100644 --- a/app/views/student_work/_student_work.html.erb +++ b/app/views/student_work/_student_work.html.erb @@ -11,28 +11,35 @@
  • <%= link_to student_work.name, student_work_path(student_work),:remote => true,:title => student_work.name, :class => "c_blue02"%>
  • -
  • - <%= student_work.teacher_score.nil? ? "--" : format("%.2f",student_work.teacher_score)%> +
  • + <% if Time.parse(@homework.end_time.to_s) < Time.parse(student_work.created_at.to_s) %> + 迟交 + <% else%> + <%= student_work.created_at.strftime("%m-%d").to_s%> + <% end %>
  • -
  • - <%= student_work.teaching_asistant_score.nil? ? "--" : format("%.2f",student_work.teaching_asistant_score)%> +
  • + <%= student_work.teacher_score.nil? ? "--" : format("%.1f",student_work.teacher_score)%>
  • -
  • - <%= student_work.student_score.nil? ? "--" : format("%.2f",student_work.student_score)%> +
  • + <%= student_work.teaching_asistant_score.nil? ? "--" : format("%.1f",student_work.teaching_asistant_score)%> +
  • +
  • + <%= student_work.student_score.nil? ? "--" : format("%.1f",student_work.student_score)%> <% unless student_work.student_score.nil?%> - + (<%= student_work.student_works_scores.where(:reviewer_role => 3).count%>)
    现共有  <%= student_work.student_works_scores.where(:reviewer_role => 3).count%>  名学生进行了匿评,平均分为 -  <%= format("%.2f",student_work.student_score)%> 分。 +  <%= format("%.1f",student_work.student_score)%> 分。
    <% end%>
  • -
  • - <%= student_work.final_score.nil? ? "--" : format("%.2f",student_work.final_score)%> +
  • + <%= student_work.final_score.nil? ? "--" : format("%.1f",student_work.final_score)%>
  • \ No newline at end of file diff --git a/app/views/student_work/_student_work_title.html.erb b/app/views/student_work/_student_work_title.html.erb index 6fb7e248b..2a3a5e124 100644 --- a/app/views/student_work/_student_work_title.html.erb +++ b/app/views/student_work/_student_work_title.html.erb @@ -2,30 +2,39 @@ 学号
  • - 学生姓名 + <%= link_to "姓名",@show_all ? student_work_index_path(:homework => @homework.id,:order => "name", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> + <% if @show_all && @order == "name"%> + + <% end%>
  • 作品名称
  • -
  • - <%= link_to "教师评分",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teacher_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl hwork_code"%> +
  • + <%= link_to "时间",@show_all ? student_work_index_path(:homework => @homework.id,:order => "created_at", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> + <% if @show_all && @order == "created_at"%> + + <% end%> +
  • +
  • + <%= link_to "教师",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teacher_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> <% if @show_all && @order == "teacher_score"%> <% end%>
  • -
  • - <%= link_to "教辅评分",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teaching_asistant_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl hwork_code"%> +
  • + <%= link_to "教辅",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teaching_asistant_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> <% if @show_all && @order == "teaching_asistant_score"%> <% end%>
  • -
  • +
  • <%= link_to "匿评",@show_all ? student_work_index_path(:homework => @homework.id,:order => "student_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> <% if @show_all && @order == "student_score"%> <% end%>
  • -
  • +
  • <%= link_to "成绩",@show_all ? student_work_index_path(:homework => @homework.id,:order => "final_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> <% if @show_all && @order == "final_score"%> diff --git a/db/migrate/20150619060110_homework_common_time.rb b/db/migrate/20150619060110_homework_common_time.rb new file mode 100644 index 000000000..c574ad93c --- /dev/null +++ b/db/migrate/20150619060110_homework_common_time.rb @@ -0,0 +1,19 @@ +class HomeworkCommonTime < ActiveRecord::Migration + def up + count = StudentWork.all.count / 100 + 1 + transaction do + for i in 1 ... count do i + StudentWork.page(i).per(100).each do |homework| + old_homework = HomeworkAttach.where(:user_id => homework.user_id, :name => homework.name, :description => homework.description).first + if old_homework + homework.update_column('created_at', old_homework.created_at) + end + end + end + puts i.to_s + end + end + + def down + end +end diff --git a/db/schema.rb b/db/schema.rb index 68f00c1cd..420432355 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20150604153000) do +ActiveRecord::Schema.define(:version => 20150619060110) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false diff --git a/lib/trustie/cache/clear_course_event.rb b/lib/trustie/cache/clear_course_event.rb index a5f44bf45..cc643020d 100644 --- a/lib/trustie/cache/clear_course_event.rb +++ b/lib/trustie/cache/clear_course_event.rb @@ -6,6 +6,7 @@ module Trustie def self.included(base) base.class_eval{ after_create :clear_course_events + after_destroy :clear_course_events } end diff --git a/public/stylesheets/courses.css b/public/stylesheets/courses.css index 2ccc52f05..012944012 100644 --- a/public/stylesheets/courses.css +++ b/public/stylesheets/courses.css @@ -100,7 +100,6 @@ a:hover.grey_btn{ background:#717171; color:#fff;} .f_14{ font-size:14px;} .c_dblue{ color:#3e6d8e;} .w90{width:90px;} -.w40{width:40px;} .ml10{margin-left:10px;} .resource{ width:670px;} .re_top{width:660px; height:40px; background:#eaeaea; padding:5px;} @@ -653,6 +652,9 @@ a:hover.down_btn{ background:#14ad5a; color:#fff; border:1px solid #14ad5a;} .to_top{width: 19px;height: 74px;position: fixed;top: 50px;right: 1px;color: white;background: #15bccf; line-height: 1.2; padding-top: 10px;padding-left: 5px;font-size: 14px;cursor: pointer;} .hwork_num_ab{ width:120px; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;min-height: 1px;} .hwork_name_ab{ display:block;width:340px; overflow: hidden;white-space: nowrap; text-overflow:ellipsis;min-height: 1px;} +.hwork_time{ display:block;width:40px; overflow: hidden;white-space: nowrap; text-overflow:ellipsis;min-height: 1px;} +.hwork_time_c{width:40px;color: #6d6d6d} +.hwork_score{ width:62px; text-align:center; } .absence{width: 50px;text-align: center;} /* 评分插件 */ input#score{ width:40px;} diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index ca2df7f07..c3cc4f7df 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -58,6 +58,7 @@ h4{ font-size:14px; color:#3b3b3b;} .ml8{ margin-left:8px;} .ml10{ margin-left:10px;} .ml15{ margin-left:15px;} +.ml16{ margin-left: 16px;} .ml20{ margin-left:20px;} .ml35{margin-left: 35px;} .ml40{ margin-left:40px;} @@ -91,6 +92,7 @@ h4{ font-size:14px; color:#3b3b3b;} .w20{ width:20px;} .w40{width: 40px;} .w45{ width: 45px;} +.w50{ width:50px;} .w60{ width:60px;} .w70{ width:70px;} .w90{ width:90px;}