Exemple #1
0
 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'));
 }
Exemple #4
0
 public static function getItems()
 {
     $cantidad = 0;
     if (Auth::check()) {
         $usuario = Auth::user()->id;
         $cantidad = Carrito::where('idUsuario', $usuario)->count();
     }
     return $cantidad;
 }
Exemple #5
0
 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'));
 }
Exemple #9
0
 /**
  * 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);
 }
Exemple #11
0
 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');
 }