menerapkan generate code system di feature Jenis Fasilitas Kredit
This commit is contained in:
parent
3fc9e8fd0c
commit
1ee42703ba
@ -9,9 +9,11 @@
|
|||||||
use Modules\Lpj\Exports\JenisFasilitasKreditExport;
|
use Modules\Lpj\Exports\JenisFasilitasKreditExport;
|
||||||
use Modules\Lpj\Http\Requests\JenisFasilitasKreditRequest;
|
use Modules\Lpj\Http\Requests\JenisFasilitasKreditRequest;
|
||||||
use Modules\Lpj\Models\JenisFasilitasKredit;
|
use Modules\Lpj\Models\JenisFasilitasKredit;
|
||||||
|
use Modules\Lpj\Http\Library\LpjHelpers;
|
||||||
|
|
||||||
class JenisFasilitasKreditController extends Controller
|
class JenisFasilitasKreditController extends Controller
|
||||||
{
|
{
|
||||||
|
use LpjHelpers; // <---- Using the LpjHelpers Trait
|
||||||
public $user;
|
public $user;
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
@ -26,11 +28,18 @@
|
|||||||
if ($validate) {
|
if ($validate) {
|
||||||
try {
|
try {
|
||||||
// Save to database
|
// Save to database
|
||||||
|
// andy add
|
||||||
|
$lastNumberCodeJFK = LpjHelpers::onLastCodeJFK();
|
||||||
|
|
||||||
|
$validate['name'] =strtoupper($request->name);
|
||||||
|
$validate['code'] =$lastNumberCodeJFK;
|
||||||
|
// andy add
|
||||||
|
|
||||||
JenisFasilitasKredit::create($validate);
|
JenisFasilitasKredit::create($validate);
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('basicdata.jenis-fasilitas-kredit.index')
|
->route('basicdata.jenis-fasilitas-kredit.index')
|
||||||
->with('success', 'Jenis Fasilitas Kredit created successfully');
|
->with('success', 'Jenis Fasilitas Kredit created successfully');
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {dd($e);
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('basicdata.jenis-fasilitas-kredit.create')
|
->route('basicdata.jenis-fasilitas-kredit.create')
|
||||||
->with('error', 'Failed to create jenis fasilitas kredit');
|
->with('error', 'Failed to create jenis fasilitas kredit');
|
||||||
@ -57,11 +66,16 @@
|
|||||||
try {
|
try {
|
||||||
// Update in database
|
// Update in database
|
||||||
$jenisFasilitasKredit = JenisFasilitasKredit::find($id);
|
$jenisFasilitasKredit = JenisFasilitasKredit::find($id);
|
||||||
|
|
||||||
|
// andy add
|
||||||
|
$validate['name'] =strtoupper($request->name);
|
||||||
|
// andy add
|
||||||
|
|
||||||
$jenisFasilitasKredit->update($validate);
|
$jenisFasilitasKredit->update($validate);
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('basicdata.jenis-fasilitas-kredit.index')
|
->route('basicdata.jenis-fasilitas-kredit.index')
|
||||||
->with('success', 'Jenis Fasilitas Kredit updated successfully');
|
->with('success', 'Jenis Fasilitas Kredit updated successfully');
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {dd($e);
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('basicdata.jenis-fasilitas-kredit.edit', $id)
|
->route('basicdata.jenis-fasilitas-kredit.edit', $id)
|
||||||
->with('error', 'Failed to update jenis fasilitas kredit');
|
->with('error', 'Failed to update jenis fasilitas kredit');
|
||||||
|
27
app/Http/Library/LpjHelpers.php
Normal file
27
app/Http/Library/LpjHelpers.php
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Modules\Lpj\Http\Library;
|
||||||
|
|
||||||
|
use Modules\Lpj\Models\JenisFasilitasKredit;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
|
trait LpjHelpers
|
||||||
|
{
|
||||||
|
|
||||||
|
public static function onLastCodeJFK(): string
|
||||||
|
{
|
||||||
|
// max(code)
|
||||||
|
$noUrutAkhir2 = JenisFasilitasKredit::withTrashed()->max('code');
|
||||||
|
|
||||||
|
$noUrutAkhir=sprintf("%06s", 1);
|
||||||
|
$noUrutAwal = 'JFK';
|
||||||
|
$noUrutAkhirString = $noUrutAkhir;
|
||||||
|
if($noUrutAkhir2){
|
||||||
|
$noUrutAkhir = substr($noUrutAkhir2, 3, 6);
|
||||||
|
// $noUrutAwal = substr($noUrutAkhir2, 0, 3);
|
||||||
|
$noUrutAkhirString = sprintf("%06s", abs($noUrutAkhir + 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
return $noUrutAwal . $noUrutAkhirString;
|
||||||
|
}
|
||||||
|
}
|
@ -13,14 +13,16 @@
|
|||||||
: array
|
: array
|
||||||
{
|
{
|
||||||
$rules = [
|
$rules = [
|
||||||
'name' => 'required|max:255',
|
'name' => 'required|max:255|unique:jenis_fasilitas_kredit,name'
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($this->method() == 'PUT') {
|
if ($this->method() == 'PUT') {
|
||||||
$rules['code'] = 'required|max:50|unique:jenis_fasilitas_kredit,code,' . $this->id;
|
$rules['code'] = 'max:50|unique:jenis_fasilitas_kredit,code,' . $this->id;
|
||||||
|
$rules['name'] = 'required|unique:jenis_fasilitas_kredit,name,' . $this->id;
|
||||||
} else {
|
} else {
|
||||||
$rules['code'] = 'required|max:50|unique:jenis_fasilitas_kredit,code';
|
$rules['code'] = 'max:50|unique:jenis_fasilitas_kredit,code';
|
||||||
}
|
}
|
||||||
|
|
||||||
return $rules;
|
return $rules;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Modules\Lpj\Models\Debiture;
|
||||||
|
use Modules\Lpj\Models\Branch;
|
||||||
|
use Modules\Lpj\Models\TujuanPenilaian;
|
||||||
|
use Modules\Usermanagement\Models\User;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::create('permohonan', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('nomor_registrasi')->unique();
|
||||||
|
$table->date('tanggal_permohonan');
|
||||||
|
$table->foreignIdFor(User::class)->constrained();
|
||||||
|
$table->foreignIdFor(Branch::class)->constrained();
|
||||||
|
$table->foreignIdFor(TujuanPenilaian::class)->constrained('tujuan_penilaian')->onDelete('cascade');
|
||||||
|
$table->foreignIdFor(Debiture::class)->constrained('debitures')->onDelete('cascade');
|
||||||
|
$table->boolean('status')->default(true)->nullable();
|
||||||
|
$table->timestamps();
|
||||||
|
$table->timestamp('authorized_at')->nullable();
|
||||||
|
$table->char('authorized_status', 1)->nullable();
|
||||||
|
$table->softDeletes();
|
||||||
|
|
||||||
|
$table->unsignedBigInteger('created_by')->nullable();
|
||||||
|
$table->unsignedBigInteger('updated_by')->nullable();
|
||||||
|
$table->unsignedBigInteger('deleted_by')->nullable();
|
||||||
|
$table->unsignedBigInteger('authorized_by')->nullable();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('permohonan');
|
||||||
|
}
|
||||||
|
};
|
@ -1,3 +1,7 @@
|
|||||||
|
@php
|
||||||
|
$route = explode('.', Route::currentRouteName());
|
||||||
|
@endphp
|
||||||
|
|
||||||
@extends('layouts.main')
|
@extends('layouts.main')
|
||||||
|
|
||||||
@section('breadcrumbs')
|
@section('breadcrumbs')
|
||||||
@ -28,11 +32,8 @@
|
|||||||
<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 id="{{$route[1]}}_code" class="flex flex-wrap items-baseline w-full">
|
||||||
<input class="input @error('code') border-danger @enderror" type="text" name="code" value="{{ $jenisFasilitasKredit->code ?? '' }}">
|
{{ $jenisFasilitasKredit->code ?? '-' }}
|
||||||
@error('code')
|
|
||||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
|
||||||
@enderror
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<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">
|
||||||
|
Loading…
Reference in New Issue
Block a user