diff --git a/app/Http/Controllers/LelongController.php b/app/Http/Controllers/LelongController.php index 9199a90c..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 { @@ -604,6 +609,24 @@ class LelongController extends Controller return view('lelong.lelongtaklaku',compact('lelongtaklaku')); } + 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('users', 'lelongbidder.user_id', '=', 'users.id') + ->where('lelongbid.lelong_id', $lelong_id) + ->get(); + + return view('lelong.senaraipemenang',compact('senaraiwinner','lelong_id')); + } + public function senaraimarhun($lelongid, $cawid){ // $marhun = LelongBid::->get(); diff --git a/app/Http/Controllers/PaymentController.php b/app/Http/Controllers/PaymentController.php index 25935586..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') @@ -130,20 +134,17 @@ class PaymentController extends Controller 'lelongbid.hargaasas', 'lelongbid.norujukan', 'lelongbidder.lelongbid_id', - 'lelongbidder.id as lelongbidder_id' + 'lelongbidder.id as lelongbidder_id', + 'lelongbid.lelong_id as lelong_id' ) ->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, 'lelongbid_id' => $bid, + 'lelong_id' => $eachbid->lelong_id, 'kodcaw' => $user->kodcaw, 'status_payment_opt' => 1, 'status' => 2, @@ -175,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 379877c0..5daf633c 100644 --- a/database/migrations/2022_01_25_010223_create_payment_table.php +++ b/database/migrations/2022_01_25_010223_create_payment_table.php @@ -18,6 +18,7 @@ class CreatePaymentTable extends Migration $table->unsignedBigInteger('user_id')->unsigned(); $table->unsignedBigInteger('lelongbidder_id')->unsigned()->nullable(); $table->unsignedBigInteger('lelongbid_id')->unsigned()->nullable(); + $table->unsignedBigInteger('lelong_id')->unsigned(); $table->string('kodcaw')->nullable(); $table->string('back_acc_pembeli')->nullable(); $table->string('bank_acc_no_pembeli')->nullable(); @@ -54,12 +55,16 @@ class CreatePaymentTable extends Migration $table->foreign('lelongbidder_id') ->references('id')->on('lelongbidder') ->onDelete('cascade'); + + $table->foreign('lelong_id') + ->references('id')->on('lelong') + ->onDelete('cascade'); }); 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); @@ -72,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/senarailelong.blade.php b/resources/views/lelong/senarailelong.blade.php index 39208c74..59bad69a 100644 --- a/resources/views/lelong/senarailelong.blade.php +++ b/resources/views/lelong/senarailelong.blade.php @@ -45,7 +45,7 @@ @elseif ($lel->sts_lelong == 2) @elseif ($lel->sts_lelong == 3) - + @else @endif diff --git a/resources/views/lelong/senaraipemenang.blade.php b/resources/views/lelong/senaraipemenang.blade.php new file mode 100644 index 00000000..920fa94b --- /dev/null +++ b/resources/views/lelong/senaraipemenang.blade.php @@ -0,0 +1,108 @@ +@extends('layouts.app') + +@section('content') + +
+
+
+ @if ($message = Session::get('success')) +
+

{{ $message }}

+
+ @endif + + + + + + + + + + + + + + + + @foreach($senaraiwinner as $winner) + + + + + + + + + + + + @endforeach + +
NoNamaNo Kad PengenalanNo TelefonBilangan SuratJumlah Bidaan(RM)Jumlah Pembayaran(RM)Penyata BayaranAction
{{ $loop->iteration }} {{ $winner['name']}}{{ $winner['nokp']}}{{ $winner['notelbimbit']}}{{ $winner['total_surat']}}{{ $winner['totalBid']}}{{ $winner['totalPay']}} + + + @if( $winner['totalPay'] < $winner['totalBid'] ) + + @endif +
+
+
+
+ + + +@endsection + diff --git a/resources/views/pembayaran/kaunterpembayaran.blade.php b/resources/views/pembayaran/kaunterpembayaran.blade.php index e5a016de..b1e341e0 100644 --- a/resources/views/pembayaran/kaunterpembayaran.blade.php +++ b/resources/views/pembayaran/kaunterpembayaran.blade.php @@ -20,7 +20,7 @@ Bilangan Surat Jumlah Bidaan(RM) Jumlah Pembayaran(RM) - Resit Bayaran + Penyata Bayaran Action @@ -35,7 +35,7 @@ {{ $winner['totalBid']}} {{ $winner['totalPay']}} - + @if( $winner['totalPay'] < $winner['totalBid'] ) diff --git a/routes/web.php b/routes/web.php index fcaa5030..c5ff7290 100644 --- a/routes/web.php +++ b/routes/web.php @@ -77,6 +77,7 @@ Route::group(['prefix'=>'lelong'], function () { Route::group(['middleware' => ['permission:pendaftaranbatch']], function () { Route::get('/create/{id}',['as'=>'lelong.create','uses'=>'LelongController@create']); Route::get('/senarailelong',['as'=>'lelong.senarailelong','uses'=>'LelongController@index']); + Route::get('/senaraipemenang/{lelong_id}',['as'=>'lelong.senaraipemenang','uses'=>'LelongController@senaraipemenang']); Route::get('/senarailelongtaklaku',['as'=>'lelong.senarailelongtaklaku','uses'=>'LelongController@senarailelongtaklaku']); Route::get('/lelongtaklaku/{lelong_id}',['as'=>'lelong.lelongtaklaku','uses'=>'LelongController@lelongtaklaku']); Route::get('/showlelong/{id}',['as'=>'lelong.show','uses'=>'LelongController@show']);