/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(BahanRequest $request) { $bahan = Bahan::create($request->all()); if ($bahan) { StokBahan::create(['bahan_id' => $bahan->id, 'stok' => 0]); return redirect('/bahan-produksi')->with('succcess', 'Sukses simpan data bahan produksi.'); } return redirect()->back()->withErrors(['failed' => 'Gagal simpan data bahan produksi.']); }
/** * Execute the job. * * @return void */ public function handle() { $oldStok = StokBahan::all(); $oldStokKey = array_column($oldStok->toArray(), 'bahan_id'); $bahans = Bahan::stok()->orderBy('bahans.id')->get(); foreach ($bahans as $bahan) { if (in_array($bahan->id, $oldStokKey)) { StokBahan::where('bahan_id', $bahan->id)->update(['stok' => $bahan->sisa_stok]); } else { StokBahan::create(['bahan_id' => $bahan->id, 'stok' => $bahan->sisa_stok]); } } }