This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Impressao\Almoxarifado;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Cadastro\Grupo\Grupo;
|
||||
use App\Models\Cadastro\Subgrupo\Subgrupo;
|
||||
use App\Services\Almoxarifado\BalanceteService;
|
||||
use App\Utils\Exports\Pdf1;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class BalanceteController extends Controller
|
||||
{
|
||||
private const TITLE = 'BALANCETE';
|
||||
private const TEMPLATE = 'almoxarifado.balancete';
|
||||
|
||||
public static function getTemplate()
|
||||
{
|
||||
$periodo = [
|
||||
'inicio' => Carbon::createFromFormat('d/m/Y', request()->inicio)->setTime(0, 0, 0),
|
||||
'fim' => Carbon::createFromFormat('d/m/Y', request()->fim)->setTime(23, 59, 59),
|
||||
];
|
||||
|
||||
$grupo = request()->query('grupo_id') ? Grupo::find(request()->query('grupo_id')) : null;
|
||||
$subgrupo = request()->query('subgrupo_id') ? Subgrupo::find(request()->query('subgrupo_id')) : null;
|
||||
$colunas = collect(request()->selectedCols);
|
||||
|
||||
$balancete = BalanceteService::getBalancete($periodo, request()->grupo_id, request()->subgrupo_id, request()->origem_programatica_id);
|
||||
|
||||
BalanceteService::formatarSaldos($balancete);
|
||||
|
||||
$itens = null;
|
||||
|
||||
if ($colunas->contains('material')) {
|
||||
|
||||
$itens = $balancete['por_material'];
|
||||
}
|
||||
else if ($colunas->contains('subgrupo')) {
|
||||
|
||||
$itens = $balancete['por_subgrupo'];
|
||||
}
|
||||
else {
|
||||
|
||||
$itens = $balancete['por_grupo'];
|
||||
}
|
||||
|
||||
return [
|
||||
'inicio' => request()->inicio,
|
||||
'fim' => request()->fim,
|
||||
'grupo' => $grupo->nome ?? null,
|
||||
'subgrupo' => $subgrupo->nome ?? null,
|
||||
'colunas' => $colunas,
|
||||
'itens' => $itens,
|
||||
'totalizadores' => $balancete['totalizadores'],
|
||||
];
|
||||
}
|
||||
|
||||
public function __invoke()
|
||||
{
|
||||
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user