<?php /** * Created by PhpStorm. * User: liyifei2012it * Date: 18/4/2 * Time: 10:55 */ namespace Api\Controller\Teacher; use Com\PackageValidate; use Common\Common\Teacher; use Common\Service\ArticleService; class InfoController extends \Api\Controller\AbstractController { /** * Info * @author liyifei * @desc 讲师详情接口 * @param Int teacher_id 讲师ID(讲师本人查看时可不传) * @return array array( 'teacher_name' => '赵四', // 讲师姓名 'face_url' => 'http://www.vchangyi.com/1.png', // 头像 'title' => '金牌讲师', // 讲师头衔 'class_hour' => 100, // 总课时 'tag' => array('人资', '专家'), // 讲师标签 'remark' => '介绍', // 介绍 ); */ public function Index_post() { $rules = [ 'teacher_id' => 'integer|gt:0', ]; // 验证请求数据 $validate = new PackageValidate($rules, [], array_keys($rules)); $postData = $validate->postData; // 本人为讲师时,无需teacher_id $uid = ''; if (!isset($postData['teacher_id'])) { $postData['teacher_id'] = 0; $uid = $this->uid; } $teacherServ = &Teacher::instance(); $teacher = $teacherServ->getTeacherInfo($postData['teacher_id'], $uid); // 计算总课时 if (!empty($teacher)) { $articleServ = new ArticleService(); $articleList = $articleServ->list_by_conds(['teacher_id' => $postData['teacher_id']]); foreach ($articleList as $article) { $teacher['class_hour'] += $article['class_hour']; } } $this->_result = $teacher; } }