From d4a9f13ff30d1f69a92525a48ca349d9d3624391 Mon Sep 17 00:00:00 2001
From: cxt <853663049@qq.com>
Date: Tue, 22 Oct 2019 10:23:35 +0800
Subject: [PATCH] =?UTF-8?q?=E7=AB=9E=E8=B5=9B=E7=9A=84=E5=AF=BC=E5=87=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../admins/enroll_lists_controller.rb            | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/app/controllers/admins/enroll_lists_controller.rb b/app/controllers/admins/enroll_lists_controller.rb
index ccac6a72d..135ef55ae 100644
--- a/app/controllers/admins/enroll_lists_controller.rb
+++ b/app/controllers/admins/enroll_lists_controller.rb
@@ -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])