join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id') ->select('lelong.fasa','lelong_id','tarikh_lelong','lelong.masatamat_lelong','harga_emas_asas','jbg','cajlelong','sts_lelong') ->where('lelong.sts_lelong', 3) ->where('cawangan.caw_code', $user->kodcaw) ->groupBy('lelong_id') ->get() ->toArray(); foreach($lelong as $info) { $detailsinfo = CawanganLelong::join('cawangan','cawangan_lelong.caw_id','=','cawangan.id') ->where('lelong_id',$info['lelong_id']) ->where('cawangan.caw_code',$user->kodcaw) ->get() ->toArray(); array_push($arrayinfo,['info'=>$info, 'detailsinfo'=>$detailsinfo]); // dd($detailsinfo); } $datacaw = Cawangan::where('caw_code','=', $user->kodcaw) ->get(); return view('pembayaran.senarailelongbayaran',compact('datacaw','lelong', 'arrayinfo')); } public function SenaraiPemenang($lelong_id){ $user = Auth::user(); $listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('lelongbidder.status_bidder', 1) ->where('lelongbid.kodcaw',$user->kodcaw) ->where('lelongbid.lelong_id', $lelong_id) ->select('lelongbidder.user_id') ->groupBy('lelongbidder.user_id') ->get()->toArray(); foreach($listwinner as $index1=>$winner){ $userdetails = User::where('id', $winner['user_id'])->first(); $SAGWin = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id', $winner['user_id']) ->where('lelongbid.kodcaw', $user->kodcaw) ->where('lelongbidder.status_bidder', 1) ->where('lelongbid.lelong_id', $lelong_id) ->get(); // dd($userdetails); $sts_payment = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id', $winner['user_id']) ->where('lelongbidder.status_bidder', 1) ->where('lelongbid.kodcaw', $user->kodcaw) ->where('lelongbid.lelong_id', $lelong_id) ->select('lelongbidder.status_payment') ->get(); // dd($sts_payment[0]['status_payment']); $payment_id = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id', $winner['user_id']) ->where('lelongbid.kodcaw', $user->kodcaw) ->where('lelongbidder.status_bidder', 1) ->where('lelongbid.lelong_id', $lelong_id) ->select('payment_id')->groupBy('payment_id')->get(); $total_payment = 0; foreach($payment_id as $id){ $payment = Payment::where('id', $id->payment_id) ->first(); // dd($payment); if($payment){ $total_payment = $total_payment + $payment->total_payment; } } // dd($total_payment); $listwinner[$index1]['details'] = $userdetails; $listwinner[$index1]['total_surat'] = sizeof($SAGWin); $listwinner[$index1]['totalBid'] = $SAGWin->sum('hargabida'); $listwinner[$index1]['totalPay'] = $total_payment; $listwinner[$index1]['sts_payment'] = $sts_payment[0]['status_payment']; } $datacaw = Cawangan::where('caw_code','=', $user->kodcaw) ->get(); return view('pembayaran.kaunterpembayaran',compact('datacaw','listwinner','lelong_id')); } public function SAGBidItem($user_id, $lelong_id){ $user = Auth::user(); $SAGBidItem = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.status_bidder', 1) ->where('users.id', $user_id) ->where('lelongbid.kodcaw', $user->kodcaw) ->where('lelongbid.lelong_id', $lelong_id) ->select( 'users.id', 'users.name', 'users.nokp', 'users.alamat', 'users.notelbimbit' ) ->first(); $eachbid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.status_bidder', 1) ->where('users.id', $user_id) ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbid.kodcaw', $user->kodcaw) ->select('lelongbidder.hargabida', 'lelongbidder.user_id', 'lelongbid.hargaasas', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', 'lelongbidder.status_payment' ) ->get(); foreach($eachbid as $bid) { // dd($bid); $paymentstatus = Payment::where('lelong_id', $lelong_id) ->where('user_id', $bid['user_id']) ->where('status', 2) ->where('status_payment_opt', 2) ->orWhere('status_payment_opt', 3) ->get(); if($paymentstatus) { $total_payment = 0; foreach($paymentstatus as $index1=>$payemnt) { $payment = Payment::where('id', $payemnt->payment_id) ->first(); if($payment){ $total_payment = $total_payment + $payment->total_payment; } $listwinner[$index1]['totalPay'] = $total_payment; } } // dd(); } $statuspayment = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.status_bidder', 1) ->where('users.id', $user_id) ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbid.kodcaw', $user->kodcaw) ->select('lelongbidder.hargabida', 'lelongbidder.user_id', 'lelongbid.hargaasas', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', 'lelongbidder.status_payment', 'lelongbid.opencash' ) ->first(); $getresit = FileResit::join('payment', 'fileresit.payment_id', '=', 'payment.id') ->where('payment.lelong_id', $lelong_id) ->where('payment.user_id', $user_id) ->get()->toArray(); // dd($getresit); $getinvoice = Invoice::where('lelong_id',$lelong_id) ->where('user_id','=',$user_id) ->first(); $totalbidaan = $eachbid->SUM('hargabida'); $array_resit = []; foreach($getresit as $index1=>$resit) { $getresit[$index1]['resit64'] = 'data:image/' . $resit['file_type'] . ';base64' . base64_encode($resit['filename']); } $datacaw = Cawangan::where('caw_code','=',$user->kodcaw) ->get(); return view('pembayaran.SAGBidItem',compact('statuspayment','datacaw','SAGBidItem', 'eachbid', 'lelong_id','user_id', 'getresit','getinvoice','totalbidaan')); } public function paymentdenokaunter(Request $request){ // dd($request->all()); $currentdate = Carbon::now(); $currentdate = $currentdate->toDateTimeString(); $current = Carbon::now(); $current = new Carbon(); $day = $current->day; $month = $current->month; $year = $current->format('y'); $user = Auth::user(); $total_hargabida = 0; // dd($request->lelong_id); // $bidid = implode(",", $request->eachbid); // $bid_id = explode(",", $bidid); // $norujukanid = implode(",", $request->norujukan); // $norujukan_id = explode(",", $norujukanid); // dd($eachbid); $getinvoice = Invoice::where('lelong_id',$request->lelong_id) ->where('user_id','=',$request->user_id) ->first(); $previous_siri = Resit::orderBy('id','desc')->first(); if($previous_siri){ $nosiri = $previous_siri->id + 1; }else{ $nosiri = 1; } $reference_no = 'LPKB' . $day . $month . $year . sprintf("%08d", $nosiri); $resit = new Resit; $resit->user_id = $request->user_id; $resit->lelong_id = $request->lelong_id; $resit->reference_no = $reference_no; $resit->invoice_id = $getinvoice->id; $resit->invoice_no = $getinvoice->invoice_no; $resit->billplz_id = ''; $resit->total_payment = $request->amaunkiraan; $resit->resit_type = 2; // 1 = fee , 2 = bid $resit->save(); //adddenokaunter $paymentdeno = PayDenoKaunter::create([ 'user_id' => $request->user_id, 'lelong_id' => $request->lelong_id, 'kodcaw' => $user->kodcaw, // 'norujukan' => $norujukan_id[$index1], 'status_payment_opt' => 1, 'status' => 2, 'remark' => 'TUNAI', 'resit_id' => $resit->id, 'total_payment' => $request->amaunkiraan, '1sen' => $request->ambilansen1, '5sen' => $request->ambilansen5, '10sen' => $request->ambilansen10, '20sen' => $request->ambilansen20, '50sen' => $request->ambilansen50, 'rm1' => $request->ambilanring1, 'rm5' => $request->ambilanring5, 'rm10' => $request->ambilanring10, 'rm20' => $request->ambilanring20, 'rm50' => $request->ambilanring50, 'rm100' => $request->ambilanring100, 'disahkan_oleh' => $user->id, 'disahkan_pada' => $currentdate ]); $sagmenang = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbid.status_jual', 1) ->where('users.id', $request->user_id) ->where('lelongbid.lelong_id', $request->lelong_id) ->where('lelongbid.kodcaw', $user->kodcaw) ->select('lelongbidder.hargabida', 'lelongbidder.user_id', 'lelongbid.hargaasas', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', 'lelongbidder.status_payment' ) ->get(); foreach($sagmenang as $index1=>$bid) { // dd($bid->lelongbid_id); $eachbid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.lelongbid_id', $bid->lelongbid_id) ->where('lelongbidder.user_id', $request->user_id) ->where('lelongbid.kodcaw', $user->kodcaw) ->select('lelongbidder.hargabida', 'lelongbid.hargaasas', 'lelongbid.kodcaw', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', 'lelongbidder.id as lelongbidder_id', 'lelongbid.lelong_id as lelong_id' ) ->first(); // dd($eachbid); $total_hargabida = $total_hargabida + $eachbid->hargabida; $payment = Payment::create([ 'user_id' => $request->user_id, 'lelong_id' => $request->lelong_id, 'kodcaw' => $user->kodcaw, // 'norujukan' => $norujukan_id[$index1], 'norujukan' => $bid->norujukan, 'status_payment_opt' => 1, 'status' => 2, 'remark' => 'TUNAI', 'resit_id' => $resit->id, 'total_payment' => $eachbid->hargabida, 'disahkan_oleh' => $user->id, 'disahkan_pada' => $currentdate ]); $updatelelbidbidder = LelongBidder::where('lelongbid_id', $eachbid->lelongbid_id) ->where('user_id',$request->user_id) ->first(); $updatelelbidbidder->status_payment = 1; $updatelelbidbidder->payment_id = $payment->id; $updatelelbidbidder->save(); $eachbidupdate = LelongBid::where('id',$bid->lelongbid_id)->first(); $eachbidupdate->status_jual = 1; $eachbidupdate->status_payment = '1'; $eachbidupdate->t_jual = $currentdate; $eachbidupdate->hargajual = $eachbid->hargabida; $eachbidupdate->save(); } $senaraisagallpayment = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $request->lelong_id) ->where('lelongbidder.user_id', $request->user_id) ->where('lelongbidder.status_bidder', 1) ->get(); if(floatval($request->amaunkiraan) == $total_hargabida) { $resit->total_payment = $request->amaunkiraan; if($resit->total_payment >= $senaraisagallpayment->sum('hargabida')) { $resit->status = 'PAID'; // $resit->status = 'PAID'; when hargabida >= total_payment di resit $resit->paid_at = $currentdate; } $resit->save(); } // return redirect()->route('pembayaran.SenaraiLelongBayar')->with('success','Pembayaran Berjaya'); return redirect()->route('pembayaran.kaunterpembayaran', $request->lelong_id) ->with('success','Pembayaran Berjaya'); } public function pengesahanPembayaran(Request $request){ // dd($request->all()); $pengesahanPembayaran = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.status_bidder', 1) ->get(); return view('pembayaran.pengesahanPembayaran',compact('pengesahanPembayaran')); } public function banktransfer(Request $request) { // dd($request->all()); //eachbid = lelongbid_id // $bid_id = implode(",", $request->eachbid); // dd($bid_id); $paymentexist = Payment::join('fileresit', 'payment.id', '=', 'fileresit.payment_id') ->where('payment.lelong_id', $request->lelong_id) ->where('payment.user_id', $request->user_id) ->first(); if($paymentexist) { $getpayment = Payment::join('fileresit', 'payment.id', '=', 'fileresit.payment_id') ->where('payment.lelong_id', $request->lelong_id) ->where('payment.user_id', $request->user_id) ->select('payment.id as payment_id', 'payment.lelong_id', 'payment.user_id', 'fileresit.id as fileresit_id', 'fileresit.file_type', 'fileresit.filename' ) ->first(); $data = base64_encode($request->resit->get()); $file_type = $request->resit->extension(); $updatepayment = FileResit::where('payment_id', $getpayment['payment_id']) ->where('id', $getpayment['fileresit_id']) ->first(); $updatepayment->user_id = $request->user_id; $updatepayment->payment_id = $updatepayment->payment_id; $updatepayment->file_type = $file_type; $updatepayment->filename = $data; $updatepayment->update(); return redirect()->route('pembayaran.kaunterpembayaran', $request->lelong_id) ->with('success','Ubah Resit Berjaya, Tunggu Pengesahan Akaun'); } else { // $bid_id = $request->eachbid; $bidid = implode(",", $request->eachbid); $bid_id = explode(",", $bidid); $currentdate = Carbon::now(); $currentdate = $currentdate->toDateTimeString(); $user = Auth::user(); // $imageName = time().'.'.$request->resit->extension(); $data = base64_encode($request->resit->get()); $file_type = $request->resit->extension(); $resit = Resit::where('lelong_id', $request->lelong_id) ->where('user_id',$request->user_id) ->where('resit_type', 2) ->first(); $payment = new Payment; $payment->user_id = $request->user_id; $payment->lelong_id = $request->lelong_id; $payment->kodcaw = $user->kodcaw; $payment->status_payment_opt = 3; $payment->status = 2; $payment->remark = 'BAYARAN CDM'; $payment->resit_id = $resit->id; $payment->total_payment = $request->total_payment; $payment->diminta_pada = $currentdate; $payment->diminta_oleh = $user->id; $payment->save(); $addfile = new FileResit; $addfile->user_id = $request->user_id; $addfile->payment_id = $payment->id; $addfile->file_type = $file_type; $addfile->filename = $data; $addfile->save(); foreach($bid_id as $bid) { $eachbid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbidder.lelongbid_id', $bid) ->select('lelongbidder.hargabida', 'lelongbid.hargaasas', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', 'lelongbidder.id as lelongbidder_id', 'lelongbid.lelong_id as lelong_id' ) ->first(); $updatelelbidbidder = LelongBidder::where('lelongbid_id', $eachbid->lelongbid_id) ->where('user_id',$request->user_id) ->first(); $updatelelbidbidder->status_payment = 2; $updatelelbidbidder->payment_id = $payment->id; $updatelelbidbidder->save(); $eachbidupdate = LelongBid::where('id',$bid)->first(); $eachbidupdate->hargajual = $eachbid->hargabida; $eachbidupdate->save(); } return redirect()->route('pembayaran.kaunterpembayaran', $request->lelong_id) ->with('success','Menunggu Pengesahan Akaun'); } } }