<?php

namespace Eadesigndev\Urgent\Ui\Component\Listing\Column;
use Magento\Framework\View\Element\UiComponent\ContextInterface;
use Magento\Framework\View\Element\UiComponentFactory;
use \Magento\Ui\Component\Listing\Columns\Column;
use \Magento\Sales\Api\OrderRepositoryInterface;

#[\AllowDynamicProperties]
class OrderId extends Column
{
    private $_orderRepository;
    public function __construct(
        ContextInterface $context,
        UiComponentFactory $uiComponentFactory,
        OrderRepositoryInterface $orderRepository,
        array $components = [],
        array $data = [])
    {
        $this->_orderRepository = $orderRepository;
        parent::__construct($context, $uiComponentFactory, $components, $data);
    }

    public function prepareDataSource(array $dataSource)
    {
        if (isset($dataSource['data']['items'])) {
            foreach ($dataSource['data']['items'] as & $item) {
                if (!empty($item["order_id"])) {
                    try {
                        $currentOrder = $this->_orderRepository->get($item["order_id"]);
                        $item["order_id"] = $currentOrder->getData('increment_id');
                    } catch(\Exception $e){
                        continue;
                    }
                }
            }
        }

        return $dataSource;
    }

}