This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Impressao\Farmacia\Livro;
|
||||
|
||||
use App\Enums\Cadastro\Material\LivroRegistro;
|
||||
use App\Enums\Cadastro\Material\LivroRegistroTipo;
|
||||
use App\Enums\Farmacia\LivroStatus;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Cadastro\Estabelecimento\CentroCusto;
|
||||
use App\Models\Farmacia\Livro;
|
||||
use App\Models\Intranet\Cliente;
|
||||
use App\Services\Farmacia\LivroService;
|
||||
use App\Utils\Exports\Pdf1;
|
||||
|
||||
class LivroController extends Controller
|
||||
{
|
||||
private static $TITLE = 'LIVRO DE ';
|
||||
private const TEMPLATE = 'farmacia.livro.livro';
|
||||
|
||||
public static function getTemplate($livro)
|
||||
{
|
||||
$municipio = Cliente::where('link', app('config')->get('database.default'))->first()->municipio->nome;
|
||||
$infraestruturaLogada = CentroCusto::findOrFail(auth()->payload()->get('centro_custo_id'))->infraestrutura;
|
||||
|
||||
$isTalidomida = $livro->livro_registro_id == LivroRegistro::TALIDOMIDA;
|
||||
|
||||
return [
|
||||
'isLivroTalidomida' => $isTalidomida,
|
||||
'isLivroTalidomidaABase' => $isTalidomida
|
||||
&& $livro->livro_registro_tipo_id == LivroRegistroTipo::A_BASE,
|
||||
'isLivroTalidomidaEspecifico' => $isTalidomida
|
||||
&& $livro->livro_registro_tipo_id == LivroRegistroTipo::ESPECIFICO,
|
||||
'numero' => $livro->numero,
|
||||
'abertoEm' => $livro->aberto_em->format('d/m/Y'),
|
||||
'livroRegistro' => $livro->livroRegistro->nome,
|
||||
'livroRegistroTipo' => $livro->livroRegistroTipo->nome ?? null,
|
||||
'quantidadePaginas' => $livro->quantidade_paginas,
|
||||
'registro' => $livro->registro,
|
||||
'firma' => "PREFEITURA MUNICIPAL DE {$municipio}",
|
||||
'farmacia' => $infraestruturaLogada->nome,
|
||||
'usuarioFarmaceutico' => $livro->usuarioFarmaceutico->cidadao->nome,
|
||||
'endereco' => $infraestruturaLogada->endereco->completo,
|
||||
'inscricaoEstadual' => $livro->inscricao_estadual,
|
||||
'autoridadeSanitaria' => $livro->autoridade_sanitaria,
|
||||
'paginas' => LivroService::getLivroCompletoImpressao($livro->id),
|
||||
];
|
||||
}
|
||||
|
||||
public function __invoke($id)
|
||||
{
|
||||
$livro = Livro::findOrFail($id);
|
||||
|
||||
if ($livro->livro_registro_id == LivroRegistro::TALIDOMIDA) {
|
||||
|
||||
self::$TITLE .= 'TALIDOMIDA';
|
||||
}
|
||||
else {
|
||||
|
||||
self::$TITLE .= 'PSICOTRÓPICOS';
|
||||
}
|
||||
|
||||
if ($livro->status_id === LivroStatus::ABERTO) {
|
||||
|
||||
self::$TITLE .= ' - PARCIAL';
|
||||
}
|
||||
|
||||
return Pdf1::generate(self::$TITLE, self::TEMPLATE, self::getTemplate($livro), 'landscape');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Impressao\Farmacia\Livro;
|
||||
|
||||
use App\Enums\Cadastro\Material\LivroRegistro;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Cadastro\Estabelecimento\CentroCusto;
|
||||
use App\Models\Farmacia\Livro;
|
||||
use App\Models\Intranet\Cliente;
|
||||
use App\Utils\Exports\Pdf1;
|
||||
|
||||
class TermoFechamentoController extends Controller
|
||||
{
|
||||
private const TITLE = 'TERMO DE FECHAMENTO';
|
||||
private const TEMPLATE = 'farmacia.livro.termo-fechamento';
|
||||
|
||||
public static function getTemplate($livroId)
|
||||
{
|
||||
$livro = Livro::findOrFail($livroId);
|
||||
$municipio = Cliente::where('link', app('config')->get('database.default'))->first()->municipio->nome;
|
||||
$infraestruturaLogada = CentroCusto::findOrFail(auth()->payload()->get('centro_custo_id'))->infraestrutura;
|
||||
|
||||
return [
|
||||
'isLivroTalidomida' => $livro->livro_registro_id == LivroRegistro::TALIDOMIDA,
|
||||
'numero' => $livro->numero,
|
||||
'fechadoEm' => $livro->fechado_em->format('d/m/Y'),
|
||||
'livroRegistro' => $livro->livroRegistro->nome,
|
||||
'livroRegistroTipo' => $livro->livroRegistroTipo->nome ?? null,
|
||||
'quantidadePaginas' => $livro->quantidade_paginas,
|
||||
'registro' => $livro->registro,
|
||||
'firma' => "PREFEITURA MUNICIPAL DE {$municipio}",
|
||||
'farmacia' => $infraestruturaLogada->nome,
|
||||
'usuarioFarmaceutico' => $livro->usuarioFarmaceutico->cidadao->nome,
|
||||
'endereco' => $infraestruturaLogada->endereco->completo,
|
||||
'inscricaoEstadual' => $livro->inscricao_estadual,
|
||||
'autoridadeSanitaria' => $livro->autoridade_sanitaria,
|
||||
];
|
||||
}
|
||||
|
||||
public function __invoke($livroId)
|
||||
{
|
||||
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate($livroId));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user