src/Biz/Course/Copy/Chain/CourseMaterialCopy.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Biz\Course\Copy\Chain;
use Biz\Course\Copy\AbstractEntityCopy;
class CourseMaterialCopy extends AbstractEntityCopy
{
/**
* @param $source array oldCourse
* @param array $config $config['newCourse'] = newCourse
*/
protected function copyEntity($source, $config = array())
{
$newCourseSet = $config['newCourseSet'];
return $this->doCopyMaterial($source, $newCourseSet);
}
protected function getFields()
{
return array(
'title',
'description',
'link',
'fileId',
'fileUri',
'fileMime',
'fileSize',
'type',
);
}
private function doCopyMaterial($courseSet, $newCourseSet)
{
$materials = $this->getCourseMaterialService()->searchMaterials(
array('courseSetId' => $courseSet['id'], 'source' => 'coursematerial'),
array(),
0,
PHP_INT_MAX
);
if (empty($materials)) {
return;
}
$newMaterials = array();
foreach ($materials as $material) {
//仅处理挂在课程下的文件
if ($material['courseId'] > 0) {
continue;
}
$newMaterial = $this->filterFields($material);
$newMaterial['courseSetId'] = $newCourseSet['id'];
$newMaterial['courseId'] = 0;
$newMaterial['lessonId'] = 0;
$newMaterial['source'] = 'coursematerial';
$newMaterial['userId'] = $this->biz['user']['id'];
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。