request; $sort = $request->get('sort'); $orderBy = empty($sort) ? 'id DESC' : ''; $query = GameProve::find()->orderBy($orderBy); // 搜索 $searchArr = ['keywords' => '', 'status' => '', 'date' => ['start' => '2017-01-01 00:00', 'end' => date('Y-m-d H:i')]]; $keywords = $request->get('keywords', ''); if (!empty($keywords)) { $searchArr['keywords'] = $keywords; $query->andWhere("uid = '{$keywords}'"); } $status = $request->get('status', ''); if (!empty($status)) { $searchArr['status'] = $status; $query->andWhere(['status' => $status]); } $date = $request->get('date', []); if (!empty($date)) { $tmp = explode(DateRangePicker::SEPARATOR, $date); $searchArr['date'] = ['start' => $tmp['0'], 'end' => $tmp['1']]; $query->andWhere(['between', 'created_at', strtotime($tmp['0']), strtotime($tmp['1'])]); } // 导出Excel if ($request->get('op') == 'export') { return Excel::export([ 'models' => $query->all(), 'fileName' => '认证记录_' . date('YmdHs') . '.xlsx', 'columns' => [ 'id', 'uid', 'num', 'service_price', 't_num', 'g_num', ['attribute' => 'status', 'format' => 'raw', 'value' => function ($model) { return $model->status == 1 ? '已领取' : '未领取'; }], ['attribute' => 'effective_at', 'format' => ['date', 'php:Y-m-d H:i:s']], ['attribute' => 'created_at', 'format' => ['date', 'php:Y-m-d H:i:s']] ], ]); } return $this->render('index', ['query' => $query, 'searchArr' => $searchArr]); } }