init commit
All checks were successful
build-api-image / build (push) Successful in 51s

This commit is contained in:
Antonio Lopes dos Santos
2026-08-04 16:52:02 -03:00
commit afec302c3e
11594 changed files with 1636728 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class BairroIsRequired implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !empty($value);
}
public function message()
{
return 'Bairro é obrigatório.';
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\DB;
class CaraterAtendimentoExists implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return DB::table('bpa_carater_atendimento')->where('id', $value)->exists();
}
public function message()
{
return 'Caráter de atendimento inválido.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class CepIsValid implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return strlen($value) === 8 && $value !== '00000000';
}
public function message()
{
return 'CEP inválido.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class CnesIsValid implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return strlen($value) === 7;
}
public function message()
{
return 'CNES inválido.';
}
}

View File

@@ -0,0 +1,34 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
class DataAtendimentoIsValid implements Rule
{
private $competenciaId;
public function __construct($competenciaId)
{
$this->competenciaId = $competenciaId;
}
public function passes($attribute, $value)
{
return self::isValid($this->competenciaId, $value);
}
public static function isValid($competenciaId, $value)
{
return DB::table('sigtap.competencia')->where('id', $competenciaId)
->where('valor', '>=', Str::substr($value, 0, 4))
->exists();
}
public function message()
{
return 'Data de atendimento inválida.';
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace App\Rules\Bpa;
use App\Enums\Cadastro\SujeitoAtencao\RacaCor;
use Illuminate\Contracts\Validation\Rule;
class EtniaIndigenaIsValid implements Rule
{
private $racaCorId;
public function __construct($racaCorId)
{
$this->racaCorId = $racaCorId;
}
public function passes($attribute, $value)
{
return self::isValid($value, $this->racaCorId);
}
public static function isValid($value, $racaCorId)
{
return $racaCorId !== RacaCor::INDIGENA || ($racaCorId === RacaCor::INDIGENA && !is_null($value));
}
public function message()
{
return 'Nacionalidade inválida.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class IdadeIsRequired implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !is_null($value);
}
public function message()
{
return 'Idade é obrigatória.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class LogradouroIsRequired implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !empty($value);
}
public function message()
{
return 'Logradouro é obrigatório.';
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\DB;
class LogradouroTipoIsValid implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !is_null($value) && DB::table('cadastro_logradouro_tipo')->where('codigo', $value)->exists();
}
public function message()
{
return 'Tipo de logradouro inválido.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class NumeroIsRequired implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !is_null($value);
}
public function message()
{
return 'Número é obrigatório.';
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Rules\Bpa;
use Illuminate\Contracts\Validation\Rule;
class PacienteNomeIsRequired implements Rule
{
public function passes($attribute, $value)
{
return self::isValid($value);
}
public static function isValid($value)
{
return !empty($value);
}
public function message()
{
return 'Nome do paciente é obrigatório.';
}
}