<?php

namespace App\Services\Part;

use App\Entities\Equipment\ServerPartEntity;
use App\Entities\Part\PartEntity;
use App\Models\CommonModel;
use App\Services\CommonService;

abstract class PartService extends CommonService
{
    protected function __construct(CommonModel $model)
    {
        parent::__construct($model);
        $this->addClassPaths('Part');
    }
    abstract public function attachToServerPart(ServerPartEntity $serverPartEntity): PartEntity;
    abstract public function modifyServerPart(ServerPartEntity $oldServerPartEntity, ServerPartEntity $serverPartEntity): PartEntity;
    abstract public function detachFromServerPart(ServerPartEntity $serverPartEntity): PartEntity;
}
