<?php

namespace App\Models;

use CodeIgniter\Model;

class ModelDetailPembayaran extends Model
{
    protected $table            = 'detail_pembayaran';
    protected $primaryKey       = 'id_detail';
    protected $allowedFields    = ['id_pembayaran', 'jenis_item', 'id_item', 'nama_item', 'jumlah', 'harga', 'subtotal'];

    // Ambil semua detail berdasarkan ID pembayaran tertentu
    public function getByPembayaran($id_pembayaran)
    {
        return $this->where('id_pembayaran', $id_pembayaran)
            ->orderBy('jenis_item', 'ASC')
            ->get()->getResultArray();
    }

    // Tambah detail pembayaran
    public function tambahData($data)
    {
        return $this->insert($data);
    }

    // Update detail berdasarkan ID detail
    public function updateData($id, $data)
    {
        return $this->update($id, $data);
    }

    // Hapus satu data detail berdasarkan ID detail
    public function deleteData($id)
    {
        return $this->delete($id);
    }

    // Hapus semua detail berdasarkan ID pembayaran (misal saat hapus transaksi)
    public function deleteByPembayaran($id_pembayaran)
    {
        return $this->where('id_pembayaran', $id_pembayaran)->delete();
    }
}
