src/Biz/Activity/Copy/ActivityCopy.php
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Biz\Activity\Copy;
use Biz\AbstractCopy;
use Biz\Activity\Config\Activity;
use Biz\Activity\Dao\ActivityDao;
use Biz\Testpaper\Dao\TestpaperDao;
class ActivityCopy extends AbstractCopy
{
public function preCopy($source, $options)
{
// TODO: Implement preCopy() method.
}
public function doCopy($source, $options)
{
$course = $options['originCourse'];
$newCourse = $options['newCourse'];
$newCourseSet = $options['newCourseSet'];
$activities = $this->getActivityDao()->findByCourseId($course['id']);
if (empty($activities)) {
return array();
}
$activityMap = array();
foreach ($activities as $activity) {
$newActivity = $this->partsFields($activity);
$newActivity['fromUserId'] = $this->biz['user']['id'];
$newActivity['fromCourseId'] = $newCourse['id'];
$newActivity['fromCourseSetId'] = $newCourseSet['id'];
$newActivity['copyId'] = $activity['id'];
$config = $this->getActivityConfig($activity['mediaType']);
$testId = 0;
if (in_array($activity['mediaType'], array('testpaper'))) {
$originalActivityTestpaper = $config->get($activity['mediaId']);
$activityTestpaper = $this->getTestpaperDao()->getTestpaperByCopyIdAndCourseSetId($originalActivityTestpaper['mediaId'], $newCourseSet['id']);
$testId = $activityTestpaper['id'];
}
$ext = $config->copy($activity, array(
'refLiveroom' => false,
'testId' => $testId,
'newActivity' => $newActivity,
'isCopy' => true,
));
if (!empty($ext)) {
$newActivity['mediaId'] = $ext['id'];
}
if ($newActivity['mediaType'] == 'live') { //直播
$newActivity['startTime'] = time();
$newActivity['endTime'] = $newActivity['startTime'] + $newActivity['length'] * 60;
}
$newActivity = $this->getActivityDao()->create($newActivity);
$options['newActivity'] = $newActivity;
$options['originActivity'] = $activity;
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。