You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.0 KiB
28 lines
1.0 KiB
#coding=utf-8
|
|
|
|
desc "合并高校的数据,第一个参数是: 正确高校的id, 第二个参数是: 错误高校需要合并到正确高校的id"
|
|
# 命令: bundle exec rake schools:merge_school_data f_school=1 s_school=2,3
|
|
namespace :schools do
|
|
task merge_school_data: :environment do
|
|
f_school = ENV['f_school'].to_i
|
|
school = School.find_by(id: f_school)
|
|
return if school.blank?
|
|
|
|
s_school = ENV['s_school'].split(",")
|
|
merge_schools = School.where(id: s_school)
|
|
|
|
# 改变用户的学校id 和 单位
|
|
UserExtension.where(school_id: merge_schools)
|
|
.update_all(school_id: f_school, department_id: nil)
|
|
|
|
# 改变课堂的学校id
|
|
Course.where(school_id: merge_schools).update_all(school_id: f_school)
|
|
|
|
# 实训报告表迁移数据
|
|
s_report = SchoolReport.find_by(school_id: f_school)
|
|
SchoolReport.where(school_id: merge_schools).each do |sr|
|
|
s_report.update_column(:shixun_evaluate_count, (s_report.shixun_evaluate_count+sr.shixun_evaluate_count))
|
|
sr.update(shixun_evaluate_count: 0)
|
|
end
|
|
end
|
|
end |