diff --git a/app/Http/Admin/Views/category/list.volt b/app/Http/Admin/Views/category/list.volt index 3f6351a0..7e2efff7 100644 --- a/app/Http/Admin/Views/category/list.volt +++ b/app/Http/Admin/Views/category/list.volt @@ -39,7 +39,7 @@ 图标 名称 层级 - 子类 + 子节点 排序 发布 操作 diff --git a/app/Http/Admin/Views/index/main_app_info.volt b/app/Http/Admin/Views/index/main_app_info.volt index 7b59198e..eaa4b24e 100644 --- a/app/Http/Admin/Views/index/main_app_info.volt +++ b/app/Http/Admin/Views/index/main_app_info.volt @@ -12,7 +12,7 @@ 当前版本 - {{ app_info.version }} + {{ app_info.alias }} {{ app_info.version }} 获取渠道 diff --git a/app/Http/Home/Controllers/TeacherController.php b/app/Http/Home/Controllers/TeacherController.php index 5260f285..91b2ab65 100644 --- a/app/Http/Home/Controllers/TeacherController.php +++ b/app/Http/Home/Controllers/TeacherController.php @@ -8,7 +8,9 @@ namespace App\Http\Home\Controllers; use App\Http\Home\Services\FullH5Url as FullH5UrlService; +use App\Services\Logic\Teacher\CourseList as TeacherCourseListService; use App\Services\Logic\Teacher\TeacherList as TeacherListService; +use App\Services\Logic\User\UserInfo as UserInfoService; use Phalcon\Mvc\View; /** @@ -29,7 +31,7 @@ class TeacherController extends Controller return $this->response->redirect($location); } - $this->seo->prependTitle('师资'); + $this->seo->prependTitle('教师'); } /** @@ -59,11 +61,34 @@ class TeacherController extends Controller return $this->response->redirect($location); } - $this->dispatcher->forward([ - 'controller' => 'user', - 'action' => 'show', - 'params' => ['id' => $id], - ]); + $service = new UserInfoService(); + + $user = $service->handle($id); + + if ($user['deleted'] == 1) { + $this->notFound(); + } + + $this->seo->prependTitle(['讲师', $user['name']]); + + $this->view->setVar('user', $user); + } + + /** + * @Get("/{id:[0-9]+}/courses", name="home.teacher.courses") + */ + public function coursesAction($id) + { + $model = $this->request->getQuery('model', 'trim', 'vod'); + + $service = new TeacherCourseListService(); + + $pager = $service->handle($id); + + $pager->target = "tab-{$model}"; + + $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); + $this->view->setVar('pager', $pager); } } diff --git a/app/Http/Home/Services/ArticleQuery.php b/app/Http/Home/Services/ArticleQuery.php index 5d587329..fe898d92 100644 --- a/app/Http/Home/Services/ArticleQuery.php +++ b/app/Http/Home/Services/ArticleQuery.php @@ -131,23 +131,22 @@ class ArticleQuery extends Service $validator = new ArticleQueryValidator(); if (isset($query['tag_id'])) { - $validator->checkTag($query['tag_id']); - $params['tag_id'] = $query['tag_id']; + $tag = $validator->checkTag($query['tag_id']); + $params['tag_id'] = $tag->id; } if (isset($query['tc']) && $query['tc'] != 'all') { - $validator->checkCategory($query['tc']); - $params['tc'] = $query['tc']; + $category = $validator->checkCategory($query['tc']); + $params['tc'] = $category->id; } if (isset($query['sc']) && $query['sc'] != 'all') { - $validator->checkCategory($query['sc']); - $params['sc'] = $query['sc']; + $category = $validator->checkCategory($query['sc']); + $params['sc'] = $category->id; } if (isset($query['sort'])) { - $validator->checkSort($query['sort']); - $params['sort'] = $query['sort']; + $params['sort'] = $validator->checkSort($query['sort']);; } return $params; diff --git a/app/Http/Home/Services/CourseQuery.php b/app/Http/Home/Services/CourseQuery.php index 11db94bb..6c0d8fe2 100644 --- a/app/Http/Home/Services/CourseQuery.php +++ b/app/Http/Home/Services/CourseQuery.php @@ -7,7 +7,6 @@ namespace App\Http\Home\Services; -use App\Caches\Category as CategoryCache; use App\Models\Category as CategoryModel; use App\Models\Course as CourseModel; use App\Services\Category as CategoryService; @@ -187,32 +186,6 @@ class CourseQuery extends Service return $result; } - public function handleCategoryPaths($categoryId) - { - $result = []; - - $cache = new CategoryCache(); - - $subCategory = $cache->get($categoryId); - $topCategory = $cache->get($subCategory->parent_id); - - $topParams = ['tc' => $topCategory->id]; - - $result['top'] = [ - 'name' => $topCategory->name, - 'url' => $this->baseUrl . $this->buildParams($topParams), - ]; - - $subParams = ['tc' => $topCategory->id, 'sc' => $subCategory->id]; - - $result['sub'] = [ - 'name' => $subCategory->name, - 'url' => $this->baseUrl . $this->buildParams($subParams), - ]; - - return $result; - } - public function getParams() { $query = $this->request->getQuery(); @@ -221,29 +194,31 @@ class CourseQuery extends Service $validator = new CourseQueryValidator(); + if (isset($query['tag_id'])) { + $tag = $validator->checkTag($query['tag_id']); + $params['tag_id'] = $tag->id; + } + if (isset($query['tc']) && $query['tc'] != 'all') { - $validator->checkTopCategory($query['tc']); - $params['tc'] = $query['tc']; + $category = $validator->checkCategory($query['tc']); + $params['tc'] = $category->id; } if (isset($query['sc']) && $query['sc'] != 'all') { - $validator->checkSubCategory($query['sc']); - $params['sc'] = $query['sc']; + $category = $validator->checkCategory($query['sc']); + $params['sc'] = $category->id; } if (isset($query['model']) && $query['model'] != 'all') { - $validator->checkModel($query['model']); - $params['model'] = $query['model']; + $params['model'] = $validator->checkModel($query['model']); } if (isset($query['level']) && $query['level'] != 'all') { - $validator->checkLevel($query['level']); - $params['level'] = $query['level']; + $params['level'] = $validator->checkLevel($query['level']); } if (isset($query['sort'])) { - $validator->checkSort($query['sort']); - $params['sort'] = $query['sort']; + $params['sort'] = $validator->checkSort($query['sort']); } return $params; diff --git a/app/Http/Home/Services/QuestionQuery.php b/app/Http/Home/Services/QuestionQuery.php index bea74aee..4a71dad1 100644 --- a/app/Http/Home/Services/QuestionQuery.php +++ b/app/Http/Home/Services/QuestionQuery.php @@ -131,23 +131,22 @@ class QuestionQuery extends Service $validator = new QuestionQueryValidator(); if (isset($query['tag_id'])) { - $validator->checkTag($query['tag_id']); - $params['tag_id'] = $query['tag_id']; + $tag = $validator->checkTag($query['tag_id']); + $params['tag_id'] = $tag->id; } if (isset($query['tc']) && $query['tc'] != 'all') { - $validator->checkCategory($query['tc']); - $params['tc'] = $query['tc']; + $category = $validator->checkCategory($query['tc']); + $params['tc'] = $category->id; } if (isset($query['sc']) && $query['sc'] != 'all') { - $validator->checkCategory($query['sc']); - $params['sc'] = $query['sc']; + $category = $validator->checkCategory($query['sc']); + $params['sc'] = $category->id; } if (isset($query['sort'])) { - $validator->checkSort($query['sort']); - $params['sort'] = $query['sort']; + $params['sort'] = $validator->checkSort($query['sort']);; } return $params; diff --git a/app/Http/Home/Views/course/show_teacher.volt b/app/Http/Home/Views/course/show_teacher.volt index e5e18a3d..e10b581c 100644 --- a/app/Http/Home/Views/course/show_teacher.volt +++ b/app/Http/Home/Views/course/show_teacher.volt @@ -4,7 +4,7 @@
授课教师
- {% set teacher_url = url({'for':'home.user.show','id':teacher.id}) %} + {% set teacher_url = url({'for':'home.teacher.show','id':teacher.id}) %}