toDateString(); // $arrayLelong = []; $lelong = Lelong::where('tarikh_lelong','=',$currentdate) ->where('sts_lelong','=',1) ->get()->toArray(); if($lelong) { foreach($lelong as $index1=>$lel) { $lelongbid = LelongBid::whereIn('lelong_id',$lelong) ->get()->toArray(); $lelong[$index1]['lelongbid'] = $lelongbid; foreach($lelongbid as $index2=>$lelbidmarhun){ $cawangan = Cawangan::where('id','=',$lelbidmarhun['caw_id'])->first()->toArray(); // $id = lelongbid::first(); $lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $lelbidmarhun['id']) ->get()->toArray(); $lelong[$index1]['lelongbid'][$index2]['lelongbidmarhun'] = $lelongbidmarhun; $lelong[$index1]['lelongbid'][$index2]['cawangan'] = $cawangan; } } } else { $lelong[0]['lelongbid'] = []; } return response()->json($lelong); } public function getListKarat() { $activeLelong = Lelong::where('sts_lelong', '=', 1)->first(); if (isset($activeLelong)) { $getKarat = LelKarat::where('lelong_id', '=' ,$activeLelong['id'])->whereNotIn('karat', ['18.0Kp', '14.0Kp'])->get(); $date_convert = strtotime($getKarat[0]['updated_at']); $updatedDateTime = date("d-m-Y h:i A", $date_convert); return response()->json([ 'success' => true, 'karat' => $getKarat, 'update_time' => $updatedDateTime ], 201); } else { return response()->json([ 'success' => false, ], 201); } } public function bidderSelectBidItem(Request $request){ // $feepayment = Payment::join('resit', 'payment.resit_id','=','resit.id') // ->where('payment.user_id',$request->user_id) // ->where('payment.lelong_id', '=', $request->lelong_id) // ->where('resit.resit_type',1) // ->where('resit.status','PAID')->first(); // // dd($feepayment); // if($feepayment != null){ $user = User::where('id', '=', $request->user_id) ->first(); $carts = Cart::join('lelongbid', 'carts.lelongbid_id', '=', 'lelongbid.id') // ->join('lelong', 'lelongbid.lelong_id', '=', 'lelong.id') // ->where('lelong.sts_lelong','=',1) ->where('carts.user_id', $user->id) ->select('lelongbid.id as lelongbid_id', 'lelongbid.t_lelong', 'lelongbid.nilaimarhun', 'lelongbid.cajlelong', 'carts.hargabida', 'carts.id as cart_id') ->get(); // dd($carts); // dd($selectBid[0]->hargabida); $currentdate = Carbon::now()->toDateTimeString(); foreach($carts as $cart) { $lelongBidder = new LelongBidder(); $lelongBidder->nama_bidder = $request->name; $lelongBidder->user_id = $user->id; $lelongBidder->notelbimbit = $user->notelbimbit; $lelongBidder->hargabida = $cart->hargabida; $lelongBidder->lelongbid_id = $cart->lelongbid_id; $lelongBidder->nilaimarhun = $cart->nilaimarhun; $lelongBidder->cajlelong = $cart->cajlelong; $lelongBidder->masa_bidaan = $currentdate; if($lelongBidder->save()) { $delincart = Cart::where('id',$cart->cart_id)->first(); $delincart->delete(); } } $response = [ 'success' => "success", 'message' => "Bidder berjaya disimpan" ]; return response()->json($response, 201); // } // else if($feepayment == null){ // $response = [ // 'success' => "error", // 'message' => "Something wrong with the server" // ]; // return response()->json($response, 201); // } } public function listBidItem(Request $request){ $lelongbidder = LelongBidder::where('user_id','=', $request->user_id) ->get()->toArray(); foreach($lelongbidder as $index1=>$lelbid) { $lelongbid = LelongBid::whereIn('id',$lelongbidder) ->get()->toArray(); $lelongbidder[$index1]['lelongbid'] = $lelongbid; } return response()->json($lelongbidder); } public function bidRecord(Request $request) { $lelongbidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id', '=', $request->user_id) ->where('lelong_id', '=', $request->lelong_id) ->get()->toArray(); foreach ($lelongbidder as $index => $data) { $cawangan = Cawangan::where('caw_code', '=', $data['kodcaw'])->select('caw_name')->first(); $lelongbidder[$index]['caw_name'] = $cawangan['caw_name']; } return response()->json($lelongbidder); } public function bidRecordByCawangan($userId) { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelong = Lelong::where('tarikh_lelong', '=', $currentdate)->select('id', 'masatamat_lelong')->first(); if ($lelong) { $date_convert = strtotime($lelong->masatamat_lelong); $lelong['masatamat_lelong'] = date("h:i A", $date_convert); $groupCawangan = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('cawangan', 'lelongbid.caw_id', '=', 'cawangan.id') ->where('user_id', '=', $userId) ->where('lelong_id', $lelong->id) ->select('caw_id', 'caw_name') ->groupBy('caw_id') ->get()->toArray(); foreach ($groupCawangan as $index => $cawangan) { $lelongBidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id', $userId) ->where('caw_id', $cawangan) ->where('lelong_id', $lelong->id) ->get()->toArray(); $total_hargabida = 0; $total_berat = 0; foreach ($lelongBidder as $index1 => $data) { $fileMarhun = FileMarhun::where('lelongbid_id', $data['id'])->where('photo_type', 1)->get(); if ($fileMarhun->isNotEmpty()) { $lelongBidder[$index1]['filemarhun'] = $fileMarhun; } $date_convert = strtotime($data['masa_bidaan']); $lelongBidder[$index1]['masa_bidaan'] = date("h:i A", $date_convert); $total_hargabida += $data['hargabida']; $total_berat += $data['berat']; $marhun = LelongBidMarhun::where('lelongbid_id', '=', $data['id'])->get()->toArray(); $lelongBidder[$index1]['lelongbidmarhun'] = $marhun; } $groupCawangan[$index]['total_berat'] = number_format((float)$total_berat, 2, '.', ''); $groupCawangan[$index]['total_bidaan'] = number_format((float)$total_hargabida, 2, '.', ''); $groupCawangan[$index]['lelongbid'] = $lelongBidder; } } if ($lelong && $groupCawangan) { return response()->json([ 'success' => true, 'lelongbidder' => $groupCawangan, 'lelong' => $lelong, ], 201); } else { return response()->json([ 'success' => false, 'message' => 'Empty Data' ], 201); } } // please do not delete this changes // backup web pembida public function listBidItemWeb($user_id, Request $request){ $lelongbidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('user_id','=', $request->user_id) ->select('lelongbid.lelong_id', 'lelongbid.t_lelong') ->groupBy('lelongbid.lelong_id', 'lelongbid.t_lelong') ->get()->toArray(); foreach($lelongbidder as $index1=>$lelbid) { $lelongbid = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelong_id', $lelbid['lelong_id']) ->where('lelongbidder.user_id', $request->user_id) ->get()->toArray(); $lelongbidder[$index1]['lelongbid']=$lelongbid; } return response()->json($lelongbidder); } public function historyFeePay (Request $request) { $checkpay = Payment::join('resit', 'payment.resit_id', '=', 'resit.id') ->where('resit.user_id', $request->user_id) ->where('payment.lelong_id', $request->lelong_id) ->where('payment.status', 1) ->where('resit.resit_type', 1) ->select('resit.id as resit id', 'resit.resit_type', 'resit.status as resit_status', 'resit.paid_at', 'payment.id as payment_id', 'payment.lelong_id', 'payment.status as payment_status' ) ->first(); if($checkpay) { $response = [ "message" => "Success", "status" => 1 ]; } else { $response = [ "message" => "Sila buat pembayaran yuran terlebih dahulu", "status" => 2 ]; } return response()->json($response, 201) ; } public function searchLelByCaw(Request $request){ $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); // $arrayLelong = []; $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->where('tarikh_lelong','=',$currentdate) ->where('caw_id', '=', $request->caw_id) ->where('status_online', '=', 1) ->get()->toArray(); foreach($lelong as $index1=>$lel) { $lelongbid = LelongBid::where('lelong_id',$lel['lelong_id']) ->where('caw_id', '=', $request->caw_id) ->get()->toArray(); $lelong[$index1]['lelongbid'] = $lelongbid; foreach($lelongbid as $index2=>$lelbidmarhun){ // $cawangan = Cawangan::where('id','=',$lelbidmarhun['caw_id'])->first()->toArray(); // $id = lelongbid::first(); $lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $lelbidmarhun['id']) ->get()->toArray(); $lelong[$index1]['lelongbid'][$index2]['lelongbidmarhun'] = $lelongbidmarhun; // $lelong[$index1]['lelongbid'][$index2]['cawangan'] = $cawangan; } } if($lelong) { return response()->json( ['success' => true, 'message' => $lelong], 201 ); } else { return response()->json( ['success' => false, 'message' => 'Empty Data'], 201 ); } } public function listSuratLelong(Request $request) { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->where('tarikh_lelong', '=', $currentdate) ->where('caw_id', '=', $request->caw_id) ->where('status_online', '=', 1) ->first(); if ($lelong) { $lelongbid = LelongBid::where('lelong_id', $lelong['lelong_id']) ->where('caw_id', '=', $request->caw_id) ->where('status_jual', '=', 0) ->select('id', 'kodcaw') ->get(); $pluckedLelongBid = $lelongbid->pluck('id')->toArray(); $carts = Cart::where('user_id', $request->user_id) ->select('lelongbid_id') ->get(); $pluckedCarts = $carts->pluck('lelongbid_id')->toArray(); $lelongbidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', "=", 'lelongbid.id') ->where('lelong_id', $request->lelong_id) ->where('user_id', $request->user_id) ->select('lelongbid_id') ->get(); $pluckedLelongBidder = $lelongbidder->pluck('lelongbid_id')->toArray(); $arrayDiff1 = array_diff($pluckedLelongBid, $pluckedCarts); $arrayDiff2 = array_diff($arrayDiff1, $pluckedLelongBidder); $listLelong = []; foreach ($arrayDiff2 as $index => $data) { $lelongbid = LelongBid::where('id', $data)->first()->toArray(); $lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $lelongbid['id'])->get()->toArray(); foreach ($lelongbidmarhun as $index1 => $marhun) { $marhunDesc = JenisEmas::where('marhun', $marhun['marhun'])->first()->toArray(); $lelongbidmarhun[$index1]['marhun_desc'] = $marhunDesc['descpt']; } $lelongbid['lelongbidmarhun'] = $lelongbidmarhun; $fileMarhun = FileMarhun::where('lelongbid_id', $lelongbid['id'])->where('photo_type', 1)->get(); // dd($fileMarhun); // foreach ($fileMarhun as $index) { // dd($index); // // $eachmarhun = FileMarhun::where('lelongbidmarhun_id', '=', $index['id'])->first(); // // if (isset($eachmarhun)) { // // $index->eachmarhun_filename = route('marhun.showphotomarhun', ['norujukan_sag' => $lelongbid['norujukan'], 'filemarhun_id' => $index->id]); // // $test = route('marhun.showphotomarhun', ['norujukan_sag' => $lelongbid['norujukan'], 'filemarhun_id' => $index->id]); // $marhunPhotoService = new MarhunPhotoService(); // $marhun_photo = $marhunPhotoService->get($lelongbid['norujukan'], $index); // dd($marhun_photo); // return $marhun_photo; // } // // dd($fileMarhun); if ($fileMarhun->isNotEmpty()) { $lelongbid['filemarhun'] = $fileMarhun; } array_push($listLelong, $lelongbid); } $lelong['lelongbid'] = $listLelong; return response()->json( ['success' => true, 'message' => $lelong], 201 ); } else { return response()->json( ['success' => false, 'message' => 'Empty Data'], 201 ); } } public function listSuratLelong2(Request $request) { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->where('tarikh_lelong', '=', $currentdate) ->where('caw_id', '=', $request->caw_id) ->where('status_online', '=', 1) ->select('lelong.id', 'lelong.tarikh_lelong', 'lelong.sts_lelong', 'cawangan_lelong.caw_id') ->first(); $listLelong = []; if ($lelong) { $jenis_emas = JenisEmas::select('marhun', 'descpt')->get()->keyBy('marhun'); $cart_all = Cart::join('lelongbid', 'carts.lelongbid_id', "=", 'lelongbid.id') ->where('user_id', $request->user_id) ->where('caw_id', '=', $request->caw_id) ->pluck('lelongbid_id'); $lelongbidder_all = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', "=", 'lelongbid.id') ->where('lelong_id', $lelong->id) ->where('user_id', $request->user_id) ->where('caw_id', '=', $request->caw_id) ->pluck('lelongbid_id'); $combine_carts_lelongbidder = $cart_all->concat($lelongbidder_all); $lelongbid_all = LelongBid::with('lelongBidMarhun', 'fileMarhunMainMany') ->where('lelong_id', $lelong->id) ->where('caw_id', $request->caw_id) ->where('status_jual', 0) ->whereNotIn('id', $combine_carts_lelongbidder) ->get(); foreach ($lelongbid_all as $lelongbid) { foreach ($lelongbid->lelongBidMarhun as $lel_bid_marhun) { if ($jenis_emas[$lel_bid_marhun->marhun]) { $lel_bid_marhun['marhun_desc'] = $jenis_emas[$lel_bid_marhun->marhun]->descpt; } } $lelongbid->lelongbidmarhun = $lelongbid->lelongBidMarhun; unset($lelongbid->lelongBidMarhun); if ($lelongbid->fileMarhunMainMany->isNotEmpty()) { $lelongbid->filemarhun = $lelongbid->fileMarhunMainMany; } unset($lelongbid->fileMarhunMainMany); array_push($listLelong, $lelongbid); } $lelong['lelongbid'] = $listLelong; return response()->json( ['success' => true, 'message' => $lelong],201 ); } else { return response()->json( ['success' => false, 'message' => 'Empty Data'],201 ); } } public function photoMarhun(Request $request) { $fileMarhun = FileMarhun::find($request->filemarhun_id); $marhunPhotoService = new MarhunPhotoService(); $marhun_photo = $marhunPhotoService->get($request->norujukan, $fileMarhun); return base64_encode($marhun_photo); } public function lelongOnline() { $lelong = Lelong::where('sts_lelong', '=', 1)->first(); if ($lelong) { $date_convert = strtotime($lelong->masatamat_lelong); $lelong->masatamat_lelong = date("h:i A", $date_convert); return response()->json(['success' => true, 'lelong' => $lelong]); } else { return response()->json(['success' => false,]); } } public function itemInCart(Request $request) { $cart = Cart::where('user_id', $request->user_id)->count(); if ($cart) { return response()->json(['success' => true, 'cart' => $cart]); } else { return response()->json(['success' => false,]); } } public function searchLelongByCawangan(Request $request){ $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); // $arrayLelong = []; $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->where('tarikh_lelong','=',$currentdate) ->where('caw_id', '=', $request->caw_id) ->where('status_online', '=', 1) ->get()->toArray(); foreach($lelong as $index1 => $lel) { $lelongbid = LelongBid ::where('lelong_id', $lel['lelong_id']) ->where('caw_id', '=', $request->caw_id) ->get()->toArray(); $lelong[$index1]['lelongbid'] = $lelongbid; // dd($lelong); foreach($lelongbid as $index=>$lelbidmarhun){ // $cawangan = Cawangan::where('id','=',$lelbidmarhun['caw_id'])->first()->toArray(); // $id = lelongbid::first(); $lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $lelbidmarhun['id']) ->get()->toArray(); $lelong['lelongbid'][$index]['lelongbidmarhun'] = $lelongbidmarhun; // $lelong[$index1]['lelongbid'][$index2]['cawangan'] = $cawangan; // dd($lelong); } } if($lelong) { return response()->json( ['success' => true, 'message' => $lelong], 201 ); } else { return response()->json( ['success' => false, 'message' => 'Empty Data'], 201 ); } } public function bidresult($user_id) { $sag = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->join('lelong', 'lelongbid.lelong_id', '=', 'lelong.id') ->where('lelongbidder.user_id',$user_id) // ->where('lelongbid.lelong_id',$lelong_id) ->where('lelongbidder.status_bidder',1) ->whereNull('lelongbidder.status_payment') ->select( 'lelongbid.lelong_id', 'lelongbidder.user_id', 'lelongbidder.lelongbid_id', 'lelongbidder.hargabida', 'lelongbidder.status_payment', 'lelongbid.norujukan' ) ->get(); // dd($sag); $data = []; $total_hargabida = $sag->sum('hargabida'); array_push($data,[ 'sag'=> $sag, 'total_hargabida'=> $total_hargabida ]); // dd($winner); return response()->json($data); } public function resultInCawangan(Request $request) { $user = User::find($request->user_id, ['name', 'nokp']); $lelongbid = 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) ->where('lelongbid.kodcaw', $request->kodcaw) ->select( 'lelongbid.id AS id', 'lelongbidder.id AS bidder_id', 'lelongbid.norujukan', 'lelongbid.kodcaw', 'lelongbidder.hargabida', 'lelongbid.marhun', 'lelongbid.berat', ) ->get(); foreach ($lelongbid as $index => $data) { $lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $data->id)->get(); foreach ($lelongbidmarhun as $index1 => $lelbidmarhun) { $jenis_emas = JenisEmas::where('marhun', '=', $lelbidmarhun->marhun)->select('descpt')->first(); $lelongbidmarhun[$index1]['marhun_desc'] = $jenis_emas->descpt; } $lelongbid[$index]['lelongbidmarhun'] = $lelongbidmarhun->toArray(); } // dd($lelongbid->toArray(), $user->toArray()); return response()->json([ 'success' => true, 'user' => $user, 'lelongbid' => $lelongbid ]); } public function resultInCawangan2(Request $request) { $current = new Carbon(); $date_convert = strtotime($current); $current_convert = date("d-m-Y h:i A", $date_convert); $user = User::find($request->user_id, ['name', 'nokp', 'alamat', 'notelbimbit']); $lelong = Lelong::find($request->lelong_id, ['id', 'tarikh_lelong']); $date_convert = strtotime($lelong->tarikh_lelong); $date_lelong_convert = date("d-m-Y", $date_convert); $cawangan = Cawangan::where('caw_code', $request->kodcaw)->select('caw_name', 'alamat1', 'alamat2', 'notel', 'nofaks')->first(); $lelong_bid_all = LelongBid::with(['lelongBidMarhun:id,lelongbid_id,marhun,berat', 'lelongBidMarhun.jenisEmas:marhun,descpt']) ->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) ->where('lelongbid.kodcaw', $request->kodcaw) ->select( 'lelongbid.id AS id', 'lelongbidder.id AS bidder_id', 'lelongbid.norujukan', 'lelongbid.kodcaw', 'lelongbidder.hargabida', 'lelongbid.marhun', 'lelongbid.berat', ) ->get(); // return view('pdf.surathakkepemilikanbrg', compact('current_convert', 'date_lelong_convert', 'user', 'lelong_bid_all', 'cawangan')); $pdf = PDF::loadView('pdf.surathakkepemilikanbrg', compact('current_convert', 'date_lelong_convert', 'user', 'lelong_bid_all', 'cawangan'))->setPaper('a4', 'potrait'); return $pdf->download('Penyata Bayaran.pdf'); } public function downloadInvoice(Request $request) { $user = User::find($request->user_id, ['name', 'nokp']); $pdf = PDF::loadView('pdf.penyatabayaranpembida')->setPaper('a4', 'potrait'); return $pdf->download('Penyata Bayaran.pdf'); return response()->json($user); } public function bidresults($user_id, $lelong_id) { $sag = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbidder.user_id', $user_id) ->where('lelongbidder.status_bidder', 1) ->select( 'lelongbid.kodcaw' ) ->groupBy('lelongbid.kodcaw') ->get(); $getTarikhLelong = Lelong::where('id', $lelong_id)->select('tarikh_lelong')->first(); $tarikhLelong = $getTarikhLelong->tarikh_lelong; $tarikhLelong = strtotime($tarikhLelong); $tarikhLelong = date("d-m-Y", $tarikhLelong); $data = []; foreach ($sag as $index1 => $kodcaw) { $groupBycaw = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbidder.user_id', $user_id) ->where('lelongbidder.status_bidder', 1) ->where('lelongbid.kodcaw', $kodcaw->kodcaw) ->select( 'lelongbid.id AS id', 'lelongbidder.id AS bidder_id', 'lelongbid.norujukan AS norujukan', 'lelongbid.kodcaw AS kodcaw', 'lelongbidder.hargabida AS total_payment', 'lelongbid.marhun AS marhun', 'lelongbid.hargaasas', 'lelongbid.berat', 'lelongbidder.status_payment') ->get(); $getCawangan = Cawangan::where('caw_code', $kodcaw->kodcaw) ->select('caw_name', 'caw_code') ->first(); $namaCawangan = $getCawangan->caw_name; $kodCawangan = $getCawangan->caw_code; $status_payment_cawangan['status'] = 1; $payment = Payment::where('norujukan', $groupBycaw[0]->norujukan) ->where(function ($query) { $query->where('status', '=', 1) ->orWhere('status', '=', 2); }) ->first(); if ($payment != null) { $checkPayMethod = Resit::find($payment->resit_id); $date_convert = strtotime($checkPayMethod->created_at); $checkPayMethod['pay_time'] = date("H:i:s", $date_convert); $status_payment_cawangan['resit'] = $checkPayMethod->toArray(); if ($checkPayMethod->billplz_id == "") { $status_payment_cawangan['payment_method'] = "TUNAI"; $status_payment_cawangan['payment_method_opt'] = 1; } elseif (str_starts_with($checkPayMethod->billplz_id, 'CDM')) { $status_payment_cawangan['payment_method'] = "CDM"; $status_payment_cawangan['payment_method_opt'] = 3; $file_resit = FileResit::where('user_id', $user_id)->where('lelong_id', $lelong_id)->where('kodcaw', $kodCawangan)->get(); foreach($file_resit as $index => $resit) { $date_convert = strtotime($resit->created_at); $updatedDateTime = date("H:i:s", $date_convert); $file_resit[$index]['masa_upload'] = $updatedDateTime; } $status_payment_cawangan['file_resit'] = $file_resit; } else { $status_payment_cawangan['payment_method'] = "ONLINE"; $status_payment_cawangan['payment_method_opt'] = 2; } if ($payment->disahkan_pada == NULL) { $status_payment_cawangan['status'] = 9; // status pending tunggu pengesahan } } else { $status_payment_cawangan['status'] = null; } $total_hargabida = 0; foreach ($groupBycaw as $index => $hargabida) { $fileMarhun = FileMarhun::where('lelongbid_id', $hargabida->id)->where('photo_type', 1)->get(); if ($fileMarhun->isNotEmpty()) { $groupBycaw[$index]['filemarhun'] = $fileMarhun; } $marhun = LelongBidMarhun::where('lelongbid_id', '=', $hargabida->id)->get()->toArray(); $groupBycaw[$index]['lelongbidmarhun'] = $marhun; $totalbida = Lelongbidder::where('id', $hargabida->bidder_id) ->select('hargabida') ->first(); $groupBycaw[$index]['hargabida'] = number_format($totalbida['hargabida'], 2, '.', ','); $total_hargabida = $total_hargabida + $totalbida['hargabida']; } $sag = $groupBycaw; array_push($data, [ 'kodcaw' => $kodCawangan, 'cawangan' => $namaCawangan, 'sag' => $sag, 'total_hargabida' => number_format($total_hargabida, 2, '.', ','), 'status_payment_cawangan' => $status_payment_cawangan ]); } $response = [ 'success' => true, 'tarikh_lelong' => $tarikhLelong, 'data' => $data ]; return response()->json($response); } public function bidPayRemaining($user_id, $lelong_id) { $sag = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbidder.user_id', $user_id) ->where('lelongbidder.status_bidder', 1) ->whereNull('lelongbidder.status_payment') ->select( 'lelongbid.kodcaw' ) ->groupBy('lelongbid.kodcaw') ->get(); // dd($sag->toArray()); $getTarikhLelong = Lelong::where('id', $lelong_id)->select('tarikh_lelong')->first(); $tarikhLelong = $getTarikhLelong->tarikh_lelong; $date_convert = strtotime($tarikhLelong); $tarikhLelong = date("d-m-Y", $date_convert); $data = []; foreach ($sag as $index1 => $kodcaw) { // dd($kodcaw->toArray()); $groupBycaw = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $lelong_id) ->where('lelongbidder.user_id', $user_id) ->where('lelongbidder.status_bidder', 1) ->whereNull('lelongbidder.status_payment') ->where('lelongbid.kodcaw', $kodcaw->kodcaw) ->select( 'lelongbidder.id AS id', 'lelongbid.id AS lelongbid_id', 'lelongbid.norujukan AS norujukan', 'lelongbid.kodcaw AS kodcaw', 'lelongbidder.hargabida AS total_payment', 'lelongbid.marhun AS marhun', 'lelongbidder.status_payment') ->get(); $getCawangan = Cawangan::where('caw_code', $kodcaw->kodcaw) ->select('caw_name', 'caw_code') ->first(); $namaCawangan = $getCawangan->caw_name; $kodCawangan = $getCawangan->caw_code; $sag = $groupBycaw; $total_hargabida = 0; foreach ($groupBycaw as $hargabida) { $totalbida = Lelongbidder::where('id', $hargabida['id']) ->select('hargabida') ->first(); $total_hargabida = $total_hargabida + $totalbida['hargabida']; } array_push($data, [ 'kodcaw' => $kodCawangan, 'cawangan' => $namaCawangan, 'sag' => $sag, 'total_hargabida' => number_format($total_hargabida, 2, '.', ',') ]); } $response = [ 'success' => true, 'tarikh_lelong' => $tarikhLelong, 'data' => $data ]; return response()->json($response); } public function updatebiditem(Request $request) { // dd($request->norujukan->toArray()); // foreach($request->norujukan as $norujukan) // { // dd($norujukan); // } $currentdate = Carbon::now(); $currentdate = $currentdate->toDateTimeString(); $lelongbid = LelongBid::whereIn('norujukan',$request->norujukan) ->where('lelong_id',$request->lelong_id) ->get(); foreach($lelongbid as $bid) { $lelongbidder = LelongBidder::where('lelongbid_id',$bid->id) ->where('user_id',$request->user_id)->first(); $lelongbidder->status_payment =1; $lelongbidder->payment_id = $request->paymentid; $lelongbidder->save(); $lelongbid = LelongBid::where('id',$bid->id)->first(); $lelongbid->status_jual = 1; $lelongbid->t_jual = $currentdate; $lelongbid->hargajual = $lelongbidder->hargabida; $lelongbid->save(); } // $alllelongbidder = LelongBidder::join('lelongbid','lelongbidder.lelongbid_id','lelongbid.id') // ->where('lelongbidder.user_id',$request->user_id) // ->where('lelongbid.lelong_id',$request->lelong_id) // ->where('lelongbidder.status_bidder',1) // ->select('lelongbidder.hargabida') // ->get(); // $resit = Resit::where('lelong_id',$request->lelong_id) // ->where('user_id',$request->user_id) // ->where('resit_type',2) // ->first(); // if($resit->total_payment > $alllelongbidder->SUM('hargabida')) // { // $resit->status = 'PAID'; // $resit->paid_at = $currentdate; // $resit->save(); // } $response = [ 'success' => "success", 'message' => "Bidaan berjaya dibayar" ]; return response()->json($response, 201); } public function history($user_id) { $lelongs_id = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('lelongbidder.user_id',$user_id)->select('lelongbid.lelong_id')->groupBy('lelongbid.lelong_id')->get(); $arrayID = []; foreach($lelongs_id as $lelong_id) { array_push($arrayID,$lelong_id); } $lelongs = Lelong::whereIn('id',$arrayID)->get()->toArray(); // dd($lelongs); foreach($lelongs as $index1 => $lelong) { // dd($lelong['id']); $datalelongbidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') ->where('lelongbid.lelong_id',$lelong['id']) ->where('user_id',$user_id) ->where('status_bidder',1)->get(); $payment = Payment::join('resit', 'payment.resit_id', '=', 'resit.id') ->where('payment.lelong_id',$lelong['id']) ->where('payment.user_id',$user_id) ->where('resit.resit_type',2) ->first(); if($payment->status == 'PAID') { $status = 'Selesai'; } else { $status = 'Belum Selesai'; } $lelongs[$index1]['total'] = $datalelongbidder->sum('hargabida'); $lelongs[$index1]['status'] = $status; $lelongs[$index1]['detail_sag'] = $datalelongbidder; } return response()->json($lelongs, 201); } public function listCawLelongToday() { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id') ->where('tarikh_lelong', '=', $currentdate) ->select( 'lelong.id as lelong_id', 'lelong.tarikh_lelong', 'cawangan.caw_name', 'cawangan_lelong.caw_id', 'cawangan_lelong.masamula_lelong', 'cawangan_lelong.masatamat_lelong', ) ->groupBy('cawangan.caw_name') ->get(); foreach($lelong as $index => $data) { if($data['masamula_lelong'] != null) { $date_convert = strtotime($data['masamula_lelong']); $lelong[$index]['masamula_lelong'] = date("h:i A", $date_convert); $date_convert_2 = strtotime($data['masatamat_lelong']); $lelong[$index]['masatamat_lelong'] = date("h:i A", $date_convert_2); } $lelong[$index]['caw_name'] = $data['caw_name']; } if ($lelong->isNotEmpty()) { return response()->json([ 'success' => true, 'lelong' => $lelong, ]); } else { return response()->json([ 'success' => false, ]); } } public function listCawLelongTodayStarted() { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id') ->where('tarikh_lelong', '=', $currentdate) ->where('cawangan_lelong.status_online', 1) ->select( 'lelong.id as lelong_id', 'lelong.tarikh_lelong', 'cawangan.caw_name', 'cawangan_lelong.caw_id', 'lelong.masamula_lelong', 'lelong.masatamat_lelong', ) ->get()->toArray(); // dd($lelong); if ($lelong) { return response()->json([ 'success' => true, 'lelong' => $lelong ]); } else { return response()->json([ 'success' => false, ]); } } public function listCawLelongNext() { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateString(); $lelongs = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id') ->join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id') ->where('tarikh_lelong', '>', $currentdate) ->select( 'lelong.id as lelong_id', 'lelong.tarikh_lelong', 'cawangan.caw_name', 'cawangan_lelong.caw_id', 'lelong.masamula_lelong', 'lelong.masatamat_lelong', ) ->orderBy('lelong.tarikh_lelong', 'ASC') ->get(); $lelongs = $lelongs->groupBy('tarikh_lelong'); $lelong = collect(); foreach ($lelongs as $index => $lel) { $unique_caw = $lel->unique('caw_id'); foreach ($unique_caw as $lel_caw) { $lelong->add($lel_caw); } } foreach($lelong as $index => $data) { $date_convert = strtotime($data['tarikh_lelong']); $lelong[$index]['tarikh_lelong'] = date("d-m-Y", $date_convert); $lelong[$index]['caw_name'] = $data['caw_name']; } if ($lelong) { return response()->json([ 'success' => true, 'lelong' => $lelong ]); } else { return response()->json([ 'success' => false, 'message' => "Empty Data" ]); } } public function bayarCdm(Request $request) { // dd($request->all()); $validator = Validator::make($request->all(), [ 'lelong_id' => 'required|string', 'user_id' => 'required', ]); if ($validator->fails()) { $errors = [ 'success' => "error", 'message' => $validator->errors() ]; return response($errors, 201); } $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(); if($payment) { $images = $request->images; foreach($images as $img) { $addfile = new FileResit; $addfile->user_id = $request->user_id; $addfile->payment_id = $payment->id; $addfile->file_type = $img['file_type']; $addfile->filename = $img['filename']; $addfile->save(); } } $bid_id = $request->bid_id; 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['lelongbid_id']) ->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', $bid['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(); } if ($payment) { return response()->json([ 'success' => true, 'user' => $user, 'payment' => $payment, 'file_resit' => $images, 'updatelelbidbidder' => $updatelelbidbidder, 'eachbidupdate' => $eachbidupdate ]); } else { return response()->json([ 'success' => false, 'message' => "Muat naik bukti pembayaran tidak berjaya!" ]); } // return response($response, 201); } public function updateResit(Request $request) { $validator = Validator::make($request->all(), [ 'lelong_id' => 'required|string', 'user_id' => 'required', 'payment_id' => 'required' ]); if ($validator->fails()) { $errors = [ 'success' => "error", 'message' => $validator->errors() ]; return response($errors, 201); } $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(); $images = $request->images; foreach($images as $img) { $deletepayment = FileResit::where('payment_id', $request->payment_id) ->where('id', $img['fileresit_id']) ->delete(); $addfile = new FileResit; $addfile->user_id = $request->user_id; $addfile->payment_id = $request->payment_id; $addfile->file_type = $img['file_type']; $addfile->filename = $img['filename']; $addfile->save(); } } if ($addfile) { return response()->json([ 'success' => true, 'payment' => $paymentexist, 'file_resit' => $images ]); } else { return response()->json([ 'success' => false, 'message' => "Kemaskini bukti pembayaran tidak berjaya!" ]); } } public function getInvoiceId(Request $request) { $invoice = Invoice::where('user_id', $request->user_id)->where('lelong_id', $request->lelong_id)->first(); $lelong = Lelong::find($request->lelong_id); $date_convert = strtotime($lelong->tarikh_lelong); $lelong->tarikh_lelong = date("d/m/Y", $date_convert); if ($invoice) { return response()->json([ 'success' => true, 'invoice' => $invoice, 'lelong' => $lelong ]); } else { return response()->json([ 'success' => false, ]); } } public function resultLelong() { $user = Auth::user(); $current_date = Carbon::now()->toDateString(); $lelong = Lelong::join('lelongbid', 'lelong.id', '=', 'lelongbid.lelong_id') ->join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbidder.user_id', $user->id) ->where('status_bidder', 1) ->select('lelong.id', 'lelong.tarikh_lelong') ->groupBy('lelong.id') ->orderBy('lelong.id','desc') ->get(); foreach ($lelong as $index => $tarikhLelong) { $jumlah = 0; $status = 1; $lelongbid = LelongBid::join('lelongbidder', 'lelongbid.id', 'lelongbidder.lelongbid_id') ->where('lelongbid.lelong_id', $tarikhLelong->id) ->where('lelongbidder.user_id', $user->id) ->where('status_bidder', 1) ->select('lelongbidder.hargabida', 'lelongbidder.status_payment') ->get(); foreach ($lelongbid as $data) { $jumlah = $jumlah + $data->hargabida; if ($data->status_payment == null) { $status = null; } } $date_convert = strtotime($tarikhLelong->tarikh_lelong); $lelong[$index]['tarikh_lelong'] = date("d-m-Y", $date_convert); $lelong[$index]['jumlah'] = number_format($jumlah, 2, '.', ','); $lelong[$index]['status'] = $status; } if ($lelong->isNotEmpty()) { return response()->json([ 'success' => true, 'lelong' => $lelong, ]); } else { $current_lelong = Lelong::where('tarikh_lelong', $current_date)->where('sts_lelong', 3)->select('id', 'tarikh_lelong')->first(); if ($current_lelong != null) { $lelong_bidder_user = LelongBidder::query() ->join('lelongbid', 'lelongbidder.lelongbid_id', 'lelongbid.id') ->where('user_id', $user->id) ->where('lelongbid.lelong_id', $current_lelong->id) ->select( 'lelongbidder.id AS lelongbidder_id', 'lelongbid.id AS lelongbid_id', 'nama_bidder', 'user_id', 'status_bidder' ) ->get(); if ($lelong_bidder_user->isNotEmpty()) { $status_menang = 0; // kalah semua bidaan foreach ($lelong_bidder_user as $lelong_bidder) { if ($lelong_bidder->status_bidder == 1) { $status_menang = 1; // menang sekurang-kurangnya satu bidaan } } return response()->json([ 'success' => false, 'status' => $status_menang, 'message' => 'Kalah semua bidaan.' ]); } } return response()->json([ 'success' => false, // tiada bidaan dibuat @ tiada lelong pada hari semasa 'message' => 'Tiada bidaan dibuat @ tiada lelong pada hari semasa.' ]); } } public function resultStatus($userId, $lelongId) { // dd('hey'); $lelong = Lelong::join('lelongbid', 'lelong.id', '=', 'lelongbid.lelong_id') ->join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') ->where('lelongbidder.user_id', $userId) ->where('lelong.id', $lelongId) ->where('status_bidder', 1) ->get(); foreach ($lelong as $index) { $status = true; if ($index->status_payment == null || $index->status_payment == 0) { $status = false; } } if ($lelong) { return response()->json([ 'success' => true, 'statusMenang' => true, 'statusBayaran' => $status, ]); } else { return response()->json([ 'success' => false, 'statusMenang' => false, ]); } } public function listPhotoResit(Request $request) { $file_resit = FileResit::where('user_id', '=', $request->user_id)->where('lelong_id', '=', $request->lelong_id)->get(); if ($file_resit->isNotEmpty()) { foreach($file_resit as $index => $resit) { $date_convert = strtotime($resit->created_at); $updatedDateTime = date("d-m-Y H:i:s", $date_convert); $file_resit[$index]['masa_upload'] = $updatedDateTime; } return response()->json([ 'success' => true, 'file_resit' => $file_resit, ]); } else { return response()->json([ 'success' => false, ]); } } public function addPhotoResit(Request $request) { $file_type = $request->gambarResit->getClientOriginalExtension(); if(strtolower($file_type) != "jpg" && strtolower($file_type) != "jpeg" && strtolower($file_type) != "png") { return response()->json([ 'success' => false, 'message1' => "Jenis gambar tidak sah", 'message2' => "Sila muat naik gambar dalam bentuk PNG atau JPG sahaja." ]); } $addfile = new FileResit(); $addfile->user_id = $request->user_id; $addfile->lelong_id = $request->lelong_id; $addfile->original_file_type = $file_type; $addfile->kodcaw = $request->kodcaw; $addfile->payment_id = 0; $addfile->original_size = filesize($request->gambarResit); $addfile->save(); $directory = "/{$request->user_id}/{$request->lelong_id}/"; $imageExtension = $file_type; $resitImageFileName = $addfile->id; Storage::disk('resit')->putFileAs($directory, $request->gambarResit, "${resitImageFileName}.${imageExtension}"); $stored_path = Storage::disk('resit')->path("{$directory}{$resitImageFileName}.${imageExtension}"); $resitPhotoService = new ResitPhotoService(); try { $convertToWebP = $resitPhotoService->optimizeImageToWebP($stored_path, $directory, $resitImageFileName); } catch (\Exception $e) { return $e; } $compress_size = Storage::disk('resit')->getSize("{$directory}${resitImageFileName}.webp"); $addfile->update([ 'file_type' => 'webp', 'compress_size' => $compress_size ]); Storage::disk('resit')->delete("{$directory}${resitImageFileName}.${imageExtension}"); return response()->json(['success' => true]); } public function showPhotoResit(Request $request) { $fileResit = FileResit::find($request->fileresit_id); $resitPhotoService = new ResitPhotoService(); $resit_photo = $resitPhotoService->get($fileResit->user_id, $fileResit); return base64_encode($resit_photo); } public function deletePhotoResit(Request $request) { $deleteFile = FileResit::find($request->fileresit_id); $directory = "/{$deleteFile->user_id}/{$deleteFile->lelong_id}/"; $imageExtension = $deleteFile->file_type; $deleteFile_id = $deleteFile->id; $resitImageFileName = "${deleteFile_id}.${imageExtension}"; Storage::disk('resit')->delete("{$directory}${resitImageFileName}"); $deleteFile->delete(); return response()->json(['success' => true]); } public function portalApi(Request $request) { $lelong = LelongBid::select('fasa', 't_lelong','hargajual','t_jual') ->where([['norujukan', $request->norujukan]]) ->first(); if($lelong){ $givenDate = Carbon::createFromFormat('Y-m-d', $lelong->t_lelong); $lastbayar = $givenDate->subDays(3); $lelong['lastbayar'] = $lastbayar->toDateString(); } return response()->json(['lelong' => $lelong]); } public function initializeCdmPayment(Request $request) { $current = Carbon::now(); $current = new Carbon(); $day = $current->day; $month = $current->month; $year = $current->format('y'); $original_file_type = strtolower($request->gambarResit->getClientOriginalExtension()); if($original_file_type != "jpg" && $original_file_type != "jpeg" && $original_file_type != "png") { return response()->json([ 'success' => false, 'message1' => "Jenis gambar tidak sah", 'message2' => "Sila muat naik gambar dalam bentuk PNG atau JPG sahaja." ]); } $this->addPhotoResit($request); $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); $cdm_reference = 'CDM' . sprintf('%06d', $nosiri); $add_resit = new Resit(); $add_resit->user_id = $request->user_id; $add_resit->lelong_id = $request->lelong_id; $add_resit->reference_no = $reference_no; $add_resit->invoice_id = $request->invoice_id; $add_resit->invoice_no = $request->invoice_no; $add_resit->billplz_id = $cdm_reference; $add_resit->total_payment = $request->total; $add_resit->resit_type = 2; $add_resit->save(); $selectedSag = json_decode($request->sag, true); foreach ($selectedSag as $index) { $add_payment = new Payment; $add_payment->user_id = $request->user_id; $add_payment->lelong_id = $request->lelong_id; $add_payment->kodcaw = $index['kodcaw']; $add_payment->lelongbid_id = $index['lelongbid_id']; $add_payment->norujukan = $index['norujukan']; $add_payment->total_payment = $index['total_payment']; $add_payment->status_payment_opt = 3; //bayar secara CDM 3 $add_payment->status = 2; //paybidwin $add_payment->remark = 'CDM'; $add_payment->resit_id = $add_resit->id; $add_payment->save(); $updateTagBid = LelongBid::where('norujukan', $index['norujukan'])->first(); $updateTagBid->status_payment = 2; $updateTagBid->save(); $updateTagBidder = LelongBidder::where('lelongbid_id', $updateTagBid->id) ->where('user_id', $request->user_id)->first(); $updateTagBidder->status_payment = 2; $updateTagBidder->payment_id = $add_payment->id; $updateTagBidder->save(); } return response()->json(['success' => true]); } public function listLelong() { $lelong_all = Lelong::select('id', 'tarikh_lelong', 'fasa')->get(); foreach($lelong_all as $index => $lelong) { $date_convert = strtotime($lelong->tarikh_lelong); $lelong_all[$index]['tarikh_lelong'] = date("d-m-Y", $date_convert); } return response()->json($lelong_all); } public function listLelongByCawangan(Request $request) { $cawangan = Cawangan::with('lelong')->find($request->caw_id); $lelong_all = $cawangan->lelong; foreach($lelong_all as $index => $lelong) { $date_convert = strtotime($lelong->tarikh_lelong); $lelong_all[$index]['tarikh_lelong'] = date("d-m-Y", $date_convert); $lelong_all[$index]['new_id'] = str_pad($lelong->id, 3, "0", STR_PAD_LEFT); } return response()->json($lelong_all); } public function listCawangan(Request $request) { $cawangan_all = CawanganLelong::join('cawangan','cawangan_lelong.caw_id','=','cawangan.id') ->where('lelong_id', $request->lelong_id) ->select('cawangan_lelong.caw_id', 'cawangan.caw_name')->get(); return response()->json($cawangan_all); } public function listLelongBid(Request $request) { $lelong_bid_all = LelongBid::with('fileMarhunMain') ->where('caw_id', $request->caw_id) ->where('lelong_id', $request->lelong_id) ->select(['id','norujukan', 'marhun', 'nilaimarhun', 'status_semak', 'berat', 'hargaasas']) ->get(); $belum_semak = $lelong_bid_all->where('status_semak', 0)->count(); return response()->json([ "jumlah_surat" => $lelong_bid_all->count(), "belum_semak" => $belum_semak, "lelong_bid" => $lelong_bid_all, ]); } public function showPhotoMarhun(Request $request) { $fileMarhun = FileMarhun::find($request->filemarhun_id, ['file_type']); $directory = "/{$request->norujukan}/overall_photo/"; $imageExtension = $fileMarhun->file_type; $marhunImageFileName = "overall.{$imageExtension}"; if (Storage::disk('marhun')->exists("{$directory}${marhunImageFileName}")) { $marhun_photo = Storage::disk('marhun')->get("{$directory}${marhunImageFileName}"); return base64_encode($marhun_photo); } else { return 0; } } public function checkAvailabilityFpxSession(Request $request) { $user = Auth::user(); $current_date_time = Carbon::now()->toDateTimeString(); $payment = Payment::query() ->where('user_id', $user->id) ->where('lelong_id', $request->lelong_id) ->where('kodcaw', $request->kodcaw) ->orderBy('id', 'DESC') ->select('resit_id') ->first(); if ($payment) { $resit = Resit::query() ->where('id', $payment->resit_id) ->select('id', 'status', 'created_at') ->first(); $resit_date_time = $resit->created_at->toDateTimeString(); $resit_time = strtotime($resit_date_time); $future_date = $resit_time + (60 * 2); $end_session_date_time_formated = date("Y-m-d H:i:s", $future_date); if ($resit->status == null && $end_session_date_time_formated > $current_date_time) { return response()->json([ 'status' => false, 'message' => 'Previous session is active! Please wait 2 minutes before start again.' ]); } else { return response()->json([ 'status' => true, 'message' => 'None session active' ]); } } else { return response()->json([ 'status' => true, 'message' => 'None session active' ]); } } }