Cambiada validación para chequear nombre solamente en pedidos del mismo tipo

This commit is contained in:
Alejandro Tasistro 2025-06-19 23:28:15 -03:00
parent db714a209c
commit d890d405bd

View file

@ -26,24 +26,25 @@ class SubpedidoController extends Controller
return SubpedidoResource::collection(Subpedido::filtrar($filtros)->get()); return SubpedidoResource::collection(Subpedido::filtrar($filtros)->get());
} }
public function store(Request $request) public function store(Request $request)
{ {
$validado = $this->validateSubpedido(); $validado = $this->validateSubpedido();
if (Subpedido::where("nombre", $validado["nombre"]) if (Subpedido::where([
->where("grupo_de_compra_id", $validado["grupo_de_compra_id"]) "nombre" => $validado["nombre"],
"tipo_pedido_id" => $validado["tipo_pedido_id"],
"grupo_de_compra_id" => $validado["grupo_de_compra_id"]])
->get() ->get()
->count() ->count())
) { throw new HttpException(400, "Ya existe un pedido con este nombre");
throw new HttpException(400, "Ya existe un subpedido con este nombre");
}
$s = new Subpedido(); $pedido = new Subpedido();
$s->nombre = $validado["nombre"]; $pedido->nombre = $validado["nombre"];
$s->grupo_de_compra_id = $validado["grupo_de_compra_id"]; $pedido->grupo_de_compra_id = $validado["grupo_de_compra_id"];
$s->tipo_pedido_id = $validado["tipo_id"]; $pedido->tipo_pedido_id = $validado["tipo_id"];
$s->save(); $pedido->save();
return $this->show($s);
return $this->show($pedido);
} }
protected function validateSubpedido(): array protected function validateSubpedido(): array