/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $lastTicket = \Veterinaria\Ticket::all()->last(); if ($lastTicket == null) { $number = 1; } else { $number = $lastTicket->number + 1; } $canceled = 0; Ticket::Create(['number' => $number, 'canceled' => $canceled]); $ticket = Ticket::all()->last(); for ($i = 0; $i <= $request->detailNumber; $i++) { if ($request->{"id" . $i} != null) { $product = Product::find($request->{"id" . $i}); $quantity = $request->{"quantity" . $i}; $subtotal = $quantity * $product->price; TicketProduct::Create(['ticket_id' => $ticket->id, 'description' => $product->name, 'quantity' => $quantity, 'price' => $product->price, 'subtotal' => $subtotal]); $recordTypeStock = RecordTypeStock::find("2"); Stock::Create(['invoice_number' => $ticket->number, 'quantity' => $quantity, 'product_id' => $product->id, 'record_type_stock_id' => $recordTypeStock->id]); $product->quantity = $product->quantity - $quantity; $product->save(); } } Session::flash('message', 'Boleta generada correctamente'); return Redirect::to('/ticket'); }
public function add(Request $request) { $recordTypeStock = RecordTypeStock::find("1"); Stock::Create(['invoice_number' => $request->invoice_number, 'quantity' => $request->quantity, 'product_id' => $request->id, 'record_type_stock_id' => $recordTypeStock->id]); $product = Product::find($request->id); $product->quantity = $product->quantity + $request->quantity; $product->save(); Session::flash('message', 'Stock agregado correctamente'); return Redirect::to('/product'); }