perbaikan print out dan penambahan nomor laporan

This commit is contained in:
majid
2024-12-27 11:29:55 +07:00
parent 66d0226d55
commit b70b3b730f
6 changed files with 620 additions and 304 deletions

View File

@@ -316,3 +316,16 @@
return User::find($userId); return User::find($userId);
} }
function generateLpjUniqueCode($randomLength = 6)
{
$year = date('y');
$month = str_pad(date('m'), 2, '0', STR_PAD_LEFT);
$day = str_pad(date('d'), 2, '0', STR_PAD_LEFT);
// Generate random numbers
$randomNumber = str_pad(mt_rand(0, pow(10, $randomLength) - 1), $randomLength, '0', STR_PAD_LEFT);
// Concatenate components to create the custom code
return $year . $month . $day . $randomNumber;
}

View File

@@ -7,6 +7,7 @@ use Barryvdh\DomPDF\Facade\Pdf; // https://github.com/barryvdh/laravel-dompdf
use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Permohonan;
use Modules\Lpj\Models\Inspeksi; use Modules\Lpj\Models\Inspeksi;
use Modules\Lpj\Models\Penilai; use Modules\Lpj\Models\Penilai;
use Modules\Lpj\Models\Laporan;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Maatwebsite\Excel\Facades\Excel; use Maatwebsite\Excel\Facades\Excel;
@@ -17,6 +18,7 @@ use Modules\Location\Models\City;
use Modules\Location\Models\District; use Modules\Location\Models\District;
use Modules\Location\Models\Village; use Modules\Location\Models\Village;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
use App\Helpers\Lpj;
class PenilaiController extends Controller class PenilaiController extends Controller
{ {
@@ -597,6 +599,17 @@ class PenilaiController extends Controller
$inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); $inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first();
$lpj = Penilai::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); $lpj = Penilai::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first();
$laporan = Laporan::firstOrCreate(
[
'permohonan_id' => $permohonanId,
'dokumen_jaminan_id' => $documentId,
],
[
'nomor_laporan' => generateLpjUniqueCode(6),
]
);
$nomorLaporan = $laporan->nomor_laporan;
$forminspeksi = null; $forminspeksi = null;
$lpjData = null; $lpjData = null;
$formFoto = null; $formFoto = null;
@@ -646,7 +659,8 @@ class PenilaiController extends Controller
'lpj', 'lpj',
'statusLpj', 'statusLpj',
'alamat', 'alamat',
'dataPembanding' 'dataPembanding',
'nomorLaporan'
)); ));
} else { } else {
$pdf = PDF::loadView('lpj::' . $viewLaporan, compact( $pdf = PDF::loadView('lpj::' . $viewLaporan, compact(
@@ -659,7 +673,8 @@ class PenilaiController extends Controller
'lpj', 'lpj',
'statusLpj', 'statusLpj',
'alamat', 'alamat',
'dataPembanding' 'dataPembanding',
'nomorLaporan'
)); ));
$pdf->setPaper('A4', 'portrait'); $pdf->setPaper('A4', 'portrait');

36
app/Models/Laporan.php Normal file
View File

@@ -0,0 +1,36 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
// use Modules\Lpj\Database\Factories\LaporanFactory;
class Laporan extends Model
{
use HasFactory;
protected $table = 'laporan';
/**
* The attributes that are mass assignable.
*/
protected $guarded = ['id'];
public function jenisLaporan(){
return $this->belongsTo(JenisLaporan::class);
}
public function dokument(){
return $this->belongsTo(DokumenJaminan::class);
}
public function permohonan(){
return $this->belongsTo(Permohonan::class);
}
// protected static function newFactory(): LaporanFactory
// {
// // return LaporanFactory::new();
// }
}

View File

@@ -0,0 +1,43 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
use Modules\Lpj\Models\Permohonan;
use Modules\Lpj\Models\DokumenJaminan;
use Modules\Lpj\Models\JenisLaporan;
return new class () extends Migration {
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('laporan', function (Blueprint $table) {
$table->id();
$table->foreignIdFor(Permohonan::class)->constrained('permohonan')->onDelete('cascade');
$table->foreignIdFor(DokumenJaminan::class)->constrained('dokumen_jaminan')->onDelete('cascade');
$table->string('nomor_laporan');
$table->foreignIdFor(JenisLaporan::class)
->nullable()
->constrained('jenis_laporan')
->onDelete('cascade');
$table->timestamps();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('laporan');
}
};

View File

@@ -78,7 +78,7 @@
} }
body { body {
margin-top: 7cm; margin-top: 3cm;
/* Tambahkan margin top sedikit lebih besar dari tinggi header */ /* Tambahkan margin top sedikit lebih besar dari tinggi header */
margin-bottom: 120px; margin-bottom: 120px;
position: relative; position: relative;
@@ -106,7 +106,13 @@
</head> </head>
<body style="width: 80%; margin: auto"> <body style="width: 80%; margin: auto">
@php
$data = '';
foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
}
$data = rtrim($data, ', ');
@endphp
<header id="header"> <header id="header">
<table style="width: 100%; border: none;"> <table style="width: 100%; border: none;">
<tr> <tr>
@@ -114,9 +120,8 @@
@include('lpj::component.logo-bag') @include('lpj::component.logo-bag')
</td> </td>
<td style="width: 80%; text-align: center; border: 1px solid black; "> <td style="width: 80%; text-align: center; border: 1px solid black; ">
<h3 style="width:100% padding-top: 40px; text-align: center;">LAPORAN PENILAIAN ATAS <h3 style="width:100% padding-top: 40px; text-align: center;text-transform: uppercase;">LAPORAN PENILAIAN ATAS {{$data}}
TANAH </h3>
DAN/ATAU BANGUNAN</h3>
</td> </td>
</tr> </tr>
</table> </table>
@@ -214,7 +219,7 @@
<tr> <tr>
<td style="padding: 2px;">No Laporan</td> <td style="padding: 2px;">No Laporan</td>
<td style="padding: 2px;">:</td> <td style="padding: 2px;">:</td>
<td style="padding: 2px;"></td> <td style="padding: 2px;">{{ $nomorLaporan ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td style="padding: 2px;">Tanggal Laporan</td> <td style="padding: 2px;">Tanggal Laporan</td>
@@ -236,13 +241,7 @@
<td style=" padding: 2px;">{{ $permohonan->jenisFasilitasKredit->name ?? '' }}</td> <td style=" padding: 2px;">{{ $permohonan->jenisFasilitasKredit->name ?? '' }}</td>
</tr> </tr>
<tr> <tr>
@php
$data = '';
foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
}
$data = rtrim($data, ', ');
@endphp
<td style=" padding: 2px;">Jenis Jaminan</td> <td style=" padding: 2px;">Jenis Jaminan</td>
<td style=" padding: 2px;">:</td> <td style=" padding: 2px;">:</td>
<td style=" padding: 2px;">{{ $data ?? '' }}</td> <td style=" padding: 2px;">{{ $data ?? '' }}</td>
@@ -368,212 +367,332 @@
</tr> </tr>
</table> </table>
<table style="width: 100%; border: 1px solid #000;"> <table style="width: 100%; border: 1px solid #000; text-transform: uppercase;">
<tr> <tr>
<td> <td >
B. SARANA PELENGKAP DAN LINGKUNGAN B. ANALISA {{ $data }}
</td> </td>
</tr> </tr>
</table> </table>
<table>
<tr> @foreach ($permohonan->debiture->documents as $dokumen)
@if ($dokumen->jenisJaminan)
@php @php
$cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true);
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
@endphp @endphp
<td style="padding: 2px;">Luas Tanah</td> @if (isset($formKategori) && $formKategori)
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
</tr>
<tr>
<td style="padding: 2px;">Bentuk Tanah</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php @php
$bentukTanah = $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']; $kategoriArray = is_array($formKategori) ? $formKategori : [$formKategori];
$lainnya = $forminspeksi['tanah']['bentuk_tanah']['lainnya']; $kategoriUnik = array_unique($kategoriArray);
@endphp @endphp
{{ implode(', ', $bentukTanah) }} @foreach ($kategoriUnik as $kategori)
@if ($kategori === 'tanah')
<table>
<tr>
@php
$cekLuas = isset(
$forminspeksi['tanah']['luas_tanah']['tidak sesuai'],
)
? 'tidak sesuai'
: 'sesuai';
@if (in_array('Lainnya', $bentukTanah) && $lainnya) $luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
({{ $lainnya }}) @endphp
@endif <td style="padding: 2px;">Luas Tanah</td>
</td> <td style="padding: 2px;">:</td>
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
</tr>
<tr>
<td style="padding: 2px;">Bentuk Tanah</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$bentukTanah = isset(
$forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah'],
)
? $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']
: [];
$lainnya = isset(
$forminspeksi['tanah']['bentuk_tanah']['lainnya'],
)
? $forminspeksi['tanah']['bentuk_tanah']['lainnya']
: null;
@endphp
</tr> {{ !empty($bentukTanah) ? implode(', ', $bentukTanah) : 'Data tidak tersedia' }}
<tr>
<td style="padding: 2px;">Kontur Tanah</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? [];
@endphp
@if (!empty($konturTanah)) @if (in_array('Lainnya', $bentukTanah) && $lainnya)
{{ implode(', ', $konturTanah) }} ({{ $lainnya }})
@else @endif
- </td>
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Permukaan dengan Jalan</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$ketinggianTanah = $forminspeksi['tanah']['ketinggian_tanah'];
$ketinggian = $ketinggianTanah['ketinggian'][0] ?? '-';
$lebihTinggi = $ketinggianTanah['lebih_tinggi'];
$lebihRendah = $ketinggianTanah['lebih_rendah'];
@endphp
{{ $ketinggian }} </tr>
@if ($ketinggian === 'Lebih Tinggi' && $lebihTinggi !== null) <tr>
(Ketinggian: {{ $lebihTinggi }} cm) <td style="padding: 2px;">Kontur Tanah</td>
@elseif($ketinggian === 'Lebih Rendah' && $lebihRendah !== null) <td style="padding: 2px;">:</td>
(Kerendahan: {{ $lebihRendah }} cm) <td style="padding: 2px;">
@endif @php
</td> $konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? [];
@endphp
</tr> @if (!empty($konturTanah))
<tr> {{ implode(', ', $konturTanah) }}
<td style="padding: 2px;">Peruntukan Tanah</td> @else
<td style="padding: 2px;">:</td> -
<td style="padding: 2px;">Perumahan bukan Real Estate</td> @endif
</tr> </td>
<tr> </tr>
<td style="padding: 2px;">Fisik Tanah</td> <tr>
<td style="padding: 2px;">:</td> <td style="padding: 2px;">Permukaan dengan Jalan</td>
<td style="padding: 2px;"> <td style="padding: 2px;">:</td>
@php <td style="padding: 2px;">
$kondisiFisikTanah = @php
$forminspeksi['tanah']['kondisi_fisik_tanah']['kondisi_fisik_tanah'][0] ?? '-'; $ketinggianTanah = $forminspeksi['tanah']['ketinggian_tanah'];
$lainnya = $forminspeksi['tanah']['kondisi_fisik_tanah']['lainnya']; $ketinggian = $ketinggianTanah['ketinggian'][0] ?? '-';
@endphp $lebihTinggi = $ketinggianTanah['lebih_tinggi'];
$lebihRendah = $ketinggianTanah['lebih_rendah'];
@endphp
{{ $kondisiFisikTanah }} {{ $ketinggian }}
@if ($kondisiFisikTanah === 'Lainnya' && $lainnya) @if ($ketinggian === 'Lebih Tinggi' && $lebihTinggi !== null)
({{ $lainnya }}) (Ketinggian: {{ $lebihTinggi }} cm)
@endif @elseif($ketinggian === 'Lebih Rendah' && $lebihRendah !== null)
</td> (Kerendahan: {{ $lebihRendah }} cm)
@endif
</td>
</tr> </tr>
<tr> <tr>
<td style="padding: 2px;">Luas Bangunan</td> <td style="padding: 2px;">Peruntukan Tanah</td>
<td style="padding: 2px;">:</td> <td style="padding: 2px;">:</td>
<td style="padding: 2px;"> <td style="padding: 2px;">Perumahan bukan Real Estate</td>
@php </tr>
$luasTanahBangunan = $forminspeksi['bangunan']['luas_tanah_bagunan']; <tr>
<td style="padding: 2px;">Fisik Tanah</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$kondisiFisikTanah =
$forminspeksi['tanah']['kondisi_fisik_tanah'][
'kondisi_fisik_tanah'
][0] ?? '-';
$lainnya =
$forminspeksi['tanah']['kondisi_fisik_tanah']['lainnya'];
@endphp
$output = !empty($luasTanahBangunan['sesuai']) {{ $kondisiFisikTanah }}
? $luasTanahBangunan['sesuai'] @if ($kondisiFisikTanah === 'Lainnya' && $lainnya)
: (!empty($luasTanahBangunan['tidak sesuai']) ({{ $lainnya }})
? $luasTanahBangunan['tidak sesuai'] @endif
: '-'); </td>
@endphp
{{ $output }} <sup>m2</sup> </tr>
</td> <tr>
<td style="padding: 2px;">Luas Bangunan</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$luasTanahBangunan =
$forminspeksi['bangunan']['luas_tanah_bagunan'];
</tr> $output = !empty($luasTanahBangunan['sesuai'])
<tr> ? $luasTanahBangunan['sesuai']
<td style="padding: 2px;">Jenis Bangunan</td> : (!empty($luasTanahBangunan['tidak sesuai'])
<td style="padding: 2px;">:</td> ? $luasTanahBangunan['tidak sesuai']
<td style="padding: 2px;"> : '-');
@php @endphp
$jenisBangunan = $forminspeksi['bangunan']['jenis_bangunan'] ?? [];
@endphp
@if (!empty($jenisBangunan)) {{ $output }} <sup>m2</sup>
{{ implode(', ', $jenisBangunan) }} </td>
@else
-
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Kondisi Bangunan</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$kondisiBangunan = $forminspeksi['bangunan']['kondisi_bangunan'] ?? [];
@endphp
@if (!empty($kondisiBangunan)) </tr>
{{ implode(', ', $kondisiBangunan) }} <tr>
@else <td style="padding: 2px;">Jenis Bangunan</td>
- <td style="padding: 2px;">:</td>
@endif <td style="padding: 2px;">
</td> @php
</tr> $jenisBangunan =
<tr> $forminspeksi['bangunan']['jenis_bangunan'] ?? [];
<td style="padding: 2px;">Sifat Bangunan</td> @endphp
<td style="padding: 2px;">:</td>
<td style="padding: 2px;"> @if (!empty($jenisBangunan))
@php {{ implode(', ', $jenisBangunan) }}
$sifatBangunan = $forminspeksi['bangunan']['sifat_bangunan'][0] ?? '-'; @else
$sifatBangunanInput = $forminspeksi['bangunan']['sifat_bangunan_input']; -
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Kondisi Bangunan</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$kondisiBangunan =
$forminspeksi['bangunan']['kondisi_bangunan'] ?? [];
@endphp
// Filter input yang tidak null @if (!empty($kondisiBangunan))
$inputTambahan = array_filter($sifatBangunanInput, function ($value) { {{ implode(', ', $kondisiBangunan) }}
return $value !== null && $value !== ''; @else
}); -
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Sifat Bangunan</td>
<td style="padding: 2px;">:</td>
// Gabungkan sifat bangunan dengan input tambahan <td style="padding: 2px;">
$output = $sifatBangunan; @php
$sifatBangunan =
$forminspeksi['bangunan']['sifat_bangunan'][0] ?? '-';
$sifatBangunanInput =
$forminspeksi['bangunan']['sifat_bangunan_input'];
if (!empty($inputTambahan)) { // Filter input yang tidak null
$output .= ' (' . implode(', ', $inputTambahan) . ')'; $inputTambahan = array_filter($sifatBangunanInput, function (
} $value,
@endphp ) {
return $value !== null && $value !== '';
});
{{ $output }} // Gabungkan sifat bangunan dengan input tambahan
</td> $output = $sifatBangunan;
</tr> if (!empty($inputTambahan)) {
@php $output .= ' (' . implode(', ', $inputTambahan) . ')';
$spesifikasiBangunan = $forminspeksi['bangunan']['spesifikasi_bangunan'] ?? []; }
@endphp @endphp
@if (!empty($spesifikasiBangunan)) {{ $output }}
@foreach ($spesifikasiBangunan as $index => $bangunan) </td>
@php
$spekKategori = $bangunan['spek_kategori_bangunan'] ?? [];
@endphp
@if (count($spesifikasiBangunan) > 1) </tr>
<tr> @php
<td colspan="3" style="padding: 2px; font-weight: bold;"> $spesifikasiBangunan =
{{ $bangunan['bagunan'] ?? 'Bangunan ' . ($index + 1) }} $forminspeksi['bangunan']['spesifikasi_bangunan'] ?? [];
</td> @endphp
</tr>
@endif
@foreach ($spekKategori as $kategori => $nilaiKategori) @if (!empty($spesifikasiBangunan))
@if (!empty($nilaiKategori)) @foreach ($spesifikasiBangunan as $index => $bangunan)
<tr> @php
<td style="padding: 2px;">{{ $kategori }}</td> $spekKategori = $bangunan['spek_kategori_bangunan'] ?? [];
<td style="padding: 2px;">:</td> @endphp
<td style="padding: 2px;">{{ implode(', ', $nilaiKategori) }}</td>
</tr> @if (count($spesifikasiBangunan) > 1)
<tr>
<td colspan="3"
style="padding: 2px; font-weight: bold;">
{{ $bangunan['bagunan'] ?? 'Bangunan ' . ($index + 1) }}
</td>
</tr>
@endif
@foreach ($spekKategori as $kategori => $nilaiKategori)
@if (!empty($nilaiKategori))
<tr>
<td style="padding: 2px;">{{ $kategori }}</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
{{ implode(', ', $nilaiKategori) }}</td>
</tr>
@endif
@endforeach
@endforeach
@else
<tr>
<td colspan="3" style="padding: 2px;">Tidak ada data
spesifikasi bangunan</td>
</tr>
@endif
</table>
@elseif ($kategori === 'apartemen-kantor')
<table>
<tr>
@php
$cekLuas = isset(
$forminspeksi['luas_unit']['tidak sesuai'],
)
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['luas_unit'][$cekLuas] ?? null;
@endphp
<td style="padding: 2px;">Luas Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
</tr>
<tr>
<td style="padding: 2px;">Bentuk Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$bentukUnit = $forminspeksi['bentuk_unit'] ?? [];
@endphp
@if (!empty($bentukUnit))
{{ implode(', ', $bentukUnit) }}
@else
-
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Kondisi Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$bentukUnit = $forminspeksi['kondisi_unit'] ?? [];
@endphp
@if (!empty($bentukUnit))
{{ implode(', ', $bentukUnit) }}
@else
-
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">Posisi Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$bentukUnit = $forminspeksi['posisi_unit'] ?? [];
@endphp
@if (!empty($bentukUnit))
{{ implode(', ', $bentukUnit) }}
@else
-
@endif
</td>
</tr>
<tr>
<td style="padding: 2px;">View Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">
@php
$bentukUnit = $forminspeksi['view'] ?? [];
@endphp
@if (!empty($bentukUnit))
{{ implode(', ', $bentukUnit) }}
@else
-
@endif
</td>
</tr>
</table>
@endif @endif
@endforeach @endforeach
@endforeach @endif
@else
<tr>
<td colspan="3" style="padding: 2px;">Tidak ada data spesifikasi bangunan</td>
</tr>
@endif @endif
@endforeach
</table>
</td> </td>

View File

@@ -32,7 +32,7 @@
} }
.header { .header {
text-align: center;
margin-bottom: 20px; margin-bottom: 20px;
} }
@@ -205,7 +205,13 @@
<body> <body>
@php
$data = '';
foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
}
$data = rtrim($data, ', ');
@endphp
<main class="content"> <main class="content">
@php @php
$senior_officer = null; $senior_officer = null;
@@ -236,54 +242,23 @@
@endphp @endphp
<div class="container"> <div class="container">
@php
function generateCustomTanggal()
{
$tahunAwal = rand(20, 30);
$bulanTetap = rand(1, 12);
$tanggalTetap = rand(1, 28);
$bulanFormatted = str_pad($bulanTetap, 2, '0', STR_PAD_LEFT);
$tanggalFormatted = str_pad($tanggalTetap, 2, '0', STR_PAD_LEFT);
// Generate sisa angka secara acak
$sisaAngka1 = rand(0, 9);
$sisaAngka2 = rand(0, 9);
$sisaAngka3 = rand(0, 9);
$hasilTanggal = "{$tahunAwal}{$bulanFormatted}{$tanggalFormatted}{$sisaAngka1}{$sisaAngka2}{$sisaAngka3}";
return [
'fullNumber' => $hasilTanggal,
'tahun' => $tahunAwal,
'bulan' => $bulanFormatted,
'tanggal' => $tanggalFormatted,
'sisaAngka' => "{$sisaAngka1}{$sisaAngka2}{$sisaAngka3}",
];
}
$tanggalHasil1 = generateCustomTanggal();
@endphp
<div class="header"> <div class="header">
<table style="width: 100%; border: none;"> <table style="width: 100%; border: none; table-layout: fixed;">
<tr> <tr>
<td style="width: 50%; text-align: left;" class="header-left"> <td style="width: 50%; text-align: left; padding-right: 10px;">
@include('lpj::component.logo-bag') @include('lpj::component.logo-bag')
</td> </td>
<td style="width: 50%; text-align: right;"> <td style="width: 50%; text-align: right; padding-left: 10px;">
<h3>Tanggal : {{date('Y-m-d')}}</h3> <h3>Tanggal : {{ date('Y-m-d') }}</h3>
<h3>Waktu : {{date('H:i:s')}}</h3> <h3>Waktu : {{ date('H:i:s') }}</h3>
<h3>User : {{ Auth::user()->name }}</h3> <h3>User : {{ Auth::user()->name }}</h3>
</td> </td>
</tr> </tr>
</table> </table>
<h4>LAPORAN PENILAIAN ATAS TANAH DAN/ATAU BANGUNAN</h4>
<p>NO: <h4 style="text-align: center; text-transform: uppercase; font-size: 14px;">LAPORAN PENILAIAN ATAS {{$data}}</h4>
{{ $permohonan->debiture->branch->code ?? '' }}/{{ $tanggalHasil1['fullNumber'] }}/LPJ/{{ $permohonan->nomor_registrasi }}/VII/{{ $tanggalHasil1['tahun'] }} <p style="text-align: center;">NO:
{{ $permohonan->debiture->branch->code ?? '' }}/{{ $nomorLaporan }}/LPJ/{{ $permohonan->nomor_registrasi }}/{{ onRomawi(date('m')) }}/{{ date('Y') }}
</p> </p>
</div> </div>
@@ -409,15 +384,6 @@
</table> </table>
</div> </div>
@php
$data = '';
foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
$dok = $dokumen->detail;
}
$data = rtrim($data, ', '); // Remove the trailing comma and space
@endphp
@if (isset($basicData['jenisJaminan'])) @if (isset($basicData['jenisJaminan']))
<table class="checkbox-list"> <table class="checkbox-list">
@@ -594,31 +560,97 @@
<table class="judul-table"> <table class="judul-table">
<tr> <tr>
<td class="border1">F</td> <td class="border1">F</td>
<td class="border">ANALISA TANAH DAN BANGUNAN</td> <td class="border" style="text-transform: uppercase;">ANALISA {{ $data }}</td>
</tr> </tr>
</table> </table>
</div> </div>
<table> @foreach ($permohonan->debiture->documents as $dokumen)
<tr> @if ($dokumen->jenisJaminan)
@php @php
$cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true);
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
@endphp @endphp
<td width="25%"><strong>Luas Tanah</strong></td> @if (isset($formKategori) && $formKategori)
<td>{{ $luas }}</td> @php
$kategoriArray = is_array($formKategori) ? $formKategori : [$formKategori];
$kategoriUnik = array_unique($kategoriArray);
@endphp
@foreach ($kategoriUnik as $kategori)
@if ($kategori === 'tanah')
<table>
<tr>
@php
$cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai'])
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
@endphp
<td width="25%"><strong>Luas Tanah</strong></td>
<td>{{ $luas }}</td>
</tr>
<!-- Bentuk Tanah -->
<tr>
<td style="vertical-align: top;"><strong>Bentuk Tanah</strong></td>
<td>
@if (isset($basicData['bentukTanah']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['bentukTanah'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) && in_array($item->name, $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
</td>
</tr>
<!-- Kontur Tanah -->
<tr>
<td style="vertical-align: top;"><strong>Kontur Tanah</strong></td>
<td>
@if (isset($basicData['konturTanah']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['konturTanah'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['tanah']['kontur_tanah']) && in_array($item->name, $forminspeksi['tanah']['kontur_tanah']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
</td>
</tr> </tr>
<!-- Bentuk Tanah --> <!-- Ketinggian Tanah -->
<tr> <tr>
<td style="vertical-align: top;"><strong>Bentuk Tanah</strong></td> <td style="vertical-align: top;"><strong>Ketinggian Tanah</strong></td>
<td> <td>
@if (isset($basicData['bentukTanah'])) @if (isset($basicData['ketinggianTanah']))
<table class="checkbox-list"> <table class="checkbox-list">
<tr> <tr>
@foreach ($basicData['bentukTanah'] as $index => $item) @foreach ($basicData['ketinggianTanah'] as $index => $item)
@if ($index % 3 == 0 && $index > 0) @if ($index % 3 == 0 && $index > 0)
</tr> </tr>
<tr> <tr>
@@ -626,64 +658,11 @@
<td class="checkbox-item"> <td class="checkbox-item">
<label class="checkbox-label"> <label class="checkbox-label">
<input type="checkbox" <input type="checkbox"
{{ isset($forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) && in_array($item->name, $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) ? 'checked' : '' }}> {{ isset($forminspeksi['tanah']['ketinggian_tanah']['ketinggian']) && in_array($item->name, $forminspeksi['tanah']['ketinggian_tanah']['ketinggian']) ? 'checked' : '' }}>
{{ $item->name }} {{ $item->name }}
</label> </label>
</td> </td>
@endforeach @endforeach
</tr>
</table>
@endif
</td>
</tr>
<!-- Kontur Tanah -->
<tr>
<td style="vertical-align: top;"><strong>Kontur Tanah</strong></td>
<td>
@if (isset($basicData['konturTanah']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['konturTanah'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['tanah']['kontur_tanah']) && in_array($item->name, $forminspeksi['tanah']['kontur_tanah']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
</td>
</tr>
<!-- Ketinggian Tanah -->
<tr>
<td style="vertical-align: top;"><strong>Ketinggian Tanah</strong></td>
<td>
@if (isset($basicData['ketinggianTanah']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['ketinggianTanah'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['tanah']['ketinggian_tanah']['ketinggian']) && in_array($item->name, $forminspeksi['tanah']['ketinggian_tanah']['ketinggian']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr> </tr>
</table> </table>
@endif @endif
@@ -917,6 +896,117 @@
</td> </td>
</tr> </tr>
</table> </table>
@elseif ($kategori === 'apartemen-kantor')
<table>
<tr>
@php
$cekLuas = isset(
$forminspeksi['luas_unit']['tidak sesuai'],
)
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['luas_unit'][$cekLuas] ?? null;
@endphp
<td style="padding: 2px;">Luas Unit</td>
<td style="padding: 2px;">:</td>
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
</tr>
<tr>
<td><strong>Bentuk Unit</strong></td>
<td>
@if (isset($basicData['bentukUnit']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['bentukUnit'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['bentuk_unit']) && in_array($item->name, $forminspeksi['bentuk_unit']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
<tr>
<td><strong>Kondisi Unit</strong></td>
<td>
@if (isset($basicData['kondisiUnit']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['kondisiUnit'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['kondisi_unit']) && in_array($item->name, $forminspeksi['kondisi_unit']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
<tr>
<td><strong>Posisi Unit</strong></td>
<td>
@if (isset($basicData['posisiUnit']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['posisiUnit'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['posisi_unit']) && in_array($item->name, $forminspeksi['posisi_unit']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
<tr>
<td><strong>View Unit</strong></td>
<td>
@if (isset($basicData['view']))
<table class="checkbox-list">
<tr>
@foreach ($basicData['view'] as $index => $item)
@if ($index % 3 == 0 && $index > 0)
</tr>
<tr>
@endif
<td class="checkbox-item">
<label class="checkbox-label">
<input type="checkbox"
{{ isset($forminspeksi['view']) && in_array($item->name, $forminspeksi['view']) ? 'checked' : '' }}>
{{ $item->name }}
</label>
</td>
@endforeach
</tr>
</table>
@endif
</table>
@endif
@endforeach
@endif
@endif
@endforeach
</div> </div>