1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-07-24 00:41:43 +08:00

新增课时资源结构

This commit is contained in:
xiaochong0302 2020-09-22 19:31:44 +08:00
parent e4bf021203
commit 8f6c3eb3e5
10 changed files with 14534 additions and 14155 deletions

View File

@ -62,7 +62,7 @@ class Setting extends Service
*/ */
if ($items->count() > 0) { if ($items->count() > 0) {
foreach ($items as $item) { foreach ($items as $item) {
$case1 = preg_match('/(id|auth|key|secret|pass|pwd)/', $item->item_key); $case1 = preg_match('/(id|auth|key|secret|password|pwd)$/', $item->item_key);
$case2 = $this->dispatcher->getControllerName() == 'setting'; $case2 = $this->dispatcher->getControllerName() == 'setting';
if ($case1 && $case2) { if ($case1 && $case2) {
$item->item_value = '***'; $item->item_value = '***';

View File

@ -160,6 +160,13 @@ class Chapter extends Model
*/ */
public $like_count; public $like_count;
/**
* 资源数
*
* @var int
*/
public $res_count;
/** /**
* 创建时间 * 创建时间
* *

View File

@ -0,0 +1,86 @@
<?php
namespace App\Models;
use Phalcon\Mvc\Model\Behavior\SoftDelete;
class ChapterResource extends Model
{
/**
* 主键编号
*
* @var int
*/
public $id;
/**
* 课程编号
*
* @var int
*/
public $course_id;
/**
* 章节编号
*
* @var int
*/
public $chapter_id;
/**
* 上传编号
*
* @var int
*/
public $upload_id;
/**
* 删除标识
*
* @var int
*/
public $deleted;
/**
* 创建时间
*
* @var int
*/
public $create_time;
/**
* 更新时间
*
* @var int
*/
public $update_time;
public function getSource(): string
{
return 'kg_chapter_resource';
}
public function initialize()
{
parent::initialize();
$this->addBehavior(
new SoftDelete([
'field' => 'deleted',
'value' => 1,
])
);
}
public function beforeCreate()
{
$this->create_time = time();
}
public function beforeUpdate()
{
$this->update_time = time();
}
}

View File

@ -221,6 +221,13 @@ class Course extends Model
*/ */
public $favorite_count; public $favorite_count;
/**
* 资源数
*
* @var int
*/
public $res_count;
/** /**
* 创建时间 * 创建时间
* *

View File

@ -7,6 +7,16 @@ use Phalcon\Mvc\Model\Behavior\SoftDelete;
class Upload extends Model class Upload extends Model
{ {
/**
* 资源类型
*/
const TYPE_COVER_IMG = 1; // 封面图
const TYPE_CONTENT_IMG = 2; // 内容图
const TYPE_AVATAR_IMG = 3; // 头像
const TYPE_COURSE_RES = 4; // 课件资源
const TYPE_IM_IMG = 5; // IM图片
const TYPE_IM_FILE = 6; // IM文件
/** /**
* 主键编号 * 主键编号
* *
@ -49,6 +59,13 @@ class Upload extends Model
*/ */
public $size; public $size;
/**
* 类型
*
* @var int
*/
public $type;
/** /**
* 删除标识 * 删除标识
* *

View File

@ -10,12 +10,12 @@ class MyStorage extends Storage
{ {
/** /**
* 文件类型 * mime类型
*/ */
const TYPE_IMAGE = 'image'; const MIME_IMAGE = 'image';
const TYPE_VIDEO = 'video'; const MIME_VIDEO = 'video';
const TYPE_AUDIO = 'audio'; const MIME_AUDIO = 'audio';
const TYPE_FILE = 'file'; const MIME_FILE = 'file';
public function uploadTestFile() public function uploadTestFile()
{ {
@ -50,7 +50,7 @@ class MyStorage extends Storage
*/ */
public function uploadCoverImage() public function uploadCoverImage()
{ {
return $this->upload('/img/cover/', self::TYPE_IMAGE); return $this->upload('/img/cover/', self::MIME_IMAGE, UploadModel::TYPE_COVER_IMG);
} }
/** /**
@ -60,7 +60,7 @@ class MyStorage extends Storage
*/ */
public function uploadContentImage() public function uploadContentImage()
{ {
return $this->upload('/img/content/', self::TYPE_IMAGE); return $this->upload('/img/content/', self::MIME_IMAGE, UploadModel::TYPE_CONTENT_IMG);
} }
/** /**
@ -70,7 +70,17 @@ class MyStorage extends Storage
*/ */
public function uploadAvatarImage() public function uploadAvatarImage()
{ {
return $this->upload('/img/avatar/', self::TYPE_IMAGE); return $this->upload('/img/avatar/', self::MIME_IMAGE, UploadModel::TYPE_AVATAR_IMG);
}
/**
* 上传课件资源
*
* @return UploadModel|bool
*/
public function uploadCourseResource()
{
return $this->upload('/res/course/', self::MIME_FILE, UploadModel::TYPE_COURSE_RES);
} }
/** /**
@ -80,7 +90,7 @@ class MyStorage extends Storage
*/ */
public function uploadImImage() public function uploadImImage()
{ {
return $this->upload('/im/img/', self::TYPE_IMAGE); return $this->upload('/im/img/', self::MIME_IMAGE, UploadModel::TYPE_IM_IMG);
} }
/** /**
@ -88,17 +98,18 @@ class MyStorage extends Storage
*/ */
public function uploadImFile() public function uploadImFile()
{ {
return $this->upload('/im/file/', self::TYPE_FILE); return $this->upload('/im/file/', self::MIME_FILE, UploadModel::TYPE_IM_FILE);
} }
/** /**
* 上传文件 * 上传文件
* *
* @param string $prefix * @param string $prefix
* @param string $type * @param string $mimeType
* @param string $uploadType
* @return UploadModel|bool * @return UploadModel|bool
*/ */
protected function upload($prefix = '', $type = self::TYPE_IMAGE) protected function upload($prefix, $mimeType, $uploadType)
{ {
$list = []; $list = [];
@ -110,7 +121,7 @@ class MyStorage extends Storage
foreach ($files as $file) { foreach ($files as $file) {
if ($this->checkFile($file->getRealType(), $type) == false) { if ($this->checkFile($file->getRealType(), $mimeType) == false) {
continue; continue;
} }
@ -131,6 +142,7 @@ class MyStorage extends Storage
$upload->name = $name; $upload->name = $name;
$upload->mime = $file->getRealType(); $upload->mime = $file->getRealType();
$upload->size = $file->getSize(); $upload->size = $file->getSize();
$upload->type = $uploadType;
$upload->path = $path; $upload->path = $path;
$upload->md5 = $md5; $upload->md5 = $md5;
@ -148,19 +160,19 @@ class MyStorage extends Storage
* 检查上传文件 * 检查上传文件
* *
* @param string $mime * @param string $mime
* @param string $type * @param string $alias
* @return bool * @return bool
*/ */
protected function checkFile($mime, $type) protected function checkFile($mime, $alias)
{ {
switch ($type) { switch ($alias) {
case self::TYPE_IMAGE: case self::MIME_IMAGE:
$result = FileInfo::isImage($mime); $result = FileInfo::isImage($mime);
break; break;
case self::TYPE_VIDEO: case self::MIME_VIDEO:
$result = FileInfo::isVideo($mime); $result = FileInfo::isVideo($mime);
break; break;
case self::TYPE_AUDIO: case self::MIME_AUDIO:
$result = FileInfo::isAudio($mime); $result = FileInfo::isAudio($mime);
break; break;
default: default:

View File

@ -21,11 +21,6 @@ class AlipayGateway extends Service
$this->settings = array_merge($defaults, $options); $this->settings = array_merge($defaults, $options);
} }
public function getSettings()
{
return $this->settings;
}
public function setReturnUrl($returnUrl) public function setReturnUrl($returnUrl)
{ {
$this->settings['return_url'] = $returnUrl; $this->settings['return_url'] = $returnUrl;

View File

@ -21,11 +21,6 @@ class WxpayGateway extends Service
$this->settings = array_merge($defaults, $options); $this->settings = array_merge($defaults, $options);
} }
public function getSettings()
{
return $this->settings;
}
public function setNotifyUrl($notifyUrl) public function setNotifyUrl($notifyUrl)
{ {
$this->settings['notify_url'] = $notifyUrl; $this->settings['notify_url'] = $notifyUrl;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff