public function venta() { $invG = inventario::inventarioEnVenta(); if (count($invG) < 1) { Session::flash('message-warning', 'No hay granos disponibles.'); } return view('venta', compact('invG')); }
public static function precioItem($id) { return inventario::join('granos', 'inventario.granos_id', '=', 'granos.id')->where('inventario.id', '=', $id)->select('granos.precio', 'granos.tipograno')->first(); }
private function saveOrder($cart) { $total = 0; foreach ($cart as $item) { $total += $item->precio * $item->cantidad; } foreach ($cart as $item) { $tinv = inventario::totalEnInventario($item->granos_id); if ($item->cantidad > $tinv) { return \Redirect::route('carrito')->with('message-error', 'La compra no se pudo completar'); } } $p = new pago(); $p->metododepago = "PayPal"; $p->cantidadEntrega = $total; $p->save(); $v = new venta(); $v->usuario_id = \Auth::user()->id; $v->pago_id = $p->id; $v->total = $total; $v->save(); foreach ($cart as $item) { $tuplas = inventario::itemsEnInventario($item->granos_id); $ldv = new lineadeventa(); $ldv->cantidad = $item->cantidad; $ldv->venta_id = $v->id; $ldv->granos_id = $item->granos_id; $ldv->save(); foreach ($tuplas as $tupla) { if ($item->cantidad == 0) { break; } elseif ($item->cantidad < $tupla->cantidad) { inventario::updateInventario($tupla->id, $tupla->cantidad, $item->cantidad); break; } elseif ($item->cantidad > $tupla->cantidad) { $cart[$item->id]->cantidad = $item->cantidad - $tupla->cantidad; \Session::put('cart', $cart); inventario::destroy($tupla->id); } elseif ($item->cantidad == $tupla->cantidad) { inventario::destroy($tupla->id); break; } } } }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $compra = new compras(); $compra->fecha = $request['fecha']; $compra->proveedor_id = $request['proveedor']; $compra->save(); foreach ($request['grano'] as $granos) { detalle::create(['cantidad' => $granos['cantidad'], 'certificado' => $granos['certificado'], 'tipo' => $granos['tipoC'], 'compras_id' => $compra->id, 'bodega_id' => $granos['bodega'], 'granos_id' => $granos['grano']]); inventario::create(['cantidad' => $granos['cantidad'], 'certificado' => $granos['certificado'], 'tipocompra' => $granos['tipoC'], 'granos_id' => $granos['grano'], 'bodega_id' => $granos['bodega']]); } return Redirect::to('/admin/inventario'); }