public static function agregarLineaDeVenta($idGrano, $cantidad, $unidad) { // 0=Costal, 1-Tonelada $usuario = Auth::user()->id; $lineaDeVenta = new LineaDeVenta(); $lineaDeVenta->IdGrano = $idGrano; $lineaDeVenta->cantidad = $cantidad; $lineaDeVenta->unidadDeMedida = $unidad; $lineaDeVenta->save(); $carrito = new Carrito(); $carrito->idUsuario = $usuario; $carrito->idLineaDeVenta = $lineaDeVenta->id; $carrito->save(); }
function panelUsuario() { $cntCarrito = Carrito::getItems(); $usuario = Auth::user(); $pedidos = \App\Pedido::where('idCliente', $usuario->id)->get(); return view('cliente.cliente_pedidos', compact('pedidos', 'cntCarrito')); }
public function show($id) { $cntCarrito = Carrito::getItems(); $warehouse = Bodega::find($id); $formatedPrice = \App\Dinero::money_format($warehouse->precio); $area = $warehouse->ancho * $warehouse->largo; return view('bodega.confirmacion_de_renta', compact('warehouse', 'formatedPrice', 'area', 'cntCarrito')); }
public static function getItems() { $cantidad = 0; if (Auth::check()) { $usuario = Auth::user()->id; $cantidad = Carrito::where('idUsuario', $usuario)->count(); } return $cantidad; }
public function tieneItems() { $items = Carrito::where('idUsuario', $this->id)->count(); if ($items > 0) { return true; } else { return false; } }
public function add() { $micantidad = Input::get('micantidad'); $itemCode = Input::get('itemCode'); $ID = Session::get('UserId'); $client = Session::get('Client'); //$ID = Sap::getId(); //$client = Sap::getClientSoap(); $CurrencyRate = $client->call('getCurrencyRate', array('tipo' => 'USD', 'SID' => $ID)); $currency = $CurrencyRate['getCurrencyRateResult']; /* funcion para sacar el detalle de un producto */ $ItemList = $client->call('GetDetalle', array('SID' => $ID, 'producto' => $itemCode)); $productos = (string) $ItemList['GetDetalleResult']; $datos = utf8_encode($productos); $BOM = new \SimpleXMLElement($datos); //datos a mostrar en la interfaz $itemName = (string) $BOM->BO->Items->row->ItemName; $itemCode = (string) $BOM->BO->Items->row->ItemCode; if ($BOM->BO->Items_Prices->row[0]->Currency == "MXP") { $numero = (double) $BOM->BO->Items_Prices->row[1]->Price; $numero = number_format($numero, 2, '.', ','); $precio = $numero; } else { $number = (double) $BOM->BO->Items_Prices->row[1]->Price; $number = number_format($number, 2, '.', ','); $numero = $number * $currency; $numero = number_format($numero, 2, '.', ','); $precio = $numero; } $stock = $BOM->BO->Items->row->QuantityOnStock * 1; $articulos = array('ItemCode' => $itemCode, 'ItemName' => $itemName, 'cantidad' => $micantidad, 'precio' => $precio, 'stock' => $stock, 'cliente' => (string) Auth::user()->email, 'user_id' => Auth::user()->id); $carr = DB::table('carrito')->where('itemCode', $itemCode)->where('user_id', Auth::user()->id)->first(); if ($carr) { $cant = $carr->cantidad; DB::table('carrito')->where('itemCode', $itemCode)->where('user_id', Auth::user()->id)->update(['cantidad' => (int) $cant + (int) Request::get('number'), 'stock' => $stock]); } else { Carrito::create($articulos); } $articulos = DB::table('carrito')->where('user_id', '=', Auth::user()->id)->get(); $value = count($articulos); session(['cant' => $value]); Session::put('add', "Tu Producto ha sido Agregado al Carrito"); return redirect()->back(); }
public function finalizarCompra() { $cntCarrito = Carrito::getItems(); return view('venta.finalizar_compra', compact('cntCarrito')); }
public function catalogo() { $cntCarrito = Carrito::getItems(); $catalogo = Inventario::getCatalogo(); return view('grano.indice_de_granos', compact('catalogo', 'cntCarrito')); }
/** * Show the form for creating a new resource. * * @return Response */ public function cotizador() { /** Primero: * Obtenemos los productos del carrito y se arma un array con todos los items **/ $productos = []; $prods = Carrito::where('cliente', '=', Auth::user()->email)->get(); // El id debe ser el primer elemento del array $primer = true; foreach ($prods as $producto) { if ($primer == true) { $primer = false; $productos = [['producto' => ['id' => $producto->ItemCode, 'cantidad' => $producto->cantidad]]]; } else { $productos[] = ['producto' => ['id' => $producto->ItemCode, 'cantidad' => $producto->cantidad]]; } } //return var_dump($productos); /** * Se arma un Xml con todos lo items por que los arrays entre C# y php son incompatibles */ $xml = new \SimpleXMLElement('<root/>'); // Leer datos del array e introducirlos al documento xml array_walk_recursive($productos, function ($value, $key) use($xml) { if ($key == 'id') { $Item = $xml->addChild('producto'); $Item->addChild($key, $value); } else { $xml->producto[count($xml) - 1]->addChild($key, $value); } }); $stringXML = $xml->asXML(); //return var_dump($stringXML); /** * Obtenemos el CardCode del usuario Lead y el ID de la session de SAP **/ $Cardcode = Auth::user()->sapResultado; $ID = Session::get('UserId'); $client = Session::get('Client'); //$ID = Sap::getId(); /*** Hacer la cotizacion * Ademas necesitamos un Client de SAP para enviar el mensaje y elaborar la cotizacion en SAP */ $stringTest = $client->call('getCotizacion', array('CardCode' => $Cardcode, 'SID' => $ID, 'Items' => $stringXML)); /** * Se obtiene la respuesta => codigo de la cotizacion */ $idReport = (string) $stringTest['getCotizacionResult']; /** * Se puede obtener la cotizacion y enviarla por email */ $email = $client->call('getDocCotz', array('idReport' => $idReport, 'user_email' => Auth::user()->email)); //echo ($email); /** * si la respuesta es igual a "enviado" entonces el email ha sido enviado desde C# */ if (strcmp((string) $email['getDocCotzResult'], "enviado") == 0) { Session::flash('mensaje', 'Hemos enviado la cotización a tu email'); } else { return back()->withErrors(array('msg' => 'Ha ocurrido un error al procesar su solicitud')); } return back(); }
public function eliminarDelCarrito($id) { return Carrito::eliminarDelCarrito($id); }
public function getPaymentStatus() { //obtenemos el id de pago antes de limpiar la session $payment_id = Session::get('paypal_payment_id'); //limpiamos la session donde se encuentra el id de pago Session::forget('paypal_payment_id'); if (empty(Input::get('PayerID')) || empty(Input::get('token'))) { return Redirect::route('carrito.failed'); } $payment = Payment::get($payment_id, $this->_api_context); /** * el objeto Payment contiene información necesaria * para ejecutar el pago con la cuenta PayPal * el payer_id es agregado en los parametros del query * esto se usa cuando el usuario es redirigido al sitio desde paypal */ $execution = new PaymentExecution(); $execution->setPayerId(Input::get('PayerID')); /** * Ejecutamos el pago */ $result = $payment->execute($execution, $this->_api_context); /** * si es aprovado se realiza el pago/compra */ if ($result->getState() == 'approved') { $id = $result->getId(); $token = csrf_token(); $datos = Carrito::where('user_id', Auth::user()->id)->get(); $his = array('tipoPago' => 'PayPal', 'ConfirmacionPago' => $id, 'user_id' => Auth::user()->id); Historial::create($his); $gID = Historial::firstOrNew(['ConfirmacionPago' => $id]); foreach ($datos as $d) { $Detalle = array('ItemCode' => $d->ItemCode, 'ItemName' => $d->ItemName, 'cantidad' => $d->cantidad, 'precio' => $d->precio, 'id_historialCompra' => $gID->id); Compras::create($Detalle); } Carrito::where('user_id', Auth::user()->id)->delete(); Session::put('cant', 0); return Redirect::route('carrito.success', [$id, $token]); // } return Redirect::route('carrito.failed'); }