diff --git a/app/Http/Controllers/LelongController.php b/app/Http/Controllers/LelongController.php index 78dc1433..401e13a6 100644 --- a/app/Http/Controllers/LelongController.php +++ b/app/Http/Controllers/LelongController.php @@ -471,22 +471,27 @@ class LelongController extends Controller $updatebid->save(); $previous_siri = Resit::orderBy('id','desc')->first(); - if($previous_siri){ - $nosiri = $previous_siri->id + 1; - }else{ - $nosiri = 1; + $checkdata = Resit::where('user_id', $bidder->user_id) + ->where('lelong_id', $id) + ->first(); + if(!$checkdata){ + 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 = $bidder->user_id; + $resit->lelong_id = $id; + $resit->reference_no = $reference_no; + $resit->billplz_id = ''; + $resit->total_payment = ''; + $resit->resit_type = 2; // 1 = fee , 2 = bid + $resit->save(); } - - $reference_no = 'LPKB' . $day . $month . $year . sprintf("%08d", $nosiri); - - $resit = new Resit; - $resit->user_id = $bidder->user_id; - $resit->lelongbid_id = $bid->id; - $resit->reference_no = $reference_no; - $resit->billplz_id = ''; - $resit->total_payment = $bidder->hargabida; - $resit->resit_type = 2; // 1 = fee , 2 = bid - $resit->save(); } else { @@ -606,12 +611,20 @@ class LelongController extends Controller public function senaraipemenang($lelong_id){ + $listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') + ->where('lelongbidder.status_bidder', 1) + ->where('lelongbid.lelong_id', $lelong_id) + ->select('lelongbidder.user_id' + ) + ->groupBy('lelongbidder.user_id') + ->get()->toArray(); + $senaraiwinner = LelongBid::join('lelongbidder', 'lelongbid.id', '=', 'lelongbidder.lelongbid_id') - ->join('lelong', 'lelongbid.lelong_id', '=', 'lelong.id') + ->join('users', 'lelongbidder.user_id', '=', 'users.id') ->where('lelongbid.lelong_id', $lelong_id) ->get(); - - return view('lelong.senaraipemenang',compact('senaraiwinner')); + + return view('lelong.senaraipemenang',compact('senaraiwinner','lelong_id')); } public function senaraimarhun($lelongid, $cawid){ diff --git a/app/Http/Controllers/PaymentController.php b/app/Http/Controllers/PaymentController.php index d8da8a02..fbdbc725 100644 --- a/app/Http/Controllers/PaymentController.php +++ b/app/Http/Controllers/PaymentController.php @@ -121,6 +121,10 @@ class PaymentController extends Controller $bid_id = explode(",", $request->eachbid); + $resit = Resit::where('lelong_id', $lelong_id) + ->first(); + + $total_hargabida = 0; foreach($bid_id as $bid){ $eachbid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id') @@ -135,12 +139,7 @@ class PaymentController extends Controller ) ->first(); - $resit = Resit::where('lelongbid_id', $eachbid->lelongbid_id) - ->first(); - $resit->status = 'PAID'; - $resit->paid_at = $currentdate; - $resit->update(); - + $total_hargabida = $total_hargabida + $eachbid->hargabida; $payment = Payment::create([ 'user_id' => $request->user_id, 'lelongbidder_id' => $eachbid->lelongbidder_id, @@ -177,7 +176,12 @@ class PaymentController extends Controller $eachbid->update(); } - + if($request->amaunkiraan == $total_hargabida){ + $resit->total_payment = $total_hargabida; + $resit->status = 'PAID'; + $resit->paid_at = $currentdate; + $resit->update(); + } return redirect()->route('pembayaran.SenaraiLelongBayar')->with('success','Pembayaran Berjaya'); } diff --git a/app/Models/payment.php b/app/Models/payment.php index 08a23d51..5f0f20ea 100644 --- a/app/Models/payment.php +++ b/app/Models/payment.php @@ -15,6 +15,7 @@ class payment extends Model 'user_id', 'lelongbidder_id', 'lelongbid_id', + 'lelong_id', 'kodcaw', 'back_acc_pembeli', 'bank_acc_no_pembeli', diff --git a/app/Models/resit.php b/app/Models/resit.php index 9d59ce59..4573687c 100644 --- a/app/Models/resit.php +++ b/app/Models/resit.php @@ -13,7 +13,7 @@ class resit extends Model protected $fillable = [ 'user_id', - 'lelongbid_id', + 'lelong_id', 'reference_no', 'billplz_id', 'total_payment', diff --git a/database/migrations/2022_01_25_010223_create_payment_table.php b/database/migrations/2022_01_25_010223_create_payment_table.php index 8a3dfc6d..5daf633c 100644 --- a/database/migrations/2022_01_25_010223_create_payment_table.php +++ b/database/migrations/2022_01_25_010223_create_payment_table.php @@ -64,7 +64,7 @@ class CreatePaymentTable extends Migration Schema::create('resit', function (Blueprint $table) { $table->bigIncrements('id'); $table->unsignedBigInteger('user_id')->unsigned(); - $table->unsignedBigInteger('lelongbid_id')->unsigned()->nullable(); + $table->unsignedBigInteger('lelong_id')->unsigned(); $table->string('reference_no')->nullable(); $table->string('billplz_id'); $table->decimal('total_payment', $precision = 9, $scale = 2); @@ -77,8 +77,8 @@ class CreatePaymentTable extends Migration ->references('id')->on('users') ->onDelete('cascade'); - $table->foreign('lelongbid_id') - ->references('id')->on('lelongbid') + $table->foreign('lelong_id') + ->references('id')->on('lelong') ->onDelete('cascade'); }); diff --git a/resources/views/lelong/senaraipemenang.blade.php b/resources/views/lelong/senaraipemenang.blade.php index 802d6fb0..920fa94b 100644 --- a/resources/views/lelong/senaraipemenang.blade.php +++ b/resources/views/lelong/senaraipemenang.blade.php @@ -28,18 +28,18 @@ @foreach($senaraiwinner as $winner) {{ $loop->iteration }} - {{ $winner['details']['name']}} - {{ $winner['details']['nokp']}} - {{ $winner['details']['notelbimbit']}} + {{ $winner['name']}} + {{ $winner['nokp']}} + {{ $winner['notelbimbit']}} {{ $winner['total_surat']}} {{ $winner['totalBid']}} {{ $winner['totalPay']}} - + @if( $winner['totalPay'] < $winner['totalBid'] ) - + @endif