From deda05b048fd5f5ec7a23e81377cf8225d98aa8b Mon Sep 17 00:00:00 2001 From: Tim Date: Wed, 13 Apr 2016 14:23:24 +0800 Subject: [PATCH 01/13] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E4=B8=8B=E6=8B=89?= =?UTF-8?q?=E9=80=89=E6=8B=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/homework_common/index.html.erb | 2 +- public/stylesheets/courses.css | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/views/homework_common/index.html.erb b/app/views/homework_common/index.html.erb index 6a3528e51..9a1497fa7 100644 --- a/app/views/homework_common/index.html.erb +++ b/app/views/homework_common/index.html.erb @@ -43,7 +43,7 @@ From 2d4f724e33fd582a5c3e878cd8e1e4cc9d28163d Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 14 Apr 2016 15:01:18 +0800 Subject: [PATCH 07/13] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E7=9A=84=E5=AD=A6?= =?UTF-8?q?=E7=94=9F=E5=88=97=E8=A1=A8=E4=BD=9C=E5=93=81=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E6=8C=89=E4=BD=9C=E4=B8=9A=E5=8F=91=E5=B8=83=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=8D=87=E5=BA=8F=E6=8E=92=E5=88=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/courses_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index af02829e0..af793ca31 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -334,7 +334,7 @@ class CoursesController < ApplicationController def export_course_member_excel @all_members = student_homework_score(0,0,0,"desc") - @homeworks = @course.homework_commons.order("created_at desc") + @homeworks = @course.homework_commons.order("created_at asc") filename="#{@course.teacher.lastname.to_s + @course.teacher.firstname.to_s }_#{@course.name}_#{@course.time.to_s + @course.term}#{l(:excel_member_list)}"; respond_to do |format| From 96accf1e7a6a0dd57134a4fae234915d2fed9bc4 Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 14 Apr 2016 15:35:27 +0800 Subject: [PATCH 08/13] =?UTF-8?q?=E6=9C=AA=E5=8F=91=E5=B8=83=E7=9A=84?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E4=B8=8D=E5=BA=94=E8=BF=9B=E8=A1=8C=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A=E7=9A=84=E7=A7=AF=E5=88=86=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/member.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/member.rb b/app/models/member.rb index e19e1f0df..cc227cf31 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -145,7 +145,7 @@ class Member < ActiveRecord::Base #当前课程的作业列表 def homework_common_list - HomeworkCommon.where(:course_id => self.course_id) + HomeworkCommon.where("course_id = ? and publish_time is not null and publish_time <= '#{Date.today}'", self.course_id) end #当前学生在指定作业内的得分 From 829399b8af4602f74ecba2a9148758cc7e54ca4b Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 14 Apr 2016 16:59:25 +0800 Subject: [PATCH 09/13] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E4=B8=BB=E9=A1=B5?= =?UTF-8?q?=E7=9A=84=E8=AF=BE=E7=A8=8B=E5=88=97=E8=A1=A8=E5=92=8C=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/new_base_user.html.erb | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/app/views/layouts/new_base_user.html.erb b/app/views/layouts/new_base_user.html.erb index 6ce4d0423..2a6df9c86 100644 --- a/app/views/layouts/new_base_user.html.erb +++ b/app/views/layouts/new_base_user.html.erb @@ -209,7 +209,7 @@ <% end%> <% end%> - <% if @user.courses.visible.count > 0 + <%# if @user.courses.visible.count > 0 course_order_ids = "(" + CourseActivity.find_by_sql("SELECT c.course_id, updated_at FROM (SELECT ca.course_id, MAX(ca.updated_at) AS updated_at FROM course_activities ca WHERE ca.course_id IN (" + @user.courses.visible.select('courses.id').map{|c| c.id}.join(',') + ") @@ -221,7 +221,11 @@ end %> - <%# courses = @user.courses.visible.where("is_delete =?", 0).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5) %> + <% if @user.courses.visible.count > 0 + courses = @user.courses.visible.where("is_delete =?", 0).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5) + else + courses = [] + end %>
    <%= render :partial => 'layouts/user_courses', :locals => {:courses => courses,:user => @user, :page => 0} %> @@ -234,7 +238,7 @@ <%=link_to "", new_project_path(:host=> Setting.host_name), :class => "homepageMenuSetting fr", :style => "margin-right:10px;", :title => "新建项目"%> <% end%>
- <% if @user.projects.visible.count > 0 + <%# if @user.projects.visible.count > 0 project_order_ids = "(" + ForgeActivity.find_by_sql("SELECT p.project_id, p.updated_at FROM (SELECT fa.project_id, MAX(fa.updated_at) AS updated_at FROM forge_activities fa WHERE fa.project_id IN (" + @user.projects.visible.select('projects.id').map{|p| p.id}.join(',') + ") @@ -246,7 +250,12 @@ end %> - <%# projects = @user.projects.visible.select("projects.*, (SELECT MAX(created_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(5)%> + <% if @user.projects.visible.count > 0 + projects = @user.projects.visible.select("projects.*, (SELECT MAX(created_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(5) + else + projects = [] + end + %>
    <%= render :partial => 'layouts/user_projects', :locals => {:projects => projects,:user => @user, :page => 0} %> From 3b4f6f4846cbb76e0e9514a5a363cb94e7015bc8 Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 14 Apr 2016 17:24:56 +0800 Subject: [PATCH 10/13] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=86=E7=8F=AD?= =?UTF-8?q?=E5=92=8C=E4=BF=AE=E6=94=B9=E5=88=86=E7=8F=AD=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E6=97=B6=E5=88=B7=E6=96=B0=E5=AD=A6=E7=94=9F=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/courses_controller.rb | 4 ++-- app/views/courses/addgroups.js.erb | 3 ++- app/views/courses/updategroupname.js.erb | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index a2d165492..87ef77fdd 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -187,7 +187,7 @@ class CoursesController < ApplicationController end @canShowCode = User.current.allowed_to?(:as_teacher,@course) && params[:role] != '1' @is_remote = true - + @members = student_homework_score(0,0, 10,"desc") @course_groups = @course.course_groups end @@ -209,7 +209,7 @@ class CoursesController < ApplicationController end @canShowCode = isCourseTeacher(User.current.id,@course) && params[:role] != '1' @is_remote = true - + @members = student_homework_score(0,0, 10,"desc") @course_groups = @course.course_groups end diff --git a/app/views/courses/addgroups.js.erb b/app/views/courses/addgroups.js.erb index cb7e1fbb1..f0c0f4be3 100644 --- a/app/views/courses/addgroups.js.erb +++ b/app/views/courses/addgroups.js.erb @@ -1 +1,2 @@ -$("#st_groups").html("<%= escape_javascript( render :partial => 'new_groups_name', locals: {:course_groups => @course_groups})%>"); \ No newline at end of file +$("#st_groups").html("<%= escape_javascript( render :partial => 'new_groups_name', locals: {:course_groups => @course_groups})%>"); +$("#member_content").html("<%= escape_javascript( render :partial => 'new_member_list', :locals => {:members => @members})%>"); \ No newline at end of file diff --git a/app/views/courses/updategroupname.js.erb b/app/views/courses/updategroupname.js.erb index 8dd142557..18fe909fb 100644 --- a/app/views/courses/updategroupname.js.erb +++ b/app/views/courses/updategroupname.js.erb @@ -1,4 +1,5 @@ /** * Created by Administrator on 2014/12/3. */ -$("#st_groups").html("<%= escape_javascript( render :partial => 'new_groups_name', locals: {:course_groups => @course_groups})%>"); \ No newline at end of file +$("#st_groups").html("<%= escape_javascript( render :partial => 'new_groups_name', locals: {:course_groups => @course_groups})%>"); +$("#member_content").html("<%= escape_javascript( render :partial => 'new_member_list', :locals => {:members => @members})%>"); \ No newline at end of file From 143f3f8f9aab4fe70dbfc4c96e5ef6a7f2a8f114 Mon Sep 17 00:00:00 2001 From: cxt Date: Fri, 15 Apr 2016 11:26:56 +0800 Subject: [PATCH 11/13] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E5=A2=9E=E5=8A=A0=E7=B2=BE=E5=93=81=E8=AF=BE=E7=A8=8B?= =?UTF-8?q?=E7=9A=84=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/admin_controller.rb | 27 +++++++ app/views/admin/_course_detail_tr.html.erb | 32 +++++++++ app/views/admin/_tab_excellent_courses.erb | 7 ++ app/views/admin/courses.html.erb | 4 +- .../admin/excellent_all_courses.html.erb | 71 +++++++++++++++++++ app/views/admin/excellent_courses.html.erb | 6 ++ app/views/admin/set_excellent_course.js.erb | 1 + config/routes.rb | 4 +- 8 files changed, 148 insertions(+), 4 deletions(-) create mode 100644 app/views/admin/_course_detail_tr.html.erb create mode 100644 app/views/admin/_tab_excellent_courses.erb create mode 100644 app/views/admin/excellent_all_courses.html.erb create mode 100644 app/views/admin/set_excellent_course.js.erb diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index e1e99447d..81407d95d 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb @@ -63,6 +63,33 @@ class AdminController < ApplicationController end end + #精品课程下的全部课程 + def excellent_all_courses + @name = params[:name] + @courses = Course.like(@name).order('created_at desc') + @courses = paginateHelper @courses,30 + @page = (params['page'] || 1).to_i - 1 + respond_to do |format| + format.html + end + end + + #设为精品 + def set_excellent_course + @course = Course.find params[:id] + unless @course.nil? + if @course.is_excellent == 1 || @course.excellent_option == 1 + @course.update_column('is_excellent', 0) + @course.update_column('excellent_option', 0) + else + @course.update_column('is_excellent', 1) + end + respond_to do |format| + format.js + end + end + end + #管理员界面课程资源列表 def course_resource_list diff --git a/app/views/admin/_course_detail_tr.html.erb b/app/views/admin/_course_detail_tr.html.erb new file mode 100644 index 000000000..ca15a6696 --- /dev/null +++ b/app/views/admin/_course_detail_tr.html.erb @@ -0,0 +1,32 @@ + + <%= course.id %> + + + + <%= link_to(course.name, course_path(course.id)) %> + + + + <%= link_to(course.try(:teacher).try(:realname).truncate(6, omission: '...'), user_path(course.teacher)) %> + + + <%= studentCount(course) %> + + + <%= course.homework_commons.count%> + + + <%= student_works_num(course) %> + + + <%= visable_attachemnts_incourse(course).count%> + + + <%= course.boards.first.topics.count + Message.where("board_id =? and parent_id is not ?", course.boards.first.id, nil).count %> + + + <%= course.course_activities.count%> + + + <%= link_to( course.is_excellent == 1 || course.excellent_option == 1 ? "取消精品" : "设为精品", { :controller => 'admin', :action => 'set_excellent_course', :id => course.id },:remote=>true, :class => 'icon-del') %> + diff --git a/app/views/admin/_tab_excellent_courses.erb b/app/views/admin/_tab_excellent_courses.erb new file mode 100644 index 000000000..844648c0b --- /dev/null +++ b/app/views/admin/_tab_excellent_courses.erb @@ -0,0 +1,7 @@ +
    +
      +
    • <%= link_to '精品课程', {:action => 'excellent_courses'}, class: "#{current_page?(excellent_courses_path)? 'selected' : nil }" %>
    • +
    • <%= link_to '全部课程', {:action => 'excellent_all_courses'}, class: "#{current_page?(excellent_all_courses_path)? 'selected' : nil }" %>
    • + +
    +
    \ No newline at end of file diff --git a/app/views/admin/courses.html.erb b/app/views/admin/courses.html.erb index 2505b3d06..8e2f146a0 100644 --- a/app/views/admin/courses.html.erb +++ b/app/views/admin/courses.html.erb @@ -13,9 +13,7 @@ <%= text_field_tag 'name', params[:name], :size => 30, :placeholder => '课程名称' %> <%= submit_tag l(:button_apply), :class => "small", :name => nil %> - - <%= l(:button_clear)%> - + <%= link_to l(:button_clear), {:controller => 'admin', :action => 'courses'},:remote => true, :class => 'icon icon-reload' %> <% end %>   diff --git a/app/views/admin/excellent_all_courses.html.erb b/app/views/admin/excellent_all_courses.html.erb new file mode 100644 index 000000000..7554885a9 --- /dev/null +++ b/app/views/admin/excellent_all_courses.html.erb @@ -0,0 +1,71 @@ +<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', :media => 'all' %> +

    + 精品课程列表 +

    +<%= render 'tab_excellent_courses' %> + +

    + 全部课程列表 +

    + +<%= form_tag({}, :method => :get) do %> +
    + + <%= text_field_tag 'name', params[:name], :size => 30, :placeholder => '课程名称' %> + <%= submit_tag l(:button_apply), :class => "small", :name => nil %> + <%= link_to l(:button_clear), {:controller => 'admin', :action => 'excellent_all_courses'}, :class => 'icon icon-reload' %> +
    +<% end %> +  + +
    + + + + + + + + + + + + + + + + + <% @courses.each do |course| %> + " id="tr_<%= course.id %>"> + <%= render :partial => 'course_detail_tr', :locals => {:course => course} %> + + <% end %> + +
    + 序号 + + 课程名 + + 主讲老师 + + 学生数 + + 作业数 + + 作品数 + + 资源数 + + 帖子数 + + 动态数 + +
    +
    + + +<% html_title(l(:label_excellent_courses_list)) -%> \ No newline at end of file diff --git a/app/views/admin/excellent_courses.html.erb b/app/views/admin/excellent_courses.html.erb index 59426455a..fef6da84d 100644 --- a/app/views/admin/excellent_courses.html.erb +++ b/app/views/admin/excellent_courses.html.erb @@ -1,3 +1,9 @@ +<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', :media => 'all' %> +

    + <%=l(:label_excellent_courses_list)%> +

    +<%= render 'tab_excellent_courses' %> +

    <%=l(:label_excellent_courses_list)%>

    diff --git a/app/views/admin/set_excellent_course.js.erb b/app/views/admin/set_excellent_course.js.erb new file mode 100644 index 000000000..7b3ade139 --- /dev/null +++ b/app/views/admin/set_excellent_course.js.erb @@ -0,0 +1 @@ +$("#tr_<%=@course.id %>").html("<%=escape_javascript(render :partial => 'course_detail_tr', :locals => {:course => @course}) %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index ea89bb57e..9cfb3126d 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -950,7 +950,9 @@ RedmineApp::Application.routes.draw do match 'admin', :to => 'admin#index', :via => :get match 'admin/projects', :via => :get get 'admin/courses' - get 'admin/excellent_courses' + get 'admin/excellent_courses', as: :excellent_courses + get 'admin/excellent_all_courses', as: :excellent_all_courses + match 'admin/set_excellent_course/:id', :to => 'admin#set_excellent_course' get 'admin/course_resource_list' get 'admin/project_resource_list' match 'admin/users', :via => :get From 998106b37bde2222906da619358a24c54cf52bdf Mon Sep 17 00:00:00 2001 From: yuanke <249218296@qq.com> Date: Fri, 15 Apr 2016 11:28:20 +0800 Subject: [PATCH 12/13] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E6=9F=A5=E9=87=8D=E7=9A=84=E4=B8=80=E4=BA=9B=E5=BC=B9=E6=A1=86?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E6=95=88=E6=9E=9C=E7=AD=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/admin_controller.rb | 3 ++- app/controllers/courses_controller.rb | 15 ++++++++++++++ app/controllers/student_work_controller.rb | 5 +---- app/views/admin/code_work_tests.html.erb | 8 +++++--- .../courses/_compare_code_tips_1.html.erb | 6 ++---- app/views/courses/_show_compare_code.html.erb | 9 +++++++-- app/views/courses/code_repeat.html.erb | 20 ++++++++++--------- app/views/courses/show_comparecode.js.erb | 8 ++++---- .../student_work/_student_work_list.html.erb | 2 +- public/stylesheets/application.css | 10 ++++++---- 10 files changed, 54 insertions(+), 32 deletions(-) diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index 8009feac1..daab58bde 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb @@ -558,7 +558,8 @@ class AdminController < ApplicationController #代码测试列表 def code_work_tests - @code_work_tests = StudentWorkTest.find_by_sql("select a.* ,b.id as homeworkid,d.language from student_work_tests as a , homework_commons as b ,student_works as c, homework_detail_programings as d where a.student_work_id = c.id and b.id = c.homework_common_id and c.homework_common_id = d.homework_common_id order by a.created_at desc") + @code_work_tests = StudentWorkTest.find_by_sql("select status,results,created_at, student_work_id from student_work_tests order by id desc ") + #@code_work_tests = StudentWorkTest.find_by_sql("select a.status,a.results,a.created_at ,b.id as homeworkid,d.language from student_work_tests as a , homework_commons as b ,student_works as c, homework_detail_programings as d where a.student_work_id = c.id and b.id = c.homework_common_id and c.homework_common_id = d.homework_common_id order by a.id desc ") #@code_work_tests = StudentWorkTest.order('created_at desc') @code_work_tests = paginateHelper @code_work_tests,30 @page = (params['page'] || 1).to_i - 1 diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 942b3b2d2..698a5ac4f 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -944,6 +944,12 @@ class CoursesController < ApplicationController @order,@b_sort,@name,@group = params[:order] || "score",params[:sort] || "desc",params[:name] || "",params[:group] @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? + + if !@is_teacher + render_403 + return + end + @homework = HomeworkCommon.find params[:homework] #order("#{@order} #{@b_sort}" @student_works = search_homework_member @homework.student_works.select("student_works.*,IF(final_score is null,null,IF(final_score = 0, 0, final_score - absence_penalty - late_penalty)) as score").order("simi_value desc"),@name @@ -964,10 +970,19 @@ class CoursesController < ApplicationController src_id = params[:src_id] dst_id = params[:dst_id] + @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? + + if !@is_teacher + render_403 + return + end + src_work = StudentWork.where("id =?", src_id).first @homework = HomeworkCommon.find params[:homework_id] + @simi_value = src_work.simi_value.to_i + @src_code = src_work.description src_user = User.where("id =?", src_work.user_id).first diff --git a/app/controllers/student_work_controller.rb b/app/controllers/student_work_controller.rb index ae78bf920..a2bf24b96 100644 --- a/app/controllers/student_work_controller.rb +++ b/app/controllers/student_work_controller.rb @@ -254,14 +254,11 @@ class StudentWorkController < ApplicationController logger.debug "time3 is #{Time.now.usec} " result['results'].each do |key,value| - if value['simiworkid'].to_i > 0 @student_work = StudentWork.where("id =?", key.to_i).first @student_work.update_column('simi_id', value['simiworkid'].to_i) @student_work.update_column('simi_value', value['simivalue'].to_i) - end # sqlstr = "update student_works set simi_id=#{value['simiworkid']},simi_value=#{value['simivalue']} where id=#{key.to_i} " # dbh.execute(sqlstr) - end logger.debug "time4 is #{Time.now.usec} " end @@ -281,7 +278,7 @@ class StudentWorkController < ApplicationController if @homework.simi_time != nil resultObj[:comparetime] = Time.parse(@homework.simi_time.to_s).strftime("%Y-%m-%d %H:%M") else - resultObj[:comparetime] = @homework.simi_time + resultObj[:comparetime] = 0 end render :json => resultObj diff --git a/app/views/admin/code_work_tests.html.erb b/app/views/admin/code_work_tests.html.erb index df7de6bf0..9fbd2fa46 100644 --- a/app/views/admin/code_work_tests.html.erb +++ b/app/views/admin/code_work_tests.html.erb @@ -37,9 +37,11 @@ <% @code_work_tests.each do |test| %> + <% infos = StudentWorkTest.find_by_sql("select a.homework_common_id as homeworkid,b.language from student_works as a, homework_detail_programings as b where a.id = #{test.student_work_id} and a.homework_common_id = b.homework_common_id + ").first %> "> - - <%=link_to(test.homeworkid, student_work_index_path(:homework => test.homeworkid))%> + + <%=link_to(infos.homeworkid, student_work_index_path(:homework => infos.homeworkid))%> <% if test.status != -2 && test.results.first['user_wait'] %> @@ -51,7 +53,7 @@ <% end %> - <%=%W(C C++ Python Java).at(test.language.to_i - 1)%> + <%=%W(C C++ Python Java).at(infos.language.to_i - 1)%> <%=Time.parse(test.created_at.to_s).strftime("%Y-%m-%d %H:%M:%S")%> diff --git a/app/views/courses/_compare_code_tips_1.html.erb b/app/views/courses/_compare_code_tips_1.html.erb index 696c40a48..4dc073797 100644 --- a/app/views/courses/_compare_code_tips_1.html.erb +++ b/app/views/courses/_compare_code_tips_1.html.erb @@ -1,8 +1,6 @@
    - <%if @homework.simi_time != nil %> -

    <%="您上次查重的时间为"+Time.parse(@homework.simi_time.to_s).strftime("%Y-%m-%d %H:%M")%>

    - <%end%> +

    重新查重 查看结果 @@ -39,7 +37,7 @@ console.log(data); if (data.status == 0) { - $("#ajax-modal").html('<%= escape_javascript( render :partial => 'courses/compare_code_tips_2',:locals => {:des=>"查重完成是否立即查看结果?",:status=>1, :homework=> homework,:courseid=> courseid})%>'); + $("#ajax-modal").html('<%= escape_javascript( render :partial => 'courses/compare_code_tips_2',:locals => {:des=>"查重完成,是否立即查看结果?",:status=>1, :homework=> homework,:courseid=> courseid})%>'); showModal('ajax-modal', '580px'); $('#ajax-modal').siblings().remove(); $('#ajax-modal').before(""); diff --git a/app/views/courses/_show_compare_code.html.erb b/app/views/courses/_show_compare_code.html.erb index 39f8e0565..00bea362e 100644 --- a/app/views/courses/_show_compare_code.html.erb +++ b/app/views/courses/_show_compare_code.html.erb @@ -8,8 +8,13 @@ <% end %>
    -

    <%=src_name%>

    -

    <%=dst_name%>

    +

    <%=src_name%>

    + <% if @simi_value.to_i >= 90 %> +
    相似度<%=@simi_value.to_i%>%
    + <% else %> +
    相似度<%=@simi_valu.to_i%>%
    + <% end %> +

    <%=dst_name%>

    diff --git a/app/views/courses/code_repeat.html.erb b/app/views/courses/code_repeat.html.erb index 8a48cfda4..ccca72a20 100644 --- a/app/views/courses/code_repeat.html.erb +++ b/app/views/courses/code_repeat.html.erb @@ -2,16 +2,17 @@

    查重结果

      -
    • 全部作品
    • -
    • 对比作品
    • +
    • 被查作品
    • +
    • 疑被抄袭作品
      -
    • 作品名称
    • +
    • 序号
    • +
    • 作品名称
    • 姓名
    • 学号
    • 时间
    • -
    • 作品名称
    • +
    • 作品名称
    • 姓名
    • 学号
    • 时间
    • @@ -20,18 +21,18 @@
    <%if @homework.homework_type == 2 %> - <% @student_works.each do |student_work|%> + <% @student_works.each_with_index do |student_work,index|%>
      +
    • <%=index+1%>
    • <% student_work_name = student_work.name.nil? || student_work.name.empty? ? student_work.user.show_name + '的作品' : student_work.name%> - -
    • <%=student_work_name%>
    • +
    • <%=student_work_name%>
    • <%=student_work.user.show_name%>
    • <%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id%>
    • <%= Time.parse(format_time(student_work.created_at)).strftime("%m-%d %H:%M")%>
    • <% if student_work.simi_id.to_i > 0 && @works_hash[student_work.simi_id.to_i] %> <% simi_student_work = @works_hash[student_work.simi_id.to_i] %> <% simi_student_work_name = simi_student_work.name.nil? || simi_student_work.name.empty? ? simi_student_work.user.show_name + '的作品' : simi_student_work.name%> -
    • <%=simi_student_work_name%>
    • +
    • <%=simi_student_work_name%>
    • <%=simi_student_work.user.show_name%>
    • <%= simi_student_work.user.user_extensions.nil? ? "--" : simi_student_work.user.user_extensions.student_id%>
    • <%= Time.parse(format_time(simi_student_work.created_at)).strftime("%m-%d %H:%M")%>
    • @@ -47,11 +48,12 @@ <%= link_to("查看", show_comparecode_course_path(:homework_id => @homework.id,:src_id => student_work.id,:dst_id => student_work.simi_id.to_i),:class => "cha-btn",:remote => true ) %> <%else%> -
    • +
    • --
    • --
    • --
    • --
    • +
    • <% end %>
    <%end%> diff --git a/app/views/courses/show_comparecode.js.erb b/app/views/courses/show_comparecode.js.erb index 5cfae9428..be98db344 100644 --- a/app/views/courses/show_comparecode.js.erb +++ b/app/views/courses/show_comparecode.js.erb @@ -1,10 +1,10 @@ -$("#ajax-modal").html('<%= escape_javascript( render :partial => 'courses/show_compare_code' ,:locals => {:src_code=> @src_code,:src_name=> @src_username,:dst_name=> @dst_username, :dst_code=> @dst_code,})%>'); +$("#ajax-modal").html('<%= escape_javascript( render :partial => 'courses/show_compare_code' ,:locals => {:src_code=> @src_code,:src_name=> @src_username,:dst_name=> @dst_username, :dst_code=> @dst_code, :simivalue=> @simi_value })%>'); showModal('ajax-modal', '1250px'); $('#ajax-modal').siblings().remove(); -$('#ajax-modal').before(""); -$('#ajax-modal').parent().css("top","20%").css("left","20%").css("position","absolute"); +$('#ajax-modal').before(""); +$('#ajax-modal').parent().css("top","30%").css("left","20%").css("padding-top","20px").css("position","fixed"); //$('#ajax-modal').parent().addClass("resourceUploadPopup"); -$('#ajax-modal').css("padding-left","16px").css("padding-bottom","16px").css("padding-top","10px"); +$('#ajax-modal').css("padding-left","16px").css("padding-bottom","16px"); function closeModal(){ hideModal($(".program-compare-code")); diff --git a/app/views/student_work/_student_work_list.html.erb b/app/views/student_work/_student_work_list.html.erb index db15e94fb..f6d310269 100644 --- a/app/views/student_work/_student_work_list.html.erb +++ b/app/views/student_work/_student_work_list.html.erb @@ -123,7 +123,7 @@ if (data.status == 0) { var homework_simi_time = data.comparetime; - if (!homework_simi_time){ + if (homework_simi_time == 0){ //没进行过代码查重则直接查重 test_repeat(); } diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index 3a20dfa04..5162bcb16 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -2850,19 +2850,21 @@ img.school_avatar { a.btn_message_free{ background:#15BCCF; display:block; text-align:center; color:#fff; padding:3px 0; width:60px; margin-bottom:10px;margin-left: 58px;} /*20160401袁可------------------ 查重结果样式*/ -.conbox{ width:1000px; margin:0 auto; border:1px solid #f0f0f0; background:#fff;} +.conbox{ width:1000px; margin:0 auto; border:3px solid #f0f0f0; background:#fff;} .conbox-h2{ font-size:16px; padding:10px 0; padding-left:25px;} .chabox{ width:1000px;} -.chabox ul li{ float:left; width:87px; text-align:center; display:block;white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} -.chabox ul li.chabox-w-151{ width:151px; display:block;white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} +.chabox ul li{ float:left; width:82px; text-align:center; display:block;white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} +.chabox ul li.chabox-w-401{ width:151px; display:block;white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} .chabox ul li.chabox-r-line{ border-right:1px solid #D1D1D1;} .chabox-top{ width:1000px; } .chabox-top li{ font-size:14px; font-weight:bold; line-height:40px; height:40px; background:#E4E4E4; color:#000;} -.chabox-con li{font-size:12px; line-height:35px; height:35px; color:#000; border-bottom:1px solid #DFDFDF;} +.chabox-con li{font-size:12px; line-height:35px; height:35px; color:#888; border-bottom:1px solid #DFDFDF;} a.cha-btn{ display:block; width:50px; height:20px; line-height:20px; margin:0 auto; border:1px solid #269ac9; color:#269ac9;-webkit-border-radius: 3px;border-radius:3px; margin-top:8px;} a:hover.cha-btn{ background:#269ac9; color:#fff;} .chabox-header li{ font-size:14px; font-weight:bold; line-height:40px; height:40px; border-top:1px solid #E4E4E4; border-right:1px solid #E4E4E4; color:#000;} .chabox ul li.chabox-w-500{ width:499px;} +.chabox ul li.chabox-w-40{ width:39px; border-right:1px solid #D1D1D1;} +.chabox ul li.chabox-txt-left{ text-align:left;text-indent:1em; } .contrast-box{ width:1200px;box-shadow: 0 0 5px #6B6B6B; background:#fff; margin:0 auto; } .contrast-con{ width:599px; border-right:1px solid #D1D1D1; float:left;} From 365540cf1f09819c5e85dd699932ee87c58f7289 Mon Sep 17 00:00:00 2001 From: yuanke <249218296@qq.com> Date: Fri, 15 Apr 2016 12:39:22 +0800 Subject: [PATCH 13/13] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E6=98=BE=E7=A4=BA=E4=BB=A3=E7=A0=81=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E7=9A=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/admin/code_work_tests.html.erb | 92 ++++++++++++------------ 1 file changed, 47 insertions(+), 45 deletions(-) diff --git a/app/views/admin/code_work_tests.html.erb b/app/views/admin/code_work_tests.html.erb index 9fbd2fa46..29fb588c2 100644 --- a/app/views/admin/code_work_tests.html.erb +++ b/app/views/admin/code_work_tests.html.erb @@ -39,53 +39,55 @@ <% @code_work_tests.each do |test| %> <% infos = StudentWorkTest.find_by_sql("select a.homework_common_id as homeworkid,b.language from student_works as a, homework_detail_programings as b where a.id = #{test.student_work_id} and a.homework_common_id = b.homework_common_id ").first %> - "> - - <%=link_to(infos.homeworkid, student_work_index_path(:homework => infos.homeworkid))%> - - - <% if test.status != -2 && test.results.first['user_wait'] %> - <% wait_time = 0 %> - <% test.results.each do |result| wait_time = wait_time + result['user_wait'] end %> - <%=(wait_time/test.results.count).to_s+"毫秒" %> + <% if infos != nil %> + "> + + <%=link_to(infos.homeworkid, student_work_index_path(:homework => infos.homeworkid))%> + + + <% if test.status != -2 && test.results.first['user_wait'] %> + <% wait_time = 0 %> + <% test.results.each do |result| wait_time = wait_time + result['user_wait'] end %> + <%=(wait_time/test.results.count).to_s+"毫秒" %> + <% else %> + <%="未记录"%> + <% end %> + + + <%=%W(C C++ Python Java).at(infos.language.to_i - 1)%> + + + <%=Time.parse(test.created_at.to_s).strftime("%Y-%m-%d %H:%M:%S")%> + + + <% if test.status == 0 %> + <%= "答题正确" %> + <% elsif test.status == -2 %> + <%= "编译错误" %> + <% elsif test.status == 2 || test.results.last['status'] == 2 %> + <%= "超时" %> <% else %> - <%="未记录"%> + <%= "答题错误" %> <% end %> - - - <%=%W(C C++ Python Java).at(infos.language.to_i - 1)%> - - - <%=Time.parse(test.created_at.to_s).strftime("%Y-%m-%d %H:%M:%S")%> - - - <% if test.status == 0 %> - <%= "答题正确" %> - <% elsif test.status == -2 %> - <%= "编译错误" %> - <% elsif test.status == 2 || test.results.last['status'] == 2 %> - <%= "超时" %> - <% else %> - <%= "答题错误" %> - <% end %> - - - <% if test.status != -2 %> - <%=test.results.count%> - <% end %> - - - <% if test.status != -2 %> - <%test.results = test.results.sort_by {|result| result['time_used'] }%> - <%=test.results.first['time_used'] == 0 ? "1毫秒":test.results.first['time_used'].to_s+"毫秒"%> - <% end %> - - - <% if test.status != -2 %> - <%=test.results.last['time_used'] == 0 ? "1毫秒":test.results.last['time_used'].to_s+"毫秒"%> - <% end %> - - + + + <% if test.status != -2 %> + <%=test.results.count%> + <% end %> + + + <% if test.status != -2 %> + <%test.results = test.results.sort_by {|result| result['time_used'] }%> + <%=test.results.first['time_used'] == 0 ? "1毫秒":test.results.first['time_used'].to_s+"毫秒"%> + <% end %> + + + <% if test.status != -2 %> + <%=test.results.last['time_used'] == 0 ? "1毫秒":test.results.last['time_used'].to_s+"毫秒"%> + <% end %> + + + <% end %> <% end %>