<?php
namespace Modules\Vendas\Controllers;

use Gestoreasy\Core\Http\Request;
use Gestoreasy\Core\Http\Response;
use Gestoreasy\Core\View\View;

class SalesViewsController {

    public function viewQuotes(Request $r): Response {
        return View::renderWithLayout('vendas/orcamentos/index', ['title' => 'Orçamentos']);
    }

    public function viewOrders(Request $r): Response {
        return View::renderWithLayout('vendas/pedidos/index', ['title' => 'Pedidos']);
    }

    public function viewPos(Request $r): Response {
        return View::renderWithLayout('vendas/pdv/index', ['title' => 'PDV']);
    }

    public function viewNotas(Request $r): Response {
        return View::renderWithLayout('vendas/notas/index', ['title' => 'Notas Fiscais']);
    }

    public function viewComissoes(Request $r): Response {
        return View::renderWithLayout('vendas/comissoes/index', ['title' => 'Comissões de Vendas']);
    }

    public function viewCrm(Request $r): Response {
        return View::renderWithLayout('vendas/crm/index', ['title' => 'CRM de Vendas']);
    }

    // Novas telas: criação de orçamento e pedido
    public function viewNewQuote(Request $r): Response {
        return View::renderWithLayout('vendas/orcamentos/create', ['title' => 'Novo Orçamento']);
    }

    public function viewNewOrder(Request $r): Response {
        return View::renderWithLayout('vendas/pedidos/create', ['title' => 'Novo Pedido']);
    }

    // Impressão
    public function viewPrintQuote(Request $r): Response {
        $params = $r->get('params', []);
        $id = (int)($params[0] ?? 0);
        // Renderizar sem layout para evitar menus/cabeçalhos na impressão
        return View::render('vendas/print/quote', ['title' => 'Imprimir Orçamento', 'id' => $id]);
    }

    public function viewPrintOrder(Request $r): Response {
        $params = $r->get('params', []);
        $id = (int)($params[0] ?? 0);
        // Renderizar sem layout para evitar menus/cabeçalhos na impressão
        return View::render('vendas/print/order', ['title' => 'Imprimir Pedido', 'id' => $id]);
    }
}