60 lines
1.5 KiB
PHP
60 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace App\Entities;
|
|
|
|
use CodeIgniter\Entity\Entity;
|
|
|
|
abstract class CommonEntity extends Entity
|
|
{
|
|
protected $datamap = [];
|
|
protected $dates = ['created_at', 'updated_at', 'deleted_at'];
|
|
//사용법 : $client->created_at->format('Y-m-d')
|
|
//비교방법 : if ($client->created_at < new \DateTime('2024-01-01')) {
|
|
protected $casts = [];
|
|
|
|
public function __construct(array|null $data = null)
|
|
{
|
|
parent::__construct($data);
|
|
}
|
|
|
|
final public function __call($name, $arguments): string
|
|
{
|
|
return "";
|
|
}
|
|
|
|
public function getPK(): int|string
|
|
{
|
|
$field = constant("static::PK");
|
|
return $this->attributes[$field] ?? "";
|
|
}
|
|
public function getTitle(): string
|
|
{
|
|
$field = constant("static::TITLE");
|
|
return $this->attributes[$field] ?? "";
|
|
}
|
|
public function getCustomTitle(): string
|
|
{
|
|
return $this->getTitle();
|
|
}
|
|
final public function getCode(): string
|
|
{
|
|
return $this->attributes['code'] ?? "";
|
|
}
|
|
public function getStatus(): string
|
|
{
|
|
return $this->attributes['status'] ?? "";
|
|
}
|
|
final public function getUpdatedAt(): string
|
|
{
|
|
return $this->attributes['updated_at'] ?? "";
|
|
}
|
|
final public function getCreatedAt(): string
|
|
{
|
|
return $this->attributes['created_at'] ?? "";
|
|
}
|
|
final public function getDeletedAt(): string
|
|
{
|
|
return $this->attributes['deleted_at'] ?? "";
|
|
}
|
|
}
|