Files
lpj/app/Http/Controllers/MemoController.php
Daeng Deni Mardaeni 5e7368ebcf feat(memo): tambah field memo penyelesaian ke tabel NOC dan update generatePdf
Menambahkan penyimpanan data memo penyelesaian ke tabel NOC dan memperbarui fungsi generatePdf di MemoController agar lebih terintegrasi.

Perubahan yang dilakukan:
- Menambahkan migrasi untuk field baru di tabel NOC:
  - memo_penyelesaian_number: nomor memo penyelesaian
  - memo_penyelesaian_date: tanggal memo
  - memo_penyelesaian_payment_date: tanggal pembayaran
  - memo_penyelesaian_pdf_path: path file PDF memo
  - memo_penyelesaian_created_at: timestamp pembuatan memo

- Update model NOC:
  - Menambahkan field baru ke $fillable array untuk mass assignment
  - Menambahkan casting untuk field date dan datetime agar otomatis diconvert oleh Eloquent
  - Mempertahankan struktur model dan relasi yang sudah ada

- Update MemoController:
  - Mengubah proses penyimpanan memo dari tabel permohonan ke tabel NOC
  - Menambahkan pencarian NOC berdasarkan permohonan_id
  - Menyimpan semua informasi memo penyelesaian langsung ke NOC
  - Tetap memperbarui status permohonan agar proses bisnis tetap berjalan
  - Menambahkan logging untuk mempermudah monitoring dan debugging
  - Menggunakan DB transaction untuk menjaga konsistensi data

Struktur data memo penyelesaian:
- Disimpan secara terpusat di tabel NOC sebagai source of truth
- Memiliki relasi langsung dengan tabel permohonan untuk referensi data
- Menyimpan path PDF memo untuk akses file yang lebih mudah
- Menyediakan timestamp lengkap untuk kebutuhan audit trail

Tujuan perubahan:
- Memusatkan data memo penyelesaian di tabel NOC untuk kemudahan query dan reporting
- Menjamin konsistensi data dengan mekanisme transaction
- Memperjelas struktur relasi antara memo penyelesaian dan permohonan
- Memudahkan proses tracking, pelaporan, dan audit memo penyelesaian
2025-07-17 13:03:32 +07:00

18 KiB