dbmsv2/app/Services/Equipment/EquipmentService.php
2025-08-19 14:11:18 +09:00

48 lines
1.3 KiB
PHP

<?php
namespace App\Services\Equipment;
use App\Services\CommonService;
use App\Services\Customer\ClientService;
use App\Services\Equipment\ServerService;
use CodeIgniter\Model;
abstract class EquipmentService extends CommonService
{
private ?ClientService $_clientService = null;
private ?ServerService $_serverService = null;
protected function __construct(Model $model)
{
parent::__construct($model);
$this->addClassName('Equipment');
}
final public function getClientService(): ClientService
{
if (!$this->_clientService) {
$this->_clientService = new ClientService();
}
return $this->_clientService;
}
final public function getServerService(): ServerService
{
if (!$this->_serverService) {
$this->_serverService = new ServerService();
}
return $this->_serverService;
}
//FieldForm관련용
public function getFormFieldOption(string $field, array $options = []): array
{
switch ($field) {
case 'clientinfo_code':
$options = $this->getClientService()->getEntities();
break;
default:
$options = parent::getFormFieldOption($field, $options);
break;
}
return $options;
}
}