37 lines
993 B
PHP
37 lines
993 B
PHP
<?php
|
|
|
|
namespace App\Entities\Part;
|
|
|
|
use App\Entities\CommonEntity;
|
|
|
|
abstract class PartEntity extends CommonEntity
|
|
{
|
|
public function __construct(array|null $data = null)
|
|
{
|
|
parent::__construct($data);
|
|
}
|
|
abstract public function getAvailable(): int;
|
|
abstract public function getUsed(): int;
|
|
final public function getClientInfoUID(): int|null
|
|
{
|
|
return $this->attributes['clientinfo_uid'];
|
|
}
|
|
final public function getServiceInfoUID(): int|null
|
|
{
|
|
return $this->attributes['serviceinfo_uid'];
|
|
}
|
|
final public function getServerInfoUID(): int|null
|
|
{
|
|
return $this->attributes['serverinfo_uid'];
|
|
}
|
|
//기본기능용
|
|
public function getCustomTitle(mixed $title = null): string
|
|
{
|
|
return sprintf("%s %s원", $title ? $title : $this->getTitle(), number_format($this->getPrice() . "원"));
|
|
}
|
|
final public function getPrice(): int
|
|
{
|
|
return $this->attributes['price'];
|
|
}
|
|
}
|