phpkore/src/rules.php

48 lines
1.4 KiB
PHP

<?php
use Somnambulist\Components\Validation\Factory;
function pixCobrancaImediataComValorRules(array $data)
{
$rules = [
'expiracao' => 'integer',
'devedor' => 'array',
'devedor.documento' => 'string|min:11|max:18',
'devedor.nome' => 'required_with:devedor.documento|string|max:100',
'valor' => 'required|integer|min:1',
'chave' => 'required|string',
'txid' => 'required|string|max:100',
'solicitacaoPagador' => 'string|max:140'
];
$validation = (new Factory)->validate($data, $rules);
if ($validation->fails()) {
throw new Exception(json_encode($validation->errors()->firstOfAll()), 500);
} else {
return true;
}
}
function pixCobrancaImediataSemValorRules(array $data)
{
$rules = [
'expiracao' => 'integer',
'devedor' => 'array',
'devedor.documento' => 'string|min:11|max:18',
'devedor.nome' => 'required_with:devedor.documento|string|max:100',
'valor' => 'sometimes|integer',
'chave' => 'required|string',
'txid' => 'required|string|max:100',
'solicitacaoPagador' => 'string|max:140'
];
$validation = (new Factory)->validate($data, $rules);
if ($validation->fails()) {
throw new Exception(json_encode($validation->errors()->firstOfAll()), 500);
} else {
return true;
}
}