Screen.php 2.0 KB
<?php

namespace app\api\controller;

use app\common\controller\Api;

/**
 * 数据大屏
 * @ApiWeigh    (95)
 */
class Screen extends Api
{
    protected $noNeedLogin = ['*'];
    protected $noNeedRight = ['*'];

    /**
     * @ApiTitle (大屏管理)
     * @ApiMethod (POST)
     * @ApiReturn   ({"code":状态码,
    "msg":"提示信息"
    "time": "时间戳",
    "data": "大屏图片",
    "time": "当前时间",
    "campus": "活动名称",
    "team_rank": 战队排行[从高到底排],
    "study_rank": 个人排行[每个战队中从高到低排]
    }
     */
    public function index(){
        $list = [];
        $data = db('screen')->find();
        $list['images'] = cdnurl($data['images'],true);
        $list['count_down'] = $data['endtime'];
        $list['screen_name'] = db('ronda')->where('id',$data['ronda_id'])->value('title');
        $list['campus_name'] = $data['campus'];
        $list['time'] = date('Y-m-d H:i:s',time());
        $list['team_rank'] = \db('team_score')
            ->where('ronda_id',$data['ronda_id'])
            ->order('score DESC')
            ->paginate(4)
            ->each(function ($item,$key){
                $item['team_name'] = db('team')->where('id',$item['team_id'])->value('title');
                $item['team_score'] = $item['score'];
//                $item['score'] = floor($item['sum_score']);
//                $item['study'] = db('study_score_log l')
//                    ->distinct('l.study_id')
//                    ->join('study s','l.study_id = s.id')
//                    ->whereIn('l.campus_ids',$item['campus_ids'])
//                    ->where('s.team',$item['team'])
//                    ->field('s.name,sum(score) as sum_score')
//                    ->order('sum_score','desc')
//                    ->group('study_id')
//                    ->select();
                return $item;
            });
        $this->success('获取成功',$list);
    }

}