It is quite simple and the reason is that you don't need any new data to make the job.
you may create a custom module in app/code/Vendor/OrderGrid
.. (see screenshot of my module
mine was Mbs/OrderGrid
)
In the file sales_order_grid.xml
you can define your column
the class Mbs\OrderGrid\Ui\Component\Listing\Column\OrderStatusRenderer
is what you need to get right:
class OrderStatusRenderer extends \Magento\Ui\Component\Listing\Columns\Column
{
/**
* Prepare Data Source
*
* @param array $dataSource
* @return array
*/
public function prepareDataSource(array $dataSource)
{
if (isset($dataSource['data']['items'])) {
foreach ($dataSource['data']['items'] as & $item) {
if ($this->getData('name') === 'status') {
if ($item[$this->getData('name')] == 'complete') {
$result = 'Yes';
} else {
$result = 'No';
}
$item[$this->getData('name')] = $result;
}
}
}
return $dataSource;
}
}
hopefully, these infos answer your question