NETBien.backend/app/Models/CashClose.php

69 lines
1.4 KiB
PHP

<?php namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class CashClose extends Model
{
use SoftDeletes;
protected $fillable = [
'user_id',
'opened_at',
'closed_at',
'initial_balance',
'income',
'exit',
'income_cash',
'income_card',
'income_transfer',
'status',
'type',
'notes',
];
protected $casts = [
'initial_balance' => 'decimal:2',
'income' => 'decimal:2',
'exit' => 'decimal:2',
'income_cash' => 'decimal:2',
'income_card' => 'decimal:2',
'income_transfer' => 'decimal:2',
'opened_at' => 'datetime',
'closed_at' => 'datetime',
'deleted_at' => 'datetime',
];
/**
* Relación con el usuario que realizó el corte
*/
public function user()
{
return $this->belongsTo(User::class);
}
/**
* Relación con las ventas asociadas a este corte
*/
public function sales()
{
return $this->hasMany(Sale::class);
}
/**
* Scope para cortes abiertos
*/
public function scopeOpen($query)
{
return $query->where('status', 'open');
}
/**
* Scope para cortes cerrados
*/
public function scopeClosed($query)
{
return $query->where('status', 'closed');
}
}