<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Recibo extends Model
{
    use HasFactory;

    protected $table = 'recibo';   // correcto: tu tabla se llama 'recibo'
    protected $primaryKey = 'id_recibo';

    protected $fillable = [
        'numero_recibo',
        'fecha_pago',
        'monto_pagado',
        'forma_pago',
        'estado',
    ];

    // 🔹 Relación con tabla pivote
    public function reciboFacturas()
    {
        return $this->hasMany(ReciboFactura::class, 'id_recibo', 'id_recibo');
    }

    // 🔹 Relación muchos a muchos con Facturación
    public function facturas()
    {
        return $this->belongsToMany(Facturacion::class, 'recibo_factura', 'id_recibo', 'id_factura')
                    ->withTimestamps(); // solo si recibo_factura tiene timestamps
    }

    public function pagosDetalle()
{
    return $this->hasMany(PagoDetalle::class, 'id_recibo', 'id_recibo');
}

// Relación con PagoRecibo (pivote)
public function pagosRecibo()
{
    return $this->hasMany(PagoRecibo::class, 'id_recibo', 'id_recibo');
}

// Relación indirecta a PagoDetalle a través de PagoRecibo
public function pagos()
{
    return $this->belongsToMany(PagoDetalle::class, 'pago_recibo', 'id_recibo', 'id_pago');
}


}
