875 lines
39 KiB
PHP
875 lines
39 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Spatie\Permission\Models\Role;
|
|
use Spatie\Permission\Models\Permission;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
|
|
use App\Models\Lelong;
|
|
use App\Models\CawanganLelong;
|
|
use App\Models\Pengesahan;
|
|
use Carbon\Carbon;
|
|
use App\Models\Cawangan;
|
|
use App\Models\Job;
|
|
use App\Models\LelongBid;
|
|
use App\Models\Payment;
|
|
use App\Models\User;
|
|
use App\Models\LelongBidder;
|
|
use Hash;
|
|
use DateTime;
|
|
use App\Jobs\AutoTamatLelong;
|
|
|
|
class HomeController extends Controller
|
|
{
|
|
/**
|
|
* Create a new controller instance.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
$this->middleware('auth');
|
|
}
|
|
|
|
/**
|
|
* Show the application dashboard.
|
|
*
|
|
* @return \Illuminate\Contracts\Support\Renderable
|
|
*/
|
|
public function index()
|
|
{
|
|
// $user = Auth::user();
|
|
// $user->assignRole('admin');
|
|
|
|
$user = Auth::user();
|
|
|
|
$caw = Cawangan::where('caw_code','=',$user->kodcaw)->first();
|
|
|
|
$dateTime = date('Y-m-d');
|
|
// dd($dateTime);
|
|
$arrayinfo = [];
|
|
$semakCountArray = [];
|
|
|
|
// $lelong = Lelong::join('cawangan_lelong','lelong.id','=','cawangan_lelong.lelong_id')
|
|
// ->join('lelongbid', function($join)
|
|
// {
|
|
// $join->on('cawangan_lelong.lelong_id', '=', 'lelongbid.lelong_id')
|
|
// ->on('cawangan_lelong.caw_id', '=', 'lelongbid.caw_id');
|
|
// })
|
|
// ->where('lelong.tarikh_lelong', $dateTime)
|
|
// ->where('lelongbid.status_semak',1)
|
|
// ->select('lelong.fasa','cawangan_lelong.lelong_id','lelong.tarikh_lelong','lelong.masatamat_lelong','lelong.harga_emas_asas','lelong.jbg','lelong.cajlelong','lelong.sts_lelong')
|
|
// ->groupBy('cawangan_lelong.lelong_id','cawangan_lelong.caw_id')
|
|
// ->get()
|
|
// ->toArray();
|
|
|
|
$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();
|
|
//dd($lelong);
|
|
|
|
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]);
|
|
// dd($arrayinfo);
|
|
|
|
|
|
}//dd($detailsinfo);
|
|
$arrayinfomutu = [];
|
|
//HOME KELULUSAN MUTU MARHUN
|
|
$lelongmutu = pengesahan::join('lelong','lelong.id','=','pengesahan.lelong_id')
|
|
->join('lelongbid','lelongbid.norujukan','=','pengesahan.norujukan')
|
|
// ->where('sts_lelong', 0)
|
|
->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')
|
|
// ->groupBy('pengesahan.lelong_id')
|
|
->distinct()
|
|
->get()
|
|
->toArray();
|
|
// dd($lelong);
|
|
|
|
|
|
|
|
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]);
|
|
}
|
|
|
|
$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) { //staf cwgn
|
|
$sag = LelongBid::where('status_semak', 0) //belum disemak
|
|
->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 { //operasi
|
|
$sag = LelongBid::where('status_semak', 0) //belum disemak
|
|
->get();
|
|
}
|
|
|
|
//paparan pemenang lelongan harini
|
|
$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();
|
|
// dd($lelongmenang);
|
|
|
|
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')
|
|
// ->join('payment', 'lelongbidder.payment_id', '=', 'payment.id')
|
|
->where('lelongbidder.status_bidder', 1)
|
|
// ->where('payment.status', 1)
|
|
// ->where('lelongbidder.status_payment', 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]);
|
|
//array_push($arrayinfomenang,['detail'=>$details, 'detailsinfo'=>$detailsinfo]);
|
|
}
|
|
//end paparan pemenang lelongan harini
|
|
|
|
|
|
//paparan untuk account
|
|
$arrayinfoaccount = [];
|
|
$listwinner = [];
|
|
// $dateTimedummy = date('2022-10-23');
|
|
|
|
$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();
|
|
// dd($senarai);
|
|
|
|
foreach($senarai as $details)
|
|
{
|
|
// dd($details['lelong_id']);
|
|
$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();
|
|
|
|
// dd($detailsinfo);
|
|
foreach($detailsinfo as $index1=>$details1)
|
|
{
|
|
// dd($details1['caw_code']);
|
|
$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('lelongbidder.status_payment', 2)
|
|
->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();
|
|
|
|
// dd($listwinner);
|
|
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)
|
|
{
|
|
// dd($detailspayment);
|
|
$detailspayment = null;
|
|
if($sag['payment_id'] != null)
|
|
{
|
|
$detailspayment = Payment::where('id', $sag['payment_id'])->first();
|
|
$total_payment = $total_payment + $detailspayment->total_payment;
|
|
// dd($total_payment);
|
|
}else
|
|
{
|
|
$total_payment = '0.00';
|
|
}
|
|
$listwinner[$index]['jenisbayaran'] = $detailspayment ;
|
|
|
|
}
|
|
// dd($namawinner);
|
|
// $listwinner[$index]['namawinner'] = sizeof($namawinner);
|
|
$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]['nama'] = $namawinner['name'];
|
|
$detailsinfo[$index1]['listwinner'] = $listwinner;
|
|
// dd($listwinner[$index]['nama']);
|
|
}
|
|
|
|
|
|
|
|
array_push($arrayinfoaccount,['detail'=>$details, 'detailsinfo'=>$detailsinfo, 'listwinner'=>$listwinner]);
|
|
}
|
|
|
|
$arrayinfoaccountcdm = [];
|
|
$listwinnercdm = [];
|
|
// $dateTimedummy = date('2022-12-14');
|
|
|
|
$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();
|
|
// dd($senarai);
|
|
|
|
foreach($senaraicdm as $detailscdm)
|
|
{
|
|
// dd($details['lelong_id']);
|
|
$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();
|
|
|
|
// dd($detailsinfo);
|
|
foreach($detailsinfocdm as $index1=>$details1cdm)
|
|
{
|
|
// dd($details1['caw_code']);
|
|
$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('lelongbidder.status_payment', 2)
|
|
->where('payment.status', 2)
|
|
->whereNull('payment.disahkan_pada')
|
|
->where('payment.status_payment_opt', 3)
|
|
// ->orWhere(function ($query) {
|
|
// $query->where('payment.status_payment_opt', 3);
|
|
|
|
// })
|
|
->select('lelongbidder.user_id', 'payment.user_id')
|
|
->groupBy('lelongbidder.user_id', 'payment.user_id')
|
|
->get();
|
|
|
|
// dd($listwinner);
|
|
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)
|
|
{
|
|
// dd($detailspayment);
|
|
$detailspaymentcdm = null;
|
|
if($sagcdm['payment_id'] != null)
|
|
{
|
|
$detailspaymentcdm = Payment::where('id', $sagcdm['payment_id'])->first();
|
|
$total_paymentcdm = $total_payment + $detailspaymentcdm->total_payment;
|
|
// dd($total_payment);
|
|
}else
|
|
{
|
|
$total_paymentcdm = '0.00';
|
|
}
|
|
$listwinnercdm[$index]['jenisbayaran'] = $detailspaymentcdm ;
|
|
|
|
}
|
|
// dd($namawinner);
|
|
// $listwinner[$index]['namawinner'] = sizeof($namawinner);
|
|
$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;
|
|
|
|
}
|
|
// $detailsinfo[$index1]['nama'] = $namawinner['name'];
|
|
$detailsinfocdm[$index1]['listwinner'] = $listwinnercdm;
|
|
// dd($listwinner[$index]['nama']);
|
|
}
|
|
|
|
|
|
|
|
array_push($arrayinfoaccountcdm,['detailcdm'=>$detailscdm, 'detailsinfocdm'=>$detailsinfocdm, 'listwinnercdm'=>$listwinnercdm]);
|
|
}
|
|
//endpaparan untuk account page
|
|
|
|
|
|
return view('home',compact('all_lelong','lelongmutu', 'arrayinfomutu','arrayinfo','sag','semakCountArray','arrayinfomenang','arrayinfoaccount','arrayinfoaccountcdm'));
|
|
|
|
}
|
|
|
|
public function index2()
|
|
{
|
|
$user = Auth::user();
|
|
$dateTime = date('Y-m-d');
|
|
|
|
if ($user->hasRole('ajk')) {
|
|
return view('homeajk');
|
|
} else if ($user->hasRole('callcenter')) {
|
|
return view('homecallcenter');
|
|
} else if ($user->hasRole('operasi-kpi')) {
|
|
return view('homeoperasikpi');
|
|
} else if ($user->hasRole('hr')) {
|
|
return view('homehr');
|
|
} else if ($user->hasRole('pemasaran')) {
|
|
return view('homepemasaran');
|
|
} 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','fasa')->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();
|
|
$all_lelong[$index]['total_pjm'] = $lelong->sum('pinjaman');
|
|
}
|
|
}
|
|
} else {
|
|
$sag = Lelong::select('id', 'tarikh_lelong', 'fasa')
|
|
->withCount('lelongBidBelumSemak')
|
|
->withSum('lelongBidBelumSemak as total_pjm', 'pinjaman')
|
|
->where('sts_lelong', 0)
|
|
->orderBy('tarikh_lelong','ASC')
|
|
->orderBy('fasa','DESC')
|
|
->get();
|
|
foreach ($sag as $index=>$data) {
|
|
$data->tarikh_lelong = DateTime::createFromFormat('Y-m-d', $data->tarikh_lelong);
|
|
$data->tarikh_lelong = $data->tarikh_lelong->format('d-m-Y');
|
|
}
|
|
}
|
|
|
|
if ($user->hasAnyRole('operasi', 'pengurus-operasi')) {
|
|
|
|
$arrayinfo = [];
|
|
|
|
$lelong = Lelong::where('lelong.tarikh_lelong', '=', $dateTime)
|
|
->select(
|
|
'fasa',
|
|
'id',
|
|
'tarikh_lelong',
|
|
'masatamat_lelong',
|
|
'harga_emas_asas',
|
|
'jbg',
|
|
'cajlelong',
|
|
'sts_lelong'
|
|
)
|
|
->withCount('lelongBidBelumSemak')
|
|
->get();
|
|
|
|
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['id'])
|
|
->get()
|
|
->toArray();
|
|
foreach ($detailsinfo as $index50 => $det) {
|
|
|
|
$cawsemak = LelongBid::where('status_semak', 0)
|
|
->where('lelong_id', $det['lelong_id'])
|
|
->where('caw_id', $det['caw_id'])
|
|
->count();
|
|
$detailsinfo[$index50]['belum_semak'] =$cawsemak;
|
|
}
|
|
|
|
|
|
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'));
|
|
} 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();
|
|
// $user->assignRole('admin');
|
|
return view('about');
|
|
}
|
|
|
|
public function senarailelongubahmutu()
|
|
{
|
|
$arrayinfo = [];
|
|
$user = Auth::user();
|
|
// dd($user->kodcaw);
|
|
|
|
$lelong = pengesahan::join('lelong','lelong.id','=','pengesahan.lelong_id')
|
|
|
|
->whereIn('pengesahan.status_ubah', [1,2,3,4,5])
|
|
->select('pengesahan.lelong_id','lelong.id','lelong.tarikh_lelong','lelong.masatamat_lelong','lelong.harga_emas_asas','lelong.jbg','lelong.cajlelong','sts_lelong')
|
|
// ->groupBy('pengesahan.lelong_id')
|
|
|
|
->distinct()
|
|
->get()
|
|
->toArray();
|
|
|
|
foreach($lelong as $info)
|
|
{
|
|
$detailsinfo = CawanganLelong::join('cawangan','cawangan_lelong.caw_id','=','cawangan.id')
|
|
->where('lelong_id',$info['lelong_id'])
|
|
->get()
|
|
->toArray();
|
|
array_push($arrayinfo,['info'=>$info, 'detailsinfo'=>$detailsinfo]);
|
|
}
|
|
|
|
return view('home',compact('lelong', 'arrayinfo'));
|
|
}
|
|
|
|
public function editprofile()
|
|
{
|
|
// $user = Auth::user();
|
|
// $user->assignRole('admin');
|
|
return view('profil');
|
|
}
|
|
|
|
public function profileUpdate(Request $request){
|
|
//validation rules
|
|
|
|
$request->validate([
|
|
'name' =>'required|min:4|string|max:255',
|
|
'username' =>'required|min:4|string|max:255',
|
|
'email'=>'required|email|string|max:255'
|
|
]);
|
|
$user =Auth::user();
|
|
$user->name = $request['name'];
|
|
$user->email = $request['email'];
|
|
$user->save();
|
|
return back()->with('message','Profil Telah Kemaskini');
|
|
}
|
|
public function tukarkatalaluan()
|
|
{
|
|
// $user = Auth::user();
|
|
// $user->assignRole('admin');
|
|
return view('tukarkatalaluan');
|
|
}
|
|
public function tukarkatalaluanupdate(Request $request){
|
|
//validation rules
|
|
|
|
$request->validate([
|
|
'name' =>'required|min:4|string|max:255',
|
|
'username' =>'required|min:4|string|max:255',
|
|
'email'=>'required|email|string|max:255'
|
|
]);
|
|
$user =Auth::user();
|
|
$user->name = $request['name'];
|
|
$user->email = $request['email'];
|
|
$user->save();
|
|
return back()->with('message','Profil Telah Kemaskini');
|
|
}
|
|
|
|
public function showChangePasswordGet() {
|
|
return view('tukarkatalaluan');
|
|
}
|
|
|
|
public function changePasswordPost(Request $request) {
|
|
if (!(Hash::check($request->get('current-password'), Auth::user()->password))) {
|
|
// The passwords matches
|
|
return redirect()->back()->with("error","Katalaluan Lama Tidak Sama Dengan katalaluan.");
|
|
}
|
|
|
|
if(strcmp($request->get('current-password'), $request->get('new-password')) == 0){
|
|
// Current password and new password same
|
|
return redirect()->back()->with("error","Katalaluan Baru Tidak Boleh Sama Dengan Katalaluan Lama.");
|
|
}
|
|
|
|
$validatedData = $request->validate([
|
|
'current-password' => 'required',
|
|
'new-password' => 'required|string|min:8|confirmed',
|
|
]);
|
|
|
|
//Change Password
|
|
$user = Auth::user();
|
|
$user->password = bcrypt($request->get('new-password'));
|
|
$user->save();
|
|
|
|
return redirect()->back()->with("success","Katalaluan Berjaya Dikemaskini!");
|
|
}
|
|
|
|
public function reloadJobDetail()
|
|
{
|
|
$jobs = Job::select('payload', 'attempts')->get();
|
|
if ($jobs->isNotEmpty()) {
|
|
$job_collect_alter = collect();
|
|
foreach ($jobs as $job) {
|
|
$job_convert = json_decode($job->payload)->data;
|
|
$job_to_be_added = collect();
|
|
$job_to_be_added['command_name'] = $job_convert->commandName;
|
|
$job_to_be_added['command'] = unserialize($job_convert->command);
|
|
$job_to_be_added['user_id'] = $job_to_be_added['command']->user_id;
|
|
$job_to_be_added['user_kodcaw'] = $job_to_be_added['command']->user_kodcaw;
|
|
$job_to_be_added['attempts'] = $job->attempts;
|
|
$job_collect_alter->push($job_to_be_added);
|
|
}
|
|
$user_job_request = $job_collect_alter->pluck('user_id')->unique();
|
|
$users = User::whereIn('id', $user_job_request)->select('id', 'name')->get();
|
|
$users_keyBy_id = $users->keyBy('id');
|
|
foreach ($job_collect_alter as $index => $job) {
|
|
if ($users_keyBy_id[$job['user_id']]) {
|
|
$user_true = $users_keyBy_id[$job['user_id']];
|
|
$job_collect_alter[$index]['user_name'] = $user_true->name;
|
|
}
|
|
}
|
|
return response()->json($job_collect_alter);
|
|
}
|
|
}
|
|
|
|
}
|