InfoController.class.php
1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?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;
}
}