StudyRankController.class.php 2.5 KB
<?php
/**
 * Created by PhpStorm.
 * User: zhonglei
 * Date: 17/10/11
 * Time: 13:58
 */

namespace Apicp\Controller\DataRank;

use Com\PackageValidate;
use Common\Common\Constant;
use Common\Common\DataHelper;

class StudyRankController extends \Apicp\Controller\AbstractController
{
    /**
     * StudyRank
     * @author zhonglei
     * @desc 学习排行接口
     * @param Int starttime:true 开始时间戳
     * @param Int endtime:true 结束时间戳
     * @return array
            array(
                'course' => array( // 课程TOP10
                    array(
                        'article_id' => 18, // 课程ID
                        'cover_url'=>'', // 课程图片
                        'article_title' => '热烈庆祝十九大胜利召开', // 课程标题
                        'total' => 100, // 学习人数
                    ),
                ),
                'news' => array( // 新闻TOP10
                    array(
                        'article_id' => 18, // 新闻ID
                        'cover_url'=>'',// 新闻图片
                        'article_title' => '热烈庆祝十九大胜利召开', // 新闻标题
                        'total' => 100, // 点赞总数
                    ),
                ),
                'doc' => array( // 资料库TOP10
                    array(
                        'file_id' => 18, // 文件ID
                        'file_name' => '宇宙超级无敌小霸王.doc', // 文件名称
                        'total' => 100, // 点击总数
                    ),
                ),
            )
     */
    public function Index_post()
    {
        // 请求数据
        $post_data = I('post.');

        // 验证规则
        $rules = [
            'starttime' => 'require|integer',
            'endtime' => 'require|integer',
        ];

        // 验证请求数据
        $validate = new PackageValidate();
        $validate->postData = $post_data;
        $validate->validateParams($rules);

        $dataHelper = &DataHelper::instance();
        $starttime = $dataHelper->formatStarttime($post_data['starttime']);
        $endtime = $dataHelper->formatEndtime($post_data['endtime']);

        $this->_result = [
            'course' => $dataHelper->listCourseRank($starttime, $endtime, Constant::DATARANK_SHOW_TOTAL),
            'news' => $dataHelper->listNewsRank($starttime, $endtime, Constant::DATARANK_SHOW_TOTAL),
            'doc' => $dataHelper->listDocRank($starttime, $endtime, Constant::DATARANK_SHOW_TOTAL),
        ];
    }
}