<?php /** * Created by PhpStorm. * User: zhonglei * Date: 17/7/25 * Time: 11:57 */ namespace Apicp\Controller\Customtask; use Com\PackageValidate; use Com\Rpc; use Common\Common\Constant; use Common\Service\CustomtaskContentService; class ContentListController extends \Apicp\Controller\AbstractController { /** * ContentList * @author zhonglei * @desc 获取任务内容列表接口 * @param string app:true 应用(course=课程;exam=考试;activity=活动;questionnaire=调研) * @param Int class_id 分类ID * @param string keyword 搜索关键字 * @param Int page:1 当前页 * @param Int limit:20 每页数据总数 * @return array array( 'page' => 1, // 当前页 'limit' => 20, // 每页数据总数 'total' => 100, // 数据总数 'list' => array( // 列表数据 'app_data_id' => 1, // 数据ID 'title' => '电商冲击,实体店靠什么赢', // 标题 'class_name' => '导购FM', // 分类名称 'author' => '张三', // 作者 'status' => '未开始', // 状态 ), ), */ public function Index_post() { // 验证规则 $rules = [ 'app' => 'require|in:course,exam,activity,questionnaire', 'class_id' => 'integer', 'keyword' => 'max:50', 'page' => 'integer', 'limit' => 'integer', ]; // 验证数据 $validate = new PackageValidate($rules, [], array_keys($rules)); $post_data = $validate->postData; // 考试、调研需要获取已使用数据ID数组 if (in_array($post_data['app'], [Constant::APP_EXAM, Constant::APP_QUESTIONNAIRE])) { $contentServ = new CustomtaskContentService(); $post_data['app_data_ids'] = $contentServ->getAppDataIds($post_data['app']); } $app = ucfirst(strtolower($post_data['app'])); $url = rpcUrl("/{$app}/Rpc/TaskCenter/List"); $this->_result = Rpc::phprpc($url)->invoke('index', $post_data); } }