/**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(CreateFacturaRequest $request, Requests\CreateDetalle_FacturaRequest $request2)
 {
     $fac = new Factura($request->input());
     if ($fac->numero_factura > 0) {
         $voucher2 = Factura::whereIn('numero_factura', [$fac->numero_factura])->get();
         $voucher = Factura::where('numero_factura', $fac->numero_factura)->where('id_proveedor', $fac->id_proveedor)->first();
         if ($voucher2->count() > 0) {
             if ($fac->id_proveedor == isset($voucher->id_proveedor)) {
                 $message = 'No se pudo ingresar la Factura' . $fac->numero_factura . ' del Proveedor ' . $fac->proveedor->nombre . ' Ya se encuentra registrada';
                 Session::flash('message', $message);
                 return redirect()->route('admin.factura.index');
             } else {
                 $factura = Factura::create($request->all());
                 $facturas = Factura::orderBy('created_at', 'desc')->first();
                 $total = count($request->input('id_insumo'));
                 for ($i = 0; $i < $total; $i++) {
                     DB::table('detalle__compras')->insert(['id_factura' => $facturas->id, 'numero_factura' => $request->input('numero_factura'), 'id_insumo' => $request->input('id_insumo')[$i], 'cantidad' => $request->input('cantidad')[$i], 'precio' => $request->input('precio')[$i]]);
                     $id_insumo = $request->input('id_insumo')[$i];
                     $stock = Insumo::where('id', $id_insumo)->first();
                     DB::table('insumos')->where('id', $id_insumo)->update(['stock' => $stock->stock + $request->input('cantidad')[$i], 'precio_unitario' => $request->input('precio')[$i]]);
                 }
                 $message = 'La factura ' . $factura->numero_factura . ' fue ingresada en el sistema';
                 Session::flash('message', $message);
                 if (Auth::user()->type == 'admin') {
                     return redirect()->route('admin.factura.index');
                 }
                 if (Auth::user()->type == 'secretaria') {
                     return redirect()->route('secretaria.factura.index');
                 }
             }
         } else {
             $factura = Factura::create($request->all());
             $facturas = Factura::orderBy('created_at', 'desc')->first();
             $total = count($request->input('id_insumo'));
             for ($i = 0; $i < $total; $i++) {
                 DB::table('detalle__compras')->insert(['id_factura' => $facturas->id, 'numero_factura' => $request->input('numero_factura'), 'id_insumo' => $request->input('id_insumo')[$i], 'cantidad' => $request->input('cantidad')[$i], 'precio' => $request->input('precio')[$i]]);
                 $id_insumo = $request->input('id_insumo')[$i];
                 $stock = Insumo::where('id', $id_insumo)->first();
                 DB::table('insumos')->where('id', $id_insumo)->update(['stock' => $stock->stock + $request->input('cantidad')[$i], 'precio_unitario' => $request->input('precio')[$i]]);
             }
             $message = 'La factura ' . $factura->numero_factura . ' fue ingresada en el sistema';
             Session::flash('message', $message);
             if (Auth::user()->type == 'admin') {
                 return redirect()->route('admin.factura.index');
             }
             if (Auth::user()->type == 'secretaria') {
                 return redirect()->route('secretaria.factura.index');
             }
         }
     } else {
         $message = 'El n&uacute;mero de la f&aacute;tura debe ser mayor a 0';
         Session::flash('message', $message);
         if (Auth::user()->type == 'admin') {
             return redirect()->route('admin.factura.index');
         }
         if (Auth::user()->type == 'secretaria') {
             return redirect()->route('secretaria.factura.index');
         }
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(CreateFacturaRequest $request, Requests\CreateDetalle_FacturaRequest $request2)
 {
     $fac = new Factura($request->all());
     $this->cantidad = count($this->detalleFactura);
     //dd($insumos->attributesToArray());
     if ($fac->numero_factura > 0) {
         $factura = Factura::create($request->all());
         $message = 'La factura ' . $factura->numero_factura . ' fue ingresada en el sistema';
         Session::flash('message', $message);
         return redirect()->route('admin.factura.index');
     } else {
         $message = 'El n&uacute;mero de la f&aacute;tura debe ser mayor a 0';
         Session::flash('message', $message);
         return redirect()->route('admin.factura.index');
     }
 }