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,81 @@
<?php
namespace App\Services\Ambulatorio;
use App\Models\Ambulatorio\JornadaSituacao;
use App\Services\Service;
use Illuminate\Support\Facades\DB;
use Illuminate\Validation\Rule;
class JornadaSituacaoService extends Service
{
public static function datatable()
{
return DB::table('ambulatorio_jornada_situacao as situacao')
->select(DB::raw("
situacao.id,
situacao.nome
"));
}
public static function create()
{
return [
'model' => [
'id' => null,
'nome' => null,
]
];
}
public static function edit($id)
{
$situacao = JornadaSituacao::findOrFail($id);
return [
'model' => [
'id' => $situacao->id,
'nome' => $situacao->nome,
],
];
}
public static function store()
{
self::validate();
return JornadaSituacao::create(request()->all())->fresh();
}
public static function update($id)
{
self::validate();
return (tap(JornadaSituacao::findOrFail($id))->update(request()->all()))->fresh();
}
public static function validate()
{
$rules = [
'nome' => [
'string',
'required',
'between:3,100',
Rule::unique(JornadaSituacao::class, 'nome')->ignore(request()->route('jornada_situacao')),
]
];
$messages = [
'nome.unique' => 'O nome da Situação já foi inserido anteriormente.',
];
request()->validate($rules, $messages);
}
public static function destroy($id)
{
JornadaSituacao::findOrFail($id)->delete();
return null;
}
}