|
|
|
@ -2,8 +2,7 @@ class Admins::EnrollListsController < Admins::BaseController
|
|
|
|
|
|
|
|
|
|
def index
|
|
|
|
|
@competition = current_competition
|
|
|
|
|
params[:sort_by] = params[:sort_by].presence || 'created_at'
|
|
|
|
|
params[:sort_direction] = params[:sort_direction].presence || 'desc'
|
|
|
|
|
default_sort('created_at', 'desc')
|
|
|
|
|
enroll_lists = Admins::CompetitionEnrollListQuery.call(@competition, params)
|
|
|
|
|
|
|
|
|
|
@params_page = params[:page] || 1
|
|
|
|
@ -13,10 +12,21 @@ class Admins::EnrollListsController < Admins::BaseController
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
format.js
|
|
|
|
|
format.html
|
|
|
|
|
format.xls
|
|
|
|
|
format.xls{
|
|
|
|
|
filename = "#{@competition.name}竞赛报名列表_#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}.xls"
|
|
|
|
|
send_data(shixun_list_xls(shixuns), :type => 'application/octet-stream', :filename => filename_for_content_disposition(filename))
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def export
|
|
|
|
|
default_sort('created_at', 'desc')
|
|
|
|
|
@enroll_lists = Admins::CompetitionEnrollListQuery.call(current_competition, params)
|
|
|
|
|
|
|
|
|
|
filename = ["#{current_competition.name}竞赛报名列表", Time.zone.now.strftime('%Y-%m-%d%H:%M:%S')].join('-') << '.xlsx'
|
|
|
|
|
render xlsx: 'export', filename: filename
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
private
|
|
|
|
|
def current_competition
|
|
|
|
|
@_current_competition ||= Competition.find(params[:competition_id])
|
|
|
|
|