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