<?php

namespace App\Entities\Part;

use App\Entities\CommonEntity;

abstract class PartEntity extends CommonEntity
{
    protected $attributes = [
        'title' => '',
        'price' => 0,
        'status' => STATUS['AVAILABLE'],
    ];
    public function __construct(array|null $data = null)
    {
        parent::__construct($data);
    }
    //기본기능용
    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'] ?? 0;
    }
}
