public function guardar(Request $request) { $codigo = $request->input('codigo'); $factura = Factura::where('codigo', $codigo)->first(); $factura->subtotal = $request->input('Esubtotal'); $factura->total = $request->input('Etotal'); $factura->forma = $request->input('forma'); $factura->modo = $request->input('modo'); $factura->descuento = $request->input('descuento'); $detalles = DetalleFactura::where('factura_id', $factura->codigo)->get(); foreach ($detalles as $key => $value) { $producto = Producto::where('codigo', $value->producto_id)->first(); $producto->costo = $value->precio; $producto->stock -= $value->cantidad; $producto->save(); } $factura->estado = 1; $factura->save(); $kardex = new Kardex(); $kardex->factcmp_id = $factura->codigo; $kardex->tipo_entrdsald = 2; $kardex->estado = 1; $kardex->save(); $empresa = Empresa::where('id', 1)->first(); $empresa->conse_factura = $factura->codigo; $empresa->save(); $msg = 'Se ha guardado la factura.'; return redirect()->route('facturas')->with('status', $msg); }
public function postAdd(Request $request) { $codigo = $request->input('codigo'); $exist = Factura::where('codigo', $codigo)->first(); if ($exist) { $factura = $exist; } else { $factura = new Factura(); $factura->codigo = $codigo; } $factura->cliente_id = $request->input('cliente'); $factura->vendedor_id = $request->input('vendedor'); // $factura->created_at = $request->input('fecha'); $factura->estado = 3; $factura->save(); $detalleFactura = new DetalleFactura(); $detalleFactura->factura_id = $factura->codigo; $detalleFactura->producto_id = $request->input('producto'); $detalleFactura->precio = $request->input('costo'); $detalleFactura->cantidad = $request->input('cantidad'); $detalleFactura->subtotal = (double) $request->input('costo') * (int) $request->input('cantidad'); $detalleFactura->estado = 1; $detalleFactura->save(); return response()->json((object) array('status' => 'ok', 'codigo' => $detalleFactura->id)); }
/** * Searches for an especific invoice id * @param Request $request * @return array|\Illuminate\Contracts\View\Factory|\Illuminate\View\View|mixed */ public function search(Request $request) { $facturas = Factura::where("id", "like", "%" . $request->input("search") . "%")->orderBy('created_at', 'desc')->paginate(10); return view("facturas.index", compact("facturas")); }