Merge remote-tracking branch 'origin/dev_aliyun' into dev_aliyun

dev_unstable
杨树明 6 years ago
commit b0941e9b2a

@ -568,7 +568,7 @@ class ApplicationController < ActionController::Base
end
def strf_date(date)
date.blank? ? '' : Time.parse(date).strftime("%Y-%m-%d")
date.blank? ? '' : date.to_date.strftime("%Y-%m-%d")
end
def logger_error(error)

@ -26,7 +26,7 @@ class CoursesController < ApplicationController
:base_info, :get_historical_courses, :create_group_by_importing_file,
:attahcment_category_list,:export_member_scores_excel, :duplicate_course,
:switch_to_teacher, :switch_to_assistant, :switch_to_student, :exit_course,
:informs, :update_informs, :online_learning, :update_task_position, :tasks_list]
:informs, :update_informs, :online_learning, :update_task_position, :tasks_list, :join_excellent_course]
before_action :user_course_identity, except: [:join_excellent_course, :index, :create, :new, :apply_to_join_course,
:search_course_list, :get_historical_course_students, :mine, :search_slim]
before_action :teacher_allowed, only: [:update, :destroy, :settings, :search_teacher_candidate,
@ -158,6 +158,8 @@ class CoursesController < ApplicationController
@course.subject.subject_members.where.not(user_id: current_user.id).each do |s_member|
CourseMember.create!(course_id: @course.id, user_id: s_member.user_id, role: 2)
end
Inform.create(container: @course, description: @subject.learning_notes)
end
course_module_types = params[:course_module_types]
@ -179,7 +181,7 @@ class CoursesController < ApplicationController
extra_params = Hash.new
extra_params[:school_id] = @school.id
if @course.is_end && (course_params[:end_date].blank? || course_params[:end_date].to_date > Date.today)
if @course.is_end && (course_params[:end_date].blank? || course_params[:end_date].to_date >= Date.today)
extra_params[:is_end] = 0
elsif !@course.is_end && !course_params[:end_date].blank? && course_params[:end_date].to_date < Date.today
extra_params[:is_end] = 1

Binary file not shown.

@ -32,6 +32,41 @@ namespace :sync do
MessageDetail.create!(message_id: new_message.id, content: discuss.try(:content))
end
end
end
task :sigle_message => :environment do
shixun_id = ENV['args'].split(",")[0] # 对应课程的id
board_id = ENV['args'].split(",")[1]
message_id = ENV['args'].split(",")[2]
status = ENV['args'].split(",")[3] # 表示相应的期数
if status.to_i == 1
start_time = '2018-12-16'
end_time = '2019-04-01'
elsif status.to_i == 2
start_time = '2019-04-07'
end_time = '2019-07-28'
else
# 这种情况是取所有的
start_time = '2015-01-01'
end_time = '2022-07-28'
end
discusses = Discuss.where(dis_id: shixun_id).where("parent_id is null and created_at >? and created_at <?", start_time, end_time)
discusses.each do |discusse|
puts discusse.id
# 找到所有的子回复
replies = Discuss.where(parent_id: discusse.id)
# 如果有子回复,除了创建父回复外,还需要同步子回复
new_message = Message.create!(board_id: board_id.to_i, author_id: discuss.user_id, parent_id: message_id, root_id: message_id)
MessageDetail.create!(message_id: new_message.id, content: discuss.try(:content))
if replies.present?
replies.each do |reply|
reply_message = Message.create!(board_id: board_id.to_i, author_id: reply.user_id, parent_id: new_message.id, root_id: message_id)
MessageDetail.create!(message_id: reply_message.id, content: reply.try(:content))
end
end
end
end
end
Loading…
Cancel
Save