fix: ajustar validación de seriales en solicitudes de devolución y restauración
This commit is contained in:
parent
95154f4b28
commit
38e5050692
@ -111,8 +111,8 @@ public function withValidator($validator)
|
||||
);
|
||||
}
|
||||
|
||||
// Validar seriales si fueron especificados
|
||||
if (isset($item['serial_numbers'])) {
|
||||
// Validar seriales solo si se proporcionaron (array vacío = sin serials)
|
||||
if (!empty($item['serial_numbers'])) {
|
||||
if (count($item['serial_numbers']) !== $item['quantity_returned']) {
|
||||
$validator->errors()->add(
|
||||
"items.{$index}.serial_numbers",
|
||||
|
||||
@ -87,7 +87,6 @@ public function restoreFromReturn(): void
|
||||
$this->update([
|
||||
'status' => 'disponible',
|
||||
'sale_detail_id' => null,
|
||||
'return_detail_id' => null,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -113,7 +113,7 @@ public function createReturn(array $data): Returns
|
||||
|
||||
if ($inventory->track_serials) {
|
||||
// Validación de cantidad de seriales
|
||||
if (isset($item['serial_numbers']) && is_array($item['serial_numbers'])) {
|
||||
if (!empty($item['serial_numbers'])) {
|
||||
if (count($item['serial_numbers']) != $item['quantity_returned']) {
|
||||
throw new \Exception(
|
||||
"La cantidad de seriales proporcionados no coincide con la cantidad a devolver " .
|
||||
@ -123,7 +123,7 @@ public function createReturn(array $data): Returns
|
||||
}
|
||||
|
||||
// Gestionar seriales
|
||||
if (isset($item['serial_numbers']) && is_array($item['serial_numbers'])) {
|
||||
if (!empty($item['serial_numbers'])) {
|
||||
// Seriales específicos proporcionados
|
||||
foreach ($item['serial_numbers'] as $serialNumber) {
|
||||
$serial = InventorySerial::where('serial_number', $serialNumber)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user