Merge branch 'staging' into feature/senior-officer
This commit is contained in:
8
resources/views/SLA/index.blade.php
Normal file
8
resources/views/SLA/index.blade.php
Normal file
@@ -0,0 +1,8 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('sla') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
@endsection
|
||||
@@ -1,4 +1,45 @@
|
||||
<script>
|
||||
<style>
|
||||
.notification_success {
|
||||
position: fixed;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
background-color: #51a351;
|
||||
color: white;
|
||||
padding: 15px;
|
||||
border-radius: 5px;
|
||||
z-index: 1000;
|
||||
transition: opacity 0.5s;
|
||||
box-shadow: 0 0 12px #000;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.notification_error {
|
||||
position: fixed;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
background-color: #AE342C;
|
||||
color: white;
|
||||
padding: 15px;
|
||||
border-radius: 5px;
|
||||
z-index: 1000;
|
||||
transition: opacity 0.5s;
|
||||
box-shadow: 0 0 12px #000;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
<div id="notificationSuccess" class="notification_success" style="display: none;">
|
||||
<div style="display: flex; align-items: center;">
|
||||
<img style="margin-right: 10px;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==">
|
||||
<span id="notification-message-success"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="notificationError" class="notification_error" style="display: none;">
|
||||
<div style="display: flex; align-items: center;">
|
||||
<img style="margin-right: 10px;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=">
|
||||
<span id="notification-message-error"></span>
|
||||
</div>
|
||||
</div>
|
||||
<script tipe="module">
|
||||
function removeErrorCssMsg() {
|
||||
$(".inputku").removeClass("border-danger");
|
||||
$("em").text('');
|
||||
@@ -99,4 +140,56 @@ function numbersonly(ini, e){
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function toastrku(flag, message)
|
||||
{
|
||||
$.each(message, function (key, value) {
|
||||
var msg = '';
|
||||
var lengthnya = value.length;
|
||||
for (let i = 0; i < lengthnya; i++)
|
||||
{
|
||||
if(0!=i && (lengthnya-1)==i)
|
||||
msg+=", ";
|
||||
|
||||
msg+=value[i];
|
||||
|
||||
}
|
||||
if('success'==flag)
|
||||
toastrSuccessBuild(msg);
|
||||
else if('error' ==flag)
|
||||
toastrErrorBuild(msg);
|
||||
});
|
||||
}
|
||||
|
||||
function toastrSuccessBuild(message) {
|
||||
const notification = document.getElementById('notificationSuccess');
|
||||
const messageElement = document.getElementById('notification-message-success');
|
||||
|
||||
messageElement.textContent = message;
|
||||
notification.style.display = 'block';
|
||||
notification.style.opacity = '1';
|
||||
|
||||
setTimeout(() => {
|
||||
notification.style.opacity = '0';
|
||||
setTimeout(() => {
|
||||
notification.style.display = 'none';
|
||||
}, 500);
|
||||
}, 3000);
|
||||
}
|
||||
|
||||
function toastrErrorBuild(message) {
|
||||
const notification = document.getElementById('notificationError');
|
||||
const messageElement = document.getElementById('notification-message-error');
|
||||
|
||||
messageElement.textContent = message;
|
||||
notification.style.display = 'block';
|
||||
notification.style.opacity = '1';
|
||||
|
||||
setTimeout(() => {
|
||||
notification.style.opacity = '0';
|
||||
setTimeout(() => {
|
||||
notification.style.display = 'none';
|
||||
}, 500);
|
||||
}, 3000);
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
@if(isset($branch->id))
|
||||
<form action="{{ route('basicdata.branch.update', $branch->id) }}" method="POST">
|
||||
<input type="hidden" name="id" value="{{ $branch->id }}">
|
||||
@method('PUT')
|
||||
@else
|
||||
<form method="POST" action="{{ route('basicdata.branch.store') }}">
|
||||
@endif
|
||||
@csrf
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
{{ isset($branch->id) ? 'Edit' : 'Tambah' }} Branch
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('basicdata.branch.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('code') border-danger bg-danger-light @enderror" type="text" name="code" value="{{ $branch->code ?? '' }}">
|
||||
@error('code')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" name="name" value="{{ $branch->name ?? '' }}">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
101
resources/views/component/detail-jaminan.blade.php
Normal file
101
resources/views/component/detail-jaminan.blade.php
Normal file
@@ -0,0 +1,101 @@
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Data Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div data-accordion="true">
|
||||
@foreach($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200" data-accordion-item="true" id="accordion_detail_jaminan">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_detail_jaminan_{{ $loop->index }}">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
<i class="ki-outline ki-plus text-gray-600 text-2sm accordion-active:hidden block">
|
||||
</i>
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
|
||||
<div class="accordion-content hidden" id="accordion_detail_jaminan_{{ $loop->index }}">
|
||||
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->jenisJaminan->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->hubungan_pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->address ?? ""}},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? "" }}, {{ $dokumen->pemilik->district->name ?? "" }}, {{ $dokumen->pemilik->city->name ?? "" }}, {{ $dokumen->pemilik->province->name ?? "" }} - {{ $dokumen->pemilik->village->postal_code ?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<a href="{{ route('debitur.jaminan.bulk.download',['id' => $permohonan->debiture->id,'jaminan' => $dokumen->id]) }}" class="ml-6 btn btn-dark dark:btn-light">
|
||||
<i class="ki-outline ki-cloud-download"></i> Download Semua Dokumen
|
||||
</a>
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
@foreach($dokumen->detail as $detail)
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal max-w-[100px]">
|
||||
{{ $loop->index + 1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $detail->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Dokumen Jaminan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
@if(isset($detail->dokumen_jaminan))
|
||||
@if(in_array(Auth::user()->roles[0]->name,['administrator','pemohon-eo']))
|
||||
<a href="{{ route('debitur.jaminan.download',['id'=>$permohonan->debiture->id,'dokumen'=>$detail->id]) }}" class="badge badge-sm badge-outline mt-2 badge-info"><i class="ki-filled ki-cloud-download mr-2"></i> Download</a>
|
||||
) @endif
|
||||
<span class="badge badge-sm badge-outline badge-warning mt-2" onclick="viewPDF('{{ Storage::url($detail->dokumen_jaminan) }}')"><i class="ki-filled ki-eye mr-2"></i>Preview</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Keterangan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $detail->keterangan ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@include('lpj::component.pdfviewer')
|
||||
25
resources/views/component/pdfviewer.blade.php
Normal file
25
resources/views/component/pdfviewer.blade.php
Normal file
@@ -0,0 +1,25 @@
|
||||
<!-- Modal for PDF viewing -->
|
||||
<div id="pdfModal" class="fixed inset-0 bg-gray-800 bg-opacity-75 flex items-center justify-center hidden w-full">
|
||||
<div class="bg-white rounded-lg overflow-hidden shadow-xl transform transition-all min-w-3xl w-[1500px] h-[1200px]">
|
||||
<div class="p-4 h-full">
|
||||
<button onclick="closePDFModal()" class="float-right text-2xl">
|
||||
<i class="ki-filled ki-cross-square text-red-600"></i>
|
||||
</button>
|
||||
<div id="pdfViewer" class="h-full"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@push('scripts')
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfobject/2.3.0/pdfobject.min.js"></script>
|
||||
<script>
|
||||
function viewPDF(url) {
|
||||
PDFObject.embed(url, "#pdfViewer");
|
||||
document.getElementById('pdfModal').classList.remove('hidden');
|
||||
}
|
||||
|
||||
function closePDFModal() {
|
||||
document.getElementById('pdfModal').classList.add('hidden');
|
||||
}
|
||||
</script>
|
||||
@endpush
|
||||
@@ -1,69 +0,0 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
@if(isset($currency->id))
|
||||
<form action="{{ route('basicdata.currency.update', $currency->id) }}" method="POST">
|
||||
<input type="hidden" name="id" value="{{ $currency->id }}">
|
||||
@method('PUT')
|
||||
@else
|
||||
<form method="POST" action="{{ route('basicdata.currency.store') }}">
|
||||
@endif
|
||||
@csrf
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
{{ isset($currency->id) ? 'Edit' : 'Tambah' }} Currency
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('basicdata.currency.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('code') border-danger bg-danger-light @enderror" type="text" name="code" value="{{ $currency->code ?? '' }}">
|
||||
@error('code')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" name="name" value="{{ $currency->name ?? '' }}">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Decimal Places
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('decimal_places') border-danger bg-danger-light @enderror" type="number" min="0" max="3" name="decimal_places" value="{{ $currency->decimal_places ?? '' }}">
|
||||
@error('decimal_places')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -22,9 +22,10 @@
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="input-group w-full">
|
||||
<select class="input tomselect w-full @error('branch_id') border-danger bg-danger-light @enderror" name="pemilik_jaminan_id" id="pemilik_jaminan_id">
|
||||
<select onchange="changePemilikJaminan()" class="input tomselect w-full @error('branch_id') border-danger bg-danger-light @enderror" name="pemilik_jaminan_id" id="pemilik_jaminan_id">
|
||||
<option value="">Pilih Pemilik Jaminan</option>
|
||||
<option value="0">Sama Dengan Debitur</option>
|
||||
<option value="00">Tidak Sama Dengan Debitur</option>
|
||||
@if(isset($pemilikJaminan))
|
||||
@foreach($pemilikJaminan as $pemilik)
|
||||
@if(isset($document))
|
||||
@@ -39,19 +40,71 @@
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
@if(isset($document->id))
|
||||
<a href="{{ route('debitur.pemilik.create',$debitur->id) }}?from=update-document&document={{ $document->id }}" class="btn btn-light">
|
||||
<i class="ki-outline ki-plus-squared"></i> Tambah Pemilik Jaminan
|
||||
</a>
|
||||
@else
|
||||
<a href="{{ route('debitur.pemilik.create',$debitur->id) }}?from=create-document" class="btn btn-light">
|
||||
<i class="ki-outline ki-plus-squared"></i> Tambah Pemilik Jaminan
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
@error('pemilik_jaminan_id')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
<fieldset id="pemilik_jaminan" class="hidden border border-solid border-gray-300 p-3 w-full mt-5 grid gap-5">
|
||||
<legend class="text-sm">Pemilik Jaminan</legend>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Hubungan Pemilik Jaminan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<select class="input tomselect w-full @error('branch_id') border-danger bg-danger-light @enderror" name="hubungan_pemilik_jaminan_id" id="hubungan_pemilik_jaminan_id">
|
||||
<option value="">Pilih Hubungan Pemilik Jaminan</option>
|
||||
@if(isset($hubunganPemilik))
|
||||
@foreach($hubunganPemilik as $hubungan)
|
||||
@if(isset($pemilik))
|
||||
<option value="{{ $hubungan->id }}" {{ isset($pemilik->hubungan_pemilik_jaminan_id) && $pemilik->hubungan_pemilik_jaminan_id == $hubungan->id?'selected' : '' }}>
|
||||
{{ $hubungan->name }}
|
||||
</option>
|
||||
@else
|
||||
<option value="{{ $hubungan->id }}">
|
||||
{{ $hubungan->name }}
|
||||
</option>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
@error('hubungan_pemilik_jaminan_id')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Nama Lengkap
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('pemilik_name') border-danger bg-danger-light @enderror" type="text " id="pemilik_name" name="pemilik_name" value="{{ $pemilik->name ?? '' }}" placeholder="Nama Pemilik Jaminan">
|
||||
@error('pemilik_name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_id') border-danger bg-danger-light @enderror" type="number" name="nomor_id" value="{{ $debitur->nomor_id ?? '' }}" placeholder="Nomor ID/KTP">
|
||||
@error('nomor_id')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="nama_sertifikat">
|
||||
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<button type="button" id="tambah_sertifikat" class="btn btn-primary btn-xs">Tambah Nama di Sertifikat</button>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
@@ -112,6 +165,18 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if($detail->details)
|
||||
@php $custom_field = json_decode($detail->details,true) @endphp
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56 capitalize">
|
||||
{{ str_replace('_',' ',$detail->jenisLegalitasJaminan->custom_field) }}
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="text" name="custom_field[][$detail->jenisLegalitasJaminan->custom_field]" value="{{ $custom_field[$detail->jenisLegalitasJaminan->custom_field] }}">
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Keterangan
|
||||
@@ -244,14 +309,69 @@
|
||||
</form>
|
||||
|
||||
@push('scripts')
|
||||
{{--Pemilik Jaminan--}}
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
const namaSertifikatDiv = document.getElementById("nama_sertifikat");
|
||||
|
||||
// Function to add delete event listeners to existing buttons
|
||||
function addDeleteListeners() {
|
||||
document.querySelectorAll(".delete-button").forEach(button => {
|
||||
button.addEventListener("click", function() {
|
||||
this.closest(".flex.items-baseline.flex-wrap.lg\\:flex-nowrap.gap-2\\.5.mb-5").remove();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Add delete listeners to existing buttons
|
||||
addDeleteListeners();
|
||||
|
||||
document.getElementById("tambah_sertifikat").addEventListener("click", function() {
|
||||
const newDiv = document.createElement("div");
|
||||
newDiv.className = "flex items-baseline flex-wrap lg:flex-nowrap gap-2.5 mb-5";
|
||||
newDiv.innerHTML = `
|
||||
<label class="form-label max-w-56">
|
||||
Nama Lengkap
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="text" name="detail_sertifikat[name][]" value="" placeholder="Nama Pemilik Jaminan">
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="number" name="detail_sertifikat[nomor_id][]" value="" placeholder="Nomor ID/KTP">
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
namaSertifikatDiv.appendChild(newDiv);
|
||||
|
||||
// Add delete listener to the new button
|
||||
addDeleteListeners();
|
||||
});
|
||||
});
|
||||
|
||||
function changePemilikJaminan() {
|
||||
var pemilikJaminan = document.getElementById("pemilik_jaminan_id").value;
|
||||
var fieldsetPemilikJaminan = document.getElementById("pemilik_jaminan");
|
||||
if (pemilikJaminan === "00") {
|
||||
fieldsetPemilikJaminan.classList.remove("hidden");
|
||||
} else {
|
||||
fieldsetPemilikJaminan.classList.add("hidden");
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
{{--Legalitas Jaminan--}}
|
||||
<script>
|
||||
function getLegalitasJaminan() {
|
||||
var legalitasJaminan = document.getElementById('jenis_jaminan_id').value;
|
||||
var url = '/basic-data/jenis-jaminan/legalitas/' + legalitasJaminan;
|
||||
var legalitasJaminan = document.getElementById("jenis_jaminan_id").value;
|
||||
var url = "/basic-data/jenis-jaminan/legalitas/" + legalitasJaminan;
|
||||
fetch(url, {
|
||||
method: 'GET',
|
||||
method: "GET",
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
"Content-Type": "application/json"
|
||||
}
|
||||
})
|
||||
.then(response => {
|
||||
@@ -261,9 +381,8 @@
|
||||
return response.json();
|
||||
})
|
||||
.then(data => {
|
||||
console.log(data);
|
||||
var doctainer = document.getElementById('doctainer');
|
||||
doctainer.innerHTML = '';
|
||||
var doctainer = document.getElementById("doctainer");
|
||||
doctainer.innerHTML = "";
|
||||
data.forEach((item, index) => {
|
||||
doctainer.innerHTML += `
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
@@ -291,6 +410,27 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
${item.custom_field && item.custom_field.length > 0 ? `
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56 capitalize">
|
||||
${item.custom_field.replace(/_/g, " ")}
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
${item.custom_field_type === "text" ? `
|
||||
<input class="input" type="text" name="custom_field[][${item.custom_field}]">
|
||||
` : item.custom_field_type === "number" ? `
|
||||
<input class="input" type="number" name="custom_field[][${item.custom_field}]">
|
||||
` : item.custom_field_type === "date" ? `
|
||||
<input class="input" type="date" name="custom_field[][${item.custom_field}]">
|
||||
` : item.custom_field_type === "textarea" ? `
|
||||
<textarea class="textarea" rows="3" name="custom_field[][${item.custom_field}]"></textarea>
|
||||
` : `
|
||||
<input class="input" type="text" name="custom_field[][${item.custom_field}]">
|
||||
`}
|
||||
</div>
|
||||
</div>
|
||||
` : ""}
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Keterangan
|
||||
@@ -299,10 +439,10 @@
|
||||
<textarea class="textarea" rows="3" type="number" name="keterangan[]"></textarea>
|
||||
</div>
|
||||
</div>`;
|
||||
})
|
||||
});
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error:', error);
|
||||
console.error("Error:", error);
|
||||
// Handle the error here
|
||||
});
|
||||
}
|
||||
|
||||
@@ -23,6 +23,11 @@
|
||||
</div>
|
||||
<div class="menu inline-flex" data-menu="true">
|
||||
<div class="flex flex-nowrap justify-center gap-1.5">
|
||||
@if(in_array(Auth::user()->roles[0]->name,['administrator','pemohon-eo']))
|
||||
<a href="{{ route('debitur.jaminan.bulk.download',['id' => $debitur->id,'jaminan' => $document->id]) }}" class="btn btn-sm btn-icon btn-dark">
|
||||
<i class="ki-outline ki-cloud-download"></i>
|
||||
</a>
|
||||
@endif
|
||||
<a href="{{ route('debitur.jaminan.edit',['id' => $debitur->id,'jaminan' => $document->id]) }}" class="btn btn-sm btn-icon btn-outline btn-info">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
@@ -65,7 +70,12 @@
|
||||
<span class="text-2xs text-gray-600 uppercase">
|
||||
{{ $loop->index+1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</span>
|
||||
<a href="{{ route('debitur.jaminan.download',['id'=>$debitur->id, 'dokumen'=>$detail->id]) }}" class="badge badge-sm badge-outline">{{ basename($detail->dokumen_jaminan) }} <i class="ki-filled ki-cloud-download"></i></a>
|
||||
<div>
|
||||
@if(in_array(Auth::user()->roles[0]->name,['administrator','pemohon-eo']))
|
||||
<a href="{{ route('debitur.jaminan.download',['id'=>$debitur->id,'dokumen'=>$detail->id]) }}" class="badge badge-sm badge-outline mt-2 badge-info"><i class="ki-filled ki-cloud-download mr-2"></i> Download</a>
|
||||
@endif
|
||||
<span class="badge badge-sm badge-outline badge-warning mt-2" onclick="viewPDF('{{ Storage::url($detail->dokumen_jaminan) }}')"><i class="ki-filled ki-eye mr-2"></i>Preview</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="border-t border-gray-300 border-dashed">
|
||||
</div>
|
||||
@@ -126,6 +136,7 @@
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@include('lpj::component.pdfviewer')
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/javascript">
|
||||
|
||||
@@ -10,51 +10,83 @@
|
||||
<form action="{{ route('basicdata.jenis-legalitas-jaminan.update', $jenisLegalitasJaminan->id) }}" method="POST">
|
||||
<input type="hidden" name="id" value="{{ $jenisLegalitasJaminan->id }}">
|
||||
@method('PUT')
|
||||
@else
|
||||
<form method="POST" action="{{ route('basicdata.jenis-legalitas-jaminan.store') }}">
|
||||
@endif
|
||||
@csrf
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
{{ isset($jenisLegalitasJaminan->id) ? 'Edit' : 'Tambah' }} Jenis Legalitas Jaminan
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('basicdata.jenis-legalitas-jaminan.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
@if(isset($jenisLegalitasJaminan->id))
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<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')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" name="name" value="{{ $jenisLegalitasJaminan->name ?? '' }}">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@else
|
||||
<form method="POST" action="{{ route('basicdata.jenis-legalitas-jaminan.store') }}">
|
||||
@endif
|
||||
@csrf
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
{{ isset($jenisLegalitasJaminan->id) ? 'Edit' : 'Tambah' }} Jenis Legalitas Jaminan
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('basicdata.jenis-legalitas-jaminan.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
@if(isset($jenisLegalitasJaminan->id))
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<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')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" name="name" value="{{ $jenisLegalitasJaminan->name ?? '' }}">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Tambahkan inputan custom_field -->
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Custom Field
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('custom_field') border-danger bg-danger-light @enderror" type="text" name="custom_field" value="{{ $jenisLegalitasJaminan->custom_field ?? '' }}">
|
||||
@error('custom_field')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Tambahkan inputan custom_field_type -->
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Custom Field Type
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<select class="input tomselect @error('custom_field_type') border-danger bg-danger-light @enderror" name="custom_field_type">
|
||||
<option value="">Pilih Tipe</option>
|
||||
<option value="text" {{ (isset($jenisLegalitasJaminan) && $jenisLegalitasJaminan->custom_field_type == 'text') ? 'selected' : '' }}>Text</option>
|
||||
<option value="number" {{ (isset($jenisLegalitasJaminan) && $jenisLegalitasJaminan->custom_field_type == 'number') ? 'selected' : '' }}>Number</option>
|
||||
<option value="date" {{ (isset($jenisLegalitasJaminan) && $jenisLegalitasJaminan->custom_field_type == 'date') ? 'selected' : '' }}>Date</option>
|
||||
</select>
|
||||
@error('custom_field_type')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@@ -80,28 +80,8 @@
|
||||
</div>
|
||||
<label class="form-label max-w-56">Nomor Ijin Usaha</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<select id="nomor_ijin_usaha"
|
||||
class="select w-full @error('nomor_ijin_usaha') border-danger @enderror"
|
||||
name="nomor_ijin_usaha">
|
||||
<option value="">Pilih Nomor Ijin Usaha</option>
|
||||
@if (isset($ijin_usaha))
|
||||
@if (isset($kjpp))
|
||||
@foreach ($ijin_usaha as $branches)
|
||||
<option value="{{ $branches->code }}"
|
||||
{{ old('nomor_ijin_usaha', $kjpp->nomor_ijin_usaha) == $branches->code ? 'selected' : '' }}>
|
||||
{{ $branches->code }}
|
||||
</option>
|
||||
@endforeach
|
||||
@else
|
||||
@foreach ($ijin_usaha as $branches)
|
||||
<option value="{{ $branches->code }}"
|
||||
{{ old('nomor_ijin_usaha') == $branches->code ? 'selected' : '' }}>
|
||||
{{ $branches->code }}
|
||||
</option>
|
||||
@endforeach
|
||||
@endif
|
||||
@endif
|
||||
</select>
|
||||
<input class="input @error('nomor_ijin_usaha') border-danger @enderror" type="text"
|
||||
name="nomor_ijin_usaha" value="{{ $kjpp->nomor_ijin_usaha ?? old('nomor_ijin_usaha') }}">
|
||||
@error('nomor_ijin_usaha')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
|
||||
487
resources/views/laporan/sederhana_index.blade.php
Normal file
487
resources/views/laporan/sederhana_index.blade.php
Normal file
@@ -0,0 +1,487 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('laporan.sederhana.index') }}
|
||||
@endsection
|
||||
|
||||
|
||||
@section('content')
|
||||
<style>
|
||||
.input-group {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.left-group {
|
||||
padding-right: 2.5rem;
|
||||
}
|
||||
|
||||
.right-group {
|
||||
padding-left: 2.5rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
pointer-events: none;
|
||||
color: #6b7280;
|
||||
}
|
||||
|
||||
.input-group .input-unit.left {
|
||||
left: 0.75rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit.right {
|
||||
right: 0.75rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" id="debitur-table">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<form action="" method="POST" class="grid gap-5">
|
||||
<input type="hidden" name="id" value="">
|
||||
@csrf
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
CADEB AN
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cadeb') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cadeb" value="">
|
||||
@error('cadeb')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Jenis Aset
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('aset') border-danger bg-danger-light @enderror"
|
||||
type="text" name="aset" value="">
|
||||
@error('aset')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Fasilitas Kredit
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('kredit') border-danger bg-danger-light @enderror"
|
||||
type="text" name="kredit" value="">
|
||||
@error('kredit')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Alamat Objek
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('alamat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="alamat" value="">
|
||||
@error('alamat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Cabang Pemohon
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cabang') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cabang" value="">
|
||||
@error('cabang')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
AO
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('ao') border-danger bg-danger-light @enderror" type="text"
|
||||
name="ao" value="">
|
||||
@error('ao')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Surveyor
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('surveyor') border-danger bg-danger-light @enderror"
|
||||
type="text" name="surveyor" value="">
|
||||
@error('surveyor')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Penilai
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('penilai') border-danger bg-danger-light @enderror"
|
||||
type="text" name="penilai" value="">
|
||||
@error('penilai')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Survey
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_survey') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_survey" value="">
|
||||
@error('tanggal_survey')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Nomor Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_resume') border-danger bg-danger-light @enderror"
|
||||
type="number" name="nomor_resume" value="">
|
||||
@error('nomor_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Tanggal Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_resume') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_resume" value="">
|
||||
@error('tanggal_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Positif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_positif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_positif" name="faktor_positif"></textarea>
|
||||
@error('faktor_positif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Negatif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_negatif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_negatif" name="faktor_negatif"></textarea>
|
||||
@error('faktor_negatif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Kesimpulan Nilai Pasar</label>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai Fisik
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai IMB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Asumsi nilai terpotong jalan/GSB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Catatan perlu diperhatikan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('catatan') border-danger bg-danger-light @enderror" rows="3" type="number"
|
||||
id="catatan" name="catatan"></textarea>
|
||||
@error('catatan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
DISCLAIMER
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<ol>
|
||||
<li>Laporan Resume ini dikeluarkan dikarenakan belum dilakukannya pembayaran biaya
|
||||
penilaian jaminan</li>
|
||||
<li>Laporan Resume ini tidak bisa dijadikan sebagai dasar pengajuan dan atau pencairan
|
||||
kredit, laporan yang digunakan tetap wajib berupa Laporan Penilaian Jaminan (LPJ)
|
||||
</li>
|
||||
<li>Detail per meter tanah dan bangunan, sarana pelengkap dll akan tercatat di Laporan
|
||||
Penilaian Jaminan (LPJ) nanti</li>
|
||||
<li>Laporan Resume ini hanya digunakan untuk kepentingan internal bagi</li>
|
||||
<li>Laporan resume ini hanya berlaku <span class="text-red-500">14 hari</span> kerja
|
||||
terhitung dari tanggal resume ini dibuat sesuai aturan yang berlaku, apabila lewat
|
||||
maka harus dilakukan order ulang sesuai prosedur yang berlaku</li>
|
||||
<li>Apabila sudah melewati 6 bulan, maka harus penilaian ulang kembali</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Salam,</label>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
PENILAI
|
||||
</label>
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
SENIOR OFICER
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- <form method="POST" action="">
|
||||
<div class="card pb-2.5">
|
||||
<input type="hidden" name="action" value="">
|
||||
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('code') border-danger bg-danger-light @enderror" type="text"
|
||||
name="code" value="">
|
||||
@error('code')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text"
|
||||
name="name" value="">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form> --}}
|
||||
</div>
|
||||
@endsection
|
||||
486
resources/views/laporan/standard_index.blade.php
Normal file
486
resources/views/laporan/standard_index.blade.php
Normal file
@@ -0,0 +1,486 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('laporan.standard.index') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<style>
|
||||
.input-group {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.left-group {
|
||||
padding-right: 2.5rem;
|
||||
}
|
||||
|
||||
.right-group {
|
||||
padding-left: 2.5rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
pointer-events: none;
|
||||
color: #6b7280;
|
||||
}
|
||||
|
||||
.input-group .input-unit.left {
|
||||
left: 0.75rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit.right {
|
||||
right: 0.75rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" id="debitur-table">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<form action="" method="POST" class="grid gap-5">
|
||||
<input type="hidden" name="id" value="">
|
||||
@csrf
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
CADEB AN
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cadeb') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cadeb" value="">
|
||||
@error('cadeb')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Jenis Aset
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('aset') border-danger bg-danger-light @enderror"
|
||||
type="text" name="aset" value="">
|
||||
@error('aset')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Fasilitas Kredit
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('kredit') border-danger bg-danger-light @enderror"
|
||||
type="text" name="kredit" value="">
|
||||
@error('kredit')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Alamat Objek
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('alamat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="alamat" value="">
|
||||
@error('alamat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Cabang Pemohon
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cabang') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cabang" value="">
|
||||
@error('cabang')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
AO
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('ao') border-danger bg-danger-light @enderror" type="text"
|
||||
name="ao" value="">
|
||||
@error('ao')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Surveyor
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('surveyor') border-danger bg-danger-light @enderror"
|
||||
type="text" name="surveyor" value="">
|
||||
@error('surveyor')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Penilai
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('penilai') border-danger bg-danger-light @enderror"
|
||||
type="text" name="penilai" value="">
|
||||
@error('penilai')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Survey
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_survey') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_survey" value="">
|
||||
@error('tanggal_survey')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Nomor Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_resume') border-danger bg-danger-light @enderror"
|
||||
type="number" name="nomor_resume" value="">
|
||||
@error('nomor_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Tanggal Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_resume') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_resume" value="">
|
||||
@error('tanggal_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Positif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_positif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_positif" name="faktor_positif"></textarea>
|
||||
@error('faktor_positif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Negatif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_negatif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_negatif" name="faktor_negatif"></textarea>
|
||||
@error('faktor_negatif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Kesimpulan Nilai Pasar</label>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai Fisik
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai IMB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Asumsi nilai terpotong jalan/GSB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Catatan perlu diperhatikan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('catatan') border-danger bg-danger-light @enderror" rows="3" type="number"
|
||||
id="catatan" name="catatan"></textarea>
|
||||
@error('catatan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
DISCLAIMER
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<ol>
|
||||
<li>Laporan Resume ini dikeluarkan dikarenakan belum dilakukannya pembayaran biaya
|
||||
penilaian jaminan</li>
|
||||
<li>Laporan Resume ini tidak bisa dijadikan sebagai dasar pengajuan dan atau pencairan
|
||||
kredit, laporan yang digunakan tetap wajib berupa Laporan Penilaian Jaminan (LPJ)
|
||||
</li>
|
||||
<li>Detail per meter tanah dan bangunan, sarana pelengkap dll akan tercatat di Laporan
|
||||
Penilaian Jaminan (LPJ) nanti</li>
|
||||
<li>Laporan Resume ini hanya digunakan untuk kepentingan internal bagi</li>
|
||||
<li>Laporan resume ini hanya berlaku <span class="text-red-500">14 hari</span> kerja
|
||||
terhitung dari tanggal resume ini dibuat sesuai aturan yang berlaku, apabila lewat
|
||||
maka harus dilakukan order ulang sesuai prosedur yang berlaku</li>
|
||||
<li>Apabila sudah melewati 6 bulan, maka harus penilaian ulang kembali</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Salam,</label>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
PENILAI
|
||||
</label>
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
SENIOR OFICER
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- <form method="POST" action="">
|
||||
<div class="card pb-2.5">
|
||||
<input type="hidden" name="action" value="">
|
||||
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('code') border-danger bg-danger-light @enderror" type="text"
|
||||
name="code" value="">
|
||||
@error('code')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text"
|
||||
name="name" value="">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form> --}}
|
||||
</div>
|
||||
@endsection
|
||||
121
resources/views/otorisasipenawaran/edit.blade.php
Normal file
121
resources/views/otorisasipenawaran/edit.blade.php
Normal file
@@ -0,0 +1,121 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
// $route = Route::currentRouteName();
|
||||
// dd($route);
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<input type="hidden" id="id" name="id" value="{{ $id }}">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Tambah Data Otorisasi Penawaran
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('otorisasitender.penawaran.show', $id) }}" class="btn btn-xs btn-primary" title="Detail"><i class="ki-filled ki-abstract-26"></i> Detail</a>
|
||||
<a href="{{ route('otorisasitender.penawaran.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textReg">
|
||||
No. registrasi
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Kode Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textCodePenawaran">
|
||||
Kode Penawaran
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Status Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textStatusPenawaran">
|
||||
Status
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<!-- datatables -->
|
||||
<div class="grid">
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">Data KJPP</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto">
|
||||
<table class="table table-border align-middle text-gray-700 font-medium text-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14 text-center">No</th>
|
||||
<th class="min-w-[250px]">KJPP</th>
|
||||
<th>Biaya Penawaran</th>
|
||||
<th>Dokumen Penawaran</th>
|
||||
<th class="min-w-[50px] text-center">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="tbodyKJPP1">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- datatables -->
|
||||
<div class="flex justify-end">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<!-- datatables -->
|
||||
<div class="grid">
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">Data KJPP Sebelumnya</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto">
|
||||
<table class="table table-border align-middle text-gray-700 font-medium text-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14 text-center">No</th>
|
||||
<th class="min-w-[250px]">KJPP</th>
|
||||
<th>Biaya Penawaran</th>
|
||||
<th>Dokumen Penawaran</th>
|
||||
<th>created_at</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="tbodyKJPPLog">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- datatables -->
|
||||
<div class="flex justify-end">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@include('lpj::otorisasipenawaran.js.editjs')
|
||||
@@ -1,26 +1,25 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('basicdata.currency') }}
|
||||
{{ Breadcrumbs::render('otorisasitender.penawaran') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="currency-table" data-api-url="{{ route('basicdata.currency.datatables') }}">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="otorisasipenawaran-table" data-api-url="{{ route('otorisasitender.penawaran.datatables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
Daftar Mata Uang
|
||||
Daftar Otorisasi Penawaran
|
||||
</h3>
|
||||
<div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Currency" id="search" type="text" value="">
|
||||
<input placeholder="Search Otorisasi penawaran" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<a class="btn btn-sm btn-light" href="{{ route('basicdata.currency.export') }}"> Export to Excel </a>
|
||||
<a class="btn btn-sm btn-primary" href="{{ route('basicdata.currency.create') }}"> Tambah Mata Uang </a>
|
||||
<a class="btn btn-sm btn-light" href="#"> Export to Excel </a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -32,16 +31,28 @@
|
||||
<th class="w-14">
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox"/>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Code </span>
|
||||
<th class="min-w-[150px]" data-datatable-column="nomor_registrasi">
|
||||
<span class="sort"> <span class="sort-label"> Nomor Registrasi </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="name">
|
||||
<span class="sort"> <span class="sort-label"> Mata Uang </span>
|
||||
<th class="min-w-[150px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Kode Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px]" data-datatable-column="decimal_places">
|
||||
<span class="sort"> <span class="sort-label"> Decimal Places </span>
|
||||
<th class="min-w-[150px]" data-datatable-column="start_date">
|
||||
<span class="sort"> <span class="sort-label"> Tanggal Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_kjpp_id">
|
||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="penawarandetails_count">
|
||||
<span class="sort"> <span class="sort-label"> Total KJPP </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="status">
|
||||
<span class="sort"> <span class="sort-label"> Status </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
@@ -67,39 +78,14 @@
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/javascript">
|
||||
function deleteData(data) {
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert this!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
$.ajaxSetup({
|
||||
headers: {
|
||||
'X-CSRF-TOKEN': '{{ csrf_token() }}'
|
||||
}
|
||||
});
|
||||
|
||||
$.ajax(`basic-data/mata-uang/${data}`, {
|
||||
type: 'DELETE'
|
||||
}).then((response) => {
|
||||
swal.fire('Deleted!', 'User has been deleted.', 'success').then(() => {
|
||||
window.location.reload();
|
||||
});
|
||||
}).catch((error) => {
|
||||
console.error('Error:', error);
|
||||
Swal.fire('Error!', 'An error occurred while deleting the file.', 'error');
|
||||
});
|
||||
}
|
||||
})
|
||||
function showOtorisasiPenawaranData(regId)
|
||||
{
|
||||
var url = "{{ url('otorisasitender/penawaran') }}/"+regId;
|
||||
$(location).attr('href',url);
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#currency-table');
|
||||
const element = document.querySelector('#otorisasipenawaran-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
@@ -117,24 +103,36 @@
|
||||
return checkbox.outerHTML.trim();
|
||||
},
|
||||
},
|
||||
'nomor_registrasi': {
|
||||
title: 'Nomor Registrasi',
|
||||
},
|
||||
code: {
|
||||
title: 'Code',
|
||||
title: 'Kode Penawaran',
|
||||
},
|
||||
name: {
|
||||
title: 'Mata Uang',
|
||||
date_range: {
|
||||
title: 'Tanggal Penawaran',
|
||||
},
|
||||
decimal_places: {
|
||||
title: 'Decimal Places',
|
||||
tujuan_penilaian_kjpp_name: {
|
||||
title: 'Tujuan Penilaian',
|
||||
},
|
||||
penawarandetails_count: {
|
||||
title: 'Total KJPP',
|
||||
createdCell(cell) {
|
||||
cell.classList.add('text-center');
|
||||
},
|
||||
},
|
||||
status: {
|
||||
title: 'Status'
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `<div class="flex flex-nowrap justify-center">
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" href="basic-data/mata-uang/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
<a onclick="showOtorisasiPenawaranData(${data.id})" class="btn btn-sm btn-icon btn-clear btn-primary" title="Detail">
|
||||
<i class="ki-outline ki-eye"></i>
|
||||
</a>
|
||||
<a onclick="deleteData(${data.id})" class="delete btn btn-sm btn-icon btn-clear btn-danger">
|
||||
<i class="ki-outline ki-trash"></i>
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" title="Proses Penawaran" href="otorisasitender/penawaran/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
},
|
||||
@@ -151,4 +149,3 @@
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
94
resources/views/otorisasipenawaran/js/editextjs.blade.php
Normal file
94
resources/views/otorisasipenawaran/js/editextjs.blade.php
Normal file
@@ -0,0 +1,94 @@
|
||||
<script tipe="module">
|
||||
function switchProses(id)
|
||||
{
|
||||
removeErrorCssMsg();
|
||||
let c = $('#{{$route[1]}}_check_'+id).val();
|
||||
|
||||
if($('input[name="{{$route[1]}}_check_'+id+'"]').is(':checked'))
|
||||
{
|
||||
// checked
|
||||
// alert('aktif nih');
|
||||
setActiveElement(id);
|
||||
}else
|
||||
{
|
||||
// unchecked
|
||||
//alert('tdk aktif nih');
|
||||
setNonActiveElement(id);
|
||||
}
|
||||
}
|
||||
|
||||
function setActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).removeAttr('disabled');
|
||||
}
|
||||
|
||||
function setNonActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).attr('disabled', 'disabled');
|
||||
}
|
||||
|
||||
function otorisasiKJPP(penawaran_id, id, kjpp_id, kjppName, biaya_penawaran) {
|
||||
Swal.fire({
|
||||
title: ' ',
|
||||
text: "Yakin akan Otorisasi "+kjppName+"?",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.otorisasiPenawaranKJPP','') }}/"+id;
|
||||
let noReg = $("#textReg").text();
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id =id;
|
||||
input_data.penawaran_id =penawaran_id;
|
||||
input_data.kjpp_id =kjpp_id;
|
||||
input_data.kjppName =kjppName;
|
||||
input_data.biaya_penawaran =biaya_penawaran;
|
||||
input_data.noReg =noReg;
|
||||
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "PUT",
|
||||
cache: false,
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
if('success' == response.status)
|
||||
{
|
||||
swal.fire('Sukses Otorisasi!', response.message.message_success[0], 'success').then(() => {
|
||||
var url = "{{ route('otorisasitender.penawaran.index') }}";
|
||||
$(location).attr('href',url);
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
Swal.fire('Error!', response.message.message_error_try_catch[0], 'error');
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
// console.log(errors);
|
||||
console.log(response);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
188
resources/views/otorisasipenawaran/js/editjs.blade.php
Normal file
188
resources/views/otorisasipenawaran/js/editjs.blade.php
Normal file
@@ -0,0 +1,188 @@
|
||||
@push('scripts')
|
||||
@include('lpj::assetsku.includenya')
|
||||
@include('lpj::otorisasipenawaran.js.editextjs')
|
||||
<script type="module">
|
||||
|
||||
$(document).ready(function() {
|
||||
prepareForm();
|
||||
});
|
||||
|
||||
function prepareForm()
|
||||
{
|
||||
setData();
|
||||
}
|
||||
|
||||
function setData()
|
||||
{
|
||||
let id = $("#id").val();
|
||||
let token = "{{ csrf_token() }}";
|
||||
// alert('token = ' + token);
|
||||
var useURL = "{{ route('otorisasitender.penawaran.setData') }}";
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id = id;
|
||||
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "POST",
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
beforeSend: function() {
|
||||
// if ($("#myLoader").hasClass("pre-loader hidden")) {
|
||||
// pleaseStartLoader();
|
||||
// }
|
||||
},
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
|
||||
if("success"==response.status)
|
||||
{
|
||||
var statusText = response.penawaran.status;
|
||||
$("#textReg").text(response.penawaran.nomor_registrasi);
|
||||
$("#textCodePenawaran").text(response.penawaran.code);
|
||||
$("#textStatusPenawaran").text(statusText);
|
||||
setTablesKJPP1(response.penawrandetails);
|
||||
setTablesKJPPLog(response.penawarandetailLogs);
|
||||
}
|
||||
else
|
||||
{
|
||||
toastrError(response.message);
|
||||
}
|
||||
|
||||
},
|
||||
error: function(xhr) {
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setTablesKJPP1(datas)
|
||||
{
|
||||
let i=1;
|
||||
$.each(datas, function(key, value){
|
||||
|
||||
var kjppName = value.kjpp_code+' - '+value.kjpp_name;
|
||||
var biaya_penawaran = value.biaya_penawaran;// alert(biaya_penawaran);
|
||||
var htmlDokumenPersetujuanDownload='';
|
||||
var dokumenPersetujuanDownload = value.dokumen_persetujuan;
|
||||
if(dokumenPersetujuanDownload)
|
||||
{
|
||||
htmlDokumenPersetujuanDownload='<div class="flex items-center justify-between flex-wrap my-2.5 gap-2"><a href="'+value.dokumen_persetujuan+'" class="badge badge-sm badge-outline" download="'+value.attachment+'">'+value.attachment+' <i class="ki-filled ki-cloud-download"></i></a></div>';
|
||||
}
|
||||
|
||||
// pengecekan kondisi format number
|
||||
var biaya_penawaran_format = "";
|
||||
if(biaya_penawaran)
|
||||
biaya_penawaran_format=tandaPemisahTitik(biaya_penawaran);
|
||||
|
||||
var markup = '<tr>';
|
||||
markup +='<td valign="top">'+i+'</td>';
|
||||
markup +='<td valign="top"><label id="{{$route[1]}}_kjppName_'+value.id+'">'+kjppName+'</label></td>';
|
||||
markup +='<td valign="top" align="right">Rp.'+biaya_penawaran_format+'</td>';
|
||||
markup +='<td><em id="{{$route[1]}}_dokumenPersetujuan_msg_'+value.id+'" class="alert text-danger text-sm"></em>'+htmlDokumenPersetujuanDownload+'</td>';
|
||||
markup +='<td><div class="flex flex-nowrap justify-center">';
|
||||
markup +='<a class="btn btn-sm btn-icon btn-clear btn-success" href="javascript:void(0)" id="{{$route[1]}}_icon_update_'+value.id+'" title="Otorisasi Penawaran '+kjppName+'" onclick="otorisasiKJPP('+value.penawaran_id+','+value.id+','+value.kjpp_rekanan_id+',\''+kjppName+'\',\''+biaya_penawaran+'\')"><i class="ki-outline ki-notepad-edit"></i></a>';
|
||||
markup += '</tr>';
|
||||
|
||||
$('#tbodyKJPP1').append(markup);
|
||||
|
||||
i++;
|
||||
});
|
||||
}
|
||||
|
||||
$(document).on("input", "input:file", function(e) {
|
||||
let fileName = e.target.files[0].name;
|
||||
let inputFile = e.target.id;
|
||||
const myArray = inputFile.split("_");
|
||||
let penawaranID = myArray[myArray.length-1];
|
||||
let kjppName = $("#{{$route[1]}}_kjppName_"+penawaranID).text();
|
||||
let upld = fileName.split(".").pop();
|
||||
if(upld == "pdf" || upld =="PDF"){}
|
||||
else{
|
||||
removeErrorCssMsg();
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+penawaranID).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_msg_"+penawaranID).text("Silahkan Masukan tipe file PDF Mas");
|
||||
$("#"+inputFile).val("");
|
||||
}
|
||||
});
|
||||
|
||||
function setTablesKJPPLog(datas)
|
||||
{
|
||||
let i=1;
|
||||
$.each(datas, function(key, value){
|
||||
|
||||
var kjppName = value.kjpp_code+' - '+value.kjpp_name;
|
||||
var biaya_penawaran = value.biaya_penawaran;// alert(biaya_penawaran);
|
||||
var htmlDokumenPersetujuanDownload='';
|
||||
var dokumenPersetujuanDownload = value.dokumen_persetujuan;
|
||||
if(dokumenPersetujuanDownload)
|
||||
{
|
||||
htmlDokumenPersetujuanDownload='<div class="flex items-center justify-between flex-wrap my-2.5 gap-2"><a href="'+value.dokumen_persetujuan+'" class="badge badge-sm badge-outline" download="'+value.attachment+'">'+value.attachment+' <i class="ki-filled ki-cloud-download"></i></a></div>';
|
||||
}
|
||||
|
||||
// pengecekan kondisi format number
|
||||
var biaya_penawaran_format = "";
|
||||
if(biaya_penawaran)
|
||||
biaya_penawaran_format=tandaPemisahTitik(biaya_penawaran);
|
||||
|
||||
var markup = '<tr>';
|
||||
markup +='<td valign="top">'+i+'</td>';
|
||||
markup +='<td valign="top"><label id="{{$route[1]}}_kjppName_'+value.id+'">'+kjppName+'</label></td>';
|
||||
markup +='<td valign="top" align="right">Rp.'+biaya_penawaran_format+'</td>';
|
||||
markup +='<td><em id="{{$route[1]}}_dokumenPersetujuan_msg_'+value.id+'" class="alert text-danger text-sm"></em>'+htmlDokumenPersetujuanDownload+'</td>';
|
||||
markup +='<td valign="top"><label id="{{$route[1]}}_kjppName_'+value.id+'">'+value.created_at2+'</label></td>';
|
||||
|
||||
$('#tbodyKJPPLog').append(markup);
|
||||
|
||||
i++;
|
||||
});
|
||||
}
|
||||
/*
|
||||
// update proses penawaran ulang & permohonan status
|
||||
$("#{{$route[1]}}_toEdit").click(function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "";
|
||||
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id = "{{ $id }}";
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "PUT",
|
||||
cache: false,
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
if('success' == response.status)
|
||||
{
|
||||
// toastr.success(response.message);
|
||||
toastrSuccess(response.message);
|
||||
setTimeout(function () {
|
||||
var url = "{{ route('tender.prosespenawaran.index') }}";
|
||||
$(location).attr('href',url);
|
||||
// window.location.href = "https://www.newurl.com";
|
||||
}, 2000);
|
||||
}
|
||||
else
|
||||
{
|
||||
// toastr.error(response.message);
|
||||
toastrError(response.message);
|
||||
}
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
// console.log(errors);
|
||||
console.log(response);
|
||||
|
||||
}
|
||||
});
|
||||
});
|
||||
*/
|
||||
|
||||
</script>
|
||||
@endpush
|
||||
43
resources/views/otorisasipenawaran/show.blade.php
Normal file
43
resources/views/otorisasipenawaran/show.blade.php
Normal file
@@ -0,0 +1,43 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Detail Data Otorisasi Penawaran
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('otorisasitender.penawaran.edit', $id) }}" class="btn btn-xs btn-primary" title="Register"><i class="ki-filled ki-arrow-circle-right"></i> Otorisasi Penawaran</a>
|
||||
<a href="{{ route('otorisasitender.penawaran.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $prosespenawaran->nomor_registrasi }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Kode Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $prosespenawaran->code }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
@@ -79,7 +79,7 @@
|
||||
@enderror
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_id') border-danger bg-danger-light @enderror" type="number" name="nomor_id" value="{{ $debitur->nomor_id ?? '' }}" placeholder="Nomor ID/KTP">
|
||||
<input class="input @error('nomor_id') border-danger bg-danger-light @enderror" type="number" name="nomor_id" value="{{ $pemilik->nomor_id ?? '' }}" placeholder="Nomor ID/KTP">
|
||||
@error('nomor_id')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
@@ -88,7 +88,28 @@
|
||||
</div>
|
||||
</div>
|
||||
<div id="nama_sertifikat">
|
||||
@if(isset($detailSertifikat))
|
||||
@foreach(json_decode($detailSertifikat) as $sertifikat)
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5 mb-5">
|
||||
<label class="form-label max-w-56">
|
||||
Nama Lengkap
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="text" id="name" name="detail_sertifikat[name][]" value="{{ $sertifikat->name }}" placeholder="Nama Pemilik Jaminan">
|
||||
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="number" name="detail_sertifikat[nomor_id][]" value="{{ $sertifikat->nomor_id }}" placeholder="Nomor ID/KTP">
|
||||
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
@@ -253,41 +274,46 @@
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
<script>
|
||||
document.getElementById('tambah_sertifikat').addEventListener('click', function() {
|
||||
const namaSertifikatDiv = document.getElementById('nama_sertifikat');
|
||||
const newDiv = document.createElement('div');
|
||||
newDiv.innerHTML = `
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5 mb-5">
|
||||
<label class="form-label max-w-56">
|
||||
Nama Lengkap
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text" id="name" name="name[]" value="" placeholder="Nama Pemilik Jaminan">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_id') border-danger bg-danger-light @enderror" type="number" name="nomor_id[]" value="" placeholder="Nomor ID/KTP">
|
||||
@error('nomor_id')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
namaSertifikatDiv.appendChild(newDiv);
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
const namaSertifikatDiv = document.getElementById("nama_sertifikat");
|
||||
|
||||
// Event listener untuk tombol hapus
|
||||
newDiv.querySelector('.delete-button').addEventListener('click', function() {
|
||||
namaSertifikatDiv.removeChild(newDiv);
|
||||
// Function to add delete event listeners to existing buttons
|
||||
function addDeleteListeners() {
|
||||
document.querySelectorAll(".delete-button").forEach(button => {
|
||||
button.addEventListener("click", function() {
|
||||
this.closest(".flex.items-baseline.flex-wrap.lg\\:flex-nowrap.gap-2\\.5.mb-5").remove();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Add delete listeners to existing buttons
|
||||
addDeleteListeners();
|
||||
|
||||
document.getElementById("tambah_sertifikat").addEventListener("click", function() {
|
||||
const newDiv = document.createElement("div");
|
||||
newDiv.className = "flex items-baseline flex-wrap lg:flex-nowrap gap-2.5 mb-5";
|
||||
newDiv.innerHTML = `
|
||||
<label class="form-label max-w-56">
|
||||
Nama Lengkap
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="text" name="detail_sertifikat[name][]" value="" placeholder="Nama Pemilik Jaminan">
|
||||
</div>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input" type="number" name="detail_sertifikat[nomor_id][]" value="" placeholder="Nomor ID/KTP">
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
namaSertifikatDiv.appendChild(newDiv);
|
||||
|
||||
// Add delete listener to the new button
|
||||
addDeleteListeners();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -189,7 +189,12 @@
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="flex justify-end gap-1.5">
|
||||
@if (isset($penawaran->nomor_registrasi))
|
||||
<a href="{{ route('tender.penawaran.showSuratTender', $noreg) }}" class="btn btn-primary">
|
||||
Surat Tender
|
||||
</a>
|
||||
@endif
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
|
||||
@@ -195,7 +195,12 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<div class="flex justify-end gap-1.5">
|
||||
@if (isset($penawaran->nomor_registrasi))
|
||||
<a href="{{ route('tender.penawaran.showSuratTender', $noreg) }}" class="btn btn-primary">
|
||||
Surat Tender
|
||||
</a>
|
||||
@endif
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Penawaran Ulang
|
||||
</button>
|
||||
|
||||
56
resources/views/penawaran/surat_tender.blade.php
Normal file
56
resources/views/penawaran/surat_tender.blade.php
Normal file
@@ -0,0 +1,56 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName(), request()->route('noreg')) }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Surat Tender
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
@if (isset($penawaran->nomor_registrasi))
|
||||
<a href="{{ route('tender.penawaran.editPenawaran', $noreg) }}" class="btn btn-xs btn-info"><i
|
||||
class="ki-filled ki-exit-left"></i> Back</a>
|
||||
@else
|
||||
<a href="{{ route('tender.penawaran.createPenawaran', $noreg) }}" class="btn btn-xs btn-info"><i
|
||||
class="ki-filled ki-exit-left"></i> Back</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<p>Dear
|
||||
<span class="font-bold">{{ ucwords(auth()->user()->name) ?? 'Tidak Ada' }}</span>
|
||||
</p>
|
||||
<p>Mohon untuk dibuatkan proposal jasa appraisal atas nama <span
|
||||
class="font-bold">{{ ucwords($penawaran->permohonan->user->name) }}</span>, tujuan penilaian
|
||||
untuk <span class="font-bold">
|
||||
@foreach ($penawaran->tujuanPenilaianKJPP as $tujuanPenilaianKJPP)
|
||||
{{ $tujuanPenilaianKJPP->name }}
|
||||
@endforeach
|
||||
</span>, laporan dalam bentuk <span class="font-bold">{{ $penawaran->jenisLaporan->name }}</span>,
|
||||
dengan data-data sebagai berikut :</p>
|
||||
<ul>
|
||||
<li>Aset Jaminan: <span class="font-bold">[otomasi dari tabel permohonan]</span></li>
|
||||
<li>Lokasi Jaminan: <span class="font-bold">[otomasi dari tabel permohonan]</span></li>
|
||||
<li>LT / LB: <span class="font-bold">[otomasi dari tabel permohonan]</span></li>
|
||||
</ul>
|
||||
<p>Harap proposal dibuat dengan harga yang minimal sehingga tidak perlu tawar menawar lagi.</p>
|
||||
<p>Mohon proposal dapat saya terima segera, sebelum
|
||||
<span class="font-bold">{{ formatTanggalIndonesia($penawaran->end_date) }} pukul 17.00 WIB</span>
|
||||
</p>
|
||||
<p>Best Regards,
|
||||
<span class="font-bold">[otomasi dari nama dan tanda tangan user penginput]</span>
|
||||
Sub Direktorat Appraisal
|
||||
</p>
|
||||
<p>PT. Bank Artha Graha Internasional, Tbk.<br>
|
||||
Gedung Bank Artha Graha, Lantai 3<br>
|
||||
Jl. Kwiitang Raya No 24-26, Jakarta Pusat - 10420.<br>
|
||||
Telp. 021 - 3903040 (H)</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
200
resources/views/penilai/index.blade.php
Normal file
200
resources/views/penilai/index.blade.php
Normal file
@@ -0,0 +1,200 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('penilai') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card pb-2.5">
|
||||
<div class=" card-grid min-w-full" data-datatable="false" data-datatable-page-size="5"
|
||||
data-datatable-state-save="false" id="penilai-table" data-api-url="{{ route('penilai.dataForTables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
Penilai
|
||||
</h3>
|
||||
<div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Penilai" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<a class="btn btn-sm btn-light" href="#"> Export to Excel </a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm"
|
||||
data-datatable-table="true">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14">
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox" />
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="nomor_registrasi">
|
||||
<span class="sort"> <span class="sort-label"> Nomor Registrasi </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="debitur_id">
|
||||
<span class="sort"> <span class="sort-label"> Debitur </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="branch_id">
|
||||
<span class="sort"> <span class="sort-label"> Pemohon(Cabang/Direktorat) </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="user_id">
|
||||
<span class="sort"> <span class="sort-label"> AO </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_id">
|
||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="jenis_fasilitas_kredit_id">
|
||||
<span class="sort"> <span class="sort-label"> Fasilitas Kredit </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="tanggal_survei">
|
||||
<span class="sort"> <span class="sort-label"> Tanggal Survei </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="due_date_sla">
|
||||
<span class="sort"> <span class="sort-label"> Due Date SLA </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div
|
||||
class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
||||
<div class="flex items-center gap-2">
|
||||
Show
|
||||
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per
|
||||
page
|
||||
</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<span data-datatable-info="true"> </span>
|
||||
<div class="pagination" data-datatable-pagination="true">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/javascript">
|
||||
function formatDate(date) {
|
||||
const day = date.getDate().toString().padStart(2, '0');
|
||||
const month = (date.getMonth() + 1).toString().padStart(2, '0');
|
||||
// Months are 0-indexed
|
||||
const year = date.getFullYear();
|
||||
|
||||
return `${day} ${getIndonesianMonth(month)} ${year}`;
|
||||
}
|
||||
|
||||
function getIndonesianMonth(month) {
|
||||
const months = ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni',
|
||||
'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'
|
||||
];
|
||||
return months[month -
|
||||
1];
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#penilai-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
const dataTableOptions = {
|
||||
apiEndpoint: apiUrl,
|
||||
pageSize: 5,
|
||||
columns: {
|
||||
select: {
|
||||
render: (item, data, context) => {
|
||||
const checkbox = document.createElement('input');
|
||||
checkbox.className = 'checkbox checkbox-sm';
|
||||
checkbox.type = 'checkbox';
|
||||
checkbox.value = data.id.toString();
|
||||
checkbox.setAttribute('data-datatable-row-check', 'true');
|
||||
return checkbox.outerHTML.trim();
|
||||
},
|
||||
},
|
||||
nomor_registrasi: {
|
||||
title: 'Nomor Registrasi',
|
||||
},
|
||||
debitur_id: {
|
||||
title: 'Debitur',
|
||||
render: (item, data) => {
|
||||
return `${data.debiture.name}`;
|
||||
},
|
||||
},
|
||||
branch_id: {
|
||||
title: 'Cabang Pemohon',
|
||||
render: (item, data) => {
|
||||
return `${data.branch.name}`;
|
||||
},
|
||||
},
|
||||
user_id: {
|
||||
title: 'User Pemohon',
|
||||
render: (item, data) => {
|
||||
return `${data.user.name}`;
|
||||
},
|
||||
},
|
||||
tujuan_penilaian_id: {
|
||||
title: 'Tujuan Penilaian',
|
||||
render: (item, data) => {
|
||||
return `${data.tujuan_penilaian.name}`;
|
||||
},
|
||||
},
|
||||
jenis_fasilitas_kredit_id: {
|
||||
title: 'Fasilitas Kredit',
|
||||
render: (item, data) => {
|
||||
return `${data.jenisfasilitas_kredit.name}`;
|
||||
},
|
||||
},
|
||||
tanggal_survei: {
|
||||
title: 'Tanggal Survei',
|
||||
render: (item, data) => {
|
||||
return `${formatDate(new Date(data.created_at))}`;
|
||||
},
|
||||
},
|
||||
due_date_sla: {
|
||||
title: 'Due Date SLA',
|
||||
render: (item, data) => {
|
||||
return `${formatDate(new Date(data.created_at))}`;
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
title: 'Action',
|
||||
render: (item, data) => {
|
||||
return `
|
||||
<div class="flex flex-nowrap justify-center gap-1.5">
|
||||
<a class="btn btn-sm btn-outline btn-info" href="penilai/${data.id}/show">
|
||||
<i class="ki-outline ki-eye"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
let dataTable = new KTDataTable(element, dataTableOptions);
|
||||
// Custom search functionality
|
||||
searchInput.addEventListener('input', function() {
|
||||
const searchValue = this.value.trim();
|
||||
dataTable.search(searchValue, true);
|
||||
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
160
resources/views/penilai/show.blade.php
Normal file
160
resources/views/penilai/show.blade.php
Normal file
@@ -0,0 +1,160 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Detail Penilai
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('penilai.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i>
|
||||
Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Nomor Registrasi
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $permohonan->nomor_registrasi }}</p>
|
||||
</div>
|
||||
<label class="form-label max-w-56">
|
||||
Nama Debitur
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $permohonan->debiture->name }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Cabang
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $permohonan->branch->name }}</p>
|
||||
</div>
|
||||
<label class="form-label max-w-56">
|
||||
Alamat Jaminan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $permohonan->debiture->address }}, Kel.
|
||||
{{ $permohonan->debiture->village->name }}, Kec. {{ $permohonan->debiture->district->name }},
|
||||
{{ ucwords(strtolower($permohonan->debiture->city->name)) }}, Kode Pos.
|
||||
{{ $permohonan->debiture->postal_code }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Nama AO/Pemohon
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $permohonan->user->name }}</p>
|
||||
</div>
|
||||
<label class="form-label max-w-56">
|
||||
Fasilitas Kredit
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ $permohonan->jenisFasilitasKredit->name }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Permohonan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ formatTanggalIndonesia($permohonan->created_at) }}</p>
|
||||
</div>
|
||||
<label class="form-label max-w-56">
|
||||
CIF
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ $permohonan->debiture->cif }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Konfirmasi Kunjungan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Surveyor
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ $permohonan->penilaian->userSurveyor->name }}</p>
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
Region 1</p>
|
||||
</div>
|
||||
<label class="form-label max-w-56">
|
||||
Penilai
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
@foreach ($permohonan->penilaian->teams->teamsUsers as $index => $penilaian)
|
||||
{{ $penilaian->user->name }}{{ $index + 1 < count($permohonan->penilaian->teams->teamsUsers) ? ', ' : '' }}
|
||||
@endforeach
|
||||
</p>
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ $permohonan->penilaian->teams->regions->name }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tujuan Penilaian
|
||||
</label>
|
||||
<p class="flex text-gray-600 font-medium text-sm w-full">
|
||||
{{ $permohonan->tujuanPenilaian->name }}</p>
|
||||
<label class="form-label max-w-56">
|
||||
Jenis Jaminan
|
||||
</label>
|
||||
<p class="flex text-gray-600 font-medium text-sm w-full">
|
||||
@foreach ($permohonan->debiture->documents as $document)
|
||||
{{ $document->jenisjaminan->name }}
|
||||
@endforeach
|
||||
</p>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Survei
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ formatTanggalIndonesia($permohonan->created_at) }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Laporan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
{{ formatTanggalIndonesia($permohonan->created_at) }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
No. Laporan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<p class="flex w-full text-gray-600 font-medium text-sm">
|
||||
PJ/001/001</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -160,104 +160,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Laporan
|
||||
</h3>
|
||||
</div>
|
||||
<div data-accordion="true">
|
||||
@foreach ($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200" data-accordion-item="true"
|
||||
id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
<i class="ki-outline ki-plus text-gray-600 text-2sm accordion-active:hidden block">
|
||||
</i>
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->jenisJaminan->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->hubungan_pemilik->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->address ?? '' }},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? '' }},
|
||||
{{ $dokumen->pemilik->district->name ?? '' }},
|
||||
{{ $dokumen->pemilik->city->name ?? '' }},
|
||||
{{ $dokumen->pemilik->province->name ?? '' }} -
|
||||
{{ $dokumen->pemilik->village->postal_code ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
@foreach ($dokumen->detail as $detail)
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal max-w-[100px]">
|
||||
{{ $loop->index + 1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $detail->name ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Dokumen Jaminan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
@if (isset($detail->dokumen_jaminan))
|
||||
<a href="{{ route('debitur.jaminan.download', ['id' => $permohonan->debiture->id, 'dokumen' => $detail->id]) }}"
|
||||
class="badge badge-sm badge-outline mt-2">{{ basename($detail->dokumen_jaminan) }}
|
||||
<i class="ki-filled ki-cloud-download"></i></a>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Keterangan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $detail->keterangan ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@include('lpj::component.detail-jaminan')
|
||||
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
|
||||
@@ -136,98 +136,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Data Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div data-accordion="true">
|
||||
@foreach($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200" data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
<i class="ki-outline ki-plus text-gray-600 text-2sm accordion-active:hidden block">
|
||||
</i>
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->jenisJaminan->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->hubungan_pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->address ?? ""}},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? "" }}, {{ $dokumen->pemilik->district->name ?? "" }}, {{ $dokumen->pemilik->city->name ?? "" }}, {{ $dokumen->pemilik->province->name ?? "" }} - {{ $dokumen->pemilik->village->postal_code ?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
@foreach($dokumen->detail as $detail)
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal max-w-[100px]">
|
||||
{{ $loop->index + 1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $detail->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Dokumen Jaminan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
@if(isset($detail->dokumen_jaminan))
|
||||
<a href="{{ route('debitur.jaminan.download',['id'=>$permohonan->debiture->id,'dokumen'=>$detail->id]) }}" class="badge badge-sm badge-outline mt-2">{{ basename($detail->dokumen_jaminan) }}
|
||||
<i class="ki-filled ki-cloud-download"></i></a>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Keterangan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $detail->keterangan ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@include('lpj::component.detail-jaminan')
|
||||
|
||||
<div class="card">
|
||||
<form action="{{ route('authorization.update', $permohonan->id) }}" method="POST">
|
||||
@@ -239,7 +148,7 @@
|
||||
Catatan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea" rows="3" type="number" id="address" name="address"></textarea>
|
||||
<textarea class="textarea" rows="3" type="number" id="keterangan" name="keterangan"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -155,38 +155,15 @@
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Status Permohonan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<select class="input tomselect w-full @error('branch_id') border-danger bg-danger-light @enderror" name="status" id="status">
|
||||
<option value="">Pilih Status Permohonan</option>
|
||||
@if(isset($status))
|
||||
@foreach($status as $row)
|
||||
@if(isset($permohonan))
|
||||
<option value="{{ $row->slug }}" {{ isset($permohonan->status) && $permohonan->status == $row->slug ?'selected' : '' }}>
|
||||
{{ $row->name }}
|
||||
</option>
|
||||
@else
|
||||
<option value="{{ $row->slug }}">
|
||||
{{ $row->name }}
|
||||
</option>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
@error('status')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
@if($permohonan->status=='revisi')
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
Catatan : <br>
|
||||
<em class="text-red-500">{{ $permohonan->keterangan }}</em>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endif
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
{{ $permohonan->status=='revisi' ? 'Submit Ulang' : 'Save' }}
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -63,6 +63,10 @@
|
||||
<span class="sort"> <span class="sort-label"> Status </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="keterangan">
|
||||
<span class="sort"> <span class="sort-label"> Keterangan </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -158,7 +162,10 @@
|
||||
debitur_id: {
|
||||
title: 'Debitur',
|
||||
render: (item, data) => {
|
||||
return `${data.debiture.name}`;
|
||||
if(data.debiture) {
|
||||
return `${data.debiture.name}`;
|
||||
}
|
||||
return "-";
|
||||
},
|
||||
},
|
||||
tujuan_penilaian_id: {
|
||||
@@ -170,11 +177,20 @@
|
||||
status: {
|
||||
title: 'Status'
|
||||
},
|
||||
keterangan: {
|
||||
title: 'Keterangan'
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
title: 'Actions',
|
||||
render: (item, data) => {
|
||||
return `
|
||||
<div class="flex flex-nowrap justify-center gap-1.5">
|
||||
var actionHtml = `
|
||||
<div class="flex flex-nowrap justify-center gap-1.5">`;
|
||||
if(data.status !== 'order'){
|
||||
actionHtml += `<a class="btn btn-sm btn-outline btn-success" href="permohonan/${data.id}">
|
||||
<i class="ki-filled ki-document"></i>
|
||||
</a>`;
|
||||
}
|
||||
actionHtml += `
|
||||
<a class="btn btn-sm btn-outline btn-info" href="permohonan/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
@@ -182,6 +198,8 @@
|
||||
<i class="ki-outline ki-trash"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
|
||||
return actionHtml;
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
221
resources/views/permohonan/print.blade.php
Normal file
221
resources/views/permohonan/print.blade.php
Normal file
@@ -0,0 +1,221 @@
|
||||
@extends('layouts.auth')
|
||||
@section('content')
|
||||
<div class="w-full gap-5 mx-auto" id="printtable">
|
||||
<div class="gap-5 w-full">
|
||||
<div class="card">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div>
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Nomor Register Permohonan
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ $permohonan->nomor_registrasi }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Pemohon
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ $permohonan->user->nik }} | {{ $permohonan->user->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Tujan Permohonan
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ $permohonan->tujuanPenilaian->name }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Status Permohonan
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ ucwords($permohonan->status) }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Cabang Pemohon
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ $permohonan->user->branch->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900 w-1/2">
|
||||
Tanggal Permohonan
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900 w-1/2">
|
||||
: {{ formatTanggalIndonesia($permohonan->created_at) }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="gap-5 w-full grid grid-cols-3 mt-5">
|
||||
<div>
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header" id="advanced_settings_appearance">
|
||||
<h3 class="card-title">
|
||||
1. Fasilitas Kredit
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5">
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Jenis Fasilitas
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $permohonan->jenisFasilitasKredit->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Nilai Plafond
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $permohonan->nilaiPlafond->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Nilai NJOP
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $permohonan->nilai_njop }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mt-5 min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
2. Identitas Debutur
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<div class="grid grid-cols-1 xl:grid-cols-2 gap-5 lg:gap-7.5">
|
||||
<div class="col-span-1">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal">
|
||||
Name
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Cabang
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->branch->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
CIF
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->cif ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Address
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->address ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->village->name ?? "" }}, {{ $permohonan->debiture->district->name ?? "" }}, {{ $permohonan->debiture->city->name ?? "" }}, {{ $permohonan->debiture->province->name ?? "" }} - {{ $permohonan->debiture->village->postal_code ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-span-2">
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Data Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
@foreach($permohonan->debiture->documents as $dokumen)
|
||||
<div class="card-body lg:py-7.5">
|
||||
<span class="text-base text-gray-900 font-bold mb-5">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
|
||||
<div class="mb-5 grid grid-cols-2 mt-5">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Pemilik Jaminan
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $dokumen->pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $dokumen->jenisJaminan->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $dokumen->pemilik->hubungan_pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5 grid grid-cols-2">
|
||||
<h3 class="text-md text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-md font-medium text-gray-900">
|
||||
: {{ $dokumen->pemilik->address ?? ""}},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? "" }}, {{ $dokumen->pemilik->district->name ?? "" }}, {{ $dokumen->pemilik->city->name ?? "" }}, {{ $dokumen->pemilik->province->name ?? "" }} - {{ $dokumen->pemilik->village->postal_code ?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts')
|
||||
<script type="module">
|
||||
var printtable = document.getElementById('printtable');
|
||||
window.print(printtable);
|
||||
</script>
|
||||
@endpush
|
||||
189
resources/views/permohonan/show.blade.php
Normal file
189
resources/views/permohonan/show.blade.php
Normal file
@@ -0,0 +1,189 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="flex gap-5 flex-row w-full">
|
||||
<div class="card flex-1">
|
||||
<div class="card-header" id="advanced_settings_appearance">
|
||||
<h3 class="card-title">
|
||||
Data Permohonan
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->nomor_registrasi }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemohon:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->user->nik }} | {{ $permohonan->user->name }} | {{ $permohonan->user->branch->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Tujan Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->tujuanPenilaian->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card flex-1">
|
||||
<div class="card-header" id="advanced_settings_appearance">
|
||||
<h3 class="card-title">
|
||||
Fasilitas Kredit
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Fasilitas
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->jenisFasilitasKredit->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nilai Plafond:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->nilaiPlafond->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nilai NJOP:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->nilai_njop }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Detail Debutur
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<div class="grid grid-cols-1 xl:grid-cols-2 gap-5 lg:gap-7.5">
|
||||
<div class="col-span-1">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal">
|
||||
Name
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
Email
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->email ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
Phone
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->phone ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Address
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->address ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->village->name ?? "" }}, {{ $permohonan->debiture->district->name ?? "" }}, {{ $permohonan->debiture->city->name ?? "" }}, {{ $permohonan->debiture->province->name ?? "" }} - {{ $permohonan->debiture->village->postal_code ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="col-span-1">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Cabang
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->branch->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
CIF
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->cif ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Nomor Rekening
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->nomor_rekening ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
NPWP
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->npwp ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@include('lpj::component.detail-jaminan')
|
||||
|
||||
<div class="card">
|
||||
<form action="{{ route('permohonan.print', $permohonan->id) }}" method="GET">
|
||||
<input type="hidden" name="_method" value="PUT">
|
||||
@csrf
|
||||
<div class="card-footer flex justify-end">
|
||||
<button type="submit" name="status" value="print" class="btn btn-success">
|
||||
<i class="ki-filled ki-printer mr-2"></i> Print Surat Permohonan
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -38,8 +38,8 @@
|
||||
<span class="sort"> <span class="sort-label"> Nomor Registrasi </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Kode Penawaran </span>
|
||||
<th class="min-w-[150px]" data-datatable-column="debiture">
|
||||
<span class="sort"> <span class="sort-label"> Nama Debitur </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="start_date">
|
||||
@@ -132,8 +132,16 @@
|
||||
'nomor_registrasi': {
|
||||
title: 'Nomor Registrasi',
|
||||
},
|
||||
code: {
|
||||
title: 'Kode Penawaran',
|
||||
debiture: {
|
||||
title: 'Nama Debitur',
|
||||
render: (item, data) => {
|
||||
if(data.permohonan) {
|
||||
return `${data.permohonan.debiture.name}`;
|
||||
}
|
||||
return "-";
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
start_date: {
|
||||
title: 'Tanggal Penawaran',
|
||||
|
||||
@@ -1,147 +1,155 @@
|
||||
<script tipe="module">
|
||||
function switchProses(id)
|
||||
{
|
||||
|
||||
let c = $('#{{$route[1]}}_check_'+id).val();
|
||||
|
||||
if($('input[name="{{$route[1]}}_check_'+id+'"]').is(':checked'))
|
||||
function switchProses(id)
|
||||
{
|
||||
// checked
|
||||
// alert('aktif nih');
|
||||
setActiveElement(id);
|
||||
}else
|
||||
{
|
||||
// unchecked
|
||||
//alert('tdk aktif nih');
|
||||
setNonActiveElement(id);
|
||||
}
|
||||
}
|
||||
|
||||
function setActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).removeAttr('disabled');
|
||||
}
|
||||
|
||||
function setNonActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).attr('disabled', 'disabled');
|
||||
}
|
||||
|
||||
function updateData(id, kjpp_id, kjppName){
|
||||
removeErrorCssMsg();
|
||||
let biaya = $("#{{$route[1]}}_biayaPenawaran_"+id).val();
|
||||
let filepdf = $("#{{$route[1]}}_dokumenPersetujuan_"+id).val();
|
||||
let passednih = true;
|
||||
if(!biaya){
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_biayaPenawaran_msg_"+id).text("Silahkan isi Biaya Penawaran nya");
|
||||
passednih = false;
|
||||
}
|
||||
if(!filepdf){
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_msg_"+id).text("Silahkan isi dokumen nya");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).val("");
|
||||
passednih = false;
|
||||
}
|
||||
|
||||
if(passednih)
|
||||
{
|
||||
var file_data = $("#{{$route[1]}}_dokumenPersetujuan_"+id).prop("files")[0];
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.update', '') }}/"+id;
|
||||
let formData = new FormData();
|
||||
let token = "{{ csrf_token() }}";alert(token);
|
||||
formData.append("dokumen_persetujuan", file_data);
|
||||
formData.append("biaya_penawaran", biaya);
|
||||
formData.append("kjpp_rekanan_id", kjpp_id);
|
||||
formData.append("_method", "PUT");
|
||||
formData.append("_token", token);
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "POST",
|
||||
data: formData,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
success:function(response){
|
||||
if('success' == response.status)
|
||||
{
|
||||
toastr.success(response.message);
|
||||
|
||||
setTimeout(function () {
|
||||
location.reload(true);
|
||||
}, 2000);
|
||||
}
|
||||
else
|
||||
toastr.error(_data.message);
|
||||
|
||||
},
|
||||
error: function (response, textStatus, errorThrown) {
|
||||
var errors = response.responseJSON.errors;
|
||||
$.each(errors, function (key, value) {
|
||||
console.log("v = " + value);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
let c = $('#{{$route[1]}}_check_'+id).val();
|
||||
|
||||
if($('input[name="{{$route[1]}}_check_'+id+'"]').is(':checked'))
|
||||
{
|
||||
// checked
|
||||
// alert('aktif nih');
|
||||
setActiveElement(id);
|
||||
}else
|
||||
{
|
||||
// unchecked
|
||||
//alert('tdk aktif nih');
|
||||
setNonActiveElement(id);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function deleteData(data) {
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert this!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.updateStatusPenawaranKJPP','') }}/"+data;
|
||||
|
||||
alert(useURL);
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id =1;
|
||||
function setActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).removeAttr('disabled');
|
||||
}
|
||||
|
||||
function setNonActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).attr('disabled', 'disabled');
|
||||
}
|
||||
|
||||
function updateData(id, kjpp_id, kjppName){
|
||||
removeErrorCssMsg();
|
||||
let biaya = $("#{{$route[1]}}_biayaPenawaran_"+id).val();
|
||||
let filepdf = $("#{{$route[1]}}_dokumenPersetujuan_"+id).val();
|
||||
let passednih = true;
|
||||
if(!biaya){
|
||||
$("#{{$route[1]}}_rp_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_biayaPenawaran_msg_"+id).text("Silahkan isi Biaya Penawaran nya");
|
||||
passednih = false;
|
||||
}
|
||||
if(!filepdf){
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_msg_"+id).text("Silahkan isi dokumen nya");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).val("");
|
||||
passednih = false;
|
||||
}
|
||||
|
||||
if(passednih)
|
||||
{
|
||||
var file_data = $("#{{$route[1]}}_dokumenPersetujuan_"+id).prop("files")[0];
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.update', '') }}/"+id;
|
||||
let formData = new FormData();
|
||||
let token = "{{ csrf_token() }}";
|
||||
formData.append("dokumen_persetujuan", file_data ?? "");
|
||||
formData.append("biaya_penawaran", biaya);
|
||||
formData.append("kjpp_rekanan_id", kjpp_id);
|
||||
formData.append("_method", "PUT");
|
||||
formData.append("_token", token);
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "PUT",
|
||||
cache: false,
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
type: "POST",
|
||||
data: formData,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
success:function(response){
|
||||
if('success' == response.status)
|
||||
{
|
||||
swal.fire('Deleted!', response.message, 'success').then(() => {
|
||||
window.location.reload();
|
||||
});
|
||||
// toastr.success(response.message);
|
||||
// success
|
||||
var message = response.message;
|
||||
toastrku("success", message);
|
||||
setTimeout(function () {
|
||||
location.reload(true);
|
||||
}, 2000);
|
||||
}
|
||||
else
|
||||
else if('error' == response.status)
|
||||
{
|
||||
Swal.fire('Error!', response.message, 'error');
|
||||
// toastr.error(response.message);
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
// console.log(errors);
|
||||
console.log(response);
|
||||
|
||||
error: function (response, textStatus, errorThrown) {
|
||||
var errors = response.responseJSON.errors;
|
||||
$.each(errors, function (key, value) {
|
||||
console.log("v = " + value);
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
}
|
||||
|
||||
function deleteData(data, kjppName) {
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert KJPP "+kjppName+"!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.updateKJPPStatus','') }}/"+data;
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id =data;
|
||||
input_data.kjppName =kjppName;
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "PUT",
|
||||
cache: false,
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
|
||||
if('success' == response.status)
|
||||
{
|
||||
swal.fire('Deleted!', response.message.message_success[0], 'success').then(() => {
|
||||
window.location.reload();
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
Swal.fire('Error!', response.message.message_error_try_catch[0], 'error');
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
// console.log(errors);
|
||||
console.log(response);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
@@ -1,19 +1,19 @@
|
||||
@push('scripts')
|
||||
@include('lpj::assetsku.includenya')
|
||||
@include('lpj::prosespenawaran.js.editextjs')
|
||||
<script type="module">
|
||||
|
||||
@include('lpj::prosespenawaran.js.editextjs')
|
||||
<script type="module">
|
||||
|
||||
$(document).ready(function() {
|
||||
prepareForm();
|
||||
});
|
||||
|
||||
function prepareForm()
|
||||
|
||||
function prepareForm()
|
||||
{
|
||||
setData();
|
||||
}
|
||||
|
||||
function setData()
|
||||
{
|
||||
function setData()
|
||||
{
|
||||
let id = $("#id").val();
|
||||
let token = "{{ csrf_token() }}";
|
||||
// alert('token = ' + token);
|
||||
@@ -33,11 +33,18 @@
|
||||
// }
|
||||
},
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
|
||||
$("#textReg").text(response.penawaran.nomor_registrasi);
|
||||
$("#textCodePenawaran").text(response.penawaran.code);
|
||||
setTablesKJPP1(response.penawrandetails);
|
||||
if ('success' == response.status)
|
||||
{
|
||||
$("#textReg").text(response.penawaran.nomor_registrasi);
|
||||
$("#textCodePenawaran").text(response.penawaran.code);
|
||||
setTablesKJPP1(response.penawrandetails);
|
||||
}
|
||||
else if('error' == response.status)
|
||||
{
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
},
|
||||
error: function(xhr) {
|
||||
},
|
||||
@@ -48,7 +55,7 @@
|
||||
|
||||
function setTablesKJPP1(datas)
|
||||
{
|
||||
let i=1;
|
||||
let i=1;
|
||||
$.each(datas, function(key, value){
|
||||
var kjppName = value.kjpp_code+' - '+value.kjpp_name;
|
||||
var biaya_penawaran = value.biaya_penawaran;// alert(biaya_penawaran);
|
||||
@@ -62,16 +69,21 @@
|
||||
var markup = '<tr>';
|
||||
markup +='<td valign="top">'+i+'</td>';
|
||||
markup +='<td valign="top"><label id="{{$route[1]}}_kjppName_'+value.id+'">'+kjppName+'</label></td>';
|
||||
markup +='<td valign="top"><div class="input-group"><span class="btn btn-input">Rp.</span><input type="text" disabled="" style="text-align: right;" onkeydown="return numbersonly(this, event);" onkeyup="javascript:tandaPemisahTitik(this);" class="inputku input" id="{{$route[1]}}_biayaPenawaran_'+value.id+'" name="{{$route[1]}}_biayaPenawaran_'+value.id+'"></div><em id="{{$route[1]}}_biayaPenawaran_msg_'+value.id+'" class="alert text-danger text-sm"></em></td>';
|
||||
markup +='<td valign="top"><div class="input-group"><span class="inputku btn btn-input" id="{{$route[1]}}_rp_'+value.id+'">Rp.</span><input type="text" disabled="" style="text-align: right;" onkeydown="return numbersonly(this, event);" onkeyup="javascript:tandaPemisahTitik(this);" class="inputku input" id="{{$route[1]}}_biayaPenawaran_'+value.id+'" name="{{$route[1]}}_biayaPenawaran_'+value.id+'"></div><em id="{{$route[1]}}_biayaPenawaran_msg_'+value.id+'" class="alert text-danger text-sm"></em></td>';
|
||||
markup +='<td><input type="file" disabled="" class="inputku file-input" id="{{$route[1]}}_dokumenPersetujuan_'+value.id+'" name="{{$route[1]}}_dokumenPersetujuan_'+value.id+'" accept="application/pdf" /><em id="{{$route[1]}}_dokumenPersetujuan_msg_'+value.id+'" class="alert text-danger text-sm"></em>'+htmlDokumenPersetujuanDownload+'</td>';
|
||||
markup +='<td><div class="flex flex-nowrap justify-center">';
|
||||
markup +='<a disabled="" class="btn btn-sm btn-icon btn-clear btn-info" href="javascript:void(0)" id="{{$route[1]}}_icon_update_'+value.id+'" title="Proses Penawaran '+kjppName+'" onclick="updateData('+value.id+','+value.kjpp_rekanan_id+',\''+kjppName+'\')"><i class="ki-outline ki-notepad-edit"></i></a>';
|
||||
markup +='<a disabled="" class="delete btn btn-sm btn-icon btn-clear btn-danger" id="{{$route[1]}}_icon_delete_'+value.id+'" onclick="deleteData('+value.id+')" title="Hapus Proses Penawaran '+kjppName+'"><i class="ki-outline ki-trash"></i></a>';
|
||||
markup +='<a disabled="" class="btn btn-sm btn-icon btn-clear btn-info" href="javascript:void(0)" id="{{$route[1]}}_icon_update_'+value.id+'" title="Proses Penawaran '+kjppName+'" onclick="updateData('+value.id+','+value.kjpp_rekanan_id+',\''+kjppName+'\')"><i class="ki-outline ki-bookmark"></i></a>';
|
||||
markup +='<a disabled="" class="delete btn btn-sm btn-icon btn-clear btn-danger" id="{{$route[1]}}_icon_delete_'+value.id+'" onclick="deleteData('+value.id+',\''+kjppName+'\')" title="Hapus Proses Penawaran '+kjppName+'"><i class="ki-outline ki-trash"></i></a>';
|
||||
markup +='<label class="switch"><input name="{{$route[1]}}_check_'+value.id+'" id="{{$route[1]}}_check_'+value.id+'" onclick="switchProses('+value.id+')" type="checkbox" value="0"/><span class="switch-label">Proses</span></label></div></td>';
|
||||
markup += '</tr>';
|
||||
|
||||
$('#tbodyKJPP1').append(markup);
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+value.id).val(tandaPemisahTitik(biaya_penawaran));
|
||||
|
||||
// pengecekan kondisi format number
|
||||
var biaya_penawaran_format = "";
|
||||
if(biaya_penawaran)
|
||||
biaya_penawaran_format=tandaPemisahTitik(biaya_penawaran);
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+value.id).val(biaya_penawaran_format);
|
||||
i++;
|
||||
});
|
||||
}
|
||||
@@ -92,14 +104,14 @@
|
||||
}
|
||||
});
|
||||
|
||||
// update penawaran & permohonan status
|
||||
// updateAll penawaran & permohonan status
|
||||
$("#{{$route[1]}}_toEdit").click(function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.updateAll',$id) }}";
|
||||
|
||||
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id = "{{ $id }}";
|
||||
@@ -110,19 +122,24 @@
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
if('success' == response.status)
|
||||
{
|
||||
toastr.success(response.message);
|
||||
setTimeout(function () {
|
||||
var url = "{{ route('tender.prosespenawaran.index') }}";
|
||||
|
||||
if ('success' == response.status)
|
||||
{
|
||||
// toastr.success(response.message);
|
||||
// success
|
||||
var message = response.message;
|
||||
toastrku("success", message);
|
||||
setTimeout(function () {
|
||||
var url = "{{ route('tender.prosespenawaran.index') }}";
|
||||
$(location).attr('href',url);
|
||||
// window.location.href = "https://www.newurl.com";
|
||||
}, 2000);
|
||||
|
||||
}
|
||||
else if('error' == response.status)
|
||||
{
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
else
|
||||
toastr.error(_data.message);
|
||||
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
@@ -130,7 +147,8 @@
|
||||
console.log(response);
|
||||
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
@endpush
|
||||
@endpush
|
||||
|
||||
92
resources/views/prosespenawaranulang/edit.blade.php
Normal file
92
resources/views/prosespenawaranulang/edit.blade.php
Normal file
@@ -0,0 +1,92 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
// $route = Route::currentRouteName();
|
||||
// dd($route);
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<input type="hidden" id="id" name="id" value="{{ $id }}">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Tambah Data Proses Penawaran Ulang
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('tender.prosespenawaranulang.show', $id) }}" class="btn btn-xs btn-primary" title="Detail"><i class="ki-filled ki-abstract-26"></i> Detail</a>
|
||||
<a href="{{ route('tender.prosespenawaranulang.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textReg">
|
||||
No. registrasi
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Kode Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textCodePenawaran">
|
||||
Kode Penawaran
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Status Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textStatusPenawaran">
|
||||
Status
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
<!-- datatables -->
|
||||
<div class="grid">
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">Data KJPP</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto">
|
||||
<table class="table table-border align-middle text-gray-700 font-medium text-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14 text-center">No</th>
|
||||
<th class="min-w-[250px]">KJPP</th>
|
||||
<th>Biaya Penawaran</th>
|
||||
<th>Upload Penawaran</th>
|
||||
<th class="min-w-[50px] text-center">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="tbodyKJPP1">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- datatables -->
|
||||
<div class="flex justify-end">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@include('lpj::prosespenawaranulang.js.editjs')
|
||||
152
resources/views/prosespenawaranulang/index.blade.php
Normal file
152
resources/views/prosespenawaranulang/index.blade.php
Normal file
@@ -0,0 +1,152 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('tender.prosespenawaranulang') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="prosespenawaranulang-table" data-api-url="{{ route('tender.prosespenawaranulang.datatables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
Daftar Proses Penawaran Ulang
|
||||
</h3>
|
||||
<div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Proses penawaran Ulang" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<a class="btn btn-sm btn-light" href="#"> Export to Excel </a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm" data-datatable-table="true">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14">
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox"/>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="nomor_registrasi">
|
||||
<span class="sort"> <span class="sort-label"> Nomor Registrasi </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Kode Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="start_date">
|
||||
<span class="sort"> <span class="sort-label"> Tanggal Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_kjpp_id">
|
||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="penawarandetails_count">
|
||||
<span class="sort"> <span class="sort-label"> Total KJPP </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="status">
|
||||
<span class="sort"> <span class="sort-label"> Status </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
||||
<div class="flex items-center gap-2">
|
||||
Show
|
||||
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per page
|
||||
</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<span data-datatable-info="true"> </span>
|
||||
<div class="pagination" data-datatable-pagination="true">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/javascript">
|
||||
function showProsesPenawaranUlangData(regId)
|
||||
{
|
||||
// alert('aw');
|
||||
var url = "{{ url('tender/prosespenawaranulang') }}/"+regId;
|
||||
$(location).attr('href',url);
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#prosespenawaranulang-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
const dataTableOptions = {
|
||||
apiEndpoint: apiUrl,
|
||||
pageSize: 5,
|
||||
columns: {
|
||||
select: {
|
||||
render: (item, data, context) => {
|
||||
const checkbox = document.createElement('input');
|
||||
checkbox.className = 'checkbox checkbox-sm';
|
||||
checkbox.type = 'checkbox';
|
||||
checkbox.value = data.id.toString();
|
||||
checkbox.setAttribute('data-datatable-row-check', 'true');
|
||||
return checkbox.outerHTML.trim();
|
||||
},
|
||||
},
|
||||
'nomor_registrasi': {
|
||||
title: 'Nomor Registrasi',
|
||||
},
|
||||
code: {
|
||||
title: 'Kode Penawaran',
|
||||
},
|
||||
date_range: {
|
||||
title: 'Tanggal Penawaran',
|
||||
},
|
||||
tujuan_penilaian_kjpp_name: {
|
||||
title: 'Tujuan Penilaian',
|
||||
},
|
||||
penawarandetails_count: {
|
||||
title: 'Total KJPP',
|
||||
createdCell(cell) {
|
||||
cell.classList.add('text-center');
|
||||
},
|
||||
},
|
||||
status: {
|
||||
title: 'Status'
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `<div class="flex flex-nowrap justify-center">
|
||||
<a onclick="showProsesPenawaranUlangData(${data.id})" class="btn btn-sm btn-icon btn-clear btn-primary" title="Detail">
|
||||
<i class="ki-outline ki-eye"></i>
|
||||
</a>
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" title="Proses Penawaran" href="tender/prosespenawaranulang/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
let dataTable = new KTDataTable(element, dataTableOptions);
|
||||
// Custom search functionality
|
||||
searchInput.addEventListener('input', function () {
|
||||
const searchValue = this.value.trim();
|
||||
dataTable.search(searchValue, true);
|
||||
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
152
resources/views/prosespenawaranulang/js/editextjs.blade.php
Normal file
152
resources/views/prosespenawaranulang/js/editextjs.blade.php
Normal file
@@ -0,0 +1,152 @@
|
||||
<script tipe="module">
|
||||
function switchProses(id)
|
||||
{
|
||||
removeErrorCssMsg();
|
||||
let c = $('#{{$route[1]}}_check_'+id).val();
|
||||
|
||||
if($('input[name="{{$route[1]}}_check_'+id+'"]').is(':checked'))
|
||||
{
|
||||
// checked
|
||||
// alert('aktif nih');
|
||||
setActiveElement(id);
|
||||
}else
|
||||
{
|
||||
// unchecked
|
||||
//alert('tdk aktif nih');
|
||||
setNonActiveElement(id);
|
||||
}
|
||||
}
|
||||
|
||||
function setActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).removeAttr('disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).removeAttr('disabled');
|
||||
}
|
||||
|
||||
function setNonActiveElement(id)
|
||||
{
|
||||
$('#{{$route[1]}}_biayaPenawaran_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_dokumenPersetujuan_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_update_'+id).attr('disabled', 'disabled');
|
||||
$('#{{$route[1]}}_icon_delete_'+id).attr('disabled', 'disabled');
|
||||
}
|
||||
|
||||
function updateData(id, kjpp_id, kjppName){
|
||||
removeErrorCssMsg();
|
||||
let biaya = $("#{{$route[1]}}_biayaPenawaran_"+id).val();
|
||||
let filepdf = $("#{{$route[1]}}_dokumenPersetujuan_"+id).val();
|
||||
let passednih = true;
|
||||
if(!biaya){
|
||||
$("#{{$route[1]}}_rp_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_biayaPenawaran_msg_"+id).text("Silahkan isi Biaya Penawaran nya");
|
||||
passednih = false;
|
||||
}
|
||||
if(!filepdf){
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_msg_"+id).text("Silahkan isi dokumen nya");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+id).val("");
|
||||
passednih = false;
|
||||
}
|
||||
|
||||
if(passednih)
|
||||
{
|
||||
var file_data = $("#{{$route[1]}}_dokumenPersetujuan_"+id).prop("files")[0];
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.update', '') }}/"+id;
|
||||
let formData = new FormData();
|
||||
let token = "{{ csrf_token() }}";
|
||||
formData.append("dokumen_persetujuan", file_data ?? "");
|
||||
formData.append("biaya_penawaran", biaya);
|
||||
formData.append("kjpp_rekanan_id", kjpp_id);
|
||||
formData.append("_method", "PUT");
|
||||
formData.append("_token", token);
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "POST",
|
||||
data: formData,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
success:function(response){
|
||||
if('success' == response.status)
|
||||
{
|
||||
// toastr.success(response.message);
|
||||
// success
|
||||
var message = response.message;
|
||||
toastrku("success", message);
|
||||
setTimeout(function () {
|
||||
location.reload(true);
|
||||
}, 2000);
|
||||
}
|
||||
else if('error' == response.status)
|
||||
{
|
||||
// toastr.error(response.message);
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
|
||||
},
|
||||
error: function (response, textStatus, errorThrown) {
|
||||
var errors = response.responseJSON.errors;
|
||||
$.each(errors, function (key, value) {
|
||||
console.log("v = " + value);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function deleteData(data, kjppName) {
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert KJPP "+kjppName+"!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
|
||||
//define variable
|
||||
let token = "{{ csrf_token() }}";
|
||||
let useURL = "{{ route($route[0].'.'.$route[1].'.updateKJPPStatus','') }}/"+data;
|
||||
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id =data;
|
||||
input_data.kjppName =kjppName;
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "PUT",
|
||||
cache: false,
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
if('success' == response.status)
|
||||
{
|
||||
swal.fire('Deleted!', response.message.message_success[0], 'success').then(() => {
|
||||
window.location.reload();
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
Swal.fire('Error!', response.message.message_error_try_catch[0], 'error');
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
error: function(response, textStatus, errorThrown) {
|
||||
// var errors = response.responseJSON.errors;
|
||||
// console.log(errors);
|
||||
console.log(response);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
112
resources/views/prosespenawaranulang/js/editjs.blade.php
Normal file
112
resources/views/prosespenawaranulang/js/editjs.blade.php
Normal file
@@ -0,0 +1,112 @@
|
||||
@push('scripts')
|
||||
@include('lpj::assetsku.includenya')
|
||||
@include('lpj::prosespenawaranulang.js.editextjs')
|
||||
<script type="module">
|
||||
|
||||
$(document).ready(function() {
|
||||
prepareForm();
|
||||
});
|
||||
|
||||
function prepareForm()
|
||||
{
|
||||
setData();
|
||||
}
|
||||
|
||||
function setData()
|
||||
{
|
||||
let id = $("#id").val();
|
||||
let token = "{{ csrf_token() }}";
|
||||
// alert('token = ' + token);
|
||||
var useURL = "{{ route('tender.prosespenawaranulang.setData') }}";
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id = id;
|
||||
|
||||
$.ajax({
|
||||
url: useURL,
|
||||
type: "POST",
|
||||
data: input_data,
|
||||
dataType: "json",
|
||||
beforeSend: function() {
|
||||
// if ($("#myLoader").hasClass("pre-loader hidden")) {
|
||||
// pleaseStartLoader();
|
||||
// }
|
||||
},
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
|
||||
if("success"==response.status)
|
||||
{
|
||||
var statusText = response.penawaran.status;
|
||||
$("#textReg").text(response.penawaran.nomor_registrasi);
|
||||
$("#textCodePenawaran").text(response.penawaran.code);
|
||||
$("#textStatusPenawaran").text(statusText);
|
||||
setTablesKJPP1(response.penawrandetails);
|
||||
}
|
||||
else
|
||||
{
|
||||
// toastr.error(response.message);
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
|
||||
},
|
||||
error: function(xhr) {
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setTablesKJPP1(datas)
|
||||
{
|
||||
let i=1;
|
||||
$.each(datas, function(key, value){
|
||||
var kjppName = value.kjpp_code+' - '+value.kjpp_name;
|
||||
var biaya_penawaran = value.biaya_penawaran;// alert(biaya_penawaran);
|
||||
var htmlDokumenPersetujuanDownload='';
|
||||
var dokumenPersetujuanDownload = value.dokumen_persetujuan;
|
||||
if(dokumenPersetujuanDownload)
|
||||
{
|
||||
htmlDokumenPersetujuanDownload='<div class="flex items-center justify-between flex-wrap my-2.5 gap-2"><a href="'+value.dokumen_persetujuan+'" class="badge badge-sm badge-outline" download="'+value.attachment+'">'+value.attachment+'<i class="ki-filled ki-cloud-download"></i></a></div>';
|
||||
}
|
||||
|
||||
var markup = '<tr>';
|
||||
markup +='<td valign="top">'+i+'</td>';
|
||||
markup +='<td valign="top"><label id="{{$route[1]}}_kjppName_'+value.id+'">'+kjppName+'</label></td>';
|
||||
markup +='<td valign="top"><div class="input-group"><span class="inputku btn btn-input" id="{{$route[1]}}_rp_'+value.id+'">Rp.</span><input type="text" disabled="" style="text-align: right;" onkeydown="return numbersonly(this, event);" onkeyup="javascript:tandaPemisahTitik(this);" class="inputku input" id="{{$route[1]}}_biayaPenawaran_'+value.id+'" name="{{$route[1]}}_biayaPenawaran_'+value.id+'"></div><em id="{{$route[1]}}_biayaPenawaran_msg_'+value.id+'" class="alert text-danger text-sm"></em></td>';
|
||||
markup +='<td><input type="file" disabled="" class="inputku file-input" id="{{$route[1]}}_dokumenPersetujuan_'+value.id+'" name="{{$route[1]}}_dokumenPersetujuan_'+value.id+'" accept="application/pdf" /><em id="{{$route[1]}}_dokumenPersetujuan_msg_'+value.id+'" class="alert text-danger text-sm"></em>'+htmlDokumenPersetujuanDownload+'</td>';
|
||||
markup +='<td><div class="flex flex-nowrap justify-center">';
|
||||
markup +='<a disabled="" class="btn btn-sm btn-icon btn-clear btn-info" href="javascript:void(0)" id="{{$route[1]}}_icon_update_'+value.id+'" title="Proses Penawaran '+kjppName+'" onclick="updateData('+value.id+','+value.kjpp_rekanan_id+',\''+kjppName+'\')"><i class="ki-outline ki-bookmark"></i></a>';
|
||||
markup +='<a disabled="" class="delete btn btn-sm btn-icon btn-clear btn-danger" id="{{$route[1]}}_icon_delete_'+value.id+'" onclick="deleteData('+value.id+',\''+kjppName+'\')" title="Hapus Proses Penawaran '+kjppName+'"><i class="ki-outline ki-trash"></i></a>';
|
||||
markup +='<label class="switch"><input name="{{$route[1]}}_check_'+value.id+'" id="{{$route[1]}}_check_'+value.id+'" onclick="switchProses('+value.id+')" type="checkbox" value="0"/><span class="switch-label">Proses</span></label></div></td>';
|
||||
markup += '</tr>';
|
||||
|
||||
$('#tbodyKJPP1').append(markup);
|
||||
|
||||
// pengecekan kondisi format number
|
||||
var biaya_penawaran_format = "";
|
||||
if(biaya_penawaran)
|
||||
biaya_penawaran_format=tandaPemisahTitik(biaya_penawaran);
|
||||
$("#{{$route[1]}}_biayaPenawaran_"+value.id).val(biaya_penawaran_format);
|
||||
i++;
|
||||
});
|
||||
}
|
||||
|
||||
$(document).on("input", "input:file", function(e) {
|
||||
let fileName = e.target.files[0].name;
|
||||
let inputFile = e.target.id;
|
||||
const myArray = inputFile.split("_");
|
||||
let penawaranID = myArray[myArray.length-1];
|
||||
let kjppName = $("#{{$route[1]}}_kjppName_"+penawaranID).text();
|
||||
let upld = fileName.split(".").pop();
|
||||
if(upld == "pdf" || upld =="PDF"){}
|
||||
else{
|
||||
removeErrorCssMsg();
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_"+penawaranID).addClass(" border-danger");
|
||||
$("#{{$route[1]}}_dokumenPersetujuan_msg_"+penawaranID).text("Silahkan Masukan tipe file PDF Mas");
|
||||
$("#"+inputFile).val("");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
43
resources/views/prosespenawaranulang/show.blade.php
Normal file
43
resources/views/prosespenawaranulang/show.blade.php
Normal file
@@ -0,0 +1,43 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Detail Data Proses Penawaran Ulang
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('tender.prosespenawaranulang.edit', $id) }}" class="btn btn-xs btn-primary" title="Proses Penawaran Ulang"><i class="ki-filled ki-arrow-circle-right"></i> Proses Penawaran Ulang</a>
|
||||
<a href="{{ route('tender.prosespenawaranulang.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $prosespenawaran->nomor_registrasi }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Kode Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $prosespenawaran->code }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
@@ -38,11 +38,23 @@
|
||||
// }
|
||||
},
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
|
||||
if ('success' == response.status)
|
||||
{
|
||||
$("#textReg").text(response.datas.nomor_registrasi);
|
||||
setJenisPenilaianList(response.jenisPenilaians,0);
|
||||
setRegionList(response.regions,0);
|
||||
|
||||
$("#textReg").text(response.datas.nomor_registrasi);
|
||||
setJenisPenilaianList(response.jenisPenilaians,0);
|
||||
setRegionList(response.regions,0);
|
||||
// success
|
||||
// var message = response.message;
|
||||
// toastrku("success", message);
|
||||
|
||||
}
|
||||
else if('error' == response.status)
|
||||
{
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
},
|
||||
error: function(xhr) {
|
||||
},
|
||||
@@ -152,8 +164,14 @@
|
||||
else
|
||||
{
|
||||
//toastr.success(response.message);
|
||||
var url = "{{ route('registrasi.index') }}";
|
||||
$(location).attr('href',url);
|
||||
var message = response.message;
|
||||
toastrku("success", message);
|
||||
|
||||
setTimeout(function () {
|
||||
var url = "{{ route('registrasi.index') }}";
|
||||
$(location).attr('href',url);
|
||||
// window.location.href = "https://www.newurl.com";
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
},
|
||||
@@ -189,10 +207,5 @@
|
||||
}
|
||||
});
|
||||
|
||||
/*
|
||||
$('#{{$route[0]}}_jenis_penilaian').on('change', function() {
|
||||
console.log( this.value );
|
||||
});
|
||||
*/
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@@ -145,98 +145,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Data Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div data-accordion="true">
|
||||
@foreach($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200" data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
<i class="ki-outline ki-plus text-gray-600 text-2sm accordion-active:hidden block">
|
||||
</i>
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->jenisJaminan->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->hubungan_pemilik->name?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->address ?? ""}},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? "" }}, {{ $dokumen->pemilik->district->name ?? "" }}, {{ $dokumen->pemilik->city->name ?? "" }}, {{ $dokumen->pemilik->province->name ?? "" }} - {{ $dokumen->pemilik->village->postal_code ?? "" }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
@foreach($dokumen->detail as $detail)
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal max-w-[100px]">
|
||||
{{ $loop->index + 1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $detail->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Dokumen Jaminan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
@if(isset($detail->dokumen_jaminan))
|
||||
<a href="{{ route('debitur.jaminan.download',['id'=>$permohonan->debiture->id,'dokumen'=>$detail->id]) }}" class="badge badge-sm badge-outline mt-2">{{ basename($detail->dokumen_jaminan) }}
|
||||
<i class="ki-filled ki-cloud-download"></i></a>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Keterangan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $detail->keterangan ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@include('lpj::component.detail-jaminan')
|
||||
|
||||
|
||||
<div class="card pb-2.5">
|
||||
@@ -312,5 +221,4 @@
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
@include('lpj::registrasi.js.showjs')
|
||||
@include('lpj::registrasi.js.editjs')
|
||||
|
||||
106
resources/views/registrasifinal/edit.blade.php
Normal file
106
resources/views/registrasifinal/edit.blade.php
Normal file
@@ -0,0 +1,106 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
// $route = Route::currentRouteName();
|
||||
// dd($route);
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
|
||||
<form id="{{$route[0]}}_form" name="{{$route[0]}}_form" method="POST">
|
||||
<input type="hidden" id="id" name="id" value="{{ $id }}">
|
||||
@method('PUT')
|
||||
@csrf
|
||||
<div class="card pb-2.5">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Tambah Registrasi Final
|
||||
</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('registrasifinal.show', $id) }}" class="btn btn-xs btn-primary" title="Detail"><i class="ki-filled ki-abstract-26"></i> Detail</a>
|
||||
<a href="{{ route('registrasifinal.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textReg">
|
||||
No. registrasi
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Kode Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textCodePenawaran">
|
||||
Kode Penawaran
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Status Penawaran:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
<label class="card-title" id="textStatusPenawaran">
|
||||
Status
|
||||
</label>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="card-body grid gap-5">
|
||||
|
||||
<div id="{{ $route[0] }}_div_region" class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Dokumen SPK
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<em id="" class="alert text-danger text-sm"></em>
|
||||
<div class="flex items-center justify-between flex-wrap my-2.5 gap-2"><a href="javascript:void(0)" class="badge badge-sm badge-outline">SPK_Dokumen.pdf <i class="ki-filled ki-cloud-download"></i></a></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="{{ $route[0] }}_div_region" class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Region
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<select class="inputku select" id="{{$route[0]}}_region" name="{{$route[0]}}_region">
|
||||
<option></option>
|
||||
</select>
|
||||
<em id="{{$route[0]}}_region_msg" class="alert text-danger text-sm"></em>
|
||||
</div>
|
||||
</div>
|
||||
<div id="{{ $route[0] }}_div_catatan" class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Catatan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="inputku textarea" name="{{$route[0]}}_catatan" id="{{$route[0]}}_catatan" placeholder="Catatan..." rows="6"></textarea>
|
||||
<em id="{{$route[0]}}_catatan_msg" class="alert text-danger text-sm"></em>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="button" class="btn btn-primary" id="toEdit">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
@include('lpj::registrasifinal.js.editjs')
|
||||
158
resources/views/registrasifinal/index.blade.php
Normal file
158
resources/views/registrasifinal/index.blade.php
Normal file
@@ -0,0 +1,158 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('registrasifinal') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="registrasifinal-table" data-api-url="{{ route('registrasifinal.datatables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
Daftar Registrasi Final
|
||||
</h3>
|
||||
<div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Registrasi Final" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<a class="btn btn-sm btn-light" href="#"> Export to Excel </a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm" data-datatable-table="true">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14">
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox"/>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="nomor_registrasi">
|
||||
<span class="sort"> <span class="sort-label"> Nomor Registrasi </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Kode Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="start_date">
|
||||
<span class="sort"> <span class="sort-label"> Tanggal Penawaran </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_kjpp_id">
|
||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="nama_kjpp_sebelumnya">
|
||||
<span class="sort"> <span class="sort-label">KJPP Data</span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[150px]" data-datatable-column="status">
|
||||
<span class="sort"> <span class="sort-label"> Status </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
||||
<div class="flex items-center gap-2">
|
||||
Show
|
||||
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per page
|
||||
</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<span data-datatable-info="true"> </span>
|
||||
<div class="pagination" data-datatable-pagination="true">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/javascript">
|
||||
function showRegistrasiFinal(regId)
|
||||
{
|
||||
var url = "{{ url('registrasifinal') }}/"+regId;
|
||||
$(location).attr('href',url);
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#registrasifinal-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
const dataTableOptions = {
|
||||
apiEndpoint: apiUrl,
|
||||
pageSize: 5,
|
||||
columns: {
|
||||
select: {
|
||||
render: (item, data, context) => {
|
||||
const checkbox = document.createElement('input');
|
||||
checkbox.className = 'checkbox checkbox-sm';
|
||||
checkbox.type = 'checkbox';
|
||||
checkbox.value = data.id.toString();
|
||||
checkbox.setAttribute('data-datatable-row-check', 'true');
|
||||
return checkbox.outerHTML.trim();
|
||||
},
|
||||
},
|
||||
'nomor_registrasi': {
|
||||
title: 'Nomor Registrasi',
|
||||
},
|
||||
code: {
|
||||
title: 'Kode Penawaran',
|
||||
},
|
||||
date_range: {
|
||||
title: 'Tanggal Penawaran',
|
||||
},
|
||||
tujuan_penilaian_kjpp_name: {
|
||||
title: 'Tujuan Penilaian',
|
||||
},
|
||||
nama_kjpp_sebelumnya: {
|
||||
title: 'Nama KJPP Terpilih',
|
||||
render: (item, data) => {
|
||||
return `${data.nama_kjpp_sebelumnya}`+'<br />'
|
||||
+`${data.biaya_kjpp_sebelumnya}`+'<br /> '
|
||||
+`${data.tanggal_penilaian_sebelumnya}`;
|
||||
},
|
||||
},
|
||||
status: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `${data.status}`.toUpperCase();
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `<div class="flex flex-nowrap justify-center">
|
||||
<a onclick="showRegistrasiFinal(${data.id})" class="btn btn-sm btn-icon btn-clear btn-primary" title="Detail">
|
||||
<i class="ki-outline ki-eye"></i>
|
||||
</a>
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" title="Proses Penawaran" href="registrasifinal/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
let dataTable = new KTDataTable(element, dataTableOptions);
|
||||
// Custom search functionality
|
||||
searchInput.addEventListener('input', function () {
|
||||
const searchValue = this.value.trim();
|
||||
dataTable.search(searchValue, true);
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@@ -1,12 +1,17 @@
|
||||
@push('scripts')
|
||||
<script type="module">
|
||||
|
||||
@include('lpj::assetsku.includenya')
|
||||
<script type="module">
|
||||
|
||||
$(document).ready(function() {
|
||||
prepareForm();
|
||||
});
|
||||
|
||||
function prepareForm()
|
||||
{
|
||||
$("#registrasifinal_form")[0].reset();
|
||||
// $("#{{ $route[0] }}_div_catatan").hide();
|
||||
// $("#{{ $route[0] }}_div_region").hide();
|
||||
// prepare data
|
||||
setData();
|
||||
}
|
||||
|
||||
@@ -15,7 +20,7 @@
|
||||
let id = $("#id").val();
|
||||
let token = "{{ csrf_token() }}";
|
||||
// alert('token = ' + token);
|
||||
var useURL = "{{ route('registrasi.showData') }}";
|
||||
var useURL = "{{ route('registrasifinal.setData') }}";
|
||||
var input_data = new Object();
|
||||
input_data._token = token;
|
||||
input_data.id = id;
|
||||
@@ -31,10 +36,24 @@
|
||||
// }
|
||||
},
|
||||
success: function(response) {
|
||||
console.log(response);
|
||||
|
||||
if ('success' == response.status)
|
||||
{
|
||||
$("#textReg").text(response.datas.nomor_registrasi);
|
||||
$("#textCodePenawaran").text(response.penawaran.code);
|
||||
$("#textStatusPenawaran").text(response.penawaran.status);
|
||||
setRegionList(response.regions,0);
|
||||
|
||||
$("#textReg").text(response.datas.nomor_registrasi);
|
||||
// setJenisPenilaianList(response.jenisPenilaians,0);
|
||||
// success
|
||||
// var message = response.message;
|
||||
// toastrku("success", message);
|
||||
|
||||
}
|
||||
else if('error' == response.status)
|
||||
{
|
||||
var message = response.message;
|
||||
toastrku("error", message);
|
||||
}
|
||||
},
|
||||
error: function(xhr) {
|
||||
},
|
||||
@@ -43,35 +62,16 @@
|
||||
});
|
||||
}
|
||||
|
||||
function setJenisPenilaianList(datas, cid)
|
||||
function setRegionList(datas, cid)
|
||||
{
|
||||
$('#{{$route[0]}}_jenis_penilaian').empty().append('<option value="0"> - Pilih Jenis Penilaian - </option>');
|
||||
$('#{{$route[0]}}_region').empty().append('<option value="0"> - Pilih Region - </option>');
|
||||
|
||||
$.each(datas, function(key, value){
|
||||
|
||||
$('#{{$route[0]}}_jenis_penilaian').append(new Option(value, key));
|
||||
$('#{{$route[0]}}_region').append(new Option(value, key));
|
||||
});
|
||||
}
|
||||
|
||||
$('input[type=radio][name={{ $route[0] }}_tindakan]').change(function() {
|
||||
|
||||
|
||||
if($(this).val()==0)
|
||||
{
|
||||
// show jenis pilihan
|
||||
// hide catatan
|
||||
$("#{{ $route[0] }}_div_jenis_pilihan").show();
|
||||
$("#{{ $route[0] }}_catatan").val('');
|
||||
$("#{{ $route[0] }}_div_catatan").hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#{{$route[0]}}_jenis_penilaian option[value=0]").prop('selected', true);
|
||||
$("#{{ $route[0] }}_div_jenis_pilihan").hide();
|
||||
$("#{{ $route[0] }}_div_catatan").show();
|
||||
}
|
||||
});
|
||||
|
||||
$("#toEdit").click(function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
@@ -80,19 +80,17 @@
|
||||
|
||||
let _method = $('input[name=_method]').val();
|
||||
let id = $('#{{$route[0]}}_id').val();
|
||||
let tindakan = $('input[name="{{$route[0]}}_tindakan"]:checked').val();
|
||||
let jenis_penilaian = $("#{{$route[0]}}_jenis_penilaian").val();
|
||||
let region = $("#{{$route[0]}}_region").val();
|
||||
let catatan = $("#{{$route[0]}}_catatan").val();
|
||||
|
||||
if(jenis_penilaian==0)
|
||||
jenis_penilaian='';
|
||||
if(region==0)
|
||||
region='';
|
||||
|
||||
var input_data = new Object();
|
||||
input_data._token= token;
|
||||
input_data._method= _method;
|
||||
input_data.id= id;
|
||||
input_data.tindakan= tindakan;
|
||||
input_data.jenis_penilaian= jenis_penilaian;
|
||||
input_data.region= region;
|
||||
input_data.catatan = catatan;
|
||||
|
||||
let useURL= '{{ route($route[0].'.update', $id) }}';
|
||||
@@ -115,17 +113,23 @@
|
||||
$("#{{$route[0]}}_catatan_msg").text(value);
|
||||
}
|
||||
|
||||
if ("jenis_penilaian" === index) {
|
||||
$("#{{$route[0]}}_jenis_penilaian").addClass(" border-danger");
|
||||
$("#{{$route[0]}}_jenis_penilaian_msg").text(value);
|
||||
if ("region" === index) {
|
||||
$("#{{$route[0]}}_region").addClass(" border-danger");
|
||||
$("#{{$route[0]}}_region_msg").text(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
toastr.success(response.message);
|
||||
var url = "{{ route('registrasi.index') }}";
|
||||
$(location).attr('href',url);
|
||||
//toastr.success(response.message);
|
||||
var message = response.message;
|
||||
toastrku("success", message);
|
||||
|
||||
setTimeout(function () {
|
||||
var url = "{{ route('registrasifinal.index') }}";
|
||||
$(location).attr('href',url);
|
||||
// window.location.href = "https://www.newurl.com";
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
},
|
||||
@@ -144,5 +148,6 @@
|
||||
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
@endpush
|
||||
151
resources/views/registrasifinal/show.blade.php
Normal file
151
resources/views/registrasifinal/show.blade.php
Normal file
@@ -0,0 +1,151 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render(request()->route()->getName()) }}
|
||||
@endsection
|
||||
@php
|
||||
// $route = Route::currentRouteName();
|
||||
// dd($route); registrasi.show
|
||||
$route = explode('.', Route::currentRouteName());
|
||||
@endphp
|
||||
@section('content')
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<div class="card">
|
||||
<div class="card-header" id="advanced_settings_appearance">
|
||||
<h3 class="card-title">
|
||||
Data Permohonan
|
||||
</h3>
|
||||
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('registrasifinal.edit', $id) }}" class="btn btn-xs btn-primary" title="Register Final"><i class="ki-filled ki-arrow-circle-right"></i> Registrasi Final</a>
|
||||
<a href="{{ route('registrasifinal.index') }}" class="btn btn-xs btn-info"><i class="ki-filled ki-exit-left"></i> Back</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-3">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Nomor Register Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->nomor_registrasi }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemohon:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->user->nik }} | {{ $permohonan->user->name }} | {{ $permohonan->user->branch->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Tujan Permohonan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $permohonan->tujuanPenilaian->name }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Detail Debutur
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<div class="grid grid-cols-1 xl:grid-cols-2 gap-5 lg:gap-7.5">
|
||||
<div class="col-span-1">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal">
|
||||
Name
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
Email
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->email ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
Phone
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->phone ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Address
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->address ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->village->name ?? "" }}, {{ $permohonan->debiture->district->name ?? "" }}, {{ $permohonan->debiture->city->name ?? "" }}, {{ $permohonan->debiture->province->name ?? "" }} - {{ $permohonan->debiture->village->postal_code ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="col-span-1">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Cabang
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->branch->name ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
CIF
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $permohonan->debiture->cif ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 text-gray-600 font-normal">
|
||||
Nomor Rekening
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-sm font-normal">
|
||||
{{ $permohonan->debiture->nomor_rekening ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3">
|
||||
NPWP
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $permohonan->debiture->npwp ?? "" }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@include('lpj::component.detail-jaminan')
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
486
resources/views/resume/index.blade.php
Normal file
486
resources/views/resume/index.blade.php
Normal file
@@ -0,0 +1,486 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('resume') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<style>
|
||||
.input-group {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.left-group {
|
||||
padding-right: 2.5rem;
|
||||
}
|
||||
|
||||
.right-group {
|
||||
padding-left: 2.5rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
pointer-events: none;
|
||||
color: #6b7280;
|
||||
}
|
||||
|
||||
.input-group .input-unit.left {
|
||||
left: 0.75rem;
|
||||
}
|
||||
|
||||
.input-group .input-unit.right {
|
||||
right: 0.75rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" id="debitur-table">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
|
||||
<form action="" method="POST" class="grid gap-5">
|
||||
<input type="hidden" name="id" value="">
|
||||
@csrf
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
CADEB AN
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cadeb') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cadeb" value="">
|
||||
@error('cadeb')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Jenis Aset
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('aset') border-danger bg-danger-light @enderror"
|
||||
type="text" name="aset" value="">
|
||||
@error('aset')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Fasilitas Kredit
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('kredit') border-danger bg-danger-light @enderror"
|
||||
type="text" name="kredit" value="">
|
||||
@error('kredit')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Alamat Objek
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('alamat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="alamat" value="">
|
||||
@error('alamat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Cabang Pemohon
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('cabang') border-danger bg-danger-light @enderror"
|
||||
type="text" name="cabang" value="">
|
||||
@error('cabang')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
AO
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('ao') border-danger bg-danger-light @enderror" type="text"
|
||||
name="ao" value="">
|
||||
@error('ao')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Surveyor
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('surveyor') border-danger bg-danger-light @enderror"
|
||||
type="text" name="surveyor" value="">
|
||||
@error('surveyor')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Penilai
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('penilai') border-danger bg-danger-light @enderror"
|
||||
type="text" name="penilai" value="">
|
||||
@error('penilai')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Tanggal Survey
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_survey') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_survey" value="">
|
||||
@error('tanggal_survey')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Nomor Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('nomor_resume') border-danger bg-danger-light @enderror"
|
||||
type="number" name="nomor_resume" value="">
|
||||
@error('nomor_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
Tanggal Resume
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('tanggal_resume') border-danger bg-danger-light @enderror"
|
||||
type="date" name="tanggal_resume" value="">
|
||||
@error('tanggal_resume')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Positif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_positif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_positif" name="faktor_positif"></textarea>
|
||||
@error('faktor_positif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Faktor Negatif
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('faktor_negatif') border-danger bg-danger-light @enderror" rows="3"
|
||||
type="number" id="faktor_negatif" name="faktor_negatif"></textarea>
|
||||
@error('faktor_negatif')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Kesimpulan Nilai Pasar</label>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai Fisik
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Sesuai IMB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<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">
|
||||
<label class="form-label max-w-56">
|
||||
Asumsi nilai terpotong jalan/GSB
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<div class="flex flex-col lg:flex-row gap-2 w-full">
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="input w-full @error('sertifikat') border-danger bg-danger-light @enderror"
|
||||
type="text" name="sertifikat" placeholder="Sertifikat" value="">
|
||||
@error('sertifikat')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_tanah') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_tanah" placeholder="Luas tanah" value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_tanah')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<input
|
||||
class="left-group input w-full @error('luas_bangunan') border-danger bg-danger-light @enderror"
|
||||
type="number" name="luas_bangunan" placeholder="Luas bangunan"
|
||||
value="">
|
||||
<span class="input-unit right">m²</span>
|
||||
@error('luas_bangunan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="input-group w-full">
|
||||
<span class="input-unit left">Rp</span>
|
||||
<input
|
||||
class="right-group input w-full pl-8 @error('pasar_wajar') border-danger bg-danger-light @enderror"
|
||||
type="number" name="pasar_wajar" placeholder="Nilai pasar wajar"
|
||||
value="">
|
||||
@error('pasar_wajar')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Catatan perlu diperhatikan
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<textarea class="textarea @error('catatan') border-danger bg-danger-light @enderror" rows="3" type="number"
|
||||
id="catatan" name="catatan"></textarea>
|
||||
@error('catatan')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
DISCLAIMER
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<ol>
|
||||
<li>Laporan Resume ini dikeluarkan dikarenakan belum dilakukannya pembayaran biaya
|
||||
penilaian jaminan</li>
|
||||
<li>Laporan Resume ini tidak bisa dijadikan sebagai dasar pengajuan dan atau pencairan
|
||||
kredit, laporan yang digunakan tetap wajib berupa Laporan Penilaian Jaminan (LPJ)
|
||||
</li>
|
||||
<li>Detail per meter tanah dan bangunan, sarana pelengkap dll akan tercatat di Laporan
|
||||
Penilaian Jaminan (LPJ) nanti</li>
|
||||
<li>Laporan Resume ini hanya digunakan untuk kepentingan internal bagi</li>
|
||||
<li>Laporan resume ini hanya berlaku <span class="text-red-500">14 hari</span> kerja
|
||||
terhitung dari tanggal resume ini dibuat sesuai aturan yang berlaku, apabila lewat
|
||||
maka harus dilakukan order ulang sesuai prosedur yang berlaku</li>
|
||||
<li>Apabila sudah melewati 6 bulan, maka harus penilaian ulang kembali</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<label class="form-label">Salam,</label>
|
||||
|
||||
<div class="flex flex-wrap lg:flex-nowrap gap-4">
|
||||
<div class="flex items-center w-full lg:w-1/2 gap-2.5">
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
PENILAI
|
||||
</label>
|
||||
<label class="form-label max-w-56 lg:w-32">
|
||||
SENIOR OFICER
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- <form method="POST" action="">
|
||||
<div class="card pb-2.5">
|
||||
<input type="hidden" name="action" value="">
|
||||
|
||||
<div class="card-body grid gap-5">
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Code
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('code') border-danger bg-danger-light @enderror" type="text"
|
||||
name="code" value="">
|
||||
@error('code')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||
<label class="form-label max-w-56">
|
||||
Name
|
||||
</label>
|
||||
<div class="flex flex-wrap items-baseline w-full">
|
||||
<input class="input @error('name') border-danger bg-danger-light @enderror" type="text"
|
||||
name="name" value="">
|
||||
@error('name')
|
||||
<em class="alert text-danger text-sm">{{ $message }}</em>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-end">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form> --}}
|
||||
</div>
|
||||
@endsection
|
||||
@@ -1,27 +1,27 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('basicdata.branch') }}
|
||||
{{ Breadcrumbs::render('basicdata.tujuan-penilaian') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="branch-table" data-api-url="{{ route('basicdata.branch.datatables') }}">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="tujuan-penilaian-table" data-api-url="{{ route('basicdata.tujuan-penilaian.datatables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
Daftar Cabang
|
||||
SPK Menu
|
||||
</h3>
|
||||
<div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Branch" id="search" type="text" value="">
|
||||
<input placeholder="Search Doc SPK" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<!-- <div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<a class="btn btn-sm btn-light" href="{{ route('basicdata.branch.export') }}"> Export to Excel </a>
|
||||
<a class="btn btn-sm btn-primary" href="{{ route('basicdata.branch.create') }}"> Tambah Cabang </a>
|
||||
</div>
|
||||
<a class="btn btn-sm btn-light" href="{{ route('basicdata.tujuan-penilaian.export') }}"> Export to Excel </a>
|
||||
<a class="btn btn-sm btn-primary" href="{{ route('basicdata.tujuan-penilaian.create') }}"> Tambah Tujuan Penilaian </a>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@@ -33,11 +33,11 @@
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox"/>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Code </span>
|
||||
<span class="sort"> <span class="sort-label"> No SPK </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="name">
|
||||
<span class="sort"> <span class="sort-label"> Cabang </span>
|
||||
<span class="sort"> <span class="sort-label"> Perihal </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
@@ -62,6 +62,7 @@
|
||||
@endsection
|
||||
|
||||
@push('scripts')
|
||||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||
<script type="text/javascript">
|
||||
function deleteData(data) {
|
||||
Swal.fire({
|
||||
@@ -80,7 +81,7 @@
|
||||
}
|
||||
});
|
||||
|
||||
$.ajax(`basic-data/cabang/${data}`, {
|
||||
$.ajax(`basic-data/tujuan-penilaian/${data}`, {
|
||||
type: 'DELETE'
|
||||
}).then((response) => {
|
||||
swal.fire('Deleted!', 'User has been deleted.', 'success').then(() => {
|
||||
@@ -95,7 +96,7 @@
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#branch-table');
|
||||
const element = document.querySelector('#tujuan-penilaian-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
@@ -117,13 +118,13 @@
|
||||
title: 'Code',
|
||||
},
|
||||
name: {
|
||||
title: 'Cabang',
|
||||
title: 'Tujuan Penilaian',
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `<div class="flex flex-nowrap justify-center">
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" href="basic-data/cabang/${data.id}/edit">
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" href="basic-data/tujuan-penilaian/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
<a onclick="deleteData(${data.id})" class="delete btn btn-sm btn-icon btn-clear btn-danger">
|
||||
232
resources/views/spk/view.blade.php
Normal file
232
resources/views/spk/view.blade.php
Normal file
@@ -0,0 +1,232 @@
|
||||
@extends('layouts.main')
|
||||
|
||||
@section('breadcrumbs')
|
||||
{{ Breadcrumbs::render('basicdata.tujuan-penilaian') }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="grid">
|
||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="tujuan-penilaian-table" data-api-url="{{ route('basicdata.tujuan-penilaian.datatables') }}">
|
||||
<div class="card-header py-5 flex-wrap">
|
||||
<h3 class="card-title">
|
||||
SPK View
|
||||
</h3>
|
||||
<!-- <div class="flex flex-wrap gap-2 lg:gap-5">
|
||||
<div class="flex">
|
||||
<label class="input input-sm"> <i class="ki-filled ki-magnifier"> </i>
|
||||
<input placeholder="Search Tujuan Penilaian" id="search" type="text" value="">
|
||||
</label>
|
||||
</div>-->
|
||||
<div class="flex flex-wrap gap-2.5">
|
||||
<div class="h-[24px] border border-r-gray-200"></div>
|
||||
<!-- <a class="btn btn-sm btn-light" href="{{ route('basicdata.tujuan-penilaian.export') }}"> Export to PDF </a> -->
|
||||
<!-- <a class="btn btn-sm btn-light" href="{{ route('basicdata.tujuan-penilaian.export') }}"> Print </a> -->
|
||||
<a class="btn btn-sm btn-light" href="#"> Export to PDF </a>
|
||||
<a class="btn btn-sm btn-light" id="print-button"> Print </a>
|
||||
<!-- <a class="btn btn-sm btn-primary" href="{{ route('basicdata.tujuan-penilaian.create') }}"> Tambah Tujuan Penilaian </a> -->
|
||||
</div>
|
||||
<!--</div> -->
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<!-- Disini templatenya masuk bosku <br /><br />
|
||||
<img style="width: 200px;" src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ-f_0c9bbRTPZn5qBnsLVRweEE_XizBcHhWg&s" alt=""> -->
|
||||
|
||||
<style>
|
||||
/* @media print {
|
||||
body * {
|
||||
display: none;
|
||||
}
|
||||
.print-area, .print-area * {
|
||||
display: block;
|
||||
}
|
||||
} */
|
||||
</style>
|
||||
<div class="print-area">
|
||||
<table border="2" width="100%">
|
||||
<tr><td><img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ-f_0c9bbRTPZn5qBnsLVRweEE_XizBcHhWg&s" alt="Logo" style=""></td> <td><h1>PT BANK ARTHA GRAHA INTERNASIONAL</h1>
|
||||
<p>Sub Direktorat Appraisal</p>
|
||||
<p>Jl. Kwitang Raya No. 24-26, Jakarta – 10420, Indonesia</p>
|
||||
<p>Telp. (021) 3903040</p></td></tr>
|
||||
</table>
|
||||
<br />
|
||||
|
||||
<center>
|
||||
<h2 style="text-decoration: underline;">SURAT PERINTAH KERJA</h2>
|
||||
<p>No. XXX / PJ / JKT / <?php echo date('M'); ?> / FR / <?php echo date('Y'); ?> <data id="date"></data></p>
|
||||
<p>Tanggal: <?php echo date('d F Y'); ?></p>
|
||||
</center>
|
||||
|
||||
<h3>Kepada</h3><br />
|
||||
<p style="color: red;">[Nama KJPP sesuai data persetujuan penawaran]</p>
|
||||
<p style="color: red;">[Alamat KJPP sesuai data persetujuan penawaran]</p><br />
|
||||
|
||||
<h3>Perihal: <b>Penunjukan sebagai Penyedia Jasa Penilaian Agunan</b></h3><br />
|
||||
<p style="text-align: justify;">Berdasarkan surat penawaran Saudara <span style="color: red;">[No proposal penawaran sesuai data pemeriksaan persetujuan penawaran]</span> tanggal <span style="color: red;">[Tgl proposal penawaran sesuai data pemeriksaan persetujuan penawaran]</span> atas nama <span style="color: red;">[Nama Debitur sesuai data register]</span>, dengan ini PT. Bank Artha Graha Internasional.Tbk., menunjuk Saudara untuk melakukan penilaian atas agunan sebagaimana rincian dibawah ini.</p><br />
|
||||
|
||||
<h3>Rincian Penilaian</h3>
|
||||
|
||||
<table border="2" width="100%">
|
||||
<tr><td></td></tr>
|
||||
<tr><td>Tujuan Penilaian</td><td>:</td><td><span style="color: red;">[Tujuan penilaian sesuai data penawaran – modul tender]</span></td></tr>
|
||||
<tr><td>Jenis Laporan</td><td>:</td><td><span style="color: red;">[Modul tender – data penawaran –enis laporan]</span></td></tr>
|
||||
<tr><td>Data Jaminan</td><td>:</td><td><span style="color: red;">[Data Jenis Aset, Lokasi Jaminan dan Legalitas Jaminan sesuai Data Penawaran – Modul Tender]</span></td></tr>
|
||||
<tr><td>Fee / Harga Penilaian</td><td>:</td><td><span style="color: red;">[Biaya Final sesuai Data pemeriksaan persetujuan penawaran]</span></td></tr>
|
||||
<tr><td>Jangka Waktu</td><td>:</td><td></td></tr>
|
||||
<tr><td colspan="2" style="text-align: center;">i</td><td>Resume akan disampaikan dalam <span style="color: red;">[SLA Resume - Data Pemeriksaan Persetujuan Penawaran]</span> hari kerja terhitung setelah proses inspeksi dilaksanakan serta data yang diperlukan diterima dan lengkap, kecuali terdapat kesepakatan lain antara kedua belah pihak.</td></tr>
|
||||
<tr><td colspan="2" style="text-align: center;">ii</td><td>Laporan penilaian lengkap akan disampaikan dalam <span style="color: red;">[SLA Final - Data Pemeriksaan Persetujuan Penawaran]</span> hari kerja sesuai proposal penawaran.</td></tr>
|
||||
</table>
|
||||
<br />
|
||||
<h3>Dengan ketentuan dalam melaksanakan pekerjaan sebagai berikut:</h3>
|
||||
<table border="0" width="100%">
|
||||
<tr><td>1.</td><td>Pembayaran sebesar 100% dari total jasa dibayarkan setelah Bank menerima buku laporan dan bukti penagihan asli (invoice / kwitansi dan faktur pajak).</td></tr>
|
||||
<tr><td>2.</td><td>Segala bentuk aktivitas komunikasi lisan atau tertulis antara lain kelengkapan dokumen, imbalan jasa, laporan penilaian dan lainnya baik dari Nasabah atau KJPP harus melalui Bank.
|
||||
</td></tr>
|
||||
<tr><td>3.</td><td>Selanjutnya sebagai tanda persetujuan, setelah saudara tandatangani di atas materai Rp 10.000,- (materai sesuai ketentuan yang berlaku) agar dikembalikan kepada kami selambat-lambatnya 1 (satu) hari kerja setelah tanggal surat ini.
|
||||
</td></tr>
|
||||
<tr><td>4.</td><td>Apabila diperlukan surat representasi wajib diberikan bersamaan dengan dikembalikannya SPK kepada kami.</td></tr>
|
||||
<tr><td>5.</td><td>Ketentuan lain mengacu pada perjanjian kerjasama yang telah disepakati.</td></tr>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<p style="text-align: justify;">Demikian Surat perintah Kerja (SPK) ini dibuat dan berlaku efektif sejak SPK ini ditandatangani, atas perhatian dan kerjasamanya diucapkan terima kasih.</p><br />
|
||||
|
||||
|
||||
<table border="0" width="100%">
|
||||
<tr><td>PT Bank Artha Graha Internasional.<br>
|
||||
Sub Direktorat Appraisal</td><td><span style="color: red;">[Nama KJPP sesuai data persetujuan penawaran]</span></td></tr>
|
||||
<tr><td colspan="2"><br /></td></tr>
|
||||
<tr><td colspan="2"><br /></td></tr>
|
||||
<tr><td colspan="2"><br /></td></tr>
|
||||
<tr><td colspan="2"><br /></td></tr>
|
||||
<tr><td><br /></td><td><img style="width: 100px;" src="assets/media/images/materai.png"></td></tr>
|
||||
<tr><td><span style="color: red;">[otomasi dari nama dan tanda tangan otorisator]</span><br>
|
||||
<span style="color: red;">[otomasi dari jabatan otorisator]</span></td><td>(……………………………………..)</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- <table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm" data-datatable-table="true">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="w-14">
|
||||
<input class="checkbox checkbox-sm" data-datatable-check="true" type="checkbox"/>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="code">
|
||||
<span class="sort"> <span class="sort-label"> Code </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[250px]" data-datatable-column="name">
|
||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
||||
<span class="sort-icon"> </span> </span>
|
||||
</th>
|
||||
<th class="min-w-[50px] text-center" data-datatable-column="actions">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table> -->
|
||||
</div>
|
||||
<!-- <div class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
||||
<div class="flex items-center gap-2">
|
||||
Show
|
||||
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per page
|
||||
</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<span data-datatable-info="true"> </span>
|
||||
<div class="pagination" data-datatable-pagination="true">
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts')
|
||||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||
<script type="text/javascript">
|
||||
function deleteData(data) {
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert this!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
$.ajaxSetup({
|
||||
headers: {
|
||||
'X-CSRF-TOKEN': '{{ csrf_token() }}'
|
||||
}
|
||||
});
|
||||
|
||||
$.ajax(`basic-data/tujuan-penilaian/${data}`, {
|
||||
type: 'DELETE'
|
||||
}).then((response) => {
|
||||
swal.fire('Deleted!', 'User has been deleted.', 'success').then(() => {
|
||||
window.location.reload();
|
||||
});
|
||||
}).catch((error) => {
|
||||
console.error('Error:', error);
|
||||
Swal.fire('Error!', 'An error occurred while deleting the file.', 'error');
|
||||
});
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<script type="module">
|
||||
const element = document.querySelector('#tujuan-penilaian-table');
|
||||
const searchInput = document.getElementById('search');
|
||||
|
||||
const apiUrl = element.getAttribute('data-api-url');
|
||||
const dataTableOptions = {
|
||||
apiEndpoint: apiUrl,
|
||||
pageSize: 5,
|
||||
columns: {
|
||||
select: {
|
||||
render: (item, data, context) => {
|
||||
const checkbox = document.createElement('input');
|
||||
checkbox.className = 'checkbox checkbox-sm';
|
||||
checkbox.type = 'checkbox';
|
||||
checkbox.value = data.id.toString();
|
||||
checkbox.setAttribute('data-datatable-row-check', 'true');
|
||||
return checkbox.outerHTML.trim();
|
||||
},
|
||||
},
|
||||
code: {
|
||||
title: 'Code',
|
||||
},
|
||||
name: {
|
||||
title: 'Tujuan Penilaian',
|
||||
},
|
||||
actions: {
|
||||
title: 'Status',
|
||||
render: (item, data) => {
|
||||
return `<div class="flex flex-nowrap justify-center">
|
||||
<a class="btn btn-sm btn-icon btn-clear btn-info" href="basic-data/tujuan-penilaian/${data.id}/edit">
|
||||
<i class="ki-outline ki-notepad-edit"></i>
|
||||
</a>
|
||||
<a onclick="deleteData(${data.id})" class="delete btn btn-sm btn-icon btn-clear btn-danger">
|
||||
<i class="ki-outline ki-trash"></i>
|
||||
</a>
|
||||
</div>`;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
document.getElementById('print-button').addEventListener('click', function() {
|
||||
window.print();
|
||||
});
|
||||
|
||||
let dataTable = new KTDataTable(element, dataTableOptions);
|
||||
// Custom search functionality
|
||||
searchInput.addEventListener('input', function () {
|
||||
const searchValue = this.value.trim();
|
||||
dataTable.search(searchValue, true);
|
||||
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
@foreach ($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200"
|
||||
data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accoordion_detail_jaminan_{{ $loop->index }}">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
@@ -32,7 +32,7 @@
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="accordion-content hidden" id="accoordion_detail_jaminan_{{ $loop->index }}">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
@endphp
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200"
|
||||
data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_detail_jaminan_{{ $loop->index }}">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
@@ -39,7 +39,7 @@
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="accordion-content hidden" id="accordion_detail_jaminan_{{ $loop->index }}">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200"
|
||||
data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_detail_jaminan_{{ $loop->index }}">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
@@ -41,7 +41,7 @@
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="accordion-content hidden" id="accordion_detail_jaminan_{{ $loop->index }}">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
|
||||
@@ -58,109 +58,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card min-w-full">
|
||||
<div class="card min-w-full">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">
|
||||
Data Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div data-accordion="true">
|
||||
@foreach ($permohonan->debiture->documents as $dokumen)
|
||||
<div class="accordion-item [&:not(:last-child)]:border-b border-b-gray-200"
|
||||
data-accordion-item="true" id="accordion_1_item_1">
|
||||
<button class="accordion-toggle py-4 group mx-8" data-accordion-toggle="#accordion_1_content_1">
|
||||
<span class="text-base text-gray-900 font-medium">
|
||||
Jaminan {{ $loop->index + 1 }}
|
||||
</span>
|
||||
<i class="ki-outline ki-plus text-gray-600 text-2sm accordion-active:hidden block">
|
||||
</i>
|
||||
<i class="ki-outline ki-minus text-gray-600 text-2sm accordion-active:block hidden">
|
||||
</i>
|
||||
</button>
|
||||
<div class="accordion-content hidden" id="accordion_1_content_1">
|
||||
<div class="card-body lg:py-7.5 grid grid-cols-2">
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Jenis Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->jenisJaminan->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Hubungan Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->hubungan_pemilik->name ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="mb-5">
|
||||
<h3 class="text-md font-medium text-gray-900">
|
||||
Alamat Pemilik Jaminan:
|
||||
</h3>
|
||||
<span class="text-2sm text-gray-700">
|
||||
{{ $dokumen->pemilik->address ?? '' }},
|
||||
<br> {{ $dokumen->pemilik->village->name ?? '' }},
|
||||
{{ $dokumen->pemilik->district->name ?? '' }},
|
||||
{{ $dokumen->pemilik->city->name ?? '' }},
|
||||
{{ $dokumen->pemilik->province->name ?? '' }} -
|
||||
{{ $dokumen->pemilik->village->postal_code ?? '' }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-table scrollable-x-auto pb-3">
|
||||
<table class="table align-middle text-sm text-gray-500">
|
||||
@foreach ($dokumen->detail as $detail)
|
||||
<tr>
|
||||
<td class="py-2 text-gray-600 font-normal max-w-[100px]">
|
||||
{{ $loop->index + 1 }}. {{ $detail->jenisLegalitasJaminan->name }}
|
||||
</td>
|
||||
<td class="py-2 text-gray-800 font-normaltext-sm">
|
||||
{{ $detail->name ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Dokumen Jaminan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
@if (isset($detail->dokumen_jaminan))
|
||||
<a href="{{ route('debitur.jaminan.download', ['id' => $permohonan->debiture->id, 'dokumen' => $detail->id]) }}"
|
||||
class="badge badge-sm badge-outline mt-2">{{ basename($detail->dokumen_jaminan) }}
|
||||
<i class="ki-filled ki-cloud-download"></i></a>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="py-3 max-w-[100px]">
|
||||
Keterangan
|
||||
</td>
|
||||
<td class="py-3 text-gray-700 text-2sm font-normal">
|
||||
{{ $detail->keterangan ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@include('lpj::component.detail-jaminan')
|
||||
|
||||
<div class="card min-w-full py-2 px-2">
|
||||
<div class="card-header" id="basic_settings">
|
||||
|
||||
Reference in New Issue
Block a user