From b8fb8bd09a99fa0923bf0a46726d494772aed7cc Mon Sep 17 00:00:00 2001 From: rustam76 Date: Thu, 14 Nov 2024 10:43:45 +0000 Subject: [PATCH 01/11] update status table assingment --- app/Http/Controllers/PenilaianController.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/Http/Controllers/PenilaianController.php b/app/Http/Controllers/PenilaianController.php index 137cb6b..c5d5252 100644 --- a/app/Http/Controllers/PenilaianController.php +++ b/app/Http/Controllers/PenilaianController.php @@ -298,9 +298,7 @@ class PenilaianController extends Controller $q->orWhere('status', 'LIKE', '%' . $search . '%'); }); } - - // $query->whereRaw('LOWER(status) = ?', ['registered']); - $query->whereIn('status', ['registered', 'proses_penawaran']); + $query->whereIn('status', ['registered', 'registrasi-final']); $query->whereHas('region.teams.teamsUsers.user', function ($q) { $q->where('id', Auth::user()->id); }); From 38a8fb2d7d65cec483904abe32cad3bb7266485b Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Fri, 15 Nov 2024 13:48:49 +0700 Subject: [PATCH 02/11] Tambah model HolidayCalendar dan fungsi hitungHariKerja Menambahkan file model HolidayCalendar dan fungsi hitungHariKerja ke dalam helper Lpj.php untuk menghitung jumlah hari kerja antara dua tanggal dengan mengabaikan akhir pekan dan hari libur yang tercatat dalam HolidayCalendar. --- app/Helpers/Lpj.php | 228 ++++++++++++++++++--------------- app/Models/HolidayCalendar.php | 10 ++ 2 files changed, 136 insertions(+), 102 deletions(-) create mode 100644 app/Models/HolidayCalendar.php diff --git a/app/Helpers/Lpj.php b/app/Helpers/Lpj.php index 355c589..044c3f6 100644 --- a/app/Helpers/Lpj.php +++ b/app/Helpers/Lpj.php @@ -1,126 +1,150 @@ month - 1]; - return $carbonDate->format('d') . ' ' . $month . ' ' . $carbonDate->format('Y'); -} - -function formatTanggalIndonesia2($date) -{ - \Carbon\Carbon::setLocale('id'); - $waktu = \Carbon\Carbon::parse($date); - return $waktu->translatedFormat('d F Y') . ' pukul ' . $waktu->format('H.i') . ' WIB'; -} + use Carbon\Carbon; + use Modules\Lpj\Models\HolidayCalendar; + use Modules\Lpj\Models\PenawaranDetailTender; + use Modules\Lpj\Models\PenawaranTender; -function formatRupiah($number) -{ - $number = (float) $number; - return 'Rp ' . number_format($number, 2, ',', '.'); -} + function formatTanggalIndonesia($date) + { + $carbonDate = Carbon::parse($date); + $indonesianMonths = [ + 'Januari', + 'Februari', + 'Maret', + 'April', + 'Mei', + 'Juni', + 'Juli', + 'Agustus', + 'September', + 'Oktober', + 'November', + 'Desember', + ]; + $month = $indonesianMonths[$carbonDate->month - 1]; + return $carbonDate->format('d') . ' ' . $month . ' ' . $carbonDate->format('Y'); + } + + function formatTanggalIndonesia2($date) + { + Carbon::setLocale('id'); + $waktu = Carbon::parse($date); + return $waktu->translatedFormat('d F Y') . ' pukul ' . $waktu->format('H.i') . ' WIB'; + } -function formatAlamat($alamat) -{ - return ($alamat->address ? $alamat->address . ', ' : '') . - (isset($alamat->village) ? $alamat->village->name . ', ' : '') . - (isset($alamat->city) ? $alamat->city->name . ', ' : '') . - (isset($alamat->province) ? $alamat->province->name . ', ' : '') . - ($alamat->postal_code ?? ''); -} + function formatRupiah($number) + { + $number = (float)$number; + return 'Rp ' . number_format($number, 2, ',', '.'); + } -// andy add -function checkActiveDateRangePenawaran($id) -{ - $penawaran = PenawaranTender::find($id); - $start_date = strtotime($penawaran->start_date); - $end_date = strtotime($penawaran->end_date); - $todays_date = strtotime(now()); + function formatAlamat($alamat) + { + return ($alamat->address ? $alamat->address . ', ' : '') . (isset($alamat->village) ? $alamat->village->name . ', ' : '') . (isset($alamat->city) ? $alamat->city->name . ', ' : '') . (isset($alamat->province) ? $alamat->province->name . ', ' : '') . ($alamat->postal_code ?? ''); + } + + // andy add + function checkActiveDateRangePenawaran($id) + { + $penawaran = PenawaranTender::find($id); + + $start_date = strtotime($penawaran->start_date); + $end_date = strtotime($penawaran->end_date); + $todays_date = strtotime(now()); - $allow = true; - if ($todays_date >= $start_date && $todays_date <= $end_date) { - //Penawaran dibuka $allow = true; - } else { - if ($todays_date < $start_date) { - //Penawaran Belum dibuka + if ($todays_date >= $start_date && $todays_date <= $end_date) { + //Penawaran dibuka $allow = true; } else { - //Penawaran sudah ditutup + if ($todays_date < $start_date) { + //Penawaran Belum dibuka + $allow = true; + } else { + //Penawaran sudah ditutup + $allow = false; + } + } + + return $allow; + } + + function checkKelengkapanDetailKJPP($id) + { + $allow = true; + // DB::enableQueryLog(); + // detail_penawaran apakah isian biaya_penawaran, attachment, dokumen_persetujuan sudah lengkap? + $query = PenawaranDetailTender::select('id')->where('penawaran_id', '=', $id)->where('status', '=', 1)->where( + function ($query) { + // no_proposal + $query->orWhere('no_proposal', '', ""); + $query->orWhereNull('no_proposal'); + + // tgl_proposal + $query->orWhere('tgl_proposal', '', ""); + $query->orWhereNull('tgl_proposal'); + + $query->orWhere('biaya_penawaran', '', ""); + $query->orWhereNull('biaya_penawaran'); + + $query->orWhere('attachment', '', ""); + $query->orWhereNull('attachment'); + + $query->orWhere('dokumen_persetujuan', '', ""); + $query->orWhereNull('dokumen_persetujuan'); + }, + )->get(); + // $sql = DB::getQueryLog(); + + + if (sizeof($query) > 0) { $allow = false; } + + return $allow; } - return $allow; -} + // convert + function convertSlug($slug) + { + $words = explode('-', $slug); -function checkKelengkapanDetailKJPP($id) -{ - $allow = true; - // DB::enableQueryLog(); - // detail_penawaran apakah isian biaya_penawaran, attachment, dokumen_persetujuan sudah lengkap? - $query = PenawaranDetailTender::select('id') - ->where('penawaran_id', '=', $id) - ->where('status','=',1) - ->where(function ($query) { - // no_proposal - $query->orWhere('no_proposal', '', ""); - $query->orWhereNull('no_proposal'); - - // tgl_proposal - $query->orWhere('tgl_proposal', '', ""); - $query->orWhereNull('tgl_proposal'); - - $query->orWhere('biaya_penawaran', '', ""); - $query->orWhereNull('biaya_penawaran'); + foreach ($words as $index => $word) { + $words[$index] = strtoupper($word); + } - $query->orWhere('attachment', '', ""); - $query->orWhereNull('attachment'); - - $query->orWhere('dokumen_persetujuan', '', ""); - $query->orWhereNull('dokumen_persetujuan'); - })->get(); - // $sql = DB::getQueryLog(); - - - if (sizeof($query) > 0) { - $allow = false; + return implode(' ', $words); } - return $allow; -} + // andy add -// convert -function convertSlug($slug) -{ - $words = explode('-', $slug); + function hitungHariKerja($tanggalMulai, $tanggalSelesai) + { + $tanggalMulai = Carbon::parse($tanggalMulai)->startOfDay(); + $tanggalSelesai = Carbon::parse($tanggalSelesai)->endOfDay(); - foreach ($words as $index => $word) { - $words[$index] = strtoupper($word); + $hariKerja = 0; + $tanggalSekarang = $tanggalMulai->copy(); + + // Ambil semua tanggal libur dari tabel holiday calendar + $tanggalLibur = HolidayCalendar::whereBetween('date', [$tanggalMulai, $tanggalSelesai])->pluck('date')->map( + function ($item) { + return Carbon::parse($item)->format('Y-m-d'); + }, + )->toArray(); + + while ($tanggalSekarang <= $tanggalSelesai) { + // Cek apakah hari ini bukan Sabtu atau Minggu dan bukan hari libur + if (!$tanggalSekarang->isWeekend() && !in_array($tanggalSekarang->format('Y-m-d'), $tanggalLibur)) { + $hariKerja++; + } + $tanggalSekarang->addDay(); + } + + return $hariKerja; } - - return implode(' ', $words); -} -// andy add diff --git a/app/Models/HolidayCalendar.php b/app/Models/HolidayCalendar.php new file mode 100644 index 0000000..ec721d6 --- /dev/null +++ b/app/Models/HolidayCalendar.php @@ -0,0 +1,10 @@ + Date: Fri, 15 Nov 2024 15:16:59 +0700 Subject: [PATCH 03/11] memperbaiki show permohonan yang typo --- resources/views/permohonan/show.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/permohonan/show.blade.php b/resources/views/permohonan/show.blade.php index 3ccb967..69b2018 100644 --- a/resources/views/permohonan/show.blade.php +++ b/resources/views/permohonan/show.blade.php @@ -6,7 +6,7 @@ @section('content')
- @include('lpj::component.detail-jaminan',['backLink' => 'prmohonan.index']) + @include('lpj::component.detail-jaminan', ['backLink' => 'permohonan.index'])
From 9af9c343d1d962123c395051735ee2cb7d2a5421 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Mon, 18 Nov 2024 14:17:19 +0700 Subject: [PATCH 04/11] Perbaiki pengelolaan dokumen pada History Permohonan Mengganti field 'attachment' menjadi 'dokumen' pada model Permohonan dan mengupdate referensi terkait di view dan service. Juga menambahkan dukungan multipart/form-data pada form. Perubahan ini memperbaiki manajemen file yang diunggah dan memastikan integritas data terlindungi saat memperbarui permohonan. --- app/Models/Permohonan.php | 11 +++-------- app/Services/PermohonanHistoryService.php | 9 +-------- .../views/permohonan/authorization/show.blade.php | 4 ++-- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/app/Models/Permohonan.php b/app/Models/Permohonan.php index 60c9303..a3b35c1 100644 --- a/app/Models/Permohonan.php +++ b/app/Models/Permohonan.php @@ -2,6 +2,7 @@ namespace Modules\Lpj\Models; +use Illuminate\Support\Facades\Storage; use Modules\Lpj\Database\Factories\PermohonanFactory; use Modules\Lpj\Services\PermohonanHistoryService; use Modules\Usermanagement\Models\User; @@ -39,7 +40,6 @@ class Permohonan extends Base 'registrasi_at', 'jenis_penilaian_id', 'region_id', - 'attachment' ]; protected static function boot() @@ -70,12 +70,7 @@ class Permohonan extends Base $fileName = time() . '_' . $file->getClientOriginalName(); $filePath = $file->storeAs('permohonan_attachments', $fileName, 'public'); - // Delete old file if it exists - if ($permohonan->attachment) { - Storage::disk('public')->delete($permohonan->attachment); - } - - $permohonan->attachment = $filePath; + $permohonan->dokumen = $filePath; } } @@ -87,7 +82,7 @@ class Permohonan extends Base $keterangan = request()->input('keterangan'); // Get keterangan from request $beforeRequest = $action === 'updated' ? $permohonan->getOriginal() : []; $afterRequest = $permohonan->toArray(); - $file = $permohonan->attachment ? Storage::disk('public')->path($permohonan->attachment) : null; + $file = $permohonan->dokumen ? Storage::disk('public')->path($permohonan->dokumen) : null; $historyService->createHistory( $permohonan, diff --git a/app/Services/PermohonanHistoryService.php b/app/Services/PermohonanHistoryService.php index 783d41b..3b9e60c 100644 --- a/app/Services/PermohonanHistoryService.php +++ b/app/Services/PermohonanHistoryService.php @@ -7,15 +7,8 @@ use Modules\Lpj\Models\PermohonanHistory; class PermohonanHistoryService { - public function createHistory(Permohonan $permohonan, string $status, ?string $keterangan, array $beforeRequest, array $afterRequest, ?string $file = null) + public function createHistory(Permohonan $permohonan, string $status, ?string $keterangan, array $beforeRequest, array $afterRequest, ?string $filePath = null) { - - $filePath = null; - if ($file) { - $filePath = $file->store('permohonan_history_files', 'public'); - } - - try { $history = PermohonanHistory::create([ 'permohonan_id' => $permohonan->id, diff --git a/resources/views/permohonan/authorization/show.blade.php b/resources/views/permohonan/authorization/show.blade.php index bd40825..193999a 100644 --- a/resources/views/permohonan/authorization/show.blade.php +++ b/resources/views/permohonan/authorization/show.blade.php @@ -9,7 +9,7 @@ @include('lpj::component.detail-jaminan',['backLink' => 'authorization.index'])
- + @csrf
@@ -27,7 +27,7 @@ Upload File Revisi
- +
From 631d5893868d65c14aab7923fdc4eeeb01641ea2 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:10:48 +0700 Subject: [PATCH 05/11] Update PermohonanController: Hapus pengolahan file dan histori setelah update permohonan Telah dilakukan pembersihan pada kode dengan menghapus logika pengolahan file dan pembuatan histori setelah proses update permohonan. Perubahan ini diharapkan menyederhanakan fungsi update di dalam PermohonanController serta mengurangi beban pemrosesan yang tidak diperlukan. --- app/Http/Controllers/PermohonanController.php | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/app/Http/Controllers/PermohonanController.php b/app/Http/Controllers/PermohonanController.php index 3a0956d..20a379b 100644 --- a/app/Http/Controllers/PermohonanController.php +++ b/app/Http/Controllers/PermohonanController.php @@ -147,30 +147,8 @@ if ($permohonan->status == 'revisi') { $validate['status'] = 'order'; } - $permohonan->update($validate); - $afterRequest = $permohonan->fresh()->toArray(); - // Process file upload - $file = null; - if ($request->hasFile('attachment')) { - $file = $request->file('attachment'); - } - - // Get keterangan if provided - $keterangan = $request->input('keterangan') ?? null; - - $status =$validate['status'] ?? $permohonan->status; - - $this->historyService->createHistory( - $permohonan, - $status, - $keterangan, - $beforeRequest, - $afterRequest, - $file - ); - return redirect() ->route('permohonan.index')->with('success', 'Permohonan updated successfully'); } catch (Exception $e) { From d48bef9e6744f4080c3485d3ccee12793bdfcdce Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:11:00 +0700 Subject: [PATCH 06/11] Tambahkan use statement untuk User Menambahkan deklarasi `use` untuk model `User` di `PermohonanHistory.php`. Hal ini diperlukan untuk memastikan bahwa referensi terhadap model `User` dalam file ini dikenali oleh sistem. --- app/Models/PermohonanHistory.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/Models/PermohonanHistory.php b/app/Models/PermohonanHistory.php index 2b58a8f..a0f7d34 100644 --- a/app/Models/PermohonanHistory.php +++ b/app/Models/PermohonanHistory.php @@ -4,6 +4,8 @@ namespace Modules\Lpj\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Factories\HasFactory; +use Modules\Usermanagement\Models\User; + // use Modules\Lpj\Database\Factories\PermohonanHistoryFactory; class PermohonanHistory extends Base From c49bc3ddb35296f2d509297d37eb45783ce6ab06 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:11:12 +0700 Subject: [PATCH 07/11] Format kode dan tambahkan relasi histories Mengformat ulang kode model Permohonan untuk konsistensi indentasi dan keterbacaan. Menambahkan relasi `histories` untuk menghubungkan dengan model PermohonanHistory, berguna untuk melacak riwayat perubahan permohonan. --- app/Models/Permohonan.php | 280 +++++++++++++++++++------------------- 1 file changed, 143 insertions(+), 137 deletions(-) diff --git a/app/Models/Permohonan.php b/app/Models/Permohonan.php index a3b35c1..0255e63 100644 --- a/app/Models/Permohonan.php +++ b/app/Models/Permohonan.php @@ -1,150 +1,156 @@ hasFile('attachment')) { - $file = request()->file('attachment'); - $fileName = time() . '_' . $file->getClientOriginalName(); - $filePath = $file->storeAs('permohonan_attachments', $fileName, 'public'); + static::updated(function ($permohonan) { + static::createHistory($permohonan, 'updated'); + }); + } - $permohonan->dokumen = $filePath; + protected static function handleFileUpload($permohonan) + { + if (request()->hasFile('attachment')) { + $file = request()->file('attachment'); + $fileName = time() . '_' . $file->getClientOriginalName(); + $filePath = $file->storeAs('permohonan_attachments', $fileName, 'public'); + + $permohonan->dokumen = $filePath; + } + } + + protected static function createHistory($permohonan, $action) + { + $historyService = app(PermohonanHistoryService::class); + + $status = $permohonan->status; + $keterangan = request()->input('keterangan'); // Get keterangan from request + $beforeRequest = $action === 'updated' ? $permohonan->getOriginal() : []; + $afterRequest = $permohonan->toArray(); + $file = $permohonan->dokumen ?? null; + + $historyService->createHistory( + $permohonan, + $status, + $keterangan, + $beforeRequest, + $afterRequest, + $file, + ); + } + + public function user() + { + return $this->belongsTo(User::class); + } + + public function branch() + { + return $this->belongsTo(Branch::class); + } + + public function tujuanPenilaian() + { + return $this->belongsTo(TujuanPenilaian::class); + } + + public function debiture() + { + return $this->belongsTo(Debiture::class); + } + + public function documents() + { + return $this->hasMany(DokumenJaminan::class); + } + + public function nilaiPlafond() + { + return $this->belongsTo(NilaiPlafond::class); + } + + public function jenisFasilitasKredit() + { + return $this->belongsTo(JenisFasilitasKredit::class); + } + + public function penilaian() + { + return $this->belongsTo(Penilaian::class, 'nomor_registrasi', 'nomor_registrasi'); + } + + public function penawaranTender() + { + return $this->hasMany(PenawaranTender::class, 'nomor_registrasi'); + } + + public function region() + { + return $this->belongsTo(Regions::class, 'region_id'); + } + + public function penawaran() + { + return $this->belongsTo(PenawaranTender::class, 'nomor_registrasi', 'nomor_registrasi'); + } + + public function histories() + { + return $this->hasMany(PermohonanHistory::class, 'permohonan_id', 'id')->orderBy('created_at', 'desc'); } } - - protected static function createHistory($permohonan, $action) - { - $historyService = app(PermohonanHistoryService::class); - - $status = $permohonan->status; - $keterangan = request()->input('keterangan'); // Get keterangan from request - $beforeRequest = $action === 'updated' ? $permohonan->getOriginal() : []; - $afterRequest = $permohonan->toArray(); - $file = $permohonan->dokumen ? Storage::disk('public')->path($permohonan->dokumen) : null; - - $historyService->createHistory( - $permohonan, - $status, - $keterangan, - $beforeRequest, - $afterRequest, - $file - ); - } - - public function user() - { - return $this->belongsTo(User::class); - } - - public function branch() - { - return $this->belongsTo(Branch::class); - } - - public function tujuanPenilaian() - { - return $this->belongsTo(TujuanPenilaian::class); - } - - public function debiture() - { - return $this->belongsTo(Debiture::class); - } - - public function documents() - { - return $this->hasMany(DokumenJaminan::class); - } - - public function nilaiPlafond() - { - return $this->belongsTo(NilaiPlafond::class); - } - - public function jenisFasilitasKredit() - { - return $this->belongsTo(JenisFasilitasKredit::class); - } - - public function penilaian() - { - return $this->belongsTo(Penilaian::class, 'nomor_registrasi', 'nomor_registrasi'); - } - - public function penawaranTender() - { - return $this->hasMany(PenawaranTender::class, 'nomor_registrasi'); - } - - public function region() - { - return $this->belongsTo(Regions::class, 'region_id'); - } - - public function penawaran(){ - return $this->belongsTo(PenawaranTender::class, 'nomor_registrasi', 'nomor_registrasi'); - } -} From a999dfbdd616304d86690d73bc65f4f7166d1e1e Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:11:32 +0700 Subject: [PATCH 08/11] Tambahkan fitur riwayat aktivitas pada halaman detail jaminan Menambahkan komponen tampilan untuk menampilkan riwayat aktivitas permohonan jaminan. Fitur ini termasuk tampilan ikon status, deskripsi, nama pembuat, tanggal, dan link unduhan lampiran jika tersedia. Penambahan ini akan memudahkan pengguna dalam melacak aktivitas yang terjadi pada setiap permohonan jaminan. --- .../views/component/detail-jaminan.blade.php | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/resources/views/component/detail-jaminan.blade.php b/resources/views/component/detail-jaminan.blade.php index 63b2817..2ffdae4 100644 --- a/resources/views/component/detail-jaminan.blade.php +++ b/resources/views/component/detail-jaminan.blade.php @@ -277,4 +277,83 @@
+
+
+

+ Activity +

+
+
+
+ @foreach($permohonan->histories as $activity) +
+ @if($loop->first) +
+
+ @endif + @if(!$loop->last && !$loop->first) +
+
+ @endif +
+ @switch(strtolower($activity->status)) + @case('preregister') + + @break + @case('order') + + @break + + @case('revisi') + + @break + + @case('register') + + @break + + @case('assign') + + @break + + @case('survey') + + @break + @case('proses laporan') + + @break + @case('approved') + + @break + @case('delivered') + + @break + @default + + @endswitch +
+
+ {{ $activity->status }} +

{{ $activity->keterangan }}

+
+ {{ $activity->created_by ? $activity->creator->name : 'System' }} + {{ $activity->created_at->format('d M Y H:i') }} +
+ @if($activity->file_path) + + Attachment + + @endif +
+
+ @endforeach +
+
+
+ @include('lpj::component.pdfviewer') From d66107ec1e20df312dea873fa42240bcaeb4f200 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:14:00 +0700 Subject: [PATCH 09/11] Perbarui fungsi formatTanggalIndonesia dengan opsi waktu Fungsi `formatTanggalIndonesia` diperbarui untuk menerima parameter opsional `$time`. Jika `$time` bernilai `false`, fungsi akan mengembalikan format tanggal tanpa waktu. Namun, jika bernilai `true`, fungsi akan menyertakan waktu dalam format hasilnya. Fungsi `formatTanggalIndonesia2` dihapus untuk menyederhanakan dan mengurangi redundansi kode. --- app/Helpers/Lpj.php | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/app/Helpers/Lpj.php b/app/Helpers/Lpj.php index 044c3f6..e27ff54 100644 --- a/app/Helpers/Lpj.php +++ b/app/Helpers/Lpj.php @@ -5,32 +5,13 @@ use Modules\Lpj\Models\PenawaranDetailTender; use Modules\Lpj\Models\PenawaranTender; - - function formatTanggalIndonesia($date) - { - $carbonDate = Carbon::parse($date); - $indonesianMonths = [ - 'Januari', - 'Februari', - 'Maret', - 'April', - 'Mei', - 'Juni', - 'Juli', - 'Agustus', - 'September', - 'Oktober', - 'November', - 'Desember', - ]; - $month = $indonesianMonths[$carbonDate->month - 1]; - return $carbonDate->format('d') . ' ' . $month . ' ' . $carbonDate->format('Y'); - } - - function formatTanggalIndonesia2($date) + function formatTanggalIndonesia($date,$time=false) { Carbon::setLocale('id'); $waktu = Carbon::parse($date); + if(!$time){ + return $waktu->translatedFormat('d F Y'); + } return $waktu->translatedFormat('d F Y') . ' pukul ' . $waktu->format('H.i') . ' WIB'; } From 085d3a876ed790f2154a8d5f27f530d56aea97ce Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:14:17 +0700 Subject: [PATCH 10/11] Update formatTanggalIndonesia function calls Mengubah pemanggilan fungsi formatTanggalIndonesia dengan penambahan parameter kedua yang bernilai true pada dua file Blade, yaitu surat_tender_download.blade.php dan surat_tender.blade.php. Ini untuk memastikan format tanggal disesuaikan dengan kebutuhan aplikasi. --- resources/views/penawaran/surat_tender.blade.php | 2 +- resources/views/penawaran/surat_tender_download.blade.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/views/penawaran/surat_tender.blade.php b/resources/views/penawaran/surat_tender.blade.php index 7db7b5c..06996a2 100644 --- a/resources/views/penawaran/surat_tender.blade.php +++ b/resources/views/penawaran/surat_tender.blade.php @@ -139,7 +139,7 @@

Harap proposal dibuat dengan harga yang minimal sehingga tidak perlu tawar menawar lagi.

Mohon proposal dapat saya terima segera, sebelum - {{ formatTanggalIndonesia2($penawaran->end_date) }} + {{ formatTanggalIndonesia($penawaran->end_date,true) }}

Best Regards,

diff --git a/resources/views/penawaran/surat_tender_download.blade.php b/resources/views/penawaran/surat_tender_download.blade.php index 0f058bc..a5b269a 100644 --- a/resources/views/penawaran/surat_tender_download.blade.php +++ b/resources/views/penawaran/surat_tender_download.blade.php @@ -154,7 +154,7 @@
Harap proposal dibuat dengan harga yang minimal sehingga tidak perlu tawar menawar lagi.
Mohon proposal dapat saya terima segera, sebelum {{ formatTanggalIndonesia2($penawaran->end_date) }} + class="important">{{ formatTanggalIndonesia($penawaran->end_date,true) }}
From 973bfbbc751d89d73d035a31b45e359448a5bb8b Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 19 Nov 2024 15:21:21 +0700 Subject: [PATCH 11/11] Pisahkan tampilan history aktivitas menjadi komponen terpisah Memindahkan tampilan history aktivitas dari file detail-jaminan.blade.php ke file baru bernama history-permohonan.blade.php dan menghubungkannya menggunakan include. Pendekatan ini membuat kode lebih modular dan lebih mudah di-maintain. --- .../views/component/detail-jaminan.blade.php | 80 +------------------ .../component/history-permohonan.blade.php | 78 ++++++++++++++++++ 2 files changed, 79 insertions(+), 79 deletions(-) create mode 100644 resources/views/component/history-permohonan.blade.php diff --git a/resources/views/component/detail-jaminan.blade.php b/resources/views/component/detail-jaminan.blade.php index 2ffdae4..4d5266e 100644 --- a/resources/views/component/detail-jaminan.blade.php +++ b/resources/views/component/detail-jaminan.blade.php @@ -277,83 +277,5 @@
-
-
-

- Activity -

-
-
-
- @foreach($permohonan->histories as $activity) -
- @if($loop->first) -
-
- @endif - @if(!$loop->last && !$loop->first) -
-
- @endif -
- @switch(strtolower($activity->status)) - @case('preregister') - - @break - @case('order') - - @break - - @case('revisi') - - @break - - @case('register') - - @break - - @case('assign') - - @break - - @case('survey') - - @break - @case('proses laporan') - - @break - @case('approved') - - @break - @case('delivered') - - @break - @default - - @endswitch -
-
- {{ $activity->status }} -

{{ $activity->keterangan }}

-
- {{ $activity->created_by ? $activity->creator->name : 'System' }} - {{ $activity->created_at->format('d M Y H:i') }} -
- @if($activity->file_path) - - Attachment - - @endif -
-
- @endforeach -
-
-
- +@include('lpj::component.history-permohonan') @include('lpj::component.pdfviewer') diff --git a/resources/views/component/history-permohonan.blade.php b/resources/views/component/history-permohonan.blade.php new file mode 100644 index 0000000..85ed489 --- /dev/null +++ b/resources/views/component/history-permohonan.blade.php @@ -0,0 +1,78 @@ +
+
+

+ Activity +

+
+
+
+ @foreach($permohonan->histories as $activity) +
+ @if($loop->first) +
+
+ @endif + @if(!$loop->last && !$loop->first) +
+
+ @endif +
+ @switch(strtolower($activity->status)) + @case('preregister') + + @break + @case('order') + + @break + + @case('revisi') + + @break + + @case('register') + + @break + + @case('assign') + + @break + + @case('survey') + + @break + @case('proses laporan') + + @break + @case('approved') + + @break + @case('delivered') + + @break + @default + + @endswitch +
+
+ {{ $activity->status }} +

{{ $activity->keterangan }}

+
+ {{ $activity->created_by ? $activity->creator->name : 'System' }} + {{ $activity->created_at->format('d M Y H:i') }} +
+ @if($activity->file_path) + + Attachment + + @endif +
+
+ @endforeach +
+
+