diff --git a/app/Http/Controllers/Api/SubpedidoController.php b/app/Http/Controllers/Api/SubpedidoController.php index 7e6b266..43ac4ba 100644 --- a/app/Http/Controllers/Api/SubpedidoController.php +++ b/app/Http/Controllers/Api/SubpedidoController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api; use App\Http\Controllers\Controller; use App\Producto; +use App\TipoPedido; use Illuminate\Http\Request; use App\Filtros\FiltroDeSubpedido; use App\Subpedido; @@ -28,12 +29,19 @@ class SubpedidoController extends Controller public function store(Request $request) { $validado = $this->validateSubpedido(); - if (Subpedido::where("nombre",$validado["nombre"])->where("grupo_de_compra_id",$validado["grupo_de_compra_id"])->get()->count()) { + + if (Subpedido::where("nombre", $validado["nombre"]) + ->where("grupo_de_compra_id", $validado["grupo_de_compra_id"]) + ->get() + ->count() + ) { throw new HttpException(400, "Ya existe un subpedido con este nombre"); } + $s = new Subpedido(); $s->nombre = $validado["nombre"]; $s->grupo_de_compra_id = $validado["grupo_de_compra_id"]; + $s->tipo_pedido_id = $validado["tipo_id"]; $s->save(); return $this->show($s); } @@ -45,7 +53,11 @@ class SubpedidoController extends Controller 'grupo_de_compra_id' => [ 'required', Rule::in(GrupoDeCompra::all()->pluck('id')), - ] + ], + 'tipo_id' => [ + 'required', + Rule::in(TipoPedido::all()->pluck('id')), + ], ]); } diff --git a/resources/js/components/pedidos/PedidoSelect.vue b/resources/js/components/pedidos/PedidoSelect.vue index cb2bc60..2fa35fe 100644 --- a/resources/js/components/pedidos/PedidoSelect.vue +++ b/resources/js/components/pedidos/PedidoSelect.vue @@ -105,7 +105,8 @@ export default { else await this.crearPedido({ nombre: this.searchString, - grupo_de_compra_id: this.grupo_de_compra.id + grupo_de_compra_id: this.grupo_de_compra.id, + tipo_id: 1, }); }, } diff --git a/resources/js/store/modules/pedido.js b/resources/js/store/modules/pedido.js index 651d752..1f6542b 100644 --- a/resources/js/store/modules/pedido.js +++ b/resources/js/store/modules/pedido.js @@ -55,11 +55,8 @@ const actions = { async guardarSesion(_, { pedido_id }) { await axios.post("/pedido/sesion", { id: pedido_id }); }, - async crearPedido({ commit, dispatch }, { nombre, grupo_de_compra_id }) { - const response = await axios.post("/api/subpedidos", { - nombre: nombre, - grupo_de_compra_id: grupo_de_compra_id - }); + async crearPedido({ commit, dispatch }, req) { + const response = await axios.post("/api/subpedidos", req); dispatch("guardarSesion", { pedido_id: response.data.data.id}); commit('setPedido', response.data.data); },