public function getCobrarDeuda($id = NULL) { if (isset($id)) { $credito = Credito::find($id); if ($credito->ruc > 0) { $persona = Persona::where('ruc', '=', $credito->ruc)->first(); $tipocomprobante = 3; } else { $persona = Persona::where('dni', '=', $credito->dni)->first(); $tipocomprobante = 2; } $pedido = $credito->pedido; $importe = $credito->importe; $subtotal = $importe / 1.18; $documentoventa = Documentoventa::create(['estado' => 1, 'igv' => $importe - $subtotal, 'importe' => $importe, 'subtotal' => $subtotal, 'caja_id' => $this->detallecaja->caja_id, 'detallecaja_id' => $this->detallecaja->id, 'pedido_id' => $pedido->id, 'persona_id' => $persona->id, 'tipocomprobante_id' => $tipocomprobante]); $productos = $pedido->productos; $alquiler = $pedido->alquiler; foreach ($productos as $producto) { if ($producto->pivot->estado == 1) { $producto->pivot->estado = 0; $documentoventa->productos()->attach($producto->id, ['precio' => $producto->pivot->precio, 'preciounitario' => $producto->pivot->preciounitario, 'cantidad' => $producto->pivot->cantidad, 'descripcion' => $producto->nombre]); $producto->pivot->save(); } } foreach ($alquiler as $detalle) { if ($detalle->pivot->estado == 1) { $detalle->pivot->estado = 0; $documentoventa->alquiler()->attach($detalle->id, ['precio' => $detalle->pivot->precio, 'preciounitario' => $detalle->pivot->precio / $detalle->pivot->cantidad, 'cantidad' => $detalle->pivot->cantidad, 'descripcion' => $detalle->descripcion]); $detalle->pivot->save(); } } $credito->estado = 0; $credito->save(); return Redirect::back(); } else { return Redirect::back(); } }