This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Impressao\Almoxarifado;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Almoxarifado\Requisicao;
|
||||
use App\Services\Almoxarifado\RequisicaoPendentePermissaoService;
|
||||
use App\Utils\Exports\Pdf1;
|
||||
use App\Utils\MaskUtil;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class RequisicaoSeparacaoMaterialController extends Controller
|
||||
{
|
||||
private const TITLE = 'REQUISIÇÃO - SEPARAR MATERIAL';
|
||||
private const TEMPLATE = 'almoxarifado.requisicao-separacao-material';
|
||||
|
||||
public static function getTemplate($id)
|
||||
{
|
||||
$requisicao = Requisicao::findOrFail($id);
|
||||
$data = RequisicaoPendentePermissaoService::edit($id);
|
||||
$isPrimeiroEnvio = $data['form']['envios']->isEmpty();
|
||||
|
||||
$data['model']['itens'] = $data['model']['itens']->map(function ($item) {
|
||||
|
||||
$item['entrada_itens'] = $item['entrada_itens']
|
||||
->filter(fn ($i) => $i['quantidade_saida'] > 0)
|
||||
->values();
|
||||
|
||||
return $item;
|
||||
});
|
||||
|
||||
return [
|
||||
'data' => (new Carbon($requisicao->created_at))->format('d/m/Y'),
|
||||
'numero' => $requisicao->numero,
|
||||
'requisitante' => [
|
||||
'unidade' => $requisicao->createdCentroCusto->infraestrutura->unidade->nome_fantasia,
|
||||
'local_atendimento' => $requisicao->createdCentroCusto->infraestrutura->nome,
|
||||
'setor' => $requisicao->createdCentroCusto->setor->nome,
|
||||
'usuario' => $requisicao->createdLotacao->usuario->cidadao->nome,
|
||||
'endereco' => $requisicao->createdCentroCusto->infraestrutura->endereco->completo,
|
||||
'telefone' => MaskUtil::getPhoneMasked($requisicao->createdCentroCusto->infraestrutura->telefone)
|
||||
],
|
||||
'isPrimeiroEnvio' => $isPrimeiroEnvio,
|
||||
'itens' => $data['model']['itens'],
|
||||
];
|
||||
}
|
||||
|
||||
public function __invoke($id)
|
||||
{
|
||||
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate($id));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user