From c5e298d24e2aea3643aede1f86c1d8ba3dbbef58 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Sat, 4 Jul 2015 15:53:01 +0800
Subject: [PATCH 01/16] =?UTF-8?q?=E5=81=9C=E6=AD=A2=E5=8C=BF=E8=AF=84=20ap?=
=?UTF-8?q?i?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/apis/courses.rb | 13 +--
app/api/mobile/apis/homeworks.rb | 93 ++++++++++-----
app/api/mobile/entities/course_dynamic.rb | 3 +
app/api/mobile/entities/homework.rb | 8 +-
app/services/courses_service.rb | 72 ++++++------
app/services/homework_service.rb | 132 +++++++++++++++-------
6 files changed, 201 insertions(+), 120 deletions(-)
diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb
index 3d05ab3f3..509d31d86 100644
--- a/app/api/mobile/apis/courses.rb
+++ b/app/api/mobile/apis/courses.rb
@@ -337,18 +337,7 @@ module Mobile
present :data,student_works.all,with:Mobile::Entities::StudentWork
end
- desc '开启匿评'
- params do
- requires :token,type:String
- requires :course_id,type:Integer,desc:'课程id'
- requires :homework_id,type:Integer,desc:'作业id'
- end
- get ':course_id/start_anonymous_comment' do
- cs = CoursesService.new
- status = cs.start_anonymous_comment params,current_user
- present :data,status
- present :status,0
- end
+
end
end
end
diff --git a/app/api/mobile/apis/homeworks.rb b/app/api/mobile/apis/homeworks.rb
index 5bf454e32..e9efcb1fa 100644
--- a/app/api/mobile/apis/homeworks.rb
+++ b/app/api/mobile/apis/homeworks.rb
@@ -31,33 +31,33 @@ module Mobile
present :status, 0
end
- desc "启动匿评"
- params do
- requires :token, type: String
- end
- post ':id/start_anonymous_comment' do
- statue = Homeworks.get_service.start_anonymous_comment params,current_user.nil? ? User.find(2):current_user
- messages = ""
- case statue
- when 1
- messages = "启动成功"
- when 2
- messages = "启动失败,作业总数大于等于2份时才能启动匿评"
- when 3
- messages = "已开启匿评,请务重复开启"
- end
- present :data,messages
- present :status, statue
- end
-
- desc "关闭匿评"
- params do
- requires :token, type: String
- end
- post ':id/stop_anonymous_comment' do
- Homeworks.get_service.stop_anonymous_comment params,current_user.nil? ? User.find(2):current_user
- present :status, 0
- end
+ # desc "启动匿评"
+ # params do
+ # requires :token, type: String
+ # end
+ # post ':id/start_anonymous_comment' do
+ # statue = Homeworks.get_service.start_anonymous_comment params,current_user.nil? ? User.find(2):current_user
+ # messages = ""
+ # case statue
+ # when 1
+ # messages = "启动成功"
+ # when 2
+ # messages = "启动失败,作业总数大于等于2份时才能启动匿评"
+ # when 3
+ # messages = "已开启匿评,请务重复开启"
+ # end
+ # present :data,messages
+ # present :status, statue
+ # end
+ #
+ # desc "关闭匿评"
+ # params do
+ # requires :token, type: String
+ # end
+ # post ':id/stop_anonymous_comment' do
+ # Homeworks.get_service.stop_anonymous_comment params,current_user.nil? ? User.find(2):current_user
+ # present :status, 0
+ # end
desc "匿评作品详情"
params do
@@ -111,6 +111,45 @@ module Mobile
present :status, 0
end
+ desc '开启匿评'
+ params do
+ requires :token,type:String
+ requires :course_id,type:Integer,desc:'课程id'
+ requires :homework_id,type:Integer,desc:'作业id'
+ end
+ post ':homework_id/start_anonymous_comment' do
+ hs = Homeworks.get_service
+ status = hs.start_anonymous_comment params,current_user
+ messages = ""
+ case status[:status]
+ when 1
+ messages = "启动成功"
+ when 2
+ messages = "启动失败,作业总数大于等于2份时才能启动匿评"
+ when 3
+ messages = "已开启匿评,请务重复开启"
+ when 4
+ messages = "没有开启匿评的权限"
+ when 5
+ messages = "截止日期之前不可启动匿评"
+ end
+ present :data,messages
+ present :status,0
+ end
+
+ desc '关闭匿评'
+ params do
+ requires :token,type:String
+ requires :course_id,type:Integer,desc:'课程id'
+ requires :homework_id,type:Integer,desc:'作业id'
+ end
+ post ':homework_id/stop_anonymous_comment' do
+ hs = Homeworks.get_service
+ hs.stop_anonymous_comment params,current_user
+ message = "成功关闭"
+ present :data, message
+ present :status,0
+ end
end
end
diff --git a/app/api/mobile/entities/course_dynamic.rb b/app/api/mobile/entities/course_dynamic.rb
index 46ab5b272..f9bc5a8ee 100644
--- a/app/api/mobile/entities/course_dynamic.rb
+++ b/app/api/mobile/entities/course_dynamic.rb
@@ -58,6 +58,9 @@ module Mobile
course_dynamic_expose :document_count
course_dynamic_expose :topic_count
course_dynamic_expose :homework_count
+
+ course_dynamic_expose :current_user_is_member
+ course_dynamic_expose :current_user_is_teacher
#在dynamics里解析出四种动态
expose :documents,using:Mobile::Entities::Attachment do |f,opt|
obj = nil
diff --git a/app/api/mobile/entities/homework.rb b/app/api/mobile/entities/homework.rb
index e78689bfb..03edd502f 100644
--- a/app/api/mobile/entities/homework.rb
+++ b/app/api/mobile/entities/homework.rb
@@ -24,11 +24,11 @@ module Mobile
f.course.members.count - f.student_works.count
when :homework_submit_num
f.student_works.count
- when :homework_status
+ when :homework_status_student
get_homework_status f
when :homework_times
f.course.homework_commons.index(f) + 1
- when :homework_status_desc
+ when :homework_status_teacher
homework_status_desc f
end
end
@@ -82,8 +82,8 @@ module Mobile
expose :submit_student_list ,using: Mobile::Entities::User do |f,opt|
get_submit_sutdent_list f
end
- homework_expose :homework_status #作业的状态
- homework_expose :homework_status_desc #状态的解释
+ homework_expose :homework_status_student #老师看到的作业的状态
+ homework_expose :homework_status_teacher #老师看到的状态
end
end
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index 7efe76b3a..545ab1dac 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -699,7 +699,7 @@ class CoursesService
latest_course_dynamics.sort! { |order, newer| newer[:time] <=> order[:time] }
latest_course_dynamic = latest_course_dynamics.first
unless latest_course_dynamic.nil?
- result << {:course_name => course.name, :course_id => course.id, :course_img_url => url_to_avatar(course), :course_time => course.time, :course_term => course.term,:message => dynamics_count, :dynamics => latest_course_dynamics, :count => dynamics_count}
+ result << {:course_name => course.name,:current_user_is_member => current_user.member_of_course?(course),:current_user_is_teacher => is_course_teacher(current_user,course), :course_id => course.id, :course_img_url => url_to_avatar(course), :course_time => course.time, :course_term => course.term,:message => dynamics_count, :dynamics => latest_course_dynamics, :count => dynamics_count}
end
end
#返回数组集合
@@ -746,41 +746,41 @@ class CoursesService
student_works
end
- # 开启匿评
- #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启,4:没有开启匿评的权限
- def start_anonymous_comment params,current_user
- homework = HomeworkCommon.find(params[:homework_id])
- return {:status=>4} unless current_user.admin? || current_user.allowed_to?(:as_teacher,Course.find(params[:course_id]))
- return {:status=>5} if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
- homework_detail_manual = homework.homework_detail_manual
- if homework_detail_manual.comment_status == 1
- student_works = homework.student_works
- if student_works && student_works.size >=2
- student_works.each_with_index do |work, index|
- user = work.user
- n = homework_detail_manual.evaluation_num
- n = n < student_works.size ? n : student_works.size - 1
- assigned_homeworks = get_assigned_homeworks(student_works, n, index)
- assigned_homeworks.each do |h|
- student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: user.id, student_work_id: h.id)
- student_works_evaluation_distributions.save
- end
- end
- homework_detail_manual.update_column('comment_status', 2)
- statue = 1
- else
- statue = 2
- end
- else
- statue = 3
- end
- {:status => statue}
- end
-
- def get_assigned_homeworks(student_works, n, index)
- student_works += student_works
- student_works[index + 1 .. index + n]
- end
+ # # 开启匿评
+ # #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启,4:没有开启匿评的权限
+ # def start_anonymous_comment params,current_user
+ # homework = HomeworkCommon.find(params[:homework_id])
+ # return {:status=>4} unless current_user.admin? || current_user.allowed_to?(:as_teacher,Course.find(params[:course_id]))
+ # return {:status=>5} if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
+ # homework_detail_manual = homework.homework_detail_manual
+ # if homework_detail_manual.comment_status == 1
+ # student_works = homework.student_works
+ # if student_works && student_works.size >=2
+ # student_works.each_with_index do |work, index|
+ # user = work.user
+ # n = homework_detail_manual.evaluation_num
+ # n = n < student_works.size ? n : student_works.size - 1
+ # assigned_homeworks = get_assigned_homeworks(student_works, n, index)
+ # assigned_homeworks.each do |h|
+ # student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: user.id, student_work_id: h.id)
+ # student_works_evaluation_distributions.save
+ # end
+ # end
+ # homework_detail_manual.update_column('comment_status', 2)
+ # statue = 1
+ # else
+ # statue = 2
+ # end
+ # else
+ # statue = 3
+ # end
+ # {:status => statue}
+ # end
+ #
+ # def get_assigned_homeworks(student_works, n, index)
+ # student_works += student_works
+ # student_works[index + 1 .. index + n]
+ # end
end
diff --git a/app/services/homework_service.rb b/app/services/homework_service.rb
index 2a2c6613c..dd42795b1 100644
--- a/app/services/homework_service.rb
+++ b/app/services/homework_service.rb
@@ -57,47 +57,97 @@ class HomeworkService
[@bid,@totle_size,@cur_size,@percent]
end
- #启动匿评
- #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启
- def start_anonymous_comment params,current_user
- @bid = Bid.find(params[:id])
- @course = @bid.courses.first
- unless is_course_teacher(current_user,@course) || current_user.admin?
- @statue = 4
- raise '403'
- end
- if(@bid.comment_status == 0)
- homeworks = @bid.homeworks
- if(homeworks && homeworks.size >= 2)
- homeworks.each_with_index do |homework, index|
- user = homework.user
- n = @bid.evaluation_num
- n = n < homeworks.size ? n : homeworks.size - 1
- assigned_homeworks = get_assigned_homeworks(homeworks, n, index)
- assigned_homeworks.each do |h|
- @homework_evaluation = HomeworkEvaluation.new(user_id: user.id, homework_attach_id: h.id)
- @homework_evaluation.save
- end
- end
- @bid.update_column('comment_status', 1)
- @statue = 1
- else
- @statue = 2
- end
- else
- @statue = 3
- end
- @statue
- end
- #关闭匿评
- def stop_anonymous_comment params,current_user
- @bid = Bid.find(params[:id])
- @course = @bid.courses.first
- unless is_course_teacher(current_user,@course) || current_user.admin?
- raise '403'
- end
- @bid.update_column('comment_status', 2)
- end
+ # 启动匿评 操作 逻辑改变,暂不删除
+ # #启动匿评
+ # #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启
+ # def start_anonymous_comment params,current_user
+ # @bid = Bid.find(params[:id])
+ # @course = @bid.courses.first
+ # unless is_course_teacher(current_user,@course) || current_user.admin?
+ # @statue = 4
+ # raise '403'
+ # end
+ # if(@bid.comment_status == 0)
+ # homeworks = @bid.homeworks
+ # if(homeworks && homeworks.size >= 2)
+ # homeworks.each_with_index do |homework, index|
+ # user = homework.user
+ # n = @bid.evaluation_num
+ # n = n < homeworks.size ? n : homeworks.size - 1
+ # assigned_homeworks = get_assigned_homeworks(homeworks, n, index)
+ # assigned_homeworks.each do |h|
+ # @homework_evaluation = HomeworkEvaluation.new(user_id: user.id, homework_attach_id: h.id)
+ # @homework_evaluation.save
+ # end
+ # end
+ # @bid.update_column('comment_status', 1)
+ # @statue = 1
+ # else
+ # @statue = 2
+ # end
+ # else
+ # @statue = 3
+ # end
+ # @statue
+ # end
+ # #关闭匿评
+ # def stop_anonymous_comment params,current_user
+ # @bid = Bid.find(params[:id])
+ # @course = @bid.courses.first
+ # unless is_course_teacher(current_user,@course) || current_user.admin?
+ # raise '403'
+ # end
+ # @bid.update_column('comment_status', 2)
+ # end
+
+ # 开启匿评
+ #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启,4:没有开启匿评的权限
+ def start_anonymous_comment params,current_user
+ homework = HomeworkCommon.find(params[:homework_id])
+ return {:status=> 4} unless current_user.admin? || current_user.allowed_to?(:as_teacher,Course.find(params[:course_id]))
+ return {:status=>5} if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
+ homework_detail_manual = homework.homework_detail_manual
+ if homework_detail_manual.comment_status == 1
+ student_works = homework.student_works
+ if student_works && student_works.size >=2
+ student_works.each_with_index do |work, index|
+ user = work.user
+ n = homework_detail_manual.evaluation_num
+ n = n < student_works.size ? n : student_works.size - 1
+ assigned_homeworks = get_assigned_homeworks(student_works, n, index)
+ assigned_homeworks.each do |h|
+ student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: user.id, student_work_id: h.id)
+ student_works_evaluation_distributions.save
+ end
+ end
+ homework_detail_manual.update_column('comment_status', 2)
+ statue = 1
+ else
+ statue = 2
+ end
+ else
+ statue = 3
+ end
+ {:status => statue}
+ end
+
+ def get_assigned_homeworks(student_works, n, index)
+ student_works += student_works
+ student_works[index + 1 .. index + n]
+ end
+
+ def stop_anonymous_comment params,current_user
+ homework = HomeworkCommon.find(params[:homework_id])
+ homework_detail_manual = homework.homework_detail_manual
+ homework_detail_manual.update_column('comment_status', 3)
+
+ work_ids = "(" << homework.student_works.map(&:id).join(",") << ")"
+ homework.student_works.each do |student_work|
+ absence_penalty_count = student_work.user.student_works_evaluation_distributions.where("student_work_id IN #{work_ids}").count - student_work.user.student_works_scores.where("student_work_id IN #{work_ids}").count
+ student_work.absence_penalty = absence_penalty_count > 0 ? absence_penalty_count * homework_detail_manual.absence_penalty : 0
+ student_work.save
+ end
+ end
# 匿评作品详情
# attachs 该作品的所有附件
From 04f125c7a6e55b9ec46d5d453b38d3eb3ef14cb7 Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Mon, 6 Jul 2015 11:42:26 +0800
Subject: [PATCH 02/16] =?UTF-8?q?=E5=BC=A0=E7=94=B3=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E7=9A=84bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/layouts/base_newcontest.html.erb | 5 +++--
app/views/users/show.html.erb | 2 +-
app/views/users/user_activities.html.erb | 2 +-
.../redpenny-master/stylesheets/application.css | 17 +++++++++++++++++
4 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/app/views/layouts/base_newcontest.html.erb b/app/views/layouts/base_newcontest.html.erb
index 26015d536..cef5c0955 100644
--- a/app/views/layouts/base_newcontest.html.erb
+++ b/app/views/layouts/base_newcontest.html.erb
@@ -66,7 +66,8 @@
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => 'regexName1();', :width => "125px", :style=>"float:left" %>
<%= hidden_field_tag 'project_type', params[:project_type] %>
<%#= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
-
+
+
<%= l(:label_search)%>
@@ -80,7 +81,7 @@
<%=link_to l(:field_homepage), home_path %> >
<%=l(:label_contests_management_platform)%>
-
+
>
<%= link_to h(truncate(@contest.name, length: 20, omission: '...')), contest_contestnotifications_path(@contest) %>
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index fadffc9f6..496211e82 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -387,7 +387,7 @@
<%= l(:label_i_new_activity) %>
- <%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
+ <%= link_to format_activity_title(" #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
<% else %>
diff --git a/app/views/users/user_activities.html.erb b/app/views/users/user_activities.html.erb
index 9165e6f2e..32915245f 100644
--- a/app/views/users/user_activities.html.erb
+++ b/app/views/users/user_activities.html.erb
@@ -28,7 +28,7 @@
|  |
- <%= content_tag('span', h(e.project), :class => 'project') %> <%= l(:label_new_activity) %>
+ | <%= content_tag('span', h(e.project), :class => 'project') %>
<% if e.event_type.eql?("message") || e.event_type.eql?("reply") %>
<%= link_to format_activity_title(e.event_title), e.board.project ? project_boards_path(e.board.project,:topic_id => e.id):course_boards_path(e.board.course,:topic_id => e.id) %>
<%else %>
diff --git a/public/themes/redpenny-master/stylesheets/application.css b/public/themes/redpenny-master/stylesheets/application.css
index 02626f440..4a23e59c5 100644
--- a/public/themes/redpenny-master/stylesheets/application.css
+++ b/public/themes/redpenny-master/stylesheets/application.css
@@ -1698,6 +1698,23 @@ div.project-search {
}
/*huang*/
+/*zhangshen*/
+a.enterprise {
+ float:left;
+ text-align: center;
+ width: 40px;
+ height: 18px;
+ font-family: '微软雅黑',Arial,Helvetica,sans-serif;
+ font-size: 12px;
+ color:#fff;
+ padding: 0px;
+ border-radius:4px;
+ border: 1px solid rgb(148, 148, 148);
+ box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
+ text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px rgb(255, 255, 255);
+ cursor: pointer;
+}
+
input.enterprise[type="button"] {
padding-bottom: 5px;
width: 55px;
From 0c70169dfcefa53c355017db8c972e329bda5f16 Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Mon, 6 Jul 2015 13:10:35 +0800
Subject: [PATCH 03/16] =?UTF-8?q?=E5=88=9B=E6=96=B0=E7=AB=9E=E8=B5=9B--?=
=?UTF-8?q?=E7=BC=96=E8=BE=91=E7=AB=9E=E8=B5=9B=E9=80=9A=E7=9F=A5=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2=E5=AF=BC=E8=88=AA=E5=A4=84=E4=B8=8D=E8=A6=81=E6=98=BE?=
=?UTF-8?q?=E7=A4=BA=E2=80=9C=E6=B7=BB=E5=8A=A0=E9=80=9A=E7=9F=A5=E2=80=9D?=
=?UTF-8?q?=20=E5=88=9B=E6=96=B0=E7=AB=9E=E8=B5=9B--=E7=AB=9E=E8=B5=9B?=
=?UTF-8?q?=E9=80=9A=E7=9F=A5=EF=BC=9A=E6=B7=BB=E5=8A=A0=E7=AB=9E=E8=B5=9B?=
=?UTF-8?q?=E9=80=9A=E7=9F=A5=E7=BD=AE=E6=9D=A1=E4=BB=B6=E4=B8=BA=E7=A9=BA?=
=?UTF-8?q?=EF=BC=8C=E6=8F=90=E7=A4=BA=E4=BF=A1=E6=81=AF=E2=80=9C=E7=AB=9E?=
=?UTF-8?q?=E8=B5=9B=E6=A0=87=E9=A2=98/=E6=8F=8F=E8=BF=B0=E4=B8=8D?=
=?UTF-8?q?=E8=83=BD=E4=B8=BA=E7=A9=BA=E2=80=9D=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/contestnotifications/_form.html.erb | 3 ---
config/locales/zh.yml | 4 ++--
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/app/views/contestnotifications/_form.html.erb b/app/views/contestnotifications/_form.html.erb
index dc651501b..680ab93d1 100644
--- a/app/views/contestnotifications/_form.html.erb
+++ b/app/views/contestnotifications/_form.html.erb
@@ -50,9 +50,6 @@
}
}
-
<%= f.text_field :title,
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index ffa60f1f3..1b21a3672 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -1903,9 +1903,9 @@ zh:
lable_teacher_evaluation: 作业综评
lable_course_teacher: 主讲老师
lable_course_end: 课程学期已结束
- label_no_contest_news_description: 竞赛描述不能为空
+ label_no_contest_news_description: 竞赛通知描述不能为空
label_contest_news_condition: 竞赛描述超过5000个汉字
- label_no_contest_news_title: 竞赛标题不能为空
+ label_no_contest_news_title: 竞赛通知标题不能为空
label_contest_news_title_condition: 竞赛标题超过255个汉字
label_course_organizers: 开设单位
From 898ef291162c7dad53338ce83d18a012b1bd9f2b Mon Sep 17 00:00:00 2001
From: huang
Date: Mon, 6 Jul 2015 16:38:16 +0800
Subject: [PATCH 04/16] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=BE=97=E5=88=86?=
=?UTF-8?q?=EF=BC=9A=E9=A1=B9=E7=9B=AE=E5=BE=97=E5=88=86=E4=B8=AD=E6=B7=BB?=
=?UTF-8?q?=E5=8A=A0=E5=8F=91=E5=B8=96=E5=BE=97=E5=88=86=EF=BC=88=E5=B8=96?=
=?UTF-8?q?=E5=AD=90=E5=9B=9E=E5=A4=8D=E5=9C=A8=E5=8D=8F=E5=90=8C=E5=BE=97?=
=?UTF-8?q?=E5=88=86=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/user_score_helper.rb | 4 ++--
app/views/users/_influence_new_score_index.html.erb | 3 ++-
app/views/users/_topic_new_score_index.html.erb | 4 +---
config/locales/users/zh.yml | 3 ++-
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/app/helpers/user_score_helper.rb b/app/helpers/user_score_helper.rb
index c94763e31..41f76a792 100644
--- a/app/helpers/user_score_helper.rb
+++ b/app/helpers/user_score_helper.rb
@@ -433,7 +433,7 @@ module UserScoreHelper
#协同得分
def collaboration(option_number)
- option_number.memo * 2 + option_number.messages_for_issues + option_number.issues_status + option_number.replay_for_message + option_number.replay_for_memo
+ option_number.messages_for_issues + option_number.issues_status + option_number.replay_for_message + option_number.replay_for_memo
end
#影响力得分
def influence(option_number)
@@ -445,7 +445,7 @@ module UserScoreHelper
end
#项目贡献得分
def active(option_number)
- option_number.changeset * 4 + option_number.document * 4 + option_number.attachment * 4 + option_number.issue_done_ratio * 2 + option_number.post_issue * 4
+ option_number.changeset * 4 + option_number.document * 4 + option_number.attachment * 4 + option_number.issue_done_ratio * 2 + option_number.post_issue * 4 + option_number.memo * 2
end
#更新发帖数
diff --git a/app/views/users/_influence_new_score_index.html.erb b/app/views/users/_influence_new_score_index.html.erb
index c0a89536a..505785351 100644
--- a/app/views/users/_influence_new_score_index.html.erb
+++ b/app/views/users/_influence_new_score_index.html.erb
@@ -4,4 +4,5 @@
<%= l('userscore.active.commit.attachments')%> * 4 = <%= option_num.attachment %> * 4 = <%= option_num.attachment * 4 %>
<%= l('userscore.active.update_issues')%> * 2 = <%= option_num.issue_done_ratio %> * 2 = <%= option_num.issue_done_ratio * 2 %>
<%= l('userscore.active.release_issues')%> * 4 = <%= option_num.post_issue %> * 4 = <%= option_num.post_issue * 4 %>
- <%= l(:label_user_score_of_active)%> = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> = <%= active(option_num) %>
\ No newline at end of file
+ <%= l('userscore.active.release_messages')%> * 1 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %>
+ <%= l(:label_user_score_of_active)%> = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> + <%= option_num.memo * 2 %> = <%= active(option_num) %>
\ No newline at end of file
diff --git a/app/views/users/_topic_new_score_index.html.erb b/app/views/users/_topic_new_score_index.html.erb
index af2ff0da3..86dc1f80f 100644
--- a/app/views/users/_topic_new_score_index.html.erb
+++ b/app/views/users/_topic_new_score_index.html.erb
@@ -1,7 +1,5 @@
-
- <%= l('userscore.collaboration.memos')%> * 2 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %>
<%= l('userscore.collaboration.message_for_issues')%> * 1 = <%= option_num.messages_for_issues %> * 1 = <%= option_num.messages_for_issues * 1 %>
<%= l('userscore.collaboration.issue_status')%> * 1 = <%= option_num.issues_status %> * 1= <%= option_num.issues_status * 1 %>
<%= l('userscore.collaboration.reply_for_messages')%> * 1 = <%= option_num.replay_for_message %> * 1 = <%= option_num.replay_for_message * 1 %>
<%= l('userscore.collaboration.reply_for_memos')%> * 1 = <%= option_num.replay_for_memo %> * 1 = <%= option_num.replay_for_memo * 1 %>
- <%= l(:label_user_score_of_collaboration)%> = <%= option_num.memo * 2 %> + <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %>
+ <%= l(:label_user_score_of_collaboration)%> = <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %>
diff --git a/config/locales/users/zh.yml b/config/locales/users/zh.yml
index 4c792ef82..d90d8c537 100644
--- a/config/locales/users/zh.yml
+++ b/config/locales/users/zh.yml
@@ -67,7 +67,8 @@ zh:
documents: 提交文档次数
attachments: 提交附件次数
update_issues: 更新缺陷完成度次数
- release_issues: 发布缺陷数量
+ release_issues: 发布缺陷数量
+ release_messages: 发布帖子数量
label_score_less_than_zero: 得分小于0,修正为0
label_user_info: "个人简介"
From 7ebdf4a08d6773dbb0a2ea5c58fdd94507d91126 Mon Sep 17 00:00:00 2001
From: huang
Date: Tue, 7 Jul 2015 11:29:40 +0800
Subject: [PATCH 05/16] =?UTF-8?q?issue=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E4=BC=98=E5=85=88=E7=BA=A7=20=E4=BF=AE=E6=94=B9issue=E5=88=97?=
=?UTF-8?q?=E8=A1=A8=E7=95=8C=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/issues_helper.rb | 30 +++++++++++++++++++++---------
app/models/option_number.rb | 3 ++-
app/views/issues/_list.html.erb | 4 ++--
public/images/public_icon.png | Bin 11734 -> 9628 bytes
public/stylesheets/project.css | 6 ++++++
5 files changed, 31 insertions(+), 12 deletions(-)
diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb
index aae150728..4f0821449 100644
--- a/app/helpers/issues_helper.rb
+++ b/app/helpers/issues_helper.rb
@@ -68,24 +68,36 @@ module IssuesHelper
end
#获取跟踪类型及样式
- #REDO:时间紧可以优化.
def get_issue_type(value)
issuetype = []
if value == "缺陷" || value == 1
- issuetype << "red_btn_cir ml10"
- issuetype << "缺陷"
+ issuetype << "issues fl"
elsif value == "功能" || value == 2
- issuetype << "blue_btn_cir ml10"
- issuetype << "功能"
+ issuetype << "duty fl"
elsif value == "支持" || value == 3
- issuetype << "green_btn_cir ml10"
- issuetype << "支持"
+ issuetype << "support fl"
elsif value == "任务" || value == 4
+ issuetype << "function fl"
+ else
+ issuetype << "weekly fl"
+ end
+ end
+
+ # 获取优先级样式
+ def get_issue_priority(value)
+ issuetype = []
+ if value == "紧急" || value == 1
+ issuetype << "red_btn_cir ml10"
+ issuetype << "紧急"
+ elsif value == "正常" || value == 3
+ issuetype << "green_btn_cir ml10"
+ issuetype << "正常"
+ elsif value == "高" || value == 4
issuetype << "orange_btn_cir ml10"
- issuetype << "任务"
+ issuetype << "高"
else
issuetype << "bgreen_btn_cir ml10"
- issuetype << "周报"
+ issuetype << "低"
end
end
diff --git a/app/models/option_number.rb b/app/models/option_number.rb
index 0ddea1bff..b4a3caac4 100644
--- a/app/models/option_number.rb
+++ b/app/models/option_number.rb
@@ -1,5 +1,6 @@
class OptionNumber < ActiveRecord::Base
- attr_accessible :attachment, :changeset, :document, :follow, :issue_done_ratio, :issues_status, :memo, :messages_for_issues, :post_issue, :praise_by_one, :praise_by_three, :praise_by_two, :replay_for_memo, :replay_for_message, :score_type, :total_score, :tread, :tread_by_one, :tread_by_three, :tread_by_two, :user_id
+ attr_accessible :attachment, :changeset, :document, :follow, :issue_done_ratio, :issues_status, :memo, :messages_for_issues, :post_issue,
+ :praise_by_one, :praise_by_three, :praise_by_two, :replay_for_memo, :replay_for_message, :score_type, :total_score, :tread, :tread_by_one, :tread_by_three, :tread_by_two, :user_id
def self.get_user_option_number user_id
result = nil
diff --git a/app/views/issues/_list.html.erb b/app/views/issues/_list.html.erb
index 0fcb37021..4549b32e0 100644
--- a/app/views/issues/_list.html.erb
+++ b/app/views/issues/_list.html.erb
@@ -7,12 +7,12 @@
<% column_content = ( query.inline_columns.map {|column| "#{column_content_new(column, issue)}"}) %>
<% unless issue.author.nil? || issue.author.name == "Anonymous" %>
-
+
<%= link_to issue.author.name, user_path(issue.author), :class => "problem_name c_orange fl" %>
<%= l(:label_post_on_issue) %>(<%= "#{raw column_content[2]}" %>):
- <%=link_to "#{column_content[4]}#{get_issue_type(column_content[1])[1]}".html_safe, issue_path(issue.id), :class => "problem_tit_a break_word",:target => "_blank" %>
+ <%=link_to "#{column_content[4]}#{get_issue_priority(column_content[3])[1]}".html_safe, issue_path(issue.id), :class => "problem_tit_a break_word",:target => "_blank" %>
diff --git a/public/images/public_icon.png b/public/images/public_icon.png
index 1fa463e4e88ec9cb684ae8a91859c077e0cbff28..b915af0867de83057661e23f518705012e74e230 100644
GIT binary patch
delta 6604
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
bp$MG5^R}=0y9fBuhC*N4P^(JAF8Y4}a^SWp
delta 8707
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
diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css
index 5574dc82a..28399462d 100644
--- a/public/stylesheets/project.css
+++ b/public/stylesheets/project.css
@@ -95,6 +95,12 @@ a.pro_mes_w_news{ height:20px; float:right;display:block; color:#999999;}
.pro_info_box ul li{ height:24px;}
.pro_info_p{color:#0781b4 !important; float:left; width:80px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.edit_pro_box{overflow:hidden;display:none; margin-bottom:30px; border-bottom:1px dashed #CCC; padding-bottom:10px;}
+/*问题状态图片*/
+.issues{ background:url(../images/public_icon.png) -66px 5px no-repeat; width:16px; height:21px;}
+.duty{ background:url(../images/public_icon.png) -66px -18px no-repeat; width:16px; height:21px;}
+.support{ background:url(../images/public_icon.png) -66px -45px no-repeat; width:16px; height:21px;}
+.function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:16px; height:21px;}
+.weekly{ background:url(../images/public_icon.png) -66px -95px no-repeat; width:16px; height:21px;}
/****翻页***/
ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; }
ul.wlist li{float: left;}
From 6d85dd7ca432312c7618198902c98b7ee5f899cb Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Tue, 7 Jul 2015 17:18:29 +0800
Subject: [PATCH 06/16] =?UTF-8?q?app=E7=9A=84=E8=AF=BE=E7=A8=8B=E5=8A=A8?=
=?UTF-8?q?=E6=80=81=E7=95=8C=E9=9D=A2api=E4=BF=AE=E6=94=B9=20=E6=B7=BB?=
=?UTF-8?q?=E5=8A=A0=E6=B4=BB=E8=B7=83=E5=AD=A6=E7=94=9F=E6=9F=A5=E7=9C=8B?=
=?UTF-8?q?=EF=BC=8C=20=E8=8E=B7=E5=8F=96=E4=BD=9C=E4=B8=9A=E7=9A=84?=
=?UTF-8?q?=E5=8C=BF=E8=AF=84=E7=8E=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/entities/course_dynamic.rb | 15 +++++++--
app/api/mobile/entities/homework.rb | 17 +++++++---
app/api/mobile/entities/user.rb | 2 ++
app/helpers/api_helper.rb | 32 ++++++++++++++++++-
app/services/courses_service.rb | 38 ++++++++++++++---------
db/schema.rb | 10 ++++++
6 files changed, 93 insertions(+), 21 deletions(-)
diff --git a/app/api/mobile/entities/course_dynamic.rb b/app/api/mobile/entities/course_dynamic.rb
index f9bc5a8ee..fe31668ff 100644
--- a/app/api/mobile/entities/course_dynamic.rb
+++ b/app/api/mobile/entities/course_dynamic.rb
@@ -58,10 +58,11 @@ module Mobile
course_dynamic_expose :document_count
course_dynamic_expose :topic_count
course_dynamic_expose :homework_count
-
+ course_dynamic_expose :course_student_num
+ course_dynamic_expose :time_from_now
course_dynamic_expose :current_user_is_member
course_dynamic_expose :current_user_is_teacher
- #在dynamics里解析出四种动态
+
expose :documents,using:Mobile::Entities::Attachment do |f,opt|
obj = nil
f[:dynamics].each do |d|
@@ -110,6 +111,16 @@ module Mobile
obj
end
+ expose :active_students,using:Mobile::Entities::User do |f,opt|
+ obj = nil
+ f[:dynamics].each do |d|
+ if d[:type] == 7
+ obj = d[:active_students]
+ end
+ end
+ obj
+ end
+
end
end
end
\ No newline at end of file
diff --git a/app/api/mobile/entities/homework.rb b/app/api/mobile/entities/homework.rb
index 03edd502f..db3e44119 100644
--- a/app/api/mobile/entities/homework.rb
+++ b/app/api/mobile/entities/homework.rb
@@ -30,6 +30,13 @@ module Mobile
f.course.homework_commons.index(f) + 1
when :homework_status_teacher
homework_status_desc f
+ when :student_evaluation_part
+ get_evaluation_part f ,3
+ when :ta_evaluation_part
+ get_evaluation_part f , 2
+ when :homework_anony_type
+ val = f.homework_type == 1 && !f.homework_detail_manual.nil?
+ val
end
end
end
@@ -79,12 +86,14 @@ module Mobile
homework_expose :homework_submit_num
homework_expose :homework_notsubmit_num
- expose :submit_student_list ,using: Mobile::Entities::User do |f,opt|
- get_submit_sutdent_list f
- end
- homework_expose :homework_status_student #老师看到的作业的状态
+ homework_expose :homework_status_student #学生看到的作业的状态
homework_expose :homework_status_teacher #老师看到的状态
+ homework_expose :student_evaluation_part #学生匿评比率
+ homework_expose :ta_evaluation_part #教辅评价比率
+
+ homework_expose :homework_anony_type #是否是匿评作业
+
end
end
end
\ No newline at end of file
diff --git a/app/api/mobile/entities/user.rb b/app/api/mobile/entities/user.rb
index 2b3483625..16048c61a 100644
--- a/app/api/mobile/entities/user.rb
+++ b/app/api/mobile/entities/user.rb
@@ -53,6 +53,8 @@ module Mobile
user_expose :score
#学号
user_expose :student_num
+ # 活跃值
+ user_expose :active_count
end
end
diff --git a/app/helpers/api_helper.rb b/app/helpers/api_helper.rb
index d3dc441ae..ac0357f53 100644
--- a/app/helpers/api_helper.rb
+++ b/app/helpers/api_helper.rb
@@ -129,9 +129,39 @@ module ApiHelper
def show_homework_deadline homework
day = 0
if (day = (Date.parse(homework.end_time.to_s) - Date.parse(Time.now.to_s)).to_i) > 0
- "距作业截止还有" << (Date.parse(Time.now.to_s) - Date.parse(homework.end_time.to_s)).to_i.to_s << "天"
+ "距作业截止还有" << day.to_s << "天"
else
"已截止,但可补交"
end
end
+
+ #获取作业中学生的匿评比率
+ # 匿评比率 = 学生总共评价的作业的作业份数 / 作业份数 * 分配数 * 100%
+ # 教辅匿评比率 = 教辅已经评价的作业份数 / 总的作业份数 * 100%
+ def get_evaluation_part homework,role
+ homework_eva_completed_task_num = 0
+ homework_eva_task_num = 0
+ #匿评作业 # 且匿评状态不是还没有开启匿评
+ if homework.homework_type == 1 && homework.homework_detail_manual && homework.homework_detail_manual.comment_status != 1
+ # 总共需要评价的任务数
+ homework_eva_task_num = homework.homework_detail_manual.evaluation_num * homework.student_works.count
+ unless homework_eva_task_num == 0 #总任务数不为0 的情况下
+ #获取已经评价了多少的份作业 student_work_score里记录了评价情况,每条记录有提交作业的id
+ #先求出提交作业的id集合
+ work_ids = "(" + homework.student_works.map(&:id).join(",") + ")"
+ #只要 student_work_score 中的 student_work_id在work_ids集合中,那么久说明这个任务被完成了
+
+ sql = "select count(1) from student_works_scores where reviewer_role = #{role} and student_work_id in #{work_ids} "
+ homework_eva_completed_task_num = ActiveRecord::Base.connection().select_value(sql)
+ end
+ end
+ if homework_eva_task_num == 0
+ 0
+ else
+ ( homework_eva_completed_task_num / homework_eva_task_num.to_f * 100 ) .round(2)
+ end
+
+ end
+
+
end
\ No newline at end of file
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index 545ab1dac..94dcaf6fc 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -4,6 +4,7 @@ class CoursesService
include CoursesHelper
include HomeworkAttachHelper
include ApiHelper
+ include ActionView::Helpers::DateHelper
#参数school_id为0或不传时返回所有课程,否则返回对应学校的课程
#参数per_page_count分页功能,每页显示的课程数
@@ -657,22 +658,12 @@ class CoursesService
membership.each do |mp|
course = mp.course
latest_course_dynamics = []
- dynamics_count = 0
- # 课程学霸 学生总分数排名靠前的5个人
- homework_count = course.homework_commons.count
- sql = "select users.*,sum(IFNULL(0,student_works.final_score))/#{homework_count} score from student_works left outer join users on student_works.user_id = users.id" <<
- " where homework_common_id in ( select id from homework_commons where homework_commons.course_id = #{course.id}) GROUP BY student_works.user_id ORDER BY score limit 0,6"
- better_students = User.find_by_sql(sql)
- if homework_count != 0 && !better_students.empty?
- latest_course_dynamics <<{:type=> 6,:time=>Time.now.to_s,:count=> 6,:better_students=> better_students}
- dynamics_count += 1
- end
+
# 课程通知
latest_news = course.news.page(1).per(2).order("created_on desc")
unless latest_news.first.nil?
latest_course_dynamics << {:type => 1, :time => latest_news.first.created_on,:count=>course.news.count,
:news => latest_news.all}
- dynamics_count += 1
end
# 课程讨论区
@@ -694,12 +685,31 @@ class CoursesService
homeworks = course.homework_commons.page(1).per(2).order('created_at desc')
unless homeworks.first.nil?
latest_course_dynamics << {:type => 4, :time => homeworks.first.updated_at, :count=>course.homework_commons.count , :homeworks => homeworks}
- dynamics_count += 1
end
- latest_course_dynamics.sort! { |order, newer| newer[:time] <=> order[:time] }
+ latest_course_dynamics.sort! { |order, newer| newer[:time] <=> order[:time] }
+ # 课程学霸 学生总分数排名靠前的5个人
+ homework_count = course.homework_commons.count
+ sql = "select users.*,sum(IFNULL(0,student_works.final_score))/#{homework_count} score from student_works left outer join users on student_works.user_id = users.id" <<
+ " where homework_common_id in ( select id from homework_commons where homework_commons.course_id = #{course.id}) GROUP BY student_works.user_id ORDER BY score limit 0,4"
+ better_students = User.find_by_sql(sql)
+ # 找出在课程讨论区发帖回帖数最多的
+ active_students = []
+ sql1 = " select users.*,count(author_id) active_count from messages " <<
+ " LEFT JOIN users on messages.author_id = users.id " <<
+ " where messages.board_id in (select id from boards where boards.course_id = #{course.id} ) " <<
+ " GROUP BY messages.author_id ORDER BY count(author_id) desc " <<
+ " limit 0,4"
+ active_students = User.find_by_sql(sql1)
+ if homework_count != 0 && !better_students.empty?
+ latest_course_dynamics <<{:type=> 6,:time=>Time.now.to_s,:count=> 4,:better_students=> better_students}
+ end
+ unless active_students.empty?
+ latest_course_dynamics <<{:type=> 7,:time=>Time.now.to_s,:count=> 4,:active_students=>active_students}
+ end
latest_course_dynamic = latest_course_dynamics.first
unless latest_course_dynamic.nil?
- result << {:course_name => course.name,:current_user_is_member => current_user.member_of_course?(course),:current_user_is_teacher => is_course_teacher(current_user,course), :course_id => course.id, :course_img_url => url_to_avatar(course), :course_time => course.time, :course_term => course.term,:message => dynamics_count, :dynamics => latest_course_dynamics, :count => dynamics_count}
+ result << {:course_name => course.name,:current_user_is_member => current_user.member_of_course?(course),:current_user_is_teacher => is_course_teacher(current_user,course), :course_id => course.id, :course_img_url => url_to_avatar(course), :course_time => course.time, :course_term => course.term,:message => "", :dynamics => latest_course_dynamics,
+ :course_student_num=>course ? course.members.count : 0,:time_from_now=> distance_of_time_in_words(Time.now, latest_course_dynamic[:time].to_time) << "前"}
end
end
#返回数组集合
diff --git a/db/schema.rb b/db/schema.rb
index 988d5649a..78dfb5eee 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -721,6 +721,16 @@ ActiveRecord::Schema.define(:version => 20150702073308) do
add_index "journal_details", ["journal_id"], :name => "journal_details_journal_id"
+ create_table "journal_details_copy", :force => true do |t|
+ t.integer "journal_id", :default => 0, :null => false
+ t.string "property", :limit => 30, :default => "", :null => false
+ t.string "prop_key", :limit => 30, :default => "", :null => false
+ t.text "old_value"
+ t.text "value"
+ end
+
+ add_index "journal_details_copy", ["journal_id"], :name => "journal_details_journal_id"
+
create_table "journal_replies", :id => false, :force => true do |t|
t.integer "journal_id"
t.integer "user_id"
From 1b1cce615d79f2d6774d99701ba0cbdfb5c54689 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Wed, 8 Jul 2015 17:36:17 +0800
Subject: [PATCH 07/16] =?UTF-8?q?=E5=9B=9E=E5=A4=8D=E9=80=9A=E7=9F=A5api?=
=?UTF-8?q?=20=E6=B4=BB=E8=B7=83=E6=8E=92=E5=90=8Dapi=20=E5=85=B6=E4=BB=96?=
=?UTF-8?q?api=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/api/mobile/apis/comments.rb | 14 ++++++++++++++
app/api/mobile/apis/courses.rb | 3 ++-
app/api/mobile/entities/news.rb | 2 ++
app/services/comment_service.rb | 5 ++++-
app/services/courses_service.rb | 18 ++++++++++++++----
5 files changed, 36 insertions(+), 6 deletions(-)
diff --git a/app/api/mobile/apis/comments.rb b/app/api/mobile/apis/comments.rb
index 86132a93a..7fa676161 100644
--- a/app/api/mobile/apis/comments.rb
+++ b/app/api/mobile/apis/comments.rb
@@ -113,6 +113,20 @@ module Mobile
present :status, 0
end
+ desc '通知评论列表'
+ params do
+ requires :token, type: String
+ requires :notice_id,type:Integer,desc:'通知id'
+ optional :page,type:Integer,desc:'页码'
+ end
+ get ':notice_id/notice_comments' do
+ cs = CommentService.new
+ comments = cs.notice_comments params,current_user
+ present :data, comments, with: Mobile::Entities::Comment
+ present :status, 0
+ end
+
+
end
end
end
diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb
index 509d31d86..39d2ebe9d 100644
--- a/app/api/mobile/apis/courses.rb
+++ b/app/api/mobile/apis/courses.rb
@@ -312,11 +312,12 @@ module Mobile
present :status,0
end
- desc '课程历次作业总成绩列表'
+ desc '总成绩 or 活跃度列表'
params do
requires :token,type:String
requires :course_id,type:Integer,desc:'课程id'
optional :page,type:Integer,desc:'页码'
+ optional :type,type:Integer,desc:'0是活跃度,1是成绩'
end
get ':course_id/students_score_list' do
cs = CoursesService.new
diff --git a/app/api/mobile/entities/news.rb b/app/api/mobile/entities/news.rb
index 5ed3958ba..36893d16f 100644
--- a/app/api/mobile/entities/news.rb
+++ b/app/api/mobile/entities/news.rb
@@ -56,6 +56,8 @@ module Mobile
expose :comments, using: Mobile::Entities::Comment do |f, opt|
if f.is_a?(Hash) && f.key?(:comments)
f[:comments]
+ elsif f.is_a?(::News) && f.respond_to?(:comments)
+ f.send(:comments)
end
end
diff --git a/app/services/comment_service.rb b/app/services/comment_service.rb
index 2464297da..62955905b 100644
--- a/app/services/comment_service.rb
+++ b/app/services/comment_service.rb
@@ -112,6 +112,9 @@ class CommentService
end
end
-
+ # 获取课程里的某个通知的所有回复
+ def notice_comments params,current_user
+ News.find(params[:notice_id]).comments.page(params[:page] || 1).per(10)
+ end
end
\ No newline at end of file
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index 94dcaf6fc..00a8ffd8b 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -719,11 +719,21 @@ class CoursesService
# 获取课程历次作业的学生总成绩
def students_score_list params,current_user
- homework_count = Course.find(params[:course_id]).homework_commons.count
page = (params[:page] || 1) - 1
- sql = "select users.*,sum(IFNULL(0,student_works.final_score))/#{homework_count} score from student_works left outer join users on student_works.user_id = users.id" <<
- " where homework_common_id in ( select id from homework_commons where homework_commons.course_id = #{params[:course_id]}) GROUP BY student_works.user_id ORDER BY score limit #{page*10},10"
- User.find_by_sql(sql)
+ if params[:type] == 1
+ homework_count = Course.find(params[:course_id]).homework_commons.count
+
+ sql = "select users.*,sum(IFNULL(0,student_works.final_score))/#{homework_count} score from student_works left outer join users on student_works.user_id = users.id" <<
+ " where homework_common_id in ( select id from homework_commons where homework_commons.course_id = #{params[:course_id]}) GROUP BY student_works.user_id ORDER BY score limit #{page*10},10"
+ User.find_by_sql(sql)
+ else
+ sql1 = " select users.*,count(author_id)*2 active_count from messages " <<
+ " LEFT JOIN users on messages.author_id = users.id " <<
+ " where messages.board_id in (select id from boards where boards.course_id = #{params[:course_id]} ) " <<
+ " GROUP BY messages.author_id ORDER BY count(author_id) desc " <<
+ " limit #{page*10},10"
+ User.find_by_sql(sql1)
+ end
end
# 获取某次作业的所有作业列表
From a3d71ca93f2327b239dee48cb17a9b4aa9d16ca2 Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Thu, 9 Jul 2015 10:18:02 +0800
Subject: [PATCH 08/16] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E7=95=99=E8=A8=80?=
=?UTF-8?q?=EF=BC=9A=E5=A6=82=E5=9B=BE=EF=BC=8C=E7=94=A8=E6=88=B7=E5=A4=B4?=
=?UTF-8?q?=E5=83=8F=E5=9C=A8=E5=9B=9E=E5=A4=8D=E7=95=99=E8=A8=80=E4=B8=AD?=
=?UTF-8?q?=E4=B8=8D=E6=98=BE=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/words/_journal_reply_items.html.erb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/views/words/_journal_reply_items.html.erb b/app/views/words/_journal_reply_items.html.erb
index 5e9d6ef46..692cca85d 100644
--- a/app/views/words/_journal_reply_items.html.erb
+++ b/app/views/words/_journal_reply_items.html.erb
@@ -6,7 +6,7 @@
<% if show_name %>
- <%= image_tag url_to_avatar(reply.user.show_name),:width => '30',:height => '30' %>
+ <%= image_tag url_to_avatar(journal.user),:width => '30',:height => '30' %>
<% else %>
<%= image_tag url_to_avatar(nil),:width => '30',:height => '30' %>
<% end %>
From 8d7faaced667e3e3c1964756482f2f5f297171f4 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Thu, 9 Jul 2015 14:32:10 +0800
Subject: [PATCH 09/16] =?UTF-8?q?=E7=99=BB=E5=BD=95api=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=20=E6=B4=BB=E8=B7=83=E5=80=BC=EF=BC=8C=E5=B9=B3=E5=9D=87?=
=?UTF-8?q?=E6=88=90=E7=BB=A9=20=E6=98=AF=E5=90=A6=E5=8F=AF=E4=BB=A5?=
=?UTF-8?q?=E5=8A=A0=E8=BD=BD=20=E9=9C=80=E8=A6=81=E8=AE=A1=E7=AE=97=20?=
=?UTF-8?q?=E6=9C=80=E5=A4=A7=E5=80=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/apis/auth.rb | 3 +-
app/api/mobile/apis/courses.rb | 4 ++-
app/services/courses_service.rb | 51 ++++++++++++++++++++++++---------
3 files changed, 42 insertions(+), 16 deletions(-)
diff --git a/app/api/mobile/apis/auth.rb b/app/api/mobile/apis/auth.rb
index 9e4cb1bc6..9f89d56dc 100644
--- a/app/api/mobile/apis/auth.rb
+++ b/app/api/mobile/apis/auth.rb
@@ -26,7 +26,8 @@ module Mobile
present :data, {token: key.access_token, user: api_user}, using: Entities::Auth
present :status, 0
else
- raise "无效的用户名或密码"
+ present :message, "无效的用户名或密码"
+ present :status,1
end
end
diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb
index 39d2ebe9d..57c1a8587 100644
--- a/app/api/mobile/apis/courses.rb
+++ b/app/api/mobile/apis/courses.rb
@@ -322,7 +322,9 @@ module Mobile
get ':course_id/students_score_list' do
cs = CoursesService.new
news = cs.students_score_list params,current_user
- present :data,news,with:Mobile::Entities::User
+ present :data,news[:user_list],with:Mobile::Entities::User
+ present :maxSize,news[:max_size]
+ present :status,0
end
desc '课程某次作业提交列表 并显示成绩'
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index 00a8ffd8b..9be3a24cb 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -333,13 +333,13 @@ class CoursesService
def homework_list params,current_user
course = Course.find(params[:id])
if course.is_public != 0 || current_user.member_of_course?(course)
- bids = course.homework_commons.page(1).per(20).order('created_at DESC')
+ bids = course.homework_commons.page(params[:page] || 1).per(20).order('created_at DESC')
bids = bids.like(params[:name]) if params[:name].present?
- homeworks = []
- bids.each do |bid|
- homeworks << show_homework_info(course,bid,current_user,is_course_teacher(current_user,course))
- end
- homeworks
+ homeworks = []
+ bids.each do |bid|
+ homeworks << show_homework_info(course,bid,current_user,is_course_teacher(current_user,course))
+ end
+ homeworks
else
raise '403'
end
@@ -552,17 +552,28 @@ class CoursesService
else
end
end
- studentlist = []
- bid.student_works.order("created_at desc").page(1).per(6).each do |work|
- studentlist << work.user
- end
+ # studentlist = []
+ # bid.student_works.order("created_at desc").page(1).per(6).each do |work|
+ # studentlist << work.user
+ # end
unless is_course_teacher
homework_for_anonymous_comments = get_student_batch_homework_list bid,current_user
end
#end
open_anonymous_evaluation = bid.homework_detail_manual.comment_status
- {:course_name => course.name,:course_id => course.id,:id => bid.id, :author => bid.user,:author_real_name => author_real_name, :homework_times => many_times, :homework_name => name, :homework_count => homework_count,:student_questions_count => 0,
- :description => description, :homework_state => state,:open_anonymous_evaluation => open_anonymous_evaluation,:homework_for_anonymous_comments => homework_for_anonymous_comments,:created_on => bid.created_at,:deadline => bid.end_time,:studentlist => studentlist}
+ {:course_name => course.name,:course_id => course.id,:id => bid.id,
+ :author => bid.user,:author_real_name => author_real_name,
+ :homework_times => many_times, :homework_name => name,
+ :homework_count => homework_count,:student_questions_count => 0,
+ :description => description, :homework_state => state,
+ :open_anonymous_evaluation => open_anonymous_evaluation,
+ :homework_for_anonymous_comments => homework_for_anonymous_comments,
+ :created_on => bid.created_at,:deadline => bid.end_time,
+ :homework_notsubmit_num => bid.course.members.count - bid.student_works.count,
+ :homework_submit_num => bid.student_works.count,
+ :homework_status_student => get_homework_status( bid),:homework_status_teacher => homework_status_desc( bid),
+ :student_evaluation_part => get_evaluation_part( bid ,3),
+ :ta_evaluation_part => get_evaluation_part( bid ,2),:homework_anony_type => bid.homework_type == 1 && !bid.homework_detail_manual.nil?}
end
@@ -720,20 +731,32 @@ class CoursesService
# 获取课程历次作业的学生总成绩
def students_score_list params,current_user
page = (params[:page] || 1) - 1
+ user_list = []
+ max_size = 0
if params[:type] == 1
homework_count = Course.find(params[:course_id]).homework_commons.count
sql = "select users.*,sum(IFNULL(0,student_works.final_score))/#{homework_count} score from student_works left outer join users on student_works.user_id = users.id" <<
" where homework_common_id in ( select id from homework_commons where homework_commons.course_id = #{params[:course_id]}) GROUP BY student_works.user_id ORDER BY score limit #{page*10},10"
- User.find_by_sql(sql)
+ sql_count = " select count(distinct(student_works.user_id) ) " <<
+ " from student_works left outer join users on student_works.user_id = users.id " <<
+ " where homework_common_id in " <<
+ " ( select id from homework_commons where homework_commons.course_id = #{params[:course_id]}) "
+ max_size = ActiveRecord::Base.connection().select_value(sql_count)
+ user_list = User.find_by_sql(sql)
else
sql1 = " select users.*,count(author_id)*2 active_count from messages " <<
" LEFT JOIN users on messages.author_id = users.id " <<
" where messages.board_id in (select id from boards where boards.course_id = #{params[:course_id]} ) " <<
" GROUP BY messages.author_id ORDER BY count(author_id) desc " <<
" limit #{page*10},10"
- User.find_by_sql(sql1)
+ sql1_count = " select count(DISTINCT(messages.author_id))" <<
+ " from messages LEFT JOIN users on messages.author_id = users.id " <<
+ " where messages.board_id in (select id from boards where boards.course_id = #{params[:course_id]} )"
+ max_size = ActiveRecord::Base.connection().select_value(sql1_count)
+ user_list = User.find_by_sql(sql1)
end
+ {:user_list=>user_list,:max_size=>max_size}
end
# 获取某次作业的所有作业列表
From 49b1b11d7b491e97668d8c4b9cb719f705883b93 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Thu, 9 Jul 2015 14:57:27 +0800
Subject: [PATCH 10/16] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E5=B7=B2=E7=BB=8F?=
=?UTF-8?q?=E8=BF=87=E6=97=B6=E7=9A=84=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/services/courses_service.rb | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index 9be3a24cb..3fc9fb51c 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -556,9 +556,9 @@ class CoursesService
# bid.student_works.order("created_at desc").page(1).per(6).each do |work|
# studentlist << work.user
# end
- unless is_course_teacher
- homework_for_anonymous_comments = get_student_batch_homework_list bid,current_user
- end
+ # unless is_course_teacher
+ # homework_for_anonymous_comments = get_student_batch_homework_list bid,current_user
+ # end
#end
open_anonymous_evaluation = bid.homework_detail_manual.comment_status
{:course_name => course.name,:course_id => course.id,:id => bid.id,
@@ -567,7 +567,7 @@ class CoursesService
:homework_count => homework_count,:student_questions_count => 0,
:description => description, :homework_state => state,
:open_anonymous_evaluation => open_anonymous_evaluation,
- :homework_for_anonymous_comments => homework_for_anonymous_comments,
+ #:homework_for_anonymous_comments => homework_for_anonymous_comments,
:created_on => bid.created_at,:deadline => bid.end_time,
:homework_notsubmit_num => bid.course.members.count - bid.student_works.count,
:homework_submit_num => bid.student_works.count,
From 2b00f65f426b82759ea39c89237e7cecfcd14753 Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Thu, 9 Jul 2015 15:08:36 +0800
Subject: [PATCH 11/16] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E7=9A=84=E5=BC=80?=
=?UTF-8?q?=E5=AD=A6=E5=AD=A6=E6=9C=9F=EF=BC=8C=E5=A2=9E=E5=8A=A0=EF=BC=9A?=
=?UTF-8?q?=E5=A4=8F=E5=AD=A3=E5=AD=A6=E6=9C=9F=EF=BC=8C=E5=BF=AB=EF=BC=81?=
=?UTF-8?q?=EF=BC=81=EF=BC=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/courses_helper.rb | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb
index a0bd18582..a67259efd 100644
--- a/app/helpers/courses_helper.rb
+++ b/app/helpers/courses_helper.rb
@@ -520,10 +520,14 @@ module CoursesHelper
option1 << l(:label_spring)
option1 << l(:label_spring)
option2 = []
- option2 << l(:label_autumn)
- option2 << l(:label_autumn)
+ option2 << l(:label_summer)
+ option2 << l(:label_summer)
+ option3 = []
+ option3 << l(:label_autumn)
+ option3 << l(:label_autumn)
type << option1
type << option2
+ type << option3
type
end
From 66042a90f3c72704928a9fb9c28eb1766737b9ac Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Fri, 10 Jul 2015 09:23:36 +0800
Subject: [PATCH 12/16] =?UTF-8?q?=E5=88=9B=E6=96=B0=E7=AB=9E=E8=B5=9B--?=
=?UTF-8?q?=E7=AB=9E=E8=B5=9B=E9=80=9A=E7=9F=A5=EF=BC=9A=E8=AF=84=E8=AE=BA?=
=?UTF-8?q?=E9=80=9A=E7=9F=A5=E8=BE=93=E5=85=A5=E6=A1=86=E6=98=BE=E7=A4=BA?=
=?UTF-8?q?=E8=B6=85=E5=87=BA=E8=BE=B9=E6=A1=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
public/stylesheets/jstoolbar.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/public/stylesheets/jstoolbar.css b/public/stylesheets/jstoolbar.css
index 2cc00b4a3..bfd93619a 100644
--- a/public/stylesheets/jstoolbar.css
+++ b/public/stylesheets/jstoolbar.css
@@ -3,7 +3,7 @@
}
.jstEditor textarea, .jstEditor iframe {
margin: 0;
- margin-left: 80px;
+ margin-left: 0px;
}
.jstHandle {
From bf9e905b57d0bd88c9bd4dc46d644809474a106f Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Fri, 10 Jul 2015 10:23:18 +0800
Subject: [PATCH 13/16] =?UTF-8?q?=E5=A6=82=E5=9B=BE=EF=BC=8C=E8=AF=BE?=
=?UTF-8?q?=E7=A8=8B=E5=AD=A6=E7=94=9F=E5=88=97=E8=A1=A8=E4=B8=AD=EF=BC=8C?=
=?UTF-8?q?=E7=BC=96=E8=BE=91=E5=88=86=E7=8F=AD=E7=9A=84=E8=BE=93=E5=85=A5?=
=?UTF-8?q?=E6=A1=86=E5=92=8C=E6=B7=BB=E5=8A=A0=E5=88=86=E7=8F=AD=E7=9A=84?=
=?UTF-8?q?=E8=BE=93=E5=85=A5=E6=A1=86=E5=90=8C=E6=97=B6=E6=98=BE=E7=A4=BA?=
=?UTF-8?q?=E6=97=B6=E4=B8=8D=E5=90=88=E9=80=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/courses/_new_groups_name.html.erb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/views/courses/_new_groups_name.html.erb b/app/views/courses/_new_groups_name.html.erb
index da599ef5a..39fa33677 100644
--- a/app/views/courses/_new_groups_name.html.erb
+++ b/app/views/courses/_new_groups_name.html.erb
@@ -21,7 +21,7 @@

<% end%>
-
+
<% end %>
@@ -42,7 +42,7 @@
<% if @canShowCode %>
- +添加分班
+ +添加分班
From a52b2b37e5cd32aa96d0135cb821f95390674206 Mon Sep 17 00:00:00 2001
From: zhangshenjerry <1375181337@qq.com>
Date: Fri, 10 Jul 2015 10:45:36 +0800
Subject: [PATCH 14/16] =?UTF-8?q?=E8=AF=BE=E7=A8=8B--=E9=97=AE=E5=8D=B7?=
=?UTF-8?q?=E8=B0=83=E6=9F=A5=EF=BC=9A=E5=BB=BA=E8=AE=AE=E4=BF=AE=E5=A4=8D?=
=?UTF-8?q?=E2=80=9C=E5=8A=A0=E5=85=A5=E5=BD=93=E5=89=8D=E5=88=86=E5=88=AB?=
=?UTF-8?q?=E2=80=9D=E3=80=81=E2=80=9C=E6=8E=A8=E5=87=BA=E5=BD=93=E5=89=8D?=
=?UTF-8?q?=E5=88=86=E7=8F=AD=E2=80=9D=E6=8C=89=E9=92=AE=E6=A0=B7=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/watchers_helper.rb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/helpers/watchers_helper.rb b/app/helpers/watchers_helper.rb
index d3b2a49b1..52f2ea119 100644
--- a/app/helpers/watchers_helper.rb
+++ b/app/helpers/watchers_helper.rb
@@ -169,14 +169,14 @@ module WatchersHelper
if joined
link_to text, {:controller => "courses", :action => "join_group", :object_id => "#{group.id}"},
:remote => true, :method => 'delete',
- :id => "#{group.id}", :style => "padding: 8px 8px 4px; ",
+ :id => "#{group.id}", :style => "padding: 2px 8px 2px; background-color:#15bccf; color:#fff; ",
:confirm => l(:text_are_you_sure_out_group), :class => 'group_in'
end
else
text = l(:label_new_join_group)
form_tag({:controller => "courses", :action => "join_group", :object_id => "#{group.id}"}, :remote => true, :method => 'post') do
- submit_tag text, class: "group_in", style: "width: 90px;height: 21px;"
+ submit_tag text, class: "group_in", style: "width: 90px;height: 21px; background-color:#15bccf; color:#fff;"
end
end
end
From 15f8e4272e00f84d90dd06b417e1844e13bbff09 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Fri, 10 Jul 2015 11:05:33 +0800
Subject: [PATCH 15/16] =?UTF-8?q?=E6=AF=94=E7=8E=87=E4=BF=9D=E7=95=99=201?=
=?UTF-8?q?=20=E4=BD=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/api_helper.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/helpers/api_helper.rb b/app/helpers/api_helper.rb
index ac0357f53..96966150c 100644
--- a/app/helpers/api_helper.rb
+++ b/app/helpers/api_helper.rb
@@ -158,7 +158,7 @@ module ApiHelper
if homework_eva_task_num == 0
0
else
- ( homework_eva_completed_task_num / homework_eva_task_num.to_f * 100 ) .round(2)
+ ( homework_eva_completed_task_num / homework_eva_task_num.to_f * 100 ) .round(1)
end
end
From e39fe372efb6168d49def122992aa6d00815354f Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Fri, 10 Jul 2015 13:32:56 +0800
Subject: [PATCH 16/16] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E7=8A=B6=E6=80=81=20?=
=?UTF-8?q?=E6=8F=8F=E8=BF=B0=E6=94=B9=E5=8F=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/api_helper.rb | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/helpers/api_helper.rb b/app/helpers/api_helper.rb
index 96966150c..fa231607a 100644
--- a/app/helpers/api_helper.rb
+++ b/app/helpers/api_helper.rb
@@ -93,7 +93,7 @@ module ApiHelper
def homework_status_desc homework
if homework.homework_type == 1 && homework.homework_detail_manual #匿评作业
if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
- link = "截止日期之前不可启动匿评"
+ link = show_homework_deadline homework
elsif homework.student_works.count >= 2 #作业份数大于2
case homework.homework_detail_manual.comment_status
when 1
@@ -104,10 +104,10 @@ module ApiHelper
link = " 匿评结束"
end
else
- link = "提交作业数大于2才可启动匿评"
+ link = "提交作业数过少"
end
else
- link = "未开启匿评作业不可启动匿评"
+ link = "未开启匿评作业"
end
link
end
| |