Files
rkm-conectasus-ci-sandbox/api/app/Http/Controllers/DashboardController.php
Antonio Lopes dos Santos afec302c3e
All checks were successful
build-api-image / build (push) Successful in 51s
init commit
2026-08-04 16:52:02 -03:00

44 lines
1.5 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\ProntoAtendimento\Parametrizacao\Parametrizacao as ProntoAtendimentoParametrizacao;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\DB;
class DashboardController extends Controller
{
public function index()
{
$assinatura = ProntoAtendimentoParametrizacao::first()->assinatura_eletronica ?? false;
if (!$assinatura) {
$assinatura = self::getAssinaturaAmbulatorio();
}
return response()->json([
'assinatura_eletronica_ativa' => $assinatura
], Response::HTTP_OK);
}
public static function getAssinaturaAmbulatorio()
{
$lotacaoLogada = self::getCurrentLotacao();
return DB::table('ambulatorio_parametrizacao_infraestrutura_assinatura_eletronica AS infraestrutura_assinatura_eletronica')
->join(
'ambulatorio_parametrizacao_infraestrutura AS parametrizacao_infraestrutura',
'parametrizacao_infraestrutura.id',
'infraestrutura_assinatura_eletronica.parametrizacao_infraestrutura_id'
)
->join(
'ambulatorio_parametrizacao_assinatura_eletronica as assinatura_eletronica',
'assinatura_eletronica.id',
'infraestrutura_assinatura_eletronica.parametrizacao_assinatura_eletronica_id'
)
->when($lotacaoLogada->infraestrutura_id, fn ($q, $id) => $q->where('parametrizacao_infraestrutura.infraestrutura_id', $id))
->exists();
}
}