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(); } }