checkSite(); $param = $this->request->param(); //搜索条件 $sessionAdminId = session('ADMIN_ID'); $where = [['a.user_id', '=', $sessionAdminId]]; if (!empty($param['keyword'])) { $where[] = ['a.title', 'like', "%{$param['keyword']}%"]; } if (!empty($param['activity_id'])) { $where[] = ['aj.activity_id', '=', $param['activity_id']]; } if (isset($param['status']) && ($param['status'] === '0' || $param['status'] > 0)) { $where[] = ['aj.status', '=', $param['status']]; } $activity = ActivityJoinModel::alias('aj') ->leftJoin('activity a', 'aj.activity_id = a.id') ->leftJoin('user u', 'aj.user_id = u.id') ->field('aj.*,a.title,u.user_name,u.mobile') ->where($where) ->order('create_time', 'DESC') ->paginate(10, false, ['query' => $param]); $this->assign('keyword', isset($param['keyword']) ? $param['keyword'] : ''); $this->assign('activity_id', isset($param['activity_id']) ? $param['activity_id'] : ''); $this->assign('status', isset($param['status']) ? $param['status'] : ''); $this->assign('activity', $activity->items()); $this->assign('page', $activity->render()); return $this->fetch(); } public function export() { $param = $this->request->param(); //搜索条件 $sessionAdminId = session('ADMIN_ID'); $where = [['a.user_id', '=', $sessionAdminId]]; if (!empty($param['ids'])) { $where[] = ['aj.id', 'in', $param['ids']]; } else { if (!empty($param['keyword'])) { $where[] = ['a.title', 'like', "%{$param['keyword']}%"]; } if (!empty($param['activity_id'])) { $where[] = ['aj.activity_id', '=', $param['activity_id']]; } if (isset($param['status']) && ($param['status'] === '0' || $param['status'] > 0)) { $where[] = ['aj.status', '=', $param['status']]; } } //获取数据 $activity = ActivityJoinModel::alias('aj') ->leftJoin('activity a', 'aj.activity_id = a.id') ->leftJoin('user u', 'aj.user_id = u.id') ->field('aj.*,a.title,u.user_name,u.mobile') ->where($where) ->order('create_time', 'DESC') ->select(); //表头 $header = [ 'id' => 'id', 'activity_id' => '活动id', 'title' => '活动标题', 'user_id' => '用户id', 'user_name' => '用户姓名', 'mobile' => '用户电话', 'status' => '状态', 'create_time' => '报名时间', ]; //表格内容 foreach ($activity as $v) { $v['create_time'] = date('Y-m-d H:i', $v['create_time']); $v['status'] = $v['status'] == 0 ? '未签到' : '已签到'; } export_excel_data($header, $activity, '报名列表', ['mobile','create_time']); } }