<?php namespace App\Http\Controllers; use App\Models\Rfq; use App\Models\Bahan; use App\Models\Rfqisi; use App\Models\Vendor; use Illuminate\Http\Request; use App\Models\Purchaseorder; use DateTime; use Illuminate\Support\Facades\DB; class PurchaseOrderController extends Controller { public function index() { $pos=Purchaseorder::all(); $rfqs=Rfq::all(); return view ('dashboards.purchaseorder.index', [ 'pos'=>$pos, 'rfqs'=>$rfqs, ]); } public function destroy(Purchaseorder $datapo) { $datapo->delete(); return redirect()->route('adminIndexPo') ->with('success','Data Telah Dihapus.'); } public function receive(Request $request, Rfq $datarfq) { $request->validate([ 'idponya' => 'required', ]); // dd($datadarirfq); $tanggalselesai = date('d-m-Y'); Purchaseorder::where('idpo', $request->idponya)->update([ 'status' => 'Receive', 'tglditerima' => $tanggalselesai ]); return redirect()->route('adminIndexPo') ->with('success','Data Telah Diperbaharui.'); } public function validae(Request $request, Rfq $datarfq) { $request->validate([ 'idponya' => 'required', ]); // dd($datadarirfq); Purchaseorder::where('idpo', $request->idponya)->update([ 'status' => 'Validated' ]); return redirect()->route('adminIndexPo') ->with('success','Data Telah Diperbaharui.'); } public function paid(Request $request, Rfq $datarfq) { $request->validate([ 'koderfqnya' => 'required', 'idrfqnya' => 'required', ]); // dd($datadarirfq); Purchaseorder::where('koderfq', $request->koderfqnya)->update([ 'status' => 'Fully Paid' ]); $rfqisi = Rfqisi::get()->where('idrfqnya', $request->idrfqnya); //buat ngurang bahan foreach($rfqisi as $bahanygdipake){ $bahannya = Bahan::select('stockbahan')->where('kodebahan', $bahanygdipake->kodebah)->get(); $hitung = $bahannya[0]->stockbahan + $bahanygdipake->banyakqty; Bahan::where('kodebahan', $bahanygdipake->kodebah)->update([ 'stockbahan' => $hitung, ]); } // PASSING DATA $datadarisq = Purchaseorder::get()->where('idpo', $request->idrfqnya); //dibuat karena manufacturingisi index tidak dimulai dari nol dan kita cuma butuh banyak qty foreach ($datadarisq as $value) { $idso = $value->idpo; $kodesq = $value->koderfq; $kodecust = $value->kodevend; $tglpembelian = $value->tglpembelian; $status = $value->status; } // QTY $qty = DB::table('rfqisis') ->select('banyakqty') ->where('idrfqnya', $request->idrfqnya) ->get(); foreach($qty as $item){ $banyakqty=$item->banyakqty; } // HARGA PRODUK $hrg = DB::table('bahans') ->select('hargabahan') ->where('idbahan', $request->idrfqnya) ->get(); foreach($hrg as $item){ $harga=$item->hargabahan; } //TOTAL $total = $banyakqty * $harga; // TANGGAL DITERIMA $ldate = date('d-m-Y'); // dd($ldate); DB::table('vendbills')->insert([ 'idrfqnya' => $idso, 'koderfq' => $kodesq, 'kodevend' => $kodecust, 'tglpembelian' => $tglpembelian, 'tglditerima' => $ldate, 'total' => $total, 'status' => $status, ]); return redirect()->route('adminIndexPo') ->with('success','Data Telah Diperbaharui.'); } }