1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-27 04:57:39 +08:00
course-tencent-cloud/app/Caches/ChapterTreeList.php
2020-04-03 19:20:46 +08:00

54 lines
1014 B
PHP

<?php
namespace App\Caches;
use App\Builders\ChapterTreeList as ChapterTreeListBuilder;
use App\Repos\Course as CourseRepo;
use Phalcon\Mvc\Model\Resultset;
class ChapterTreeList extends Cache
{
protected $lifetime = 7 * 86400;
public function getLifetime()
{
return $this->lifetime;
}
public function getKey($id = null)
{
return "chapter_tree_list:{$id}";
}
public function getContent($id = null)
{
$courseRepo = new CourseRepo();
/**
* @var Resultset $chapters
*/
$chapters = $courseRepo->findChapters($id);
if ($chapters->count() == 0) {
return [];
}
return $this->handleContent($chapters);
}
/**
* @param Resultset $chapters
* @return array
*/
protected function handleContent($chapters)
{
$items = $chapters->toArray();
$builder = new ChapterTreeListBuilder();
return $builder->handleTreeList($items);
}
}