Files
stradaautopartes/app/Models/Movimiento.php
2023-08-16 16:13:34 -07:00

74 lines
1.6 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Movimiento extends Model
{
use HasFactory;
protected $fillable = [
'codigo',
'pago_efectivo',
'pago_tarjeta',
'pago_vales',
'pago_transferencia',
'precio_venta',
'estado_movimiento_id',
'user_id',
'is_liquidado',
'motivo',
];
public function estadoMovimiento()
{
return $this->belongsTo(EstadoMovimiento::class);
}
public function user()
{
return $this->belongsTo(User::class);
}
public function totalAbono()
{
return ((float)$this->pago_efectivo +
(float)$this->pago_tarjeta +
(float)$this->pago_vales +
(float)$this->pago_transferencia);
}
public function cambio()
{
return (
((float)$this->pago_efectivo +
(float)$this->pago_tarjeta +
(float)$this->pago_vales +
(float)$this->pago_transferencia) -
(float)$this->precio_venta
);
}
public function faltante()
{
return (
(float)$this->precio_venta -
((float)$this->pago_efectivo +
(float)$this->pago_tarjeta +
(float)$this->pago_vales +
(float)$this->pago_transferencia)
);
}
public function ajusteCambio()
{
if(((float)$this->pago_efectivo) - $this->cambio()>0)
{
$this->pago_efectivo-= $this->cambio();
}
}
}