src/Biz/Task/Job/CourseTaskDeleteSyncJob.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Biz\Task\Job;
use AppBundle\Common\ArrayToolkit;
use Biz\AppLoggerConstant;
use Biz\Course\Dao\CourseDao;
use Biz\System\Service\LogService;
use Biz\Task\Dao\TaskDao;
use Biz\Task\Strategy\CourseStrategy;
use Codeages\Biz\Framework\Scheduler\AbstractJob;
class CourseTaskDeleteSyncJob extends AbstractJob
{
public function execute()
{
try {
$taskId = $this->args['taskId'];
$courseId = $this->args['courseId'];
$copiedCourses = $this->getCourseDao()->findCoursesByParentIdAndLocked($courseId, 1);
$copiedCourseIds = ArrayToolkit::column($copiedCourses, 'id');
$copiedCourseMap = ArrayToolkit::index($copiedCourses, 'id');
$copiedTasks = $this->getTaskDao()->findByCopyIdAndLockedCourseIds($taskId, $copiedCourseIds);
foreach ($copiedTasks as $ct) {
$this->deleteTask($ct['id'], $copiedCourseMap[$ct['courseId']]);
}
$this->getLogService()->info(AppLoggerConstant::COURSE, 'sync_when_task_delete', 'course.log.task.delete.sync.success_tips', array('taskId' => $taskId));
} catch (\Exception $e) {
$this->getLogService()->error(AppLoggerConstant::COURSE, 'sync_when_task_delete', 'course.log.task.delete.sync.fail_tips', array('error' => $e->getMessage()));
}
}
private function deleteTask($taskId, $course)
{
return $this->createCourseStrategy($course)->deleteTask($this->getTaskDao()->get($taskId));
}
/**
* @param $course
*
* @return CourseStrategy
*/
private function createCourseStrategy($course)
{
return $this->biz->offsetGet('course.strategy_context')->createStrategy($course['courseType']);
}
/**
* @return CourseDao
*/
private function getCourseDao()
{
return $this->biz->dao('Course:CourseDao');
}
/**
* @return TaskDao
*/
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。