dbmsv4 init...5
This commit is contained in:
parent
9ae564ebcb
commit
a79a9635f3
@ -12,29 +12,31 @@ class BoardEntity extends CommonEntity
|
||||
protected array $nullableFields = [
|
||||
'user_uid',
|
||||
'worker_uid',
|
||||
];
|
||||
protected $attributes = [
|
||||
'user_uid' => null,
|
||||
'worker_uid' => null,
|
||||
'category' => '',
|
||||
'title' => '',
|
||||
'status' => '',
|
||||
'content' => ''
|
||||
'content',
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'user_uid',
|
||||
'worker_uid',
|
||||
];
|
||||
}
|
||||
public function getUserUid(): int|null
|
||||
public function getUserUid(): ?int
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
return $this->user_uid;
|
||||
}
|
||||
public function getWorkerUid(): int|null
|
||||
public function getWorkerUid(): ?int
|
||||
{
|
||||
return $this->worker_uid ?? null;
|
||||
return $this->worker_uid;
|
||||
}
|
||||
public function getCaregory(): string
|
||||
{
|
||||
return $this->category ?? "";
|
||||
return $this->category;
|
||||
}
|
||||
public function getContent(): ?string
|
||||
{
|
||||
return $this->category;
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,90 +3,118 @@
|
||||
namespace App\Entities;
|
||||
|
||||
use CodeIgniter\Entity\Entity;
|
||||
use DateTime;
|
||||
|
||||
abstract class CommonEntity extends Entity
|
||||
{
|
||||
protected $datamap = [];
|
||||
/**
|
||||
* 날짜 필드
|
||||
*/
|
||||
protected $dates = ['created_at', 'updated_at', 'deleted_at'];
|
||||
|
||||
/**
|
||||
* 이 엔티티에서 "빈문자/공백 입력은 NULL로 저장"해야 하는 필드 목록.
|
||||
* 기본은 빈 배열이고, 각 Entity에서 필요한 것만 override해서 채우면 됨.
|
||||
* 빈 문자열을 NULL로 변환할 필드
|
||||
* 각 Entity에서 override 해서 사용
|
||||
*/
|
||||
protected array $nullableFields = [];
|
||||
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
}
|
||||
|
||||
final public function __get(string $key)
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Magic Getter
|
||||
|--------------------------------------------------------------------------
|
||||
| Entity 내부에서도 $this->field 스타일 사용 가능
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
public function __get(string $key)
|
||||
{
|
||||
if (array_key_exists($key, $this->attributes)) {
|
||||
return $this->attributes[$key];
|
||||
}
|
||||
return parent::__get($key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 중요: Entity에 값이 들어오는 "모든 경로" (new Entity($data), fill(), $entity->field=...)
|
||||
* 에서 공통 규칙을 적용하기 위해 __set을 정의.
|
||||
*/
|
||||
final public function __set(string $key, $value = null)
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Magic Setter
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
public function __set(string $key, $value = null)
|
||||
{
|
||||
if (array_key_exists($key, $this->attributes)) {
|
||||
|
||||
// 이 엔티티에서 NULL로 보정할 필드만 처리 (화이트리스트)
|
||||
if (!empty($this->nullableFields) && in_array($key, $this->nullableFields, true)) {
|
||||
if (is_string($value)) {
|
||||
$value = trim($value);
|
||||
}
|
||||
$this->attributes[$key] = ($value === '' || $value === null) ? null : $value;
|
||||
return;
|
||||
}
|
||||
|
||||
// 기본: 그대로 저장
|
||||
$this->attributes[$key] = $value;
|
||||
return;
|
||||
// 1️⃣ 문자열 trim
|
||||
if (is_string($value)) {
|
||||
$value = trim($value);
|
||||
}
|
||||
|
||||
// 2️⃣ nullable 처리
|
||||
if (in_array($key, $this->nullableFields, true)) {
|
||||
if ($value === '' || $value === null) {
|
||||
$value = null;
|
||||
}
|
||||
}
|
||||
|
||||
// 3️⃣ 날짜 자동 변환
|
||||
// if (in_array($key, $this->dates, true)) {
|
||||
// if (is_string($value) && $value !== '') {
|
||||
// $value = new DateTime($value);
|
||||
// }
|
||||
// }
|
||||
|
||||
// ✅ 반드시 부모 __set 호출
|
||||
parent::__set($key, $value);
|
||||
}
|
||||
|
||||
final public function getPK(): int|string
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| 공통 Getter들 (모두 property 스타일 사용)
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
final public function getPK(): int|string|null
|
||||
{
|
||||
$field = constant("static::PK");
|
||||
return $this->attributes[$field] ?? "";
|
||||
$field = constant('static::PK');
|
||||
return $this->$field;
|
||||
}
|
||||
|
||||
final public function getTitle(): string
|
||||
final public function getTitle(): ?string
|
||||
{
|
||||
$field = constant("static::TITLE");
|
||||
return $this->attributes[$field] ?? "";
|
||||
}
|
||||
|
||||
public function getCustomTitle(): string
|
||||
{
|
||||
return $this->getTitle();
|
||||
$field = constant('static::TITLE');
|
||||
return $this->$field;
|
||||
}
|
||||
|
||||
final public function getStatus(): string
|
||||
{
|
||||
return $this->status ?? "";
|
||||
}
|
||||
|
||||
final public function getUpdatedAt(): string
|
||||
{
|
||||
return $this->updated_at ?? "";
|
||||
return $this->status;
|
||||
}
|
||||
|
||||
final public function getCreatedAt(): string
|
||||
{
|
||||
return $this->created_at ?? "";
|
||||
return $this->created_at;
|
||||
}
|
||||
|
||||
final public function getDeletedAt(): string
|
||||
final public function getUpdatedAt(): ?string
|
||||
{
|
||||
return $this->deleted_at ?? "";
|
||||
return $this->updated_at;
|
||||
}
|
||||
}
|
||||
|
||||
final public function getDeletedAt(): ?string
|
||||
{
|
||||
return $this->deleted_at;
|
||||
}
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Override Getter들 (모두 property 스타일 사용)
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
public function getCustomTitle(): string
|
||||
{
|
||||
return (string) $this->getTitle();
|
||||
}
|
||||
}
|
||||
@ -9,36 +9,19 @@ class ClientEntity extends CustomerEntity
|
||||
const PK = ClientModel::PK;
|
||||
const TITLE = ClientModel::TITLE;
|
||||
|
||||
protected array $nullableFields = [
|
||||
'id',
|
||||
'passwd',
|
||||
];
|
||||
|
||||
// ✅ role은 반드시 string 기본값
|
||||
protected $attributes = [
|
||||
'id' => null,
|
||||
'passwd' => null,
|
||||
'site' => '',
|
||||
'name' => '',
|
||||
'phone' => '',
|
||||
'email' => '',
|
||||
'role' => '', // ✅ [] 금지
|
||||
'account_balance' => 0,
|
||||
'coupon_balance' => 0,
|
||||
'point_balance' => 0,
|
||||
'status' => '',
|
||||
'history' => '',
|
||||
];
|
||||
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
}
|
||||
|
||||
public function getUserUid(): int|null
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
}
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Override Getter들 (모두 property 스타일 사용)
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
public function getCustomTitle(mixed $title = null): string
|
||||
{
|
||||
@ -47,32 +30,32 @@ class ClientEntity extends CustomerEntity
|
||||
|
||||
public function getName(): string
|
||||
{
|
||||
return (string) ($this->attributes['name'] ?? '');
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
public function getSite(): string
|
||||
{
|
||||
return (string) ($this->attributes['site'] ?? '');
|
||||
return $this->site;
|
||||
}
|
||||
|
||||
public function getAccountBalance(): int
|
||||
{
|
||||
return (int) ($this->attributes['account_balance'] ?? 0);
|
||||
return (int) ($this->account_balance ?? 0);
|
||||
}
|
||||
|
||||
public function getCouponBalance(): int
|
||||
{
|
||||
return (int) ($this->attributes['coupon_balance'] ?? 0);
|
||||
return (int) ($this->coupon_balance ?? 0);
|
||||
}
|
||||
|
||||
public function getPointBalance(): int
|
||||
{
|
||||
return (int) ($this->attributes['point_balance'] ?? 0);
|
||||
return (int) ($this->point_balance ?? 0);
|
||||
}
|
||||
|
||||
public function getHistory(): string|null
|
||||
public function getHistory(): ?string
|
||||
{
|
||||
return $this->attributes['history'] ?? null;
|
||||
return $this->history;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -9,5 +9,14 @@ abstract class CustomerEntity extends CommonEntity
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'user_uid',
|
||||
];
|
||||
}
|
||||
|
||||
final public function getUserUid(): ?int
|
||||
{
|
||||
return $this->user_uid;
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,85 +12,75 @@ class ServiceEntity extends CustomerEntity
|
||||
'serverinfo_uid',
|
||||
'end_at'
|
||||
];
|
||||
protected $attributes = [
|
||||
'serverinfo_uid' => null,
|
||||
'code' => '',
|
||||
'title' => '',
|
||||
'site' => '',
|
||||
'location' => '',
|
||||
'rack' => 0,
|
||||
'coupon_balance' => 0,
|
||||
'line' => 0,
|
||||
'billing_at' => '',
|
||||
'sale' => 0,
|
||||
'amount' => 0,
|
||||
'start_at' => '',
|
||||
'end_at' => null,
|
||||
'status' => '',
|
||||
'history' => ''
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'serverinfo_uid',
|
||||
'end_at'
|
||||
];
|
||||
$this->dates = [
|
||||
...$this->dates,
|
||||
'start_at',
|
||||
'end_at',
|
||||
];
|
||||
}
|
||||
public function getUserUid(): int|null
|
||||
public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
public function getClientInfoUid(): int|null
|
||||
public function getServerInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid ?? null;
|
||||
}
|
||||
public function getServerInfoUid(): int|null
|
||||
{
|
||||
return $this->serverinfo_uid ?? null;
|
||||
return $this->serverinfo_uid;
|
||||
}
|
||||
//기본기능용
|
||||
public function getCode(): string
|
||||
{
|
||||
return $this->code ?? '';
|
||||
return $this->code;
|
||||
}
|
||||
public function getSite(): string
|
||||
{
|
||||
return $this->site ?? '';
|
||||
return $this->site;
|
||||
}
|
||||
public function getLocation(): string
|
||||
{
|
||||
return $this->location ?? '';
|
||||
return $this->location;
|
||||
}
|
||||
public function getBillingAt(): string
|
||||
{
|
||||
return $this->billing_at ?? '';
|
||||
return $this->billing_at;
|
||||
}
|
||||
//청구금액->기본:상면비+회선비+서버금액(price)+서버파트연결(월비용)-할인액
|
||||
//상면비
|
||||
public function getRack(): int
|
||||
{
|
||||
return $this->rack ?? 0;
|
||||
return (int) ($this->rack ?? 0);
|
||||
}
|
||||
//회선비
|
||||
public function getLine(): int
|
||||
{
|
||||
return $this->line ?? 0;
|
||||
return (int) ($this->line ?? 0);
|
||||
}
|
||||
public function getSale(): int
|
||||
{
|
||||
return $this->sale ?? 0;
|
||||
return (int) ($this->sale ?? 0);
|
||||
}
|
||||
public function getAmount(): int
|
||||
{
|
||||
return $this->amount ?? 0;
|
||||
return (int) ($this->amount ?? 0);
|
||||
}
|
||||
public function getStartAt(): string
|
||||
{
|
||||
return $this->start_at ?? '';
|
||||
return $this->start_at;
|
||||
}
|
||||
public function getEndAt(): string|null
|
||||
public function getEndAt(): ?string
|
||||
{
|
||||
return $this->end_at ?? null;
|
||||
return $this->end_at;
|
||||
}
|
||||
public function getHistory(): string
|
||||
public function getHistory(): ?string
|
||||
{
|
||||
return $this->history ?? '';
|
||||
return $this->history;
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,35 +8,35 @@ class AccountEntity extends WalletEntity
|
||||
{
|
||||
const PK = AccountModel::PK;
|
||||
const TITLE = AccountModel::TITLE;
|
||||
protected array $nullableFields = [
|
||||
'alias'
|
||||
];
|
||||
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'bank' => '',
|
||||
'alias' => null,
|
||||
'issue_at' => '',
|
||||
'amount' => 0,
|
||||
'balance' => 0,
|
||||
'status' => '',
|
||||
'content' => ''
|
||||
];
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'bank',
|
||||
'alias',
|
||||
];
|
||||
$this->dates = [
|
||||
...$this->dates,
|
||||
'issue_at',
|
||||
];
|
||||
}
|
||||
//기본기능
|
||||
public function getBank(): string
|
||||
|
||||
public function getBank(): ?string
|
||||
{
|
||||
return $this->bank ?? '';
|
||||
return $this->bank;
|
||||
}
|
||||
public function getAlias(): string
|
||||
|
||||
public function getAlias(): ?string
|
||||
{
|
||||
return $this->alias ?? '';
|
||||
return $this->alias;
|
||||
}
|
||||
|
||||
public function getIssueAt(): string
|
||||
{
|
||||
return $this->issue_at ?? '';
|
||||
return $this->issue_at;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -6,16 +6,12 @@ use App\Models\Customer\Wallet\CouponModel;
|
||||
|
||||
class CouponEntity extends WalletEntity
|
||||
{
|
||||
|
||||
const PK = CouponModel::PK;
|
||||
const TITLE = CouponModel::TITLE;
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'amount' => 0,
|
||||
'balance' => 0,
|
||||
'status' => '',
|
||||
'content' => ''
|
||||
];
|
||||
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
|
||||
@ -8,13 +8,9 @@ class PointEntity extends WalletEntity
|
||||
{
|
||||
const PK = PointModel::PK;
|
||||
const TITLE = PointModel::TITLE;
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'amount' => 0,
|
||||
'balance' => 0,
|
||||
'status' => '',
|
||||
'content' => ''
|
||||
];
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
|
||||
@ -4,32 +4,44 @@ namespace App\Entities\Customer\Wallet;
|
||||
|
||||
use App\Entities\Customer\CustomerEntity;
|
||||
|
||||
|
||||
abstract class WalletEntity extends CustomerEntity
|
||||
{
|
||||
/**
|
||||
* 생성자
|
||||
*/
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'content',
|
||||
];
|
||||
}
|
||||
final public function getUserUid(): int|null
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Getter (절대 attributes 직접 접근하지 않음)
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
final public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
final public function getClientInfoUid(): int|null
|
||||
{
|
||||
return $this->clientinfo_uid ?? null;
|
||||
}
|
||||
//기본기능
|
||||
|
||||
final public function getAmount(): int
|
||||
{
|
||||
return $this->amount ?? 0;
|
||||
return (int) ($this->amount ?? 0);
|
||||
}
|
||||
|
||||
final public function getBalance(): int
|
||||
{
|
||||
return $this->balance ?? 0;
|
||||
return (int) ($this->balance ?? 0);
|
||||
}
|
||||
final public function getContent(): string
|
||||
|
||||
final public function getContent(): ?string
|
||||
{
|
||||
return $this->content ?? '';
|
||||
return $this->content;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -8,52 +8,41 @@ class CHASSISEntity extends EquipmentEntity
|
||||
{
|
||||
const PK = CHASSISModel::PK;
|
||||
const TITLE = CHASSISModel::TITLE;
|
||||
protected array $nullableFields = [
|
||||
'cpuinfo_uid',
|
||||
'raminfo_uid',
|
||||
'diskinfo_uid',
|
||||
];
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'price' => 0,
|
||||
'used' => 0,
|
||||
'stock' => 0,
|
||||
'status' => '',
|
||||
'cpuinfo_uid' => null,
|
||||
'cpu_cnt' => 0,
|
||||
'raminfo_uid' => null,
|
||||
'ram_cnt' => 0,
|
||||
'diskinfo_uid' => null,
|
||||
'disk_cnt' => 0,
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'cpuinfo_uid',
|
||||
'raminfo_uid',
|
||||
'diskinfo_uid',
|
||||
];
|
||||
}
|
||||
public function getCPUInfoUid(): int|null
|
||||
public function getCPUInfoUid(): ?int
|
||||
{
|
||||
return $this->cpuinfo_uid ?? null;
|
||||
return $this->cpuinfo_uid;
|
||||
}
|
||||
public function getRAMInfoUid(): int|null
|
||||
public function getRAMInfoUid(): ?int
|
||||
{
|
||||
return $this->raminfo_uid ?? null;
|
||||
return $this->raminfo_uid;
|
||||
}
|
||||
public function getDISKInfoUid(): int|null
|
||||
public function getDISKInfoUid(): ?int
|
||||
{
|
||||
return $this->diskinfo_uid ?? null;
|
||||
return $this->diskinfo_uid;
|
||||
}
|
||||
//기본기능
|
||||
public function getPrice(): int
|
||||
{
|
||||
return $this->price ?? 0;
|
||||
return (int) ($this->price ?? 0);
|
||||
}
|
||||
public function getStock(): int
|
||||
{
|
||||
return $this->stock ?? 0;
|
||||
return (int) ($this->stock ?? 0);
|
||||
}
|
||||
public function getUsed(): int
|
||||
{
|
||||
return $this->used ?? 0;
|
||||
return (int) ($this->used ?? 0);
|
||||
}
|
||||
public function getAvailable(): int
|
||||
{
|
||||
@ -61,14 +50,14 @@ class CHASSISEntity extends EquipmentEntity
|
||||
}
|
||||
public function getCPUCnt(): int
|
||||
{
|
||||
return $this->cpu_cnt ?? 0;
|
||||
return (int) ($this->cpu_cnt ?? 0);
|
||||
}
|
||||
public function getRAMCnt(): int
|
||||
{
|
||||
return $this->ram_cnt ?? 0;
|
||||
return (int) ($this->ram_cnt ?? 0);
|
||||
}
|
||||
public function getDISKCnt(): int
|
||||
{
|
||||
return $this->disk_cnt ?? 0;
|
||||
return (int) ($this->disk_cnt ?? 0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,47 +7,40 @@ use App\Models\Equipment\LineModel;
|
||||
class LineEntity extends EquipmentEntity
|
||||
{
|
||||
const PK = LineModel::PK;
|
||||
protected array $nullableFields = [
|
||||
'start_at',
|
||||
'end_at',
|
||||
];
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'type' => '',
|
||||
'protocol' => '',
|
||||
'bandwith' => '',
|
||||
'start_at' => null,
|
||||
'end_at' => null,
|
||||
'status' => '',
|
||||
'content' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'start_at',
|
||||
'end_at',
|
||||
];
|
||||
$this->dates = [
|
||||
...$this->dates,
|
||||
'start_at',
|
||||
'end_at',
|
||||
];
|
||||
}
|
||||
const TITLE = LineModel::TITLE;
|
||||
public function getType(): string
|
||||
{
|
||||
return $this->type ?? '';
|
||||
return $this->type;
|
||||
}
|
||||
public function getProtocol(): string
|
||||
{
|
||||
return $this->protocol ?? '';
|
||||
return $this->protocol;
|
||||
}
|
||||
public function getBandwith(): string
|
||||
{
|
||||
return $this->bandwith ?? '';
|
||||
return $this->bandwith;
|
||||
}
|
||||
public function getStartAt(): string|null
|
||||
public function getStartAt(): ?string
|
||||
{
|
||||
return $this->start_at ?? null;
|
||||
return $this->start_at;
|
||||
}
|
||||
public function getEndAt(): string|null
|
||||
public function getEndAt(): ?string
|
||||
{
|
||||
return $this->end_at ?? null;
|
||||
}
|
||||
public function getContent(): string
|
||||
{
|
||||
return $this->content ?? '';
|
||||
return $this->end_at;
|
||||
}
|
||||
}
|
||||
|
||||
@ -9,61 +9,35 @@ class ServerEntity extends EquipmentEntity
|
||||
const PK = ServerModel::PK;
|
||||
const TITLE = ServerModel::TITLE;
|
||||
|
||||
protected array $nullableFields = [
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'chassisinfo_uid',
|
||||
'switchinfo_uid',
|
||||
'ip',
|
||||
'viewer',
|
||||
'os',
|
||||
'format_at',
|
||||
];
|
||||
|
||||
protected $attributes = [
|
||||
'clientinfo_uid' => null,
|
||||
'serviceinfo_uid' => null,
|
||||
'chassisinfo_uid' => null,
|
||||
'switchinfo_uid' => null,
|
||||
'code' => '',
|
||||
'title' => '',
|
||||
'type' => '',
|
||||
'ip' => null,
|
||||
'viewer' => null,
|
||||
'os' => null,
|
||||
'price' => 0,
|
||||
'manufactur_at' => '',
|
||||
'format_at' => null,
|
||||
'status' => '',
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'switchinfo_uid',
|
||||
'ip',
|
||||
'viewer',
|
||||
'os',
|
||||
'format_at',
|
||||
];
|
||||
}
|
||||
final public function getClientInfoUid(): int|null
|
||||
final public function getClientInfoUid(): ?int
|
||||
{
|
||||
$val = $this->clientinfo_uid ?? null;
|
||||
return ($val === '' || $val === null) ? null : (int) $val;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
final public function getServiceInfoUid(): int|null
|
||||
final public function getServiceInfoUid(): ?int
|
||||
{
|
||||
$val = $this->serviceinfo_uid ?? null;
|
||||
return ($val === '' || $val === null) ? null : (int) $val;
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
final public function getChassisInfoUid(): int|null
|
||||
final public function getChassisInfoUid(): int
|
||||
{
|
||||
$val = $this->chassisinfo_uid ?? null;
|
||||
return ($val === '' || $val === null) ? null : (int) $val;
|
||||
return $this->chassisinfo_uid;
|
||||
}
|
||||
final public function getSwitchInfoUid(): int|null
|
||||
final public function getSwitchInfoUid(): ?int
|
||||
{
|
||||
$val = $this->switchinfo_uid ?? null;
|
||||
return ($val === '' || $val === null) ? null : (int) $val;
|
||||
}
|
||||
public function setSwitchInfoUid($value)
|
||||
{
|
||||
$this->attributes['switchinfo_uid'] = ($value === '' || $value === null) ? null : (int) $value;
|
||||
return $this;
|
||||
return $this->switchinfo_uid;
|
||||
}
|
||||
|
||||
//기본기능용
|
||||
@ -73,38 +47,36 @@ class ServerEntity extends EquipmentEntity
|
||||
}
|
||||
final public function getCode(): string
|
||||
{
|
||||
return $this->code ?? null;
|
||||
return $this->code;
|
||||
}
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type ?? null;
|
||||
return $this->type;
|
||||
}
|
||||
public function getIP(): ?string
|
||||
{
|
||||
$val = $this->ip ?? null;
|
||||
return ($val === '' || $val === null) ? null : $val;
|
||||
return $this->ip;
|
||||
}
|
||||
|
||||
public function getViewer(): ?string
|
||||
{
|
||||
return $this->viewer ?? null;
|
||||
return $this->viewer;
|
||||
}
|
||||
|
||||
public function getOS(): ?string
|
||||
{
|
||||
return $this->os ?? null;
|
||||
return $this->os;
|
||||
}
|
||||
public function getPrice(): int
|
||||
{
|
||||
return $this->price ?? 0;
|
||||
return (int) ($this->price ?? 0);
|
||||
}
|
||||
public function getManufacturAt(): string
|
||||
{
|
||||
return $this->manufactur_at ?? '';
|
||||
return $this->manufactur_at;
|
||||
}
|
||||
public function getFormatAt(): ?string
|
||||
{
|
||||
$val = $this->format_at ?? null;
|
||||
return ($val === '' || $val === null) ? null : $val;
|
||||
$this->format_at;
|
||||
}
|
||||
}
|
||||
|
||||
@ -15,57 +15,33 @@ class ServerPartEntity extends EquipmentEntity
|
||||
'billing_at',
|
||||
'extra',
|
||||
];
|
||||
protected $attributes = [
|
||||
'clientinfo_uid' => null,
|
||||
'part_uid' => null,
|
||||
'serviceinfo_uid' => null,
|
||||
'title' => '',
|
||||
'type' => '',
|
||||
'billing' => '',
|
||||
'billing_at' => null,
|
||||
'cnt' => 0,
|
||||
'amount' => 0,
|
||||
'extra' => null,
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'part_uid',
|
||||
'serviceinfo_uid',
|
||||
'billing_at',
|
||||
'extra',
|
||||
];
|
||||
}
|
||||
public function getClientInfoUid(): int|null
|
||||
public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid ?? null;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
public function setClientinfoUid($value)
|
||||
public function getServiceInfoUid(): ?int
|
||||
{
|
||||
$this->attributes['clientinfo_uid'] = ($value === '' || $value === null) ? null : (int) $value;
|
||||
return $this;
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
public function getServiceInfoUid(): int|null
|
||||
public function getServerInfoUid(): int
|
||||
{
|
||||
return $this->serviceinfo_uid ?? null;
|
||||
return $this->serverinfo_uid;
|
||||
}
|
||||
public function setServiceinfoUid($value)
|
||||
public function getPartUid(): ?int
|
||||
{
|
||||
$this->attributes['serviceinfo_uid'] = ($value === '' || $value === null) ? null : (int) $value;
|
||||
return $this;
|
||||
}
|
||||
public function getServerInfoUid(): int|null
|
||||
{
|
||||
return $this->serverinfo_uid ?? null;
|
||||
}
|
||||
public function setServerinfoUid($value)
|
||||
{
|
||||
$this->attributes['serverinfo_uid'] = ($value === '' || $value === null) ? null : (int) $value;
|
||||
return $this;
|
||||
}
|
||||
public function getPartUid(): int|null
|
||||
{
|
||||
return $this->part_uid ?? null;
|
||||
}
|
||||
public function setPartUid($value)
|
||||
{
|
||||
$this->attributes['part_uid'] = ($value === '' || $value === null) ? null : (int) $value;
|
||||
return $this;
|
||||
return $this->part_uid;
|
||||
}
|
||||
//기본기능용
|
||||
public function getCustomTitle(): string
|
||||
@ -78,26 +54,26 @@ class ServerPartEntity extends EquipmentEntity
|
||||
}
|
||||
public function getType(): string
|
||||
{
|
||||
return $this->type ?? "";
|
||||
return $this->type;
|
||||
}
|
||||
public function getBilling(): string
|
||||
{
|
||||
return $this->billing ?? "";
|
||||
return $this->billing;
|
||||
}
|
||||
public function getBillingAt(): string|null
|
||||
public function getBillingAt(): ?string
|
||||
{
|
||||
return $this->billing_at ?? null;
|
||||
return $this->billing_at;
|
||||
}
|
||||
public function getCnt(): int
|
||||
{
|
||||
return $this->cnt ?? 0;
|
||||
return (int) ($this->cnt ?? 0);
|
||||
}
|
||||
public function getAmount(): int
|
||||
{
|
||||
return $this->amount ?? 0;
|
||||
return (int) ($this->amount ?? 0);
|
||||
}
|
||||
public function getExtra(): string|null
|
||||
public function getExtra(): ?string
|
||||
{
|
||||
return $this->extra ?? null;
|
||||
return $this->extra;
|
||||
}
|
||||
}
|
||||
|
||||
@ -11,20 +11,14 @@ class MylogEntity extends CommonEntity
|
||||
protected array $nullableFields = [
|
||||
'user_uid',
|
||||
];
|
||||
protected $attributes = [
|
||||
'user_uid' => null,
|
||||
'title' => '',
|
||||
'status' => '',
|
||||
'content' => ''
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
}
|
||||
//공통부분
|
||||
//Common Function
|
||||
public function getUserUid(): int|null
|
||||
public function getUserUid(): ?int
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
return $this->user_uid;
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,43 +8,44 @@ class CSEntity extends PartType2Entity
|
||||
{
|
||||
const PK = CSModel::PK;
|
||||
const TITLE = CSModel::TITLE;
|
||||
protected $attributes = [
|
||||
'type' => '',
|
||||
'ip' => '',
|
||||
'accountid' => '',
|
||||
'domain' => '',
|
||||
'price' => 0,
|
||||
'status' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'serverinfo_uid',
|
||||
'accountid',
|
||||
'domain',
|
||||
];
|
||||
}
|
||||
//기본기능
|
||||
final public function getClientInfoUid(): int|null
|
||||
final public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
final public function getServiceInfoUid(): int|null
|
||||
final public function getServiceInfoUid(): ?int
|
||||
{
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
final public function getServerInfoUid(): int|null
|
||||
final public function getServerInfoUid(): ?int
|
||||
{
|
||||
return $this->serverinfo_uid;
|
||||
}
|
||||
public function getIP(): string
|
||||
{
|
||||
return $this->ip ?? '';
|
||||
return $this->ip;
|
||||
}
|
||||
//기본기능
|
||||
public function getAccountID(): string
|
||||
public function getAccountID(): ?string
|
||||
{
|
||||
return $this->accountid ?? "";
|
||||
return $this->accountid;
|
||||
}
|
||||
public function getDomain(): string
|
||||
public function getDomain(): ?string
|
||||
{
|
||||
return $this->domain ?? "";
|
||||
return $this->domain;
|
||||
}
|
||||
//abstract 선언처리용
|
||||
}
|
||||
|
||||
@ -8,14 +8,7 @@ class DISKEntity extends PartType1Entity
|
||||
{
|
||||
const PK = DISKModel::PK;
|
||||
const TITLE = DISKModel::TITLE;
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'used' => 0,
|
||||
'price' => 0,
|
||||
'stock' => 0,
|
||||
'format' => 0,
|
||||
'status' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
|
||||
@ -8,46 +8,46 @@ class IPEntity extends PartType3Entity
|
||||
{
|
||||
const PK = IPModel::PK;
|
||||
const TITLE = IPModel::TITLE;
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'used' => 0,
|
||||
'price' => 0,
|
||||
'stock' => 0,
|
||||
'ip' => '',
|
||||
'status' => '',
|
||||
'content' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'old_clientinfo_uid',
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'serverinfo_uid',
|
||||
'content',
|
||||
];
|
||||
}
|
||||
public function getLineInfoUID(): int|null
|
||||
public function getLineInfoUID(): int
|
||||
{
|
||||
return $this->lineinfo_uid ?? null;
|
||||
return $this->lineinfo_uid;
|
||||
}
|
||||
public function getOldClientInfoUID(): int|null
|
||||
public function getOldClientInfoUID(): ?int
|
||||
{
|
||||
return $this->old_clientinfo_uid ?? null;
|
||||
return $this->old_clientinfo_uid;
|
||||
}
|
||||
final public function getClientInfoUid(): int|null
|
||||
final public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
final public function getServiceInfoUid(): int|null
|
||||
final public function getServiceInfoUid(): ?int
|
||||
{
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
final public function getServerInfoUid(): int|null
|
||||
final public function getServerInfoUid(): ?int
|
||||
{
|
||||
return $this->serverinfo_uid;
|
||||
}
|
||||
//기본기능
|
||||
public function getIP(): string
|
||||
{
|
||||
return $this->ip ?? "";
|
||||
return $this->ip;
|
||||
}
|
||||
public function getContent(): string
|
||||
public function getContent(): ?string
|
||||
{
|
||||
return $this->content ?? "";
|
||||
return $this->content;
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,6 +19,6 @@ abstract class PartEntity extends CommonEntity
|
||||
}
|
||||
final public function getPrice(): int
|
||||
{
|
||||
return $this->price ?? 0;
|
||||
return (int) ($this->price ?? 0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,17 +2,8 @@
|
||||
|
||||
namespace App\Entities\Part;
|
||||
|
||||
use App\Models\Part\CPUModel;
|
||||
|
||||
class PartType1Entity extends PartEntity
|
||||
{
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'used' => 0,
|
||||
'price' => 0,
|
||||
'stock' => 0,
|
||||
'status' => '',
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
@ -20,11 +11,11 @@ class PartType1Entity extends PartEntity
|
||||
//기본기능
|
||||
final public function getStock(): int
|
||||
{
|
||||
return $this->stock ?? 0;
|
||||
return (int) ($this->stock ?? 0);
|
||||
}
|
||||
final public function getUsed(): int
|
||||
{
|
||||
return $this->used ?? 0;
|
||||
return (int) ($this->used ?? 0);
|
||||
}
|
||||
final public function getAvailable(): int
|
||||
{
|
||||
|
||||
@ -8,13 +8,7 @@ class RAMEntity extends PartType1Entity
|
||||
{
|
||||
const PK = RAMModel::PK;
|
||||
const TITLE = RAMModel::TITLE;
|
||||
protected $attributes = [
|
||||
'title' => '',
|
||||
'used' => 0,
|
||||
'price' => 0,
|
||||
'stock' => 0,
|
||||
'status' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
|
||||
@ -8,4 +8,10 @@ class SOFTWAREEntity extends PartType1Entity
|
||||
{
|
||||
const PK = SOFTWAREModel::PK;
|
||||
const TITLE = SOFTWAREModel::TITLE;
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
}
|
||||
//기본기능
|
||||
}
|
||||
|
||||
@ -8,29 +8,31 @@ class SWITCHEntity extends PartType3Entity
|
||||
{
|
||||
const PK = SWITCHModel::PK;
|
||||
const TITLE = SWITCHModel::TITLE;
|
||||
protected $attributes = [
|
||||
'code' => 0,
|
||||
'price' => 0,
|
||||
'status' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'serverinfo_uid',
|
||||
];
|
||||
}
|
||||
final public function getClientInfoUid(): int|null
|
||||
final public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid ?? null;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
final public function getServiceInfoUid(): int|null
|
||||
final public function getServiceInfoUid(): ?int
|
||||
{
|
||||
return $this->serviceinfo_uid ?? null;
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
final public function getServerInfoUid(): int|null
|
||||
final public function getServerInfoUid(): ?int
|
||||
{
|
||||
return $this->serverinfo_uid ?? null;
|
||||
return $this->serverinfo_uid;
|
||||
}
|
||||
public function getCode(): string
|
||||
{
|
||||
return $this->code ?? "";
|
||||
return $this->code;
|
||||
}
|
||||
}
|
||||
|
||||
@ -28,22 +28,30 @@ class PaymentEntity extends CommonEntity
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'clientinfo_uid',
|
||||
'serviceinfo_uid',
|
||||
'serverpartinfo_uid',
|
||||
'pay',
|
||||
'content',
|
||||
];
|
||||
}
|
||||
public function getUserUid(): int|null
|
||||
public function getUserUid(): ?int
|
||||
{
|
||||
return $this->user_uid ?? null;
|
||||
return $this->user_uid;
|
||||
}
|
||||
public function getClientInfoUid(): int|null
|
||||
public function getClientInfoUid(): ?int
|
||||
{
|
||||
return $this->clientinfo_uid ?? null;
|
||||
return $this->clientinfo_uid;
|
||||
}
|
||||
public function getServiceInfoUid(): int|null
|
||||
public function getServiceInfoUid(): ?int
|
||||
{
|
||||
return $this->serviceinfo_uid ?? null;
|
||||
return $this->serviceinfo_uid;
|
||||
}
|
||||
public function getServerPartInfoUid(): int|null
|
||||
public function getServerPartInfoUid(): ?int
|
||||
{
|
||||
return $this->serverpartinfo_uid ?? null;
|
||||
return $this->serverpartinfo_uid;
|
||||
}
|
||||
//기본기능
|
||||
public function getCustomTitle(): string
|
||||
@ -52,27 +60,27 @@ class PaymentEntity extends CommonEntity
|
||||
}
|
||||
public function getBilling(): string
|
||||
{
|
||||
return $this->billing ?? "";
|
||||
return $this->billing;
|
||||
}
|
||||
public function getAmount(): int
|
||||
{
|
||||
return $this->amount ?? 0;
|
||||
return (int) ($this->amount ?? 0);
|
||||
}
|
||||
public function getBillingAt(): string
|
||||
{
|
||||
return $this->billing_at ?? "";
|
||||
return $this->billing_at;
|
||||
}
|
||||
public function getBillingMonth(): int
|
||||
{
|
||||
return $this->billing_month ?? 0;
|
||||
return (int) ($this->billing_month ?? 0);
|
||||
}
|
||||
public function getPay(): string|null
|
||||
public function getPay(): ?string
|
||||
{
|
||||
return $this->pay ?? null;
|
||||
return $this->pay;
|
||||
}
|
||||
public function getContent(): string
|
||||
public function getContent(): ?string
|
||||
{
|
||||
return $this->content ?? "";
|
||||
return $this->content;
|
||||
}
|
||||
public function getCountDueAt(): string
|
||||
{
|
||||
|
||||
@ -10,37 +10,33 @@ class UserEntity extends CommonEntity
|
||||
const PK = Model::PK;
|
||||
const TITLE = Model::TITLE;
|
||||
|
||||
protected array $nullableFields = [
|
||||
'mobile',
|
||||
// uid 같은 숫자 PK가 nullable이면 여기에 추가
|
||||
];
|
||||
|
||||
// ✅ role은 반드시 "문자열" 기본값 (DB 저장형)
|
||||
protected $attributes = [
|
||||
'id' => '',
|
||||
'passwd' => '',
|
||||
'name' => '',
|
||||
'email' => '',
|
||||
'mobile' => null,
|
||||
'role' => '', // ✅ array 금지
|
||||
'status' => '',
|
||||
];
|
||||
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
$this->nullableFields = [
|
||||
...$this->nullableFields,
|
||||
'mobile',
|
||||
];
|
||||
}
|
||||
|
||||
public function getID(): string
|
||||
{
|
||||
return (string) ($this->attributes['id'] ?? '');
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
public function getPassword(): string
|
||||
{
|
||||
return (string) ($this->attributes['passwd'] ?? '');
|
||||
return $this->passwd;
|
||||
}
|
||||
|
||||
public function getEmail(): string
|
||||
{
|
||||
return $this->email;
|
||||
}
|
||||
public function getMobile(): ?string
|
||||
{
|
||||
return $this->mobile;
|
||||
}
|
||||
/**
|
||||
* role을 "배열"로 반환 (DB에는 CSV/JSON/배열 무엇이든 복구)
|
||||
*/
|
||||
|
||||
@ -9,11 +9,6 @@ class UserSNSEntity extends CommonEntity
|
||||
{
|
||||
const PK = Model::PK;
|
||||
const TITLE = Model::TITLE;
|
||||
protected $attributes = [
|
||||
'id' => '',
|
||||
'site' => '',
|
||||
'email' => "",
|
||||
];
|
||||
public function __construct(array|null $data = null)
|
||||
{
|
||||
parent::__construct($data);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user