tesdd
This commit is contained in:
parent
2e2a6edd46
commit
66c6ff4f28
|
@ -0,0 +1,40 @@
|
|||
require 'csv'
|
||||
require 'nkf'
|
||||
|
||||
csv_title = ["id", "用户名称", "用户电话","最后登录时间", "用户部门", "所属高校","课程数量", "高校省份", "高校城市", "高校地址", "实训总数"]
|
||||
|
||||
school_ids = School.select(:id, :province).where(province: ["安徽","江苏"]).pluck(:id)
|
||||
|
||||
user_items = []
|
||||
an_items = []
|
||||
j_items = []
|
||||
users = UserExtension.where(school_id: school_ids, identity: :teacher).includes(:user,:department, school: :courses)
|
||||
|
||||
users.each_with_index do |u, index|
|
||||
user = u.user
|
||||
school = u.school
|
||||
course_count = school.courses.size
|
||||
|
||||
shixun = SchoolReport.select(:school_id, :shixun_evaluate_count).find_by(school_id: u.school_id).try(:shixun_evaluate_count)
|
||||
item = [index+1, user.try(:show_real_name), user.try(:phone), user.try(:last_login_on), u&.department.try(:name),
|
||||
school.try(:name),course_count, school.try(:province), school.try(:city), school.try(:address), shixun]
|
||||
if u.school.try(:province) == "安徽"
|
||||
an_items.push(item)
|
||||
else
|
||||
j_items.push(item)
|
||||
end
|
||||
end
|
||||
|
||||
user_items = an_items + j_items
|
||||
|
||||
csv_string = CSV.generate(headers: true) do |csv|
|
||||
csv << csv_title
|
||||
user_items.each do |i|
|
||||
csv << i
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
fh = File.new("public/teachers.csv", "wb")
|
||||
fh.puts NKF.nkf("-wL",csv_string)
|
||||
fh.close
|
Loading…
Reference in New Issue