getEntity($serverPartDatas['part_uid']); if (!($entity instanceof PartEntity)) { throw new \Exception("{$serverPartDatas['part_uid']}에 해당하는 부품정보를 찾을수없습니다."); } //부품정보에 서버정보 설정 및 서비스,고객정보 정의 $formDatas = []; if ($serverPartDatas['status'] === STATUS['AVAILABLE']) { //해지된 부품 재고수를 처리 $formDatas['stock'] = $entity->getStock() + $serverPartEntity->getCnt(); } if ($serverPartDatas['status'] === STATUS['OCCUPIED']) { //추가된 부품 재고수를 처리 if ($entity->getStock() < $serverPartEntity->getCnt()) { throw new \Exception("현재 재고수[{$entity->getStock()}]보다 지정하신 갯수({$serverPartEntity->getCnt()})가 더 많습니다."); } $formDatas['stock'] = $entity->getStock() - $serverPartEntity->getCnt(); } return $serverPartEntity->setPartEntity($this->modify($entity, $formDatas)); } }