Automation init...1
This commit is contained in:
parent
13e9c51fb6
commit
514a0a5d44
@ -50,7 +50,6 @@ class Crawler extends BaseController
|
||||
//미디어관련정보 entity에 넣기
|
||||
$entity = new BoardEntity();
|
||||
$entity->setTitle($nickname);
|
||||
$entity->setText($nickname);
|
||||
$entity->setContent(is_array($mediaTags) ? implode("\n", $mediaTags) : $mediaTags);
|
||||
|
||||
//망보드에 넣기
|
||||
|
||||
@ -87,7 +87,7 @@ class UserLibrary extends CommonLibrary
|
||||
}
|
||||
return $this->checkLevel($entity);
|
||||
}
|
||||
public function setLevel()
|
||||
public function setLevel(): void
|
||||
{
|
||||
foreach ($this->getModel()->getEntitys() as $entity) {
|
||||
$entity = $this->checkLevel($entity);
|
||||
|
||||
@ -130,11 +130,11 @@ abstract class CommonModel extends Model
|
||||
}
|
||||
|
||||
//create , modify 직전 작업용 작업
|
||||
protected function setEntityData($entity, string $field, $value = null): mixed
|
||||
protected function setEntityData($entity, $field): mixed
|
||||
{
|
||||
switch ($field) {
|
||||
case $this->getPKField():
|
||||
if ($value === null) {
|
||||
if ($$entity->$field === null) {
|
||||
$randomBytes = bin2hex(random_bytes(32));
|
||||
$entity->$field = sprintf(
|
||||
'%08s-%04s-%04x-%04x-%12s',
|
||||
@ -144,18 +144,13 @@ abstract class CommonModel extends Model
|
||||
substr($randomBytes, 16, 4),
|
||||
substr($randomBytes, 20, 12)
|
||||
);
|
||||
} else {
|
||||
$entity->$field = $value;
|
||||
}
|
||||
break;
|
||||
case "passwd":
|
||||
$entity->$field = password_hash($value, PASSWORD_DEFAULT);
|
||||
$entity->$field = password_hash($entity->$field, PASSWORD_DEFAULT);
|
||||
break;
|
||||
case "content":
|
||||
$entity->$field = htmlspecialchars($value, ENT_QUOTES); //htmlentities($value);
|
||||
break;
|
||||
default:
|
||||
$entity->$field = $value;
|
||||
$entity->$field = htmlentities($entity->$field, ENT_QUOTES);
|
||||
break;
|
||||
}
|
||||
return $entity;
|
||||
@ -163,6 +158,9 @@ abstract class CommonModel extends Model
|
||||
|
||||
private function save_process($entity): mixed
|
||||
{
|
||||
foreach ($this->getFields() as $field) {
|
||||
$entity = $this->setEntityData($entity, $field);
|
||||
}
|
||||
if ($entity->hasChanged()) {
|
||||
if (!$this->save($entity)) {
|
||||
log_message("error", __FUNCTION__ . "에서 호출:" . $this->getLastQuery());
|
||||
@ -174,13 +172,8 @@ abstract class CommonModel extends Model
|
||||
}
|
||||
return $entity;
|
||||
}
|
||||
final protected function create_process($entity, array $formDatas = []): mixed
|
||||
final protected function create_process($entity): mixed
|
||||
{
|
||||
foreach ($this->getFields() as $field) {
|
||||
if (array_key_exists($field, $formDatas) && $formDatas[$field] !== $entity->$field) {
|
||||
$entity = $this->setEntityData($entity, $field, $formDatas[$field]);
|
||||
}
|
||||
}
|
||||
//primaryKey가 수동입력이면
|
||||
$pkField = $this->getPKField();
|
||||
if (!$this->useAutoIncrement && $entity->$pkField === null) {
|
||||
@ -191,17 +184,12 @@ abstract class CommonModel extends Model
|
||||
$entity = $this->save_process($entity);
|
||||
//primaryKey가 자동입력이면
|
||||
if ($this->useAutoIncrement) {
|
||||
$entity = $this->setEntityData($entity, $this->getPKField(), $this->getInsertID());
|
||||
$entity->$pkField = $this->getInsertID();
|
||||
}
|
||||
return $entity;
|
||||
}
|
||||
final protected function modify_process($entity, array $formDatas = []): mixed
|
||||
final protected function modify_process($entity): mixed
|
||||
{
|
||||
foreach ($this->getFields() as $field) {
|
||||
if (array_key_exists($field, $formDatas) && $formDatas[$field] !== $entity->$field) {
|
||||
$entity = $this->setEntityData($entity, $field, $formDatas[$field]);
|
||||
}
|
||||
}
|
||||
return $this->save_process($entity);
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,7 +12,7 @@ abstract class BoardModel extends CommonModel
|
||||
|
||||
protected function __construct(array $fields = [])
|
||||
{
|
||||
$fields = ["title", "text", "content", ...$fields];
|
||||
$fields = ["title", "is_show", "content", ...$fields];
|
||||
parent::__construct($fields);
|
||||
}
|
||||
public function getTitleField(): string
|
||||
@ -25,7 +25,18 @@ abstract class BoardModel extends CommonModel
|
||||
case 'gid':
|
||||
$rules[$field] = "required|numeric";
|
||||
break;
|
||||
case "text":
|
||||
case 'is_show':
|
||||
$rules[$field] = "if_exist|numeric";
|
||||
break;
|
||||
case "data_type":
|
||||
$rules[$field] = "if_exist|trim|in_list[html,text]";
|
||||
break;
|
||||
case "image_path":
|
||||
$rules[$field] = "if_exist|trim|string";
|
||||
break;
|
||||
case "editor_type":
|
||||
$rules[$field] = "if_exist|trim|in_list[N,S]";
|
||||
break;
|
||||
case "content":
|
||||
$rules[$field] = "required|trim|string";
|
||||
break;
|
||||
@ -48,19 +59,17 @@ abstract class BoardModel extends CommonModel
|
||||
}
|
||||
|
||||
//create용
|
||||
public function create(BoardEntity $entity, array $formDatas = []): BoardEntity
|
||||
public function create(BoardEntity $entity): BoardEntity
|
||||
{
|
||||
$entity = $this->create_process($entity, $formDatas);
|
||||
$entity = $this->create_process($entity);
|
||||
//GID값이 PK랑 같은 값 전달 후 Entity 수정
|
||||
$this->setFields(["gid"]);
|
||||
$this->setRules($this->getFields());
|
||||
$entity->setGID($entity->getPK());
|
||||
return $this->modify_process($entity, []);
|
||||
return $this->modify_process($entity);
|
||||
}
|
||||
|
||||
//modify용
|
||||
public function modify(BoardEntity $entity, array $formDatas = []): BoardEntity
|
||||
public function modify(BoardEntity $entity): BoardEntity
|
||||
{
|
||||
return $this->modify_process($entity, $formDatas);
|
||||
return $this->modify_process($entity);
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,8 +8,8 @@ class GalleryBoardModel extends BoardModel
|
||||
{
|
||||
protected $table = 'mb_gallery_general';
|
||||
|
||||
public function __construct(array $fields = [])
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct($fields);
|
||||
parent::__construct([]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -56,17 +56,17 @@ class UserModel extends CommonModel
|
||||
}
|
||||
|
||||
//create용
|
||||
public function create(UserEntity $entity, array $formDatas = []): UserEntity
|
||||
public function create(UserEntity $entity): UserEntity
|
||||
{
|
||||
$entity = $this->create_process($entity, $formDatas);
|
||||
$entity = $this->create_process($entity);
|
||||
//GID값이 PK랑 같은 값 전달 후 Entity 수정
|
||||
$entity->setGID($entity->getPK());
|
||||
return $this->modify_process($entity);
|
||||
}
|
||||
|
||||
//modify용
|
||||
public function modify(UserEntity $entity, array $formDatas = []): UserEntity
|
||||
public function modify(UserEntity $entity): UserEntity
|
||||
{
|
||||
return $this->modify_process($entity, $formDatas);
|
||||
return $this->modify_process($entity);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user