487 lines
19 KiB
PHP
487 lines
19 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Carbon\Carbon;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
use App\Models\User;
|
|
use App\Models\Cawangan;
|
|
use App\Models\CawanganLelong;
|
|
use App\Models\Lelong;
|
|
use App\Models\Payment;
|
|
use App\Models\LelongBid;
|
|
use App\Models\LelongBidder;
|
|
use App\Models\Resit;
|
|
use App\Models\FileResit;
|
|
|
|
class AccountController extends Controller
|
|
{
|
|
|
|
public function senarailelongan(){
|
|
|
|
$user = Auth::user();
|
|
|
|
$arrayinfo = [];
|
|
|
|
$senarai = Lelong::join('cawangan_lelong','lelong.id','=','cawangan_lelong.lelong_id')
|
|
->select('lelong_id','tarikh_lelong','lelong.fasa','sts_lelong')
|
|
->distinct()
|
|
->orderBy('lelong_id')
|
|
->where('lelong.sts_lelong', 3)
|
|
->get()
|
|
->toArray();
|
|
|
|
foreach($senarai as $details)
|
|
{
|
|
|
|
$detailsinfo = CawanganLelong::join('cawangan','cawangan_lelong.caw_id','=','cawangan.id')
|
|
->select('cawangan_lelong.lelong_id','cawangan_lelong.caw_id','caw_name','caw_code')
|
|
->where('lelong_id',$details['lelong_id'])
|
|
->distinct()
|
|
->orderBy('lelong_id')
|
|
->get()
|
|
->toArray();
|
|
|
|
array_push($arrayinfo,['detail'=>$details, 'detailsinfo'=>$detailsinfo]);
|
|
}
|
|
|
|
return view('account.senarailelongan',compact('senarai','arrayinfo'));
|
|
}
|
|
|
|
public function listbayaranonline($lelong_id, $kodcaw)
|
|
{
|
|
$getkodcaw = Cawangan::where('caw_code', $kodcaw)->select('caw_name')->first();
|
|
|
|
$listwinner2 = Payment::join('lelongbid', 'payment.kodcaw', '=', 'lelongbid.kodcaw')
|
|
->join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbidder.status_payment', 2)
|
|
->where('payment.status', 2)
|
|
->whereNull('payment.disahkan_pada')
|
|
->orWhere(function ($query) {
|
|
$query->where('payment.status_payment_opt', 3)
|
|
->where('payment.status_payment_opt', 2);
|
|
})
|
|
->select('lelongbidder.user_id', 'payment.user_id')
|
|
->groupBy('lelongbidder.user_id', 'payment.user_id')
|
|
->get();
|
|
// dd($listwinner2);
|
|
|
|
$listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbid.kodcaw', $kodcaw)
|
|
->where('lelongbidder.status_payment', 2)
|
|
->where('payment.status', 2)
|
|
->whereNull('payment.disahkan_pada')
|
|
->select('lelongbidder.user_id', 'payment.user_id')
|
|
->groupBy('lelongbidder.user_id', 'payment.user_id')
|
|
->orWhere(function ($query) {
|
|
$query->where('payment.status_payment_opt', 3)
|
|
->where('payment.status_payment_opt', 2);
|
|
})
|
|
->get();
|
|
// dd($listwinner);
|
|
|
|
foreach($listwinner as $index1=>$winner){
|
|
|
|
$userdetails = User::where('id', $winner['user_id'])->first();
|
|
|
|
$SAGWin = Payment::join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
|
|
->where('payment.kodcaw', $kodcaw)
|
|
->get();
|
|
|
|
$id_payment = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.user_id', '=', 'payment.user_id')
|
|
->where('lelongbidder.user_id', $winner['user_id'])
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbid.kodcaw',$kodcaw)
|
|
->where('payment.kodcaw',$kodcaw)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->select('lelongbidder.payment_id')
|
|
->groupBy('lelongbidder.payment_id')
|
|
->get();
|
|
|
|
$total_payment = 0;
|
|
foreach($id_payment as $id){
|
|
$payment = Payment::where('id', $id['payment_id'])
|
|
->where('user_id', $userdetails['id'])
|
|
->where('kodcaw', $kodcaw)
|
|
->first();
|
|
|
|
if($payment){
|
|
$total_payment = $total_payment + $payment->total_payment;
|
|
}
|
|
}
|
|
$listwinner[$index1]['details'] = $userdetails;
|
|
$listwinner[$index1]['total_surat'] = sizeof($SAGWin);
|
|
$listwinner[$index1]['totalBid'] = $SAGWin->sum('hargabida');
|
|
$listwinner[$index1]['totalPay'] = $total_payment;
|
|
|
|
}
|
|
|
|
|
|
return view('account.listbayaranonline',compact('listwinner','lelong_id', 'getkodcaw', 'kodcaw'));
|
|
}
|
|
|
|
// public function sahsagonline($lelong_id, $user_id, $caw_code) //hoklama komen pada 25hb10
|
|
// {
|
|
// $userdetails = User::where('id', $user_id)->first();
|
|
|
|
// $senaraisag = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
// ->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
// ->join('resit', 'payment.resit_id', '=', 'resit.id')
|
|
// ->where('lelongbid.lelong_id', $lelong_id)
|
|
// ->where('lelongbidder.user_id', $userdetails['id'])
|
|
// ->where('lelongbid.kodcaw', $caw_code)
|
|
// ->where('lelongbidder.status_bidder', 1)
|
|
// // ->where('payment.status_payment_opt', 3)
|
|
// // ->orWhere('payment.status_payment_opt', 2)
|
|
// ->where('lelongbidder.status_payment', 2)
|
|
// ->select('lelongbidder.id as lelongbidder_id',
|
|
// 'lelongbidder.user_id',
|
|
// 'lelongbidder.hargabida',
|
|
// 'lelongbidder.status_bidder',
|
|
// 'lelongbidder.status_payment',
|
|
// 'lelongbidder.masa_bidaan',
|
|
// 'lelongbid.id as lelongbid_id',
|
|
// 'lelongbid.lelong_id',
|
|
// 'lelongbid.caw_id',
|
|
// 'lelongbid.kodcaw',
|
|
// 'lelongbid.norujukan',
|
|
// 'lelongbid.t_lelong',
|
|
// 'lelongbid.hargaasas',
|
|
// 'lelongbid.hargajual',
|
|
// 'lelongbid.t_jual',
|
|
// 'lelongbid.status_jual',
|
|
// 'lelongbid.status_payment as sts_payment_lelbid',
|
|
// 'lelongbid.status_semak',
|
|
// 'payment.id as payment_id',
|
|
// 'payment.remark',
|
|
// 'payment.kodcaw',
|
|
// 'payment.status_payment_opt',
|
|
// 'payment.resit_id',
|
|
// 'payment.status',
|
|
// 'payment.remark',
|
|
// 'payment.total_payment',
|
|
// 'payment.disahkan_pada',
|
|
// 'payment.disahkan_oleh',
|
|
// 'resit.reference_no'
|
|
// )
|
|
// ->get();
|
|
// // dd($senaraisag);
|
|
|
|
// // $senaraisag = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
// // ->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
// // ->where('payment.user_id', $user_id)
|
|
// // ->where('payment.kodcaw', $caw_code)
|
|
// // ->where('lelongbidder.status_bidder', 1)
|
|
// // ->where('payment.status_payment_opt', 3)
|
|
// // ->orWhere('payment.status_payment_opt', 2)
|
|
// // ->where('lelongbidder.status_payment', 2)
|
|
// // ->where('payment.lelong_id', $lelong_id)
|
|
// // ->where('payment.kodcaw', $caw_code)
|
|
// // ->where('payment.user_id', $user_id)
|
|
// // ->get()->toArray();
|
|
// // dd($senaraisag);
|
|
|
|
// foreach($senaraisag as $index1=>$sag)
|
|
// {
|
|
|
|
// if($sag)
|
|
// {
|
|
// // dd($sag);
|
|
// $checking = Payment::join('lelongbid', 'payment.lelong_id', '=', 'lelongbid.lelong_id')
|
|
// ->where('payment.id', $sag['payment_id'])
|
|
// ->where('lelongbid.status_jual', 1)
|
|
// ->where('payment.kodcaw', $caw_code)
|
|
// ->where('lelongbid.status_payment', 1)
|
|
// ->whereNotNull('payment.disahkan_pada')
|
|
// ->whereNotNull('payment.disahkan_pada')
|
|
// ->first();
|
|
|
|
// $senaraisag[$index1]['checking_payment'] = $checking;
|
|
// // dd($checking);
|
|
// }
|
|
// else
|
|
// {
|
|
// //
|
|
// }
|
|
// }
|
|
|
|
// $saggroupbyid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
// ->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
// ->where('lelongbid.lelong_id', $lelong_id)
|
|
// ->where('lelongbidder.user_id', $user_id)
|
|
// ->where('lelongbid.kodcaw', $caw_code)
|
|
// ->where('lelongbidder.status_bidder', 1)
|
|
// ->where('payment.status_payment_opt', 3)
|
|
// ->orWhere('payment.status_payment_opt', 2)
|
|
// ->where('lelongbidder.status_payment', 2)
|
|
// ->select(
|
|
// 'lelongbidder.payment_id as payment_id'
|
|
// )
|
|
// ->groupBy('lelongbidder.payment_id')
|
|
// ->get();
|
|
// // $payments = Payment::whereIn($saggroupbyid)->get()
|
|
// $total_payment = Payment::whereIn('id',$saggroupbyid)->get()->sum('total_payment');
|
|
|
|
// $getresit = FileResit::join('payment', 'fileresit.payment_id', '=', 'payment.id')
|
|
// ->where('payment.lelong_id', $lelong_id)
|
|
// ->where('payment.user_id', $user_id)
|
|
// ->where('payment.kodcaw', $caw_code)
|
|
// ->get()->toArray();
|
|
|
|
// $array_resit = [];
|
|
// foreach($getresit as $index1=>$resit)
|
|
// {
|
|
// $getresit[$index1]['resit64'] = 'data:image/' . $resit['file_type'] . ';base64' . base64_encode($resit['filename']);
|
|
// }
|
|
|
|
// return view('account.sahsagonline', compact('senaraisag', 'lelong_id', 'user_id', 'total_payment', 'caw_code', 'userdetails', 'getresit'));
|
|
// }
|
|
|
|
|
|
public function sahbayaronline(Request $request)
|
|
{
|
|
$currentdate = Carbon::now();
|
|
$currentdate = $currentdate->toDateTimeString();
|
|
|
|
$user = Auth::user();
|
|
|
|
$total_payment = 0;
|
|
|
|
$senaraisag = $request->senarai_sag;
|
|
|
|
foreach(json_decode($senaraisag) as $sag)
|
|
{
|
|
$payment = Payment::where('id', $sag->payment_id)->first();
|
|
$payment->disahkan_oleh = $user->id;
|
|
$payment->disahkan_pada = $currentdate;
|
|
$payment->save();
|
|
|
|
$total_payment = $total_payment + $payment->total_payment;
|
|
|
|
$eachbid = LelongBid::where('id',$sag->lelongbid_id)->first();
|
|
$eachbid->status_payment = 1;
|
|
$eachbid->status_jual = 1;
|
|
$eachbid->status_semak = 1;
|
|
$eachbid->t_jual = $currentdate;
|
|
$eachbid->save();
|
|
|
|
$bidder = LelongBidder::where('lelongbid_id', $sag->lelongbid_id)
|
|
->where('payment_id', $sag->payment_id)
|
|
->where('user_id', $sag->user_id)
|
|
->first();
|
|
$bidder->status_payment = 1;
|
|
$bidder->update();
|
|
}
|
|
|
|
return redirect()->route('account.senarailelongan')->with('success','Pembayaran Berjaya');
|
|
|
|
}
|
|
|
|
public function sahsagonline($lelong_id, $user_id, $caw_code)
|
|
{
|
|
$userdetails = User::where('id', $user_id)->first();
|
|
|
|
$senaraisag = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
->join('resit', 'payment.resit_id', '=', 'resit.id')
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbidder.user_id', $userdetails['id'])
|
|
->where('lelongbid.kodcaw', $caw_code)
|
|
->where('lelongbidder.status_bidder', 1)
|
|
// ->where('payment.status_payment_opt', 3)
|
|
// ->orWhere('payment.status_payment_opt', 2)
|
|
->where('lelongbidder.status_payment', 2)
|
|
->select('lelongbidder.id as lelongbidder_id',
|
|
'lelongbidder.user_id',
|
|
'lelongbidder.hargabida',
|
|
'lelongbidder.status_bidder',
|
|
'lelongbidder.status_payment',
|
|
'lelongbidder.masa_bidaan',
|
|
'lelongbid.id as lelongbid_id',
|
|
'lelongbid.lelong_id',
|
|
'lelongbid.caw_id',
|
|
'lelongbid.kodcaw',
|
|
'lelongbid.norujukan',
|
|
'lelongbid.t_lelong',
|
|
'lelongbid.hargaasas',
|
|
'lelongbid.hargajual',
|
|
'lelongbid.t_jual',
|
|
'lelongbid.status_jual',
|
|
'lelongbid.status_payment as sts_payment_lelbid',
|
|
'lelongbid.status_semak',
|
|
'payment.id as payment_id',
|
|
'payment.remark',
|
|
'payment.kodcaw',
|
|
'payment.status_payment_opt',
|
|
'payment.resit_id',
|
|
'payment.status',
|
|
'payment.remark',
|
|
'payment.total_payment',
|
|
'payment.disahkan_pada',
|
|
'payment.disahkan_oleh',
|
|
'resit.reference_no'
|
|
)
|
|
->get();
|
|
|
|
foreach($senaraisag as $index1=>$sag)
|
|
{
|
|
|
|
if($sag)
|
|
{
|
|
// dd($sag);
|
|
$checking = Payment::join('lelongbid', 'payment.lelong_id', '=', 'lelongbid.lelong_id')
|
|
->where('payment.id', $sag['payment_id'])
|
|
->where('lelongbid.status_jual', 1)
|
|
->where('payment.kodcaw', $caw_code)
|
|
->where('lelongbid.status_payment', 1)
|
|
->whereNotNull('payment.disahkan_pada')
|
|
->whereNotNull('payment.disahkan_pada')
|
|
->first();
|
|
|
|
|
|
$noresit = Resit::where('lelong_id',$lelong_id)
|
|
->where('user_id','=',$user_id)
|
|
->first();
|
|
|
|
$senaraisag[$index1]['checking_payment'] = $checking;
|
|
// dd($checking);
|
|
}
|
|
else
|
|
{
|
|
//
|
|
}
|
|
}
|
|
|
|
$saggroupbyid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbidder.user_id', $user_id)
|
|
->where('lelongbid.kodcaw', $caw_code)
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('payment.status_payment_opt', 3)
|
|
->orWhere('payment.status_payment_opt', 2)
|
|
->where('lelongbidder.status_payment', 2)
|
|
->select(
|
|
'lelongbidder.payment_id as payment_id'
|
|
)
|
|
->groupBy('lelongbidder.payment_id')
|
|
->get();
|
|
// $payments = Payment::whereIn($saggroupbyid)->get()
|
|
$total_payment = Payment::whereIn('id',$saggroupbyid)->sum('total_payment');
|
|
|
|
$getresit = FileResit::join('payment', 'fileresit.payment_id', '=', 'payment.id')
|
|
->where('payment.lelong_id', $lelong_id)
|
|
->where('payment.user_id', $user_id)
|
|
->where('payment.kodcaw', $caw_code)
|
|
->get()->toArray();
|
|
|
|
$array_resit = [];
|
|
foreach($getresit as $index1=>$resit)
|
|
{
|
|
$getresit[$index1]['resit64'] = 'data:image/' . $resit['file_type'] . ';base64' . base64_encode($resit['filename']);
|
|
}
|
|
|
|
return view('account.sahsagonline', compact('senaraisag', 'lelong_id', 'user_id', 'total_payment', 'caw_code', 'userdetails', 'getresit'));
|
|
}
|
|
|
|
public function listpengesahanakaun($lelong_id, $kodcaw)
|
|
{
|
|
$getkodcaw = Cawangan::where('caw_code', $kodcaw)->select('caw_name')->first();
|
|
|
|
$listwinner2 = Payment::join('lelongbid', 'payment.kodcaw', '=', 'lelongbid.kodcaw')
|
|
->join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
// ->where('lelongbidder.status_payment', 2)
|
|
->where('payment.status', 2)
|
|
->where('payment.remark', 'BERJAYA BAYARAN ONLINE')
|
|
// ->whereNull('payment.disahkan_pada')
|
|
->orWhere(function ($query) {
|
|
$query->where('payment.status_payment_opt', [2,3]);
|
|
// ->where('payment.status_payment_opt', 2);
|
|
})
|
|
->select('lelongbidder.user_id', 'payment.user_id')
|
|
->groupBy('lelongbidder.user_id', 'payment.user_id')
|
|
->get();
|
|
// dd($listwinner2);
|
|
|
|
$listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbid.kodcaw', $kodcaw)
|
|
// ->where('lelongbidder.status_payment', 2)
|
|
->where('payment.status', 2)
|
|
->where('payment.remark', 'BERJAYA BAYARAN ONLINE')
|
|
// ->whereNull('payment.disahkan_pada')
|
|
->select('lelongbidder.user_id', 'payment.user_id')
|
|
->groupBy('lelongbidder.user_id', 'payment.user_id')
|
|
->orWhere(function ($query) {
|
|
$query->where('payment.status_payment_opt', 3)
|
|
->where('payment.status_payment_opt', 2);
|
|
})
|
|
->get();
|
|
// dd($listwinner);
|
|
|
|
foreach($listwinner as $index1=>$winner){
|
|
|
|
$userdetails = User::where('id', $winner['user_id'])->first();
|
|
|
|
|
|
$SAGWin = Payment::join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
|
|
->where('payment.user_id', $winner['user_id'])
|
|
->where('payment.kodcaw', $kodcaw)
|
|
->get();
|
|
|
|
// dd($SAGWin);
|
|
|
|
$id_payment = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
|
|
->join('payment', 'lelongbidder.user_id', '=', 'payment.user_id')
|
|
->where('lelongbidder.user_id', $winner['user_id'])
|
|
->where('lelongbidder.status_bidder', 1)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->where('lelongbid.kodcaw',$kodcaw)
|
|
->where('payment.kodcaw',$kodcaw)
|
|
->where('lelongbid.lelong_id', $lelong_id)
|
|
->select('lelongbidder.payment_id')
|
|
->groupBy('lelongbidder.payment_id')
|
|
->get();
|
|
|
|
$total_payment = 0;
|
|
foreach($id_payment as $id){
|
|
// dd($id_payment);
|
|
$payment = Payment::where('id', $id['payment_id'])
|
|
->where('user_id', $userdetails['id'])
|
|
->where('kodcaw', $kodcaw)
|
|
->first();
|
|
|
|
if($payment){
|
|
$total_payment = $total_payment + $payment->total_payment;
|
|
}
|
|
|
|
$disahkanoleh = User::where('id', $payment->disahkan_oleh)->first();
|
|
// dd($disahkanoleh);
|
|
}
|
|
$listwinner[$index1]['details'] = $userdetails;
|
|
$listwinner[$index1]['total_surat'] = sizeof($SAGWin);
|
|
$listwinner[$index1]['totalBid'] = $SAGWin->sum('hargabida');
|
|
$listwinner[$index1]['totalPay'] = $total_payment;
|
|
$listwinner[$index1]['data'] = $SAGWin;
|
|
$listwinner[$index1]['disahkanoleh'] = $disahkanoleh;
|
|
|
|
}
|
|
|
|
|
|
return view('account.listbayaranonlinesah',compact('listwinner','lelong_id', 'getkodcaw', 'kodcaw'));
|
|
}
|
|
}
|