Update Module Jenis Legalitas Jaminan
Penambahan Slug
This commit is contained in:
parent
22e2ff51f0
commit
77be1b2685
@ -2,7 +2,9 @@
|
|||||||
|
|
||||||
namespace Modules\Lpj\Http\Requests;
|
namespace Modules\Lpj\Http\Requests;
|
||||||
|
|
||||||
|
use daengdeni\LaravelIdGenerator\IdGenerator;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
use Illuminate\Support\Str;
|
||||||
|
|
||||||
class JenisLegalitasJaminanRequest extends FormRequest
|
class JenisLegalitasJaminanRequest extends FormRequest
|
||||||
{
|
{
|
||||||
@ -12,16 +14,11 @@
|
|||||||
public function rules()
|
public function rules()
|
||||||
: array
|
: array
|
||||||
{
|
{
|
||||||
$rules = [
|
return [
|
||||||
|
'code' => 'required|max:6',
|
||||||
'name' => 'required|max:255',
|
'name' => 'required|max:255',
|
||||||
|
'slug' => 'required|max:255',
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($this->method() == 'PUT') {
|
|
||||||
$rules['code'] = 'required|max:50|unique:jenis_legalitas_jaminan,code,' . $this->id;
|
|
||||||
} else {
|
|
||||||
$rules['code'] = 'required|max:50|unique:jenis_legalitas_jaminan,code';
|
|
||||||
}
|
|
||||||
return $rules;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -32,4 +29,20 @@
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function prepareForValidation()
|
||||||
|
{
|
||||||
|
if($this->method() == 'POST' && $this->code == null) {
|
||||||
|
$this->merge([
|
||||||
|
'code' => IdGenerator::generate(
|
||||||
|
['table' => 'jenis_legalitas_jaminan', 'length' => 6, 'prefix' => 'JLJ', 'field' => 'code'],
|
||||||
|
),
|
||||||
|
'slug' => Str::slug($this->name),
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
$this->merge([
|
||||||
|
'slug' => Str::slug($this->name),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,5 +7,5 @@
|
|||||||
class JenisLegalitasJaminan extends Base
|
class JenisLegalitasJaminan extends Base
|
||||||
{
|
{
|
||||||
protected $table = 'jenis_legalitas_jaminan';
|
protected $table = 'jenis_legalitas_jaminan';
|
||||||
protected $fillable = ['code', 'name'];
|
protected $fillable = ['code', 'name','slug'];
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::table('jenis_legalitas_jaminan', function (Blueprint $table) {
|
||||||
|
$table->string('slug')->nullable()->after('name');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::table('jenis_legalitas_jaminan', function (Blueprint $table) {
|
||||||
|
$table->dropColumn('slug');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
@ -104,16 +104,16 @@
|
|||||||
"roles": []
|
"roles": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "Jenis Jaminan",
|
"title": "Jenis Legalitas Jaminan",
|
||||||
"path": "basicdata.jenis-jaminan",
|
"path": "basicdata.jenis-legalitas-jaminan",
|
||||||
"classes": "",
|
"classes": "",
|
||||||
"attributes": [],
|
"attributes": [],
|
||||||
"permission": "",
|
"permission": "",
|
||||||
"roles": []
|
"roles": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "Jenis Legalitas Jaminan",
|
"title": "Jenis Jaminan",
|
||||||
"path": "basicdata.jenis-legalitas-jaminan",
|
"path": "basicdata.jenis-jaminan",
|
||||||
"classes": "",
|
"classes": "",
|
||||||
"attributes": [],
|
"attributes": [],
|
||||||
"permission": "",
|
"permission": "",
|
||||||
|
@ -24,23 +24,25 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body grid gap-5">
|
<div class="card-body grid gap-5">
|
||||||
|
@if(isset($jenisLegalitasJaminan->id))
|
||||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||||
<label class="form-label max-w-56">
|
<label class="form-label max-w-56">
|
||||||
Code
|
Code
|
||||||
</label>
|
</label>
|
||||||
<div class="flex flex-wrap items-baseline w-full">
|
<div class="flex flex-wrap items-baseline w-full">
|
||||||
<input class="input @error('code') border-danger @enderror" type="text" name="code" value="{{ $jenisLegalitasJaminan->code ?? '' }}">
|
<input readonly class="input border-warning bg-warning-light @error('code') border-danger bg-danger-light @enderror" type="text" name="code" value="{{ $jenisLegalitasJaminan->code ?? '' }}">
|
||||||
@error('code')
|
@error('code')
|
||||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||||
<label class="form-label max-w-56">
|
<label class="form-label max-w-56">
|
||||||
Name
|
Name
|
||||||
</label>
|
</label>
|
||||||
<div class="flex flex-wrap items-baseline w-full">
|
<div class="flex flex-wrap items-baseline w-full">
|
||||||
<input class="input @error('name') border-danger @enderror" type="text" name="name" value="{{ $jenisLegalitasJaminan->name ?? '' }}">
|
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" name="name" value="{{ $jenisLegalitasJaminan->name ?? '' }}">
|
||||||
@error('name')
|
@error('name')
|
||||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||||
@enderror
|
@enderror
|
||||||
|
Loading…
Reference in New Issue
Block a user