first(); if ($produk == null) { $produk = 0; } else { $produk = $produk->id; } $produk++; $huruf = "KJ"; $tanggal = date('ymd'); $kodeproduk = $huruf . $tanggal . sprintf("%04s", $produk); return $kodeproduk; } public function cetakstrukbk($id){ $data = BarangKeluar::where('id', $id)->get(); $kodebarang = $data[0]->kode_barang; $barcode = \DNS1D::getBarcodePNG($kodebarang, 'C39'); return view('admin.pages.barang.cetakstrukbk', compact('data', 'barcode')); } public function cetaklaporangbarangkeluar() { $data = BarangKeluar::all(); $viewData = [ 'barangkeluar' => $data ]; $html = view('admin.pages.barang.cetakpdfbarangkeluar', $viewData)->render(); $mpdf = new \Mpdf\Mpdf(['orientation' => 'L']); $mpdf->WriteHTML($html); $mpdf->Output('laporan-barang-keluar.pdf', 'I'); return view('admin.pages.barang.cetakpdfbarangkeluar', $viewData); } public function index() { $data = BarangKeluar::orderBy('created_at', 'desc')->get(); return view('admin.pages.barang.barangkeluar', compact('data')); } /** * Show the form for creating a new resource. */ public function create() { $kopi = Kopi::select('id', 'nama_kopi', 'stok', 'harga_jual')->get(); $customer = Customer::all(); return view('admin.pages.barang.createbarangkeluar', compact('kopi', 'customer')); } /** * Store a newly created resource in storage. */ public function store(Request $request) { // dd($request); $validateData = $request->validate([ 'id_customer' => 'required', 'id_kopi' => 'required', 'jenis_kopi' => 'required', 'harga_kopi' => 'required', 'jumlah' => 'required|numeric', 'total_harga' => 'required|numeric', 'gambardp' => 'image|file', 'sisa_bayar' => 'required|numeric', ]); if ($request->dp == null) { $validateData['dp'] = 0; }else { $validateData['dp'] = $request->dp; } // Remove currency format $validateData['harga_kopi'] = preg_replace('/[^0-9]/', '', $validateData['harga_kopi']); $validateData['total_harga'] = preg_replace('/[^0-9]/', '', $validateData['total_harga']); $validateData['dp'] = preg_replace('/[^0-9]/', '', $validateData['dp']); $validateData['sisa_bayar'] = preg_replace('/[^0-9]/', '', $validateData['sisa_bayar']); $supplier = Customer::where('id', $request->id_customer)->pluck('nama_customer')->first(); $kopi = Kopi::where('id', $request->id_kopi)->first(); $validateData['kode_keluar'] = $this->getKode(); $validateData['nama_customer'] = $supplier; $validateData['id_user'] = 1; $validateData['nama_user'] = 'admin'; $validateData['nama_kopi'] = $kopi->nama_kopi; $validateData['status_pembayaran'] = 'belum lunas'; if ($validateData['sisa_bayar'] == 0) { $validateData['status_pembayaran'] = 'lunas'; } $validateData['status_transaksi'] = 'sedang diproses'; $validateData['tanggal_transaksi'] = date('Ymd'); $stokKopi = $kopi->stok; if ($stokKopi < $validateData['jumlah']) { return ""; } else { if ($request->file('gambardp')) { $validateData['gambardp'] = $request->file('gambardp')->store('barangkeluardp'); } $stokKopi -= $validateData['jumlah']; Kopi::where('id', $kopi->id)->update(['stok' => $stokKopi]); BarangKeluar::create($validateData); return redirect('/barangkeluar')->with('success', 'data berhasil ditambahkan'); } } /** * Display the specified resource. */ public function show($id) { $data = BarangKeluar::find($id); return view('admin.pages.barang.detailbarangkeluar', compact('data')); } /** * Show the form for editing the specified resource. */ public function edit(BarangKeluar $barangKeluar) { // } /** * Update the specified resource in storage. */ public function update(UpdateBarangKeluarRequest $request, BarangKeluar $barangKeluar) { // } /** * Remove the specified resource from storage. */ public function destroy( string $id) { BarangKeluar::destroy($id); return redirect('/barangkeluar')->with('delete', 'data berhasil dihapus'); } public function ubahstatus(Request $request, $id){ $check = BarangKeluar::where('id', $id)->where('status_transaksi', '!=', 'selesai sudah diambil')->first(); if ($check) { if ($request->file('gambarpelunasan')) { $validateData['gambarpelunasan'] = $request->file('gambarpelunasan')->store('barangkeluarpelunasan'); } BarangKeluar::where('id', $id)->update([ 'status_transaksi' => $request->status_transaksi, 'status_pembayaran' => 'lunas', // 'status_pembayaran' => $check->total_harga 'sisa_bayar' => 0, 'gambarpelunasan' => $validateData['gambarpelunasan'], 'tanggal_selesai' => date('Ymd') ]); $redirect = '/barangkeluar/'. $check->id; return redirect($redirect); }else{ dd('gagal ubah status'); } } }