/** * Store a newly created resource in storage. * POST /compras * * @return Response */ public function postCreate() { DB::beginTransaction(); try { $compra = Compras::create(Input::all()); $compra->fecha = $compra->created_at; $productos = Input::get('productos'); foreach ($productos as $producto) { if ($producto['producto_id'] > 0) { if ($producto['preciototal'] > 0) { $oproducto = Producto::find($producto['producto_id']); $compra->productos()->attach($oproducto->id, array('preciocompra' => $producto['preciocompra'], 'cantidad' => $producto['cantidad'], 'cantidadtotal' => $producto['cantidadtotal'], 'preciototal' => $producto['preciototal'], 'preciounitario' => $producto['preciounitario'], 'presentacion' => $producto['presentacion'], 'unidadmedida' => $producto['unidadmedida'])); $oproducto->costo = $producto['preciocompra']; $oproducto->stockactual = $oproducto->stockactual + $producto['cantidadtotal']; $oproducto->save(); } else { return Response::json(array('estado' => false, 'msg' => 'Productos con precios 0.00')); } } else { return Response::json(array('estado' => false, 'msg' => 'No has Selecionado un producto')); } } $compra->save(); } catch (Exception $e) { DB::rollback(); return Response::json(array('estado' => false, 'msg' => $e, 'error' => 1)); } DB::commit(); return Response::json(array('estado' => true, 'msg' => 'Operacion completada Correctamente')); }