<?php

declare(strict_types=1);

namespace app\controllers;

use yii;
use yii\web\Controller;

use app\models\Order;

class InvoiceController extends Controller
{
    public function actionIndex(int $order)
    {
        if ($order = Order::searchById(Order::collectionName() . '/' . $order)) {

            return $this->renderPartial('/invoice/order/pattern', [
                'account' => yii::$app->user->identity,
                'order' => [
                    'id' => $order->_key,
                    'date' => $order->date ?? time() // @todo доделать
                ]
            ]);
        }
    }

    public function actionDownload(int $order)
    {
        // Инициализация файла
        $file = YII_PATH_PUBLIC . '/../assets/invoices/' . $order . '/invoice.xlsx';

        if (file_exists($file)) {
            // Удалось найти файл

            return $this->response->sendFile($file);
        } else {
            // Не удалось найти файл

            // Запись кода ответа
            yii::$app->response->statusCode = 500;

            return yii::$app->response->redirect('/orders');
        }
    }
}
