🔧 refactor(noc): Integrasi Bucok & pembersihan kode NocController
- Tambah import model Bucok di NocController
- Refactor method update(): hapus variabel & logic status usang
- Update otomatis Bucok setelah NOC disimpan (nominal, tanggal, status)
- Gunakan where()->first() untuk cari record Bucok berdasarkan nomor_tiket
- Hapus 26 baris komentar dead code & filter whereHas('noc') di penyelesaian()
- Perbaiki formatting, indentasi, dan tambah blank line untuk readability
- Gunakan fallback tanggal penyelesaian (date('Y-m-d')) jika kosong
- Terapkan null coalescing operator (??) untuk handle nilai null
- Sinkronisasi status penyelesaian NOC ↔️ Bucok & kode lebih bersih
This commit is contained in:
@@ -6,7 +6,8 @@
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Modules\Lpj\Http\Requests\NocRequest;
|
use Modules\Lpj\Http\Requests\NocRequest;
|
||||||
use Modules\Lpj\Models\Noc;
|
use Modules\Lpj\Models\Bucok;
|
||||||
|
use Modules\Lpj\Models\Noc;
|
||||||
use Modules\Lpj\Models\PersetujuanPenawaran;
|
use Modules\Lpj\Models\PersetujuanPenawaran;
|
||||||
use Modules\Lpj\Models\JenisPenilaian;
|
use Modules\Lpj\Models\JenisPenilaian;
|
||||||
|
|
||||||
@@ -49,15 +50,12 @@
|
|||||||
{
|
{
|
||||||
$validated = $request->validated();
|
$validated = $request->validated();
|
||||||
|
|
||||||
|
|
||||||
$validated['updated_by'] = Auth::id();
|
$validated['updated_by'] = Auth::id();
|
||||||
if (request()->get('status_bayar') == "sudah_bayar") {
|
if (request()->get('status_bayar') == "sudah_bayar") {
|
||||||
$validated['status'] = '1';
|
$validated['status'] = '1';
|
||||||
$status = "spk";
|
|
||||||
} else {
|
|
||||||
$status = "persetujuan-penawaran";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$dataNoc = [
|
$dataNoc = [
|
||||||
'nominal_bayar' => $validated['nominal_bayar'],
|
'nominal_bayar' => $validated['nominal_bayar'],
|
||||||
'total_pembukuan' => $validated['total_pembukuan'],
|
'total_pembukuan' => $validated['total_pembukuan'],
|
||||||
@@ -98,26 +96,11 @@
|
|||||||
}
|
}
|
||||||
$noc->save();
|
$noc->save();
|
||||||
|
|
||||||
/* Update the status of the related permohonan to 'spk'
|
$bucok = Bucok::where('nomor_tiket', $noc->nomor_tiket)->first();
|
||||||
$permohonan = Permohonan::find(request()->get('permohonan_id'));
|
$bucok->nominal_penyelesaian = $noc->total_pembukuan ?? '';
|
||||||
if ($permohonan) {
|
$bucok->tanggal_penyelesaian = $noc->tanggal_pembayaran ?? date('Y-m-d');
|
||||||
$permohonan->status_bayar = request()->get('status_pembayar');
|
$bucok->penyelesaian = 'Selesai';
|
||||||
if ($permohonan->jenis_penilaian_id == 2) {
|
$bucok->save();
|
||||||
$permohonan->status = $status;
|
|
||||||
}
|
|
||||||
$permohonan->save();
|
|
||||||
|
|
||||||
// andy add, update status penawaran.status='spk'
|
|
||||||
// $penawaran = PenawaranTender::where('nomor_registrasi',$permohonan->nomor_registrasi)->first();
|
|
||||||
if ($permohonan->jenis_penilaian_id == 2) {
|
|
||||||
PenawaranTender::where('nomor_registrasi', $permohonan->nomor_registrasi)->update([
|
|
||||||
'status' => $status,
|
|
||||||
'updated_by' => Auth::id(),
|
|
||||||
'updated_at' => now(),
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
// andy add, update status penawaran.status='spk'
|
|
||||||
}*/
|
|
||||||
|
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('noc.index')->with('success', 'NOC berhasil disimpan.');
|
->route('noc.index')->with('success', 'NOC berhasil disimpan.');
|
||||||
@@ -130,6 +113,7 @@
|
|||||||
{
|
{
|
||||||
$validated = $request->validated();
|
$validated = $request->validated();
|
||||||
|
|
||||||
|
|
||||||
if($request->get('is_memo')){
|
if($request->get('is_memo')){
|
||||||
|
|
||||||
$memo = Noc::find($request->get('is_memo'));
|
$memo = Noc::find($request->get('is_memo'));
|
||||||
@@ -332,9 +316,7 @@
|
|||||||
$query = PersetujuanPenawaran::query();
|
$query = PersetujuanPenawaran::query();
|
||||||
|
|
||||||
// Filter for penyelesaian (where memo_penyelesaian is not null)
|
// Filter for penyelesaian (where memo_penyelesaian is not null)
|
||||||
$query->whereHas('noc', function($q) {
|
|
||||||
$q->whereNotNull('memo_penyelesaian');
|
|
||||||
});
|
|
||||||
|
|
||||||
// Apply search filter if provided
|
// Apply search filter if provided
|
||||||
if ($request->has('search') && !empty($request->get('search'))) {
|
if ($request->has('search') && !empty($request->get('search'))) {
|
||||||
|
|||||||
Reference in New Issue
Block a user