/* @var \Magento\Framework\App\State $state */
/* @var \Magento\Sales\Api\OrderRepositoryInterface $orderRepository */
/* @var \Magento\Store\Model\StoreManagerInterface $storeManager */
/* @var \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig */
/* @var \Magento\Framework\Translate\Inline\StateInterface $inlineTranslation */
/* @var \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder */
$order = $orderRepository->get(1);
$storeId = $order->getStoreId();
$templateOptions = array('area' => MagentoFrameworkAppArea::AREA_FRONTEND, 'store' => $storeId);
$templateVars = array(
'store' => $storeManager->getStore($order->getStoreId()),
'order' => $order,
);
$inlineTranslation->suspend();
$to = array($order->getCustomerEmail());
$sender = [
'name' => $scopeConfig->getValue(
'trans_email/ident_sales/name',
MagentoStoreModelScopeInterface::SCOPE_STORE
),
'email' => $scopeConfig->getValue(
'trans_email/ident_sales/email',
MagentoStoreModelScopeInterface::SCOPE_STORE
)
];
$transport = $transportBuilder->setTemplateIdentifier('payreminder_email_general_email')
->setTemplateOptions($templateOptions)
->setTemplateVars($templateVars)
->setFrom($sender)
->addTo($to)
->getTransport();
$transport->sendMessage();
$inlineTranslation->resume();