<?php
namespace Leadlion\SalesOrder\Helper;

use Magento\Catalog\Model\ProductFactory;
use Magento\Framework\App\Helper\AbstractHelper;
use Magento\Framework\App\Helper\Context;
use Magento\Store\Model\ScopeInterface;
use Magento\Store\Model\StoreManagerInterface;
use Magento\Backend\Model\Auth\Session;

class Data extends AbstractHelper
{
    const IMAGE_DIR = 'order/product/default/';

    protected $productFactory;
    protected $storeManager;

    /**
     * @var Session
     */
    protected $authSession;
    private \Magento\Framework\App\Config\ScopeConfigInterface $config;

    public function __construct(
        Context $context,
        ProductFactory $productFactory,
        StoreManagerInterface $storeManager,
        Session $authSession
    ) {
        $this->config = $context->getScopeConfig();
		$this->productFactory = $productFactory;
		$this->storeManager = $storeManager;
        $this->authSession = $authSession;
        parent::__construct($context);
    }

    public function getSkuFz($productId)
    {
        $_product = $this->productFactory->create()->load($productId);
        $skuFz = $_product->getSkuFz();
        return $skuFz;
    }

    public function getCustomProductImage()
    {
        $mediaUrl = $this->storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA);
        $imagePath = $mediaUrl.self::IMAGE_DIR;
        $customProductImage = $imagePath . $this->scopeConfig->getValue(
                                    'orderflow/order_complete/product_image', ScopeInterface::SCOPE_STORE
                                );
        return $customProductImage;
    }
    
    /**
     * @return int
     */
    public function getAdminUserId()
    {
        $user = $this->authSession->getUser();

        if ($user) {
            return $user->getId();
        }

        return "";
    }
}
