<?php namespace App\Http\Controllers; use App\Models\Produk; use App\Models\Sales; use App\Models\Salesisi; use App\Models\SalesOrder; use DateTime; use Illuminate\Http\Request; use Illuminate\Support\Facades\Date; use Illuminate\Support\Facades\DB; class SalesOrderController extends Controller { public function index() { $pos = SalesOrder::all(); $rfqs = Sales::all(); return view('dashboards.salesorder.index', [ 'pos' => $pos, 'rfqs' => $rfqs, ]); } public function destroy($id) { $so = SalesOrder::find($id); $so->delete(); return redirect()->route('adminIndexSo') ->with('success', 'Data Telah Dihapus.'); } public function receive(Request $request, Sales $datarfq) { $request->validate([ 'idsonya' => 'required', ]); // dd($datadarirfq); // $tanggalselesai = date('d-m-Y'); SalesOrder::where('idso', $request->idsonya)->update([ 'status' => 'Receive', // 'tglditerima' => $tanggalselesai ]); return redirect()->route('adminIndexSo') ->with('success', 'Data Telah Diperbaharui.'); } public function validae(Request $request, Sales $datarfq) { $request->validate([ 'idsonya' => 'required', ]); // dd($datadarirfq); SalesOrder::where('idso', $request->idsonya)->update([ 'status' => 'Validated' ]); return redirect()->route('adminIndexSo') ->with('success', 'Data Telah Diperbaharui.'); } public function paid(Request $request, Sales $datarfq) { $request->validate([ 'kodesqnya' => 'required', 'idsqnya' => 'required', ]); // dd($datadarirfq); SalesOrder::where('kodesq2', $request->kodesqnya)->update([ 'status' => 'Fully Paid' ]); $rfqisi = Salesisi::get()->where('idsqnya', $request->idsqnya); //buat ngurang bahan foreach ($rfqisi as $bahanygdipake) { $bahannya = Produk::select('stockproduk')->where('kodeproduk', $bahanygdipake->kodeprod)->get(); $hitung = $bahannya[0]->stockproduk - $bahanygdipake->banyakqty; Produk::where('kodeproduk', $bahanygdipake->kodeprod)->update([ 'stockproduk' => $hitung, ]); } // PASSING DATA $datadarisq = SalesOrder::get()->where('idso', $request->idsqnya); //dibuat karena manufacturingisi index tidak dimulai dari nol dan kita cuma butuh banyak qty foreach ($datadarisq as $value) { $idso = $value->idso; $kodesq = $value->kodesq2; $kodecust = $value->kodecust; $tglpembelian = $value->tglpembelian; $status = $value->status; } // QTY $qty = DB::table('salesisis') ->select('banyakqty') ->where('idsqnya', $request->idsqnya) ->get(); foreach($qty as $item){ $banyakqty=$item->banyakqty; } // HARGA PRODUK $hrg = DB::table('produks') ->select('hargaproduk') ->where('idproduk', $request->idsqnya) ->get(); foreach($hrg as $item){ $harga=$item->hargaproduk; } //TOTAL $total = $banyakqty * $harga; // TANGGAL DITERIMA $ldate = date('d-m-Y'); // dd($ldate); DB::table('custvoices')->insert([ 'idsqnya' => $idso, 'kodesq' => $kodesq, 'kodecust' => $kodecust, 'tglpembelian' => $tglpembelian, 'tglditerima' => $ldate, 'total' => $total, 'status' => $status, ]); return redirect()->route('adminIndexSo') ->with('success', 'Data Telah Diperbaharui.'); } }