Separate homepage blade for each roles

This commit is contained in:
Amir
2023-03-28 09:53:55 +08:00
parent 9855954870
commit 4447bff7d7
7 changed files with 801 additions and 1 deletions
+303
View File
@@ -420,6 +420,309 @@ class HomeController extends Controller
}
public function index2()
{
$user = Auth::user();
$dateTime = date('Y-m-d');
if ($user->hasRole('callcenter')) {
return view('homecallcenter');
} else if ($user->hasRole('admin')) {
return view('homeadmin');
} else if ($user->hasRole('account')) {
$arrayinfoaccount = [];
$listwinner = [];
$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)
->where('tarikh_lelong', '=', $dateTime)
->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', 'cawangan.caw_code', 'cawangan_lelong.export_data_sts')
->where('lelong_id', $details['lelong_id'])
->distinct()
->orderBy('lelong_id')
->get();
foreach ($detailsinfo as $index1 => $details1) {
$listwinner = Payment::join('lelongbid', 'payment.kodcaw', '=', 'lelongbid.kodcaw')
->join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $details1['lelong_id'])
->where('payment.kodcaw', $details1['caw_code'])
->where('payment.status', 2)
->whereNull('payment.disahkan_pada')
->where('payment.status_payment_opt', 2)
->select('lelongbidder.user_id', 'payment.user_id')
->groupBy('lelongbidder.user_id', 'payment.user_id')
->get();
foreach ($listwinner as $index => $listwin) {
$namawinner = User::where('id', $listwin['user_id'])
->first();
$total_payment = 0;
$userdetails = User::where('id', $listwin['user_id'])->first();
$SAGWin = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.nopembeli', $listwin['user_id'])
->where('lelongbid.kodcaw', $listwin['kodcaw'])
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $listwin['lelong_id'])
->get();
foreach ($SAGWin as $index2 => $sag) {
$detailspayment = null;
if ($sag['payment_id'] != null) {
$detailspayment = Payment::where('id', $sag['payment_id'])->first();
$total_payment = $total_payment + $detailspayment->total_payment;
} else {
$total_payment = '0.00';
}
$listwinner[$index]['jenisbayaran'] = $detailspayment;
}
$listwinner[$index]['details'] = $userdetails;
$listwinner[$index]['nama'] = $userdetails['name'];
$listwinner[$index]['caw_code'] = $details1['caw_code'];
$listwinner[$index]['totalPay'] = $total_payment;
$detailsinfo[$index1]['nama'] = $userdetails;
}
$detailsinfo[$index1]['listwinner'] = $listwinner;
}
array_push($arrayinfoaccount, ['detail' => $details, 'detailsinfo' => $detailsinfo, 'listwinner' => $listwinner]);
}
$arrayinfoaccountcdm = [];
$listwinnercdm = [];
$senaraicdm = 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)
->where('tarikh_lelong', '=', $dateTime)
->get()
->toArray();
foreach ($senaraicdm as $detailscdm) {
$detailsinfocdm = CawanganLelong::join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id')
->select('cawangan_lelong.lelong_id', 'cawangan_lelong.caw_id', 'caw_name', 'cawangan.caw_code', 'cawangan_lelong.export_data_sts')
->where('lelong_id', $detailscdm['lelong_id'])
->distinct()
->orderBy('lelong_id')
->get();
foreach ($detailsinfocdm as $index1 => $details1cdm) {
$listwinnercdm = Payment::join('lelongbid', 'payment.kodcaw', '=', 'lelongbid.kodcaw')
->join('lelongbidder', 'payment.id', '=', 'lelongbidder.payment_id')
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $details1cdm['lelong_id'])
->where('payment.kodcaw', $details1cdm['caw_code'])
->where('payment.status', 2)
->whereNull('payment.disahkan_pada')
->where('payment.status_payment_opt', 3)
->select('lelongbidder.user_id', 'payment.user_id')
->groupBy('lelongbidder.user_id', 'payment.user_id')
->get();
foreach ($listwinnercdm as $index => $listwincdm) {
$namawinnercdm = User::where('id', $listwincdm['user_id'])
->first();
$total_paymentcdm = 0;
$userdetailscdm = User::where('id', $listwincdm['user_id'])->first();
$SAGWincdm = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.nopembeli', $listwincdm['user_id'])
->where('lelongbid.kodcaw', $listwincdm['kodcaw'])
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $listwincdm['lelong_id'])
->get();
foreach ($SAGWincdm as $index2 => $sagcdm) {
$detailspaymentcdm = null;
if ($sagcdm['payment_id'] != null) {
$detailspaymentcdm = Payment::where('id', $sagcdm['payment_id'])->first();
$total_paymentcdm = $total_payment + $detailspaymentcdm->total_payment;
} else {
$total_paymentcdm = '0.00';
}
$listwinnercdm[$index]['jenisbayaran'] = $detailspaymentcdm;
}
$listwinnercdm[$index]['details'] = $userdetailscdm;
$listwinnercdm[$index]['nama'] = $userdetailscdm['name'];
$listwinnercdm[$index]['caw_code'] = $details1cdm['caw_code'];
$listwinnercdm[$index]['totalPay'] = $total_paymentcdm;
$detailsinfocdm[$index1]['nama'] = $userdetailscdm;
}
$detailsinfocdm[$index1]['listwinner'] = $listwinnercdm;
}
array_push($arrayinfoaccountcdm, ['detailcdm' => $detailscdm, 'detailsinfocdm' => $detailsinfocdm, 'listwinnercdm' => $listwinnercdm]);
}
return view('homeaccount', compact('arrayinfoaccount', 'arrayinfoaccountcdm'));
}
$caw = Cawangan::where('caw_code', '=', $user->kodcaw)->first();
$all_lelong = Lelong::select('id', 'tarikh_lelong')->where('sts_lelong', 0)->get()->keyBy('id');
foreach ($all_lelong as $data) {
$data->tarikh_lelong = DateTime::createFromFormat('Y-m-d', $data->tarikh_lelong);
$data->tarikh_lelong = $data->tarikh_lelong->format('d-m-Y');
}
if ($caw <> NULL) {
$sag = LelongBid::where('status_semak', 0)
->where('kodcaw', $caw['caw_code'])
->get();
$sag_by_lelong_id = $sag->groupBy('lelong_id');
foreach ($sag_by_lelong_id as $index => $lelong) {
if ($all_lelong[$index]); {
$all_lelong[$index]['sag_belum_semak'] = $lelong->count();
}
}
} else {
$sag = LelongBid::where('status_semak', 0)
->get();
}
if ($user->hasAnyRole('operasi', 'pengurus-operasi', 'jurulelong')) {
$arrayinfo = [];
$semakCountArray = [];
$lelong = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id')
->where('lelong.tarikh_lelong', '=', $dateTime)
->select(
'lelong.fasa',
'lelong.id AS lelong_id',
'lelong.tarikh_lelong',
'lelong.masatamat_lelong',
'lelong.harga_emas_asas',
'lelong.jbg',
'lelong.cajlelong',
'lelong.sts_lelong'
)
->groupBy('cawangan_lelong.lelong_id')
->get()->toArray();
foreach ($lelong as $info) {
$detailsinfo = CawanganLelong::join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id')
->select('batchlel', 'lelong_id', 'cawangan_lelong.caw_id', 'cawangan.caw_name', 'cawangan.caw_code', 'status_online', 'cawangan_lelong.masamula_lelong', 'cawangan_lelong.masatamat_lelong')
->where('lelong_id', $info['lelong_id'])
->get()
->toArray();
foreach ($detailsinfo as $det) {
$cawsemak = LelongBid::where('status_semak', 0)
->where('lelong_id', $det['lelong_id'])
->where('caw_id', $det['caw_id'])
->get();
$semakCount = $cawsemak->count();
array_push($semakCountArray, $semakCount);
}
array_push($arrayinfo, ['info' => $info, 'detailsinfo' => $detailsinfo]);
}
$arrayinfomenang = [];
$listwinnermenang = [];
$lelongmenang = Lelong::join('cawangan_lelong', 'lelong.id', '=', 'cawangan_lelong.lelong_id')
->select('lelong_id', 'tarikh_lelong', 'lelong.fasa', 'harga_emas_asas', 'jbg', 'cajlelong', 'sts_lelong')
->distinct()
->orderBy('lelong_id')
->where('lelong.sts_lelong', 3)
->where('tarikh_lelong', '=', $dateTime)
->get()
->toArray();
foreach ($lelongmenang as $details) {
$detailsinfo = CawanganLelong::join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id')
->select('cawangan_lelong.lelong_id', 'cawangan_lelong.caw_id', 'caw_name', 'cawangan.caw_code', 'cawangan_lelong.export_data_sts')
->where('lelong_id', $details['lelong_id'])
->distinct()
->orderBy('lelong_id')
->get();
foreach ($detailsinfo as $index1 => $cal) {
$listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $details['lelong_id'])
->where('lelongbid.kodcaw', $cal['caw_code'])
->select('lelongbidder.user_id', 'lelongbid.lelong_id', 'lelongbid.kodcaw')
->groupBy('lelongbidder.user_id')
->get();
if ($listwinner) {
foreach ($listwinner as $index => $listing) {
$total_payment = 0;
$userdetails = User::where('id', $listing['user_id'])->first();
$SAGWin = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.nopembeli', $listing['user_id'])
->where('lelongbid.kodcaw', $listing['kodcaw'])
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $listing['lelong_id'])
->get();
foreach ($SAGWin as $index2 => $sag1) {
$detailspayment = null;
if ($sag1['payment_id'] != null) {
$detailspayment = Payment::where('id', $sag1['payment_id'])->first();
$total_payment = $total_payment + $detailspayment->total_payment;
} else {
$total_payment = '0.00';
}
}
$listwinner[$index]['details'] = $userdetails;
$listwinner[$index]['total_surat'] = sizeof($SAGWin);
$listwinner[$index]['totalBid'] = $SAGWin->sum('hargabida');
$listwinner[$index]['totalPay'] = $total_payment;
$listwinner[$index]['jenisbayaran'] = $detailspayment;
}
$detailsinfo[$index1]['nama'] = "";
$detailsinfo[$index1]['listwinner'] = $listwinner;
}
}
array_push($arrayinfomenang, ['detail' => $details, 'detailsinfo' => $detailsinfo, 'listwinner' => $listwinner]);
}
return view('homeoperasi', compact('sag', 'arrayinfomenang', 'arrayinfo', 'semakCountArray'));
} else if ($user->hasAnyRole('pengurus-cawangan', 'khazanah', 'penilai', 'pengurus-cawangan-khas',)) {
$arrayinfomutu = [];
$lelongmutu = pengesahan::join('lelong', 'lelong.id', '=', 'pengesahan.lelong_id')
->join('lelongbid', 'lelongbid.norujukan', '=', 'pengesahan.norujukan')
->where('lelongbid.kodcaw', $user->kodcaw)
->whereIn('pengesahan.status_ubah', [1, 2, 3, 4, 5, 7, 8, 9, 10])
->where('disahkan_oleh', '=', NULL)
->select('pengesahan.lelong_id', 'lelong.id', 'lelong.tarikh_lelong', 'lelong.masatamat_lelong', 'lelong.harga_emas_asas', 'lelong.jbg', 'lelong.cajlelong', 'sts_lelong')
->distinct()
->get()
->toArray();
foreach ($lelongmutu as $infomutu) {
$detailsinfo = CawanganLelong::join('cawangan', 'cawangan_lelong.caw_id', '=', 'cawangan.id')
->where('cawangan.caw_code', $user->kodcaw)
->where('lelong_id', $infomutu['lelong_id'])
->get()
->toArray();
array_push($arrayinfomutu, ['info' => $infomutu, 'detailsinfo' => $detailsinfo]);
}
return view('homecawangan', compact('all_lelong', 'arrayinfomutu'));
} else {
Auth::logout();
return redirect()->route('login');
}
}
public function about()
{
// $user = Auth::user();