/**
  * @param int $productId
  * @param float $quantity
  * @param string $unitCode
  * @param int $priceType
  * @param Price $price
  * @return QuoteProductOffer
  */
 protected function getQuoteProductOffer($productId = null, $quantity = null, $unitCode = null, $priceType = null, Price $price = null)
 {
     $quoteProductOffer = new QuoteProductOffer();
     $quoteProductOffer->setQuoteProduct($this->getQuoteProduct($productId));
     if (null !== $quantity) {
         $quoteProductOffer->setQuantity($quantity);
     }
     if (null !== $unitCode) {
         $quoteProductOffer->setProductUnit($this->getEntity('OroB2B\\Bundle\\ProductBundle\\Entity\\ProductUnit', $unitCode, 'code'));
     }
     if (null !== $priceType) {
         $quoteProductOffer->setPriceType($priceType);
     }
     if (null !== $price) {
         $quoteProductOffer->setPrice($price);
     }
     return $quoteProductOffer;
 }