This commit is contained in:
Lizandro Guarnizo
2026-02-09 15:36:04 -05:00
parent 4b9d7a1f25
commit dc2fb553e5
2 changed files with 136 additions and 6 deletions
+12 -4
View File
@@ -4,6 +4,8 @@ namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Validation\ValidationException;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Auth;
class Recepcion extends Model
{
@@ -14,6 +16,7 @@ class Recepcion extends Model
'referencia_type',
'referencia_id',
'user_id',
'proveedor_id',
'cantidad',
'prendas_defectuosas',
'fecha_recepcion',
@@ -36,6 +39,11 @@ class Recepcion extends Model
return $this->belongsTo(User::class, 'user_id');
}
public function proveedor()
{
return $this->belongsTo(Proveedor::class, 'proveedor_id');
}
protected static function booted()
{
static::creating(function ($rec) {
@@ -68,7 +76,7 @@ class Recepcion extends Model
// Ya recibido efectivo (cantidad - defectuosos)
$yaRecibido = (int) \App\Models\Recepcion::where('referencia_type', get_class($referencia))
->where('referencia_id', $referencia->id)
->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
->sum(DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
// Los arreglos/reprocesos permiten re-recepción cuando regresen
$arreglos = 0;
@@ -105,8 +113,8 @@ class Recepcion extends Model
}
// Set user if available
if (! $rec->user_id && auth()->check()) {
$rec->user_id = auth()->id();
if (! $rec->user_id && Auth::check()) {
$rec->user_id = Auth::id();
}
});
@@ -161,7 +169,7 @@ class Recepcion extends Model
$sum = (int) static::where('referencia_type', get_class($referencia))
->where('referencia_id', $referencia->id)
->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
->sum(DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
$referencia->cantidad_recibida = $sum;
$referencia->save();