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