src/Biz/Course/Copy/AbstractEntityCopy.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Biz\Course\Copy;
use AppBundle\Common\ArrayToolkit;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Codeages\Biz\Framework\Context\Biz;
abstract class AbstractEntityCopy
{
private $logger;
protected $biz;
protected $processNodes;
public function __construct(Biz $biz, $processNodes = array())
{
$this->biz = $biz;
$this->processNodes = $processNodes;
}
/**
* Entity中待copy的字段列表
*
* @return array
*/
abstract protected function getFields();
/**
* 根据getFields配置原封不动的复制Entity信息到新Entity
*
* @param $source
*
* @return array
*/
protected function filterFields($source)
{
$fields = $this->getFields();
return ArrayToolkit::parts($source, $fields);
}
/**
* 当前copy实体的业务逻辑,注意:
* 1. 不需要考虑事务
*
* @param mixed $source 要copy的对象
* @param array $config
*
* @return mixed
*/
abstract protected function copyEntity($source, $config = array());
/**
* 依次处理要复制的每一个节点
*
* @param $originalCourse
* @param $course
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。