_deviceModel = $this->_deviceModel ?: new DeviceModel(); } final protected function getProductDeviceModel(): ProductDeviceModel { return $this->_productDeviceModel = $this->_productDeviceModel ?: new ProductDeviceModel(); } public function device(array $cellDatas = []) { $cellDatas['defaults'] = []; if (array_key_exists('entity', $cellDatas)) { foreach ($this->getProductDeviceModel()->getEntitys( ['product_uid' => $cellDatas['entity']->getPrimaryKey()] ) as $productDevieceEntity) { $cellDatas['defaults'][$productDevieceEntity->device_uid] = $productDevieceEntity; } } $cellDatas['device'] = []; $cellDatas['device']['categorys'] = ['server', 'cpu', 'memory', 'disk', 'nic', 'publicip', 'os']; $cellDatas['device']['options'] = $this->getDeviceModel()->getOptions(); //dd($cellDatas); return view( 'Views/cells/product/' . __FUNCTION__, ['cellDatas' => $cellDatas] ); } public function device_calulator(array $cellDatas = []): string { $cellDatas['device'] = []; $cellDatas['device']['categorys'] = ['server', 'cpu', 'memory', 'disk', 'nic', 'publicip', 'os']; $cellDatas['device']['options'] = $this->getDeviceModel()->getOptions(); return view( 'Views/cells/product/' . __FUNCTION__, ['cellDatas' => $cellDatas] ); } }