Files
lelong/app/Http/Controllers/TangguhLelongController.php
T

1131 lines
45 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Http;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Carbon\Carbon;
use App\Models\Gadai;
use App\Models\Cawangan;
use App\Models\Customer;
use App\Models\Lelong;
use App\Models\LelongBid;
use App\Models\LelongBidMarhun;
use App\Models\CawanganLelong;
use App\Models\TangguhLelong;
use App\Models\Pengesahan;
use App\Models\GadaiMarhun;
use App\Models\LogUser;
use PDF;
use DateTime;
use PHPUnit\Framework\Constraint\Count;
class TangguhLelongController extends Controller
{
//PC
public function senleluntuktangguh()
{
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateString();
$arrayinfo = [];
$lelong = CawanganLelong::join('lelong','cawangan_lelong.lelong_id','=','lelong.id')
->join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id')
->where('cawangan.caw_code', $user->kodcaw)
->where('sts_lelong', 0)
->select('lelong.fasa','lelong_id','cawangan.caw_code','tarikh_lelong','cawangan_lelong.masatamat_lelong','harga_emas_asas','jbg','cajlelong','sts_lelong')
->distinct()
->get()
->toArray();
foreach($lelong as $info)
{
$detailsinfo = CawanganLelong::select('cawangan_lelong.caw_id','caw_name','lelongbid.status_jual','caw_code')
->join('cawangan','cawangan_lelong.caw_id','=','cawangan.id')
->join('lelongbid','lelongbid.kodcaw','=','cawangan.caw_code')
->where('cawangan_lelong.lelong_id', $info['lelong_id'])
->where('cawangan.caw_code', $user->kodcaw)
->distinct()
->get()
->toArray();
array_push($arrayinfo,['info'=>$info, 'detailsinfo'=>$detailsinfo]);
//dd($detailsinfo);
}
return view('tangguhlelong.senarailelongtangguh',compact('lelong', 'arrayinfo', 'currentdate'));
}
public function carian($lelong_id)
{
return view('tangguhlelong.carian', compact('lelong_id'));
}
public function searchbyic(Request $request)
{
// dd($request->all());
$user = Auth::user();
$namacaw = Cawangan::where('caw_code', $user['kodcaw'])->first();
$lelongbid = LelongBid::where('kodcaw', $user['kodcaw']);
$arraylelongbid = $lelongbid->pluck('kodcaw')->toArray();
$datalelongbid = $lelongbid->get();
$checkkodcaw = Customer::query()
->where('kpbaru',$request->nokp)
->orWhere('kplama',$request->nokp)
->first();
// dd($checkkodcaw);
// $checkkodcaw = Customer::join('lelongbid', 'customer.kodcaw', '=', 'lelongbid.kodcaw')
// ->where('lelongbid.kodcaw', $user['kodcaw'])
// ->where('customer.kpbaru', $request->nokp)
// ->orWhere('customer.kplama', $request->nokp)
// ->first();
// dd($checkkodcaw);
if($request->nokp == null)
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Sila Masukkan No Kad Pengenalan');
}
else if($checkkodcaw == null)
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','No Kad Pengenalan Tiada Dalam Rekod');
}
else if($request->nokp != null)
{
$lelong = Lelong::where('id', $request->lelong_id)->first();
$lelbid = LelongBid::where('kodcaw', $user['kodcaw'])
->where('lelong_id', $request->lelong_id);
$arraylelbid = $lelbid->pluck('norujukan')->toArray();
$datalelbid = $lelbid->get();
$getic = Gadai::on($datalelbid[0]['kodcaw'])->whereIn('norujukan',$arraylelbid)
->where('gadai.nokp', $request->nokp)
->get()->toArray();
//dd($getic);
// $getic = LelongBid::join('gadai', 'lelongbid.norujukan', '=', 'gadai.norujukan')
// ->where('lelongbid.kodcaw', $user['kodcaw'])
// ->where('gadai.nokp', $request->nokp)
// ->where('lelongbid.lelong_id', $request->lelong_id)
// ->get();
// if(empty($ic)) {
// return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Tiada Dalam Rekod Lelongan');
if($getic)
{
foreach($getic as $index1=>$ic)
{
$getnorujukan = LelongBid::where('norujukan', $ic['norujukan'])
// ->where('jbg', $ic['tempoh'])
->where('lelongbid.kodcaw', $user['kodcaw'])
->where('lelong_id', $request->lelong_id)
->get();
// dd($getnorujukan);
$customer = LelongBid::where('kodcaw', $user['kodcaw']);
$arraycustomer = $customer->pluck('kodcaw')->toArray();
$datacustomer = $customer->get();
$customer_detail = Customer::query()
->join('poskod', 'customer.poskod', '=', 'poskod.poskod')
->join('daerah', 'poskod.koddaerah', '=', 'daerah.koddaerah')
->join('negeri', 'poskod.kodnegeri', '=', 'negeri.kodnegeri')
->where('customer.kpbaru', $ic['nokp'])
->orWhere('customer.kplama', $ic['nokp'])
->first();
//dd($customer_detail);
foreach($getnorujukan as $norujukan)
{
$getic[$index1]['user_details'] = $getnorujukan;
$getic[$index1]['t_lelong'] = $lelong->tarikh_lelong;
// $getic[$index1]['sdhadapengesahan'] = $adapengesahan;
$getic[$index1]['lelongbid_id'] = $norujukan['id'];
}
$lelong_id = $request->lelong_id;
} //end foreach
return view('tangguhlelong.searchtodownload', compact('getic', 'customer_detail', 'user', 'lelong_id', 'namacaw'));
} else {
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Tiada Dalam Rekod Lelongan');
} //end if($getic)
} //tutup nokp != null
}
public function tangguhlelong(Request $request)
{
// dd($request->all());
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$lelbidmarhun = $request->checkboxdata;
if($lelbidmarhun == null)
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Sila Klik Pada Kotak Semak');
}
else
{
$lelbidmarhun = $request->checkboxdata;
$lelong = Lelong::where('id', $request->lelong_id)->get()->toArray();
$arraynorujukan = [];
foreach($lelbidmarhun as $bidmarhun)
{
// dd($bidmarhun);
$lelongbidmarhun = LelongBidMarhun::join('lelongbid', 'lelongbidmarhun.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.id', $bidmarhun)
->select('lelongbidmarhun.id as lelongbidmarhun_id',
'lelongbidmarhun.bil',
'lelongbidmarhun.marhun',
'lelongbidmarhun.nota',
'lelongbidmarhun.old_karat',
'lelongbidmarhun.karat',
'lelongbidmarhun.old_berat',
'lelongbidmarhun.berat',
'lelongbidmarhun.old_harga',
'lelongbidmarhun.harga',
'lelongbidmarhun.old_nmarhun',
'lelongbidmarhun.n_marhun',
'lelongbidmarhun.old_hargaasas',
'lelongbidmarhun.hargaasas',
'lelongbid.id as lelongbid_id',
'lelongbid.caw_id',
'lelongbid.kodcaw',
'lelongbid.norujukan',
'lelongbid.t_lelong',
'lelongbid.hargaasas',
'lelongbid.nopembeli',
'lelongbid.jbg',
'lelongbid.kadarupah',
'lelongbid.upahsimpan',
'lelongbid.ansuran',
'lelongbid.nilaimarhun',
'lelongbid.pinjaman',
'lelongbid.bakiupah',
'lelongbid.cajlain',
'lelongbid.cajlelong',
'lelongbid.baki',
'lelongbid.berat',
'lelongbid.marhun'
)
->get()->toArray();
$lelbid = LelongBid::where('id', $lelongbidmarhun[0]['lelongbid_id'])->first();
$lelbid->status_semak = 1;
$lelbid->update();
// $updatelelbid = LelongBid::where('id', $lelongbidmarhun[0]['id'])
$pengesahan = new Pengesahan();
$pengesahan->lelong_id = $request->lelong_id;
$pengesahan->lelongbid_id = $bidmarhun;
$pengesahan->lelongbidmarhun_id = $lelongbidmarhun[0]['lelongbidmarhun_id'];
$pengesahan->norujukan = $lelongbidmarhun[0]['norujukan'];
$pengesahan->diminta_oleh = $user->id;
$pengesahan->diminta_pada = $currentdate;
$pengesahan->status = 2;
$pengesahan->status_ubah = 6;
$pengesahan->save();
$tangguhlelong = new TangguhLelong();
$tangguhlelong->lelong_id = $request->lelong_id;
$tangguhlelong->lelongbid_id = $bidmarhun;
$tangguhlelong->norujukan = $lelongbidmarhun[0]['norujukan'];
$tangguhlelong->pinjaman = $lelongbidmarhun[0]['pinjaman'];
$tangguhlelong->ditangguh_oleh = $user->id;
$tangguhlelong->ditangguh_pada = $currentdate;
$tangguhlelong->nota = $request->remark;
$tangguhlelong->save();
array_push($arraynorujukan,['norujukan'=>$tangguhlelong['norujukan']]);
// $norujukan = implode(",", $arraynorujukan);
}
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('success','Pengesahan Tangguh Lelong Berjaya, Norujukan:')
->with('norujukan', $arraynorujukan );
}
}
//Operasi
public function senarailelongtangguh()
{
$arrayinfo = [];
$tangguh = TangguhLelong::join('lelong','lelong.id','=','tangguhlelong.lelong_id')
->join('cawangan','cawangan.caw_code','=','tangguhlelong.kodcaw')
->where('tangguhlelong.status','!=',4)
->where('lelong.sts_lelong',0)
->select('tangguhlelong.kodcaw','tangguhlelong.lelong_id', 'lelong.sts_lelong','cawangan.caw_name','lelong.tarikh_lelong','cawangan.caw_code','lelong.jbg')
->distinct()
->get();
//display only cwgn yg mohon tangguh 24.01.2023..to be continued..done
foreach($tangguh as $index=>$t)
{
$sag = TangguhLelong::where('lelong_id', $t['lelong_id'])
->where('kodcaw', $t['caw_code'])
->where('status','!=',4)
->select('norujukan')
->get()
->count();
$tangguh[$index]['bilsag'] = $sag;
array_push($arrayinfo,['t'=>$t, 'sag'=>$sag]);
}
return view('tangguhlelong.senleltangguh',compact('tangguh','arrayinfo'));
}
public function senaraisahtangguh($lelong_id, $caw_code)
{
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$pengesahan = Pengesahan::join('tangguhlelong', 'pengesahan.norujukan', '=', 'tangguhlelong.norujukan')
->where('pengesahan.lelong_id', $lelong_id)
->whereNull('pengesahan.disahkan_oleh')
->whereNull('pengesahan.disahkan_pada')
->whereNull('tangguhlelong.tarikhtangguh')
->get();
// dd($pengesahan);
foreach($pengesahan as $index1=>$sah)
{
$lelongbid = LelongBid::where('id', $sah->lelongbid_id)
->where('norujukan', $sah->norujukan)
// ->where('kodcaw', $caw_code)
->get();
// dd($sah->norujukan);
$pengesahan[$index1]['bid_details'] = $lelongbid;
$pengesahan[$index1]['nota'] = $sah->nota;
}
// dd($pengesahan);
return view('tangguhlelong.sensahpc', compact('pengesahan', 'lelong_id' , 'caw_code'));
}
public function sahkantangguhlel(Request $request)
{
// dd($request->all());
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$lelbidmarhun = $request->checkboxdata;
$lelong = Lelong::where('id', $request->lelong_id)->get()->toArray();
foreach($lelbidmarhun as $bidmarhun)
{
// dd($bidmarhun);
$lelongbidmarhun = LelongBidMarhun::join('lelongbid', 'lelongbidmarhun.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.id', $bidmarhun)
->select('lelongbidmarhun.id as lelongbidmarhun_id',
'lelongbidmarhun.bil',
'lelongbidmarhun.marhun',
'lelongbidmarhun.nota',
'lelongbidmarhun.old_karat',
'lelongbidmarhun.karat',
'lelongbidmarhun.old_berat',
'lelongbidmarhun.berat',
'lelongbidmarhun.old_harga',
'lelongbidmarhun.harga',
'lelongbidmarhun.old_nmarhun',
'lelongbidmarhun.n_marhun',
'lelongbidmarhun.old_hargaasas',
'lelongbidmarhun.hargaasas',
'lelongbid.id as lelongbid_id',
'lelongbid.caw_id',
'lelongbid.kodcaw',
'lelongbid.norujukan',
'lelongbid.t_lelong',
'lelongbid.hargaasas',
'lelongbid.nopembeli',
'lelongbid.jbg',
'lelongbid.kadarupah',
'lelongbid.upahsimpan',
'lelongbid.ansuran',
'lelongbid.nilaimarhun',
'lelongbid.pinjaman',
'lelongbid.bakiupah',
'lelongbid.cajlain',
'lelongbid.cajlelong',
'lelongbid.baki',
'lelongbid.berat',
'lelongbid.marhun'
)
->get()->toArray();
// dd($lelongbidmarhun);
$pengesahan = Pengesahan::where('lelongbidmarhun_id', $lelongbidmarhun[0]['lelongbidmarhun_id'])
->where('lelongbid_id', $lelongbidmarhun[0]['lelongbid_id'])
->where('norujukan', $lelongbidmarhun[0]['norujukan'])
->first();
$pengesahan->disahkan_oleh = $user->id;
$pengesahan->disahkan_pada = $currentdate;
$pengesahan->status = 2;
$pengesahan->save();
$tangguhlelong = TangguhLelong::where('lelong_id', $request->lelong_id)
->where('lelongbid_id', $bidmarhun)
->where('norujukan', $lelongbidmarhun[0]['norujukan'])
->first();
$tangguhlelong->tarikhtangguh = $currentdate;
$tangguhlelong->status = 2;
$tangguhlelong->save();
$biddelete = LelongBid::join('lelongbidmarhun', 'lelongbid.id', '=', 'lelongbidmarhun.lelongbid_id')
->where('lelongbid.id', $tangguhlelong->lelongbid_id)
->where('lelongbid.norujukan', $tangguhlelong->norujukan)
->where('lelongbid.lelong_id', $request->lelong_id)
->delete();
$caw_code = $request->kodcaw;
}
return redirect()->route('pengesahan.senaraisahtangguh', [$request->lelong_id, $caw_code])->with('success','Pengesahan Berjaya');
}
//PC
public function listtangguh($lelong_id,$caw_code)
{
$user = Auth::user();
// dd($id);
$tangguhlelong = TangguhLelong::join('lelong', 'tangguhlelong.lelong_id', '=', 'lelong.id')
->where('tangguhlelong.lelong_id', $lelong_id)
->where('tangguhlelong.norujukan', 'like', "%$caw_code%")
->whereNotNull('tangguhlelong.tarikhtangguh')
->select('tangguhlelong.id as tangguhlelong_id',
'tangguhlelong.lelongbid_id',
'tangguhlelong.norujukan',
'tangguhlelong.tarikhtangguh',
'tangguhlelong.ditangguh_pada',
'tangguhlelong.ditangguh_oleh',
'tangguhlelong.nota',
'lelong.id as lelong_id',
'lelong.tarikh_lelong',
'lelong.harga_emas_asas',
'lelong.jbg',
'lelong.cajlelong',
'lelong.sts_lelong'
)
->get();
//dd($tangguhlelong);
foreach($tangguhlelong as $index1=>$tanguhlel)
{
$getkodcaw = LelongBid::join('cawangan', 'lelongbid.kodcaw', '=', 'cawangan.caw_code')
->where('lelong_id', $lelong_id)
->where('kodcaw', $caw_code)
->select('cawangan.caw_name','cawangan.caw_code')
->first();
$tangguhlelong[$index1]['details'] = $tanguhlel;
//$tangguhlelong[$index1]['nama_caw'] = $getkodcaw;
}
// dd($tangguhlelong);
return view('tangguhlelong.listtangguh',compact('tangguhlelong','lelong_id', 'caw_code'));
}
public function taglelbidmarhun($id, $norujukan, $tangguhlelong_id)
{
$tangguh = TangguhLelong::where('id', $tangguhlelong_id);
$arraytangguh = $tangguh->pluck('norujukan')->toArray();
$datatangguh = $tangguh->get();
// dd($datatangguh);
foreach($datatangguh as $index=>$data){
}
$tangguhlelong = GadaiMarhun::on($datatangguh[0]['kodcaw'])
->where('norujukan', $norujukan)
->get();
// dd($tangguhlelong);
// $tangguhlelong = TangguhLelong::join('gadaimarhun', 'tangguhlelong.norujukan', '=', 'gadaimarhun.norujukan')
// ->where('gadaimarhun.norujukan', $norujukan)
// ->where('tangguhlelong.id', $tangguhlelong_id)
// // ->where('tangguhlelong.lelong_id', $id)
// ->select('tangguhlelong.id as tangguhlelong_id',
// 'tangguhlelong.lelong_id',
// 'tangguhlelong.lelongbid_id',
// 'tangguhlelong.norujukan',
// 'tangguhlelong.pinjaman',
// 'tangguhlelong.tarikhtangguh',
// 'tangguhlelong.nota as tangguh_nota',
// 'tangguhlelong.pinjaman',
// 'gadaimarhun.bil',
// 'gadaimarhun.marhun',
// 'gadaimarhun.nota as gadai_nota',
// 'gadaimarhun.karat',
// 'gadaimarhun.berat',
// 'gadaimarhun.harga',
// 'gadaimarhun.n_marhun'
// )
// ->get();
// dd($tangguhlelong);
$caw_names = TangguhLelong::join('cawangan', 'tangguhlelong.kodcaw', '=', 'cawangan.caw_code')
->where('tangguhlelong.norujukan', $norujukan)
->select('cawangan.caw_name', 'cawangan.caw_code')
->first();
// dd($caw_names);
return view('tangguhlelong.taglelbidmarhun',compact('tangguhlelong', 'id', 'norujukan', 'caw_names','datatangguh'));
}
public function mohontangguhlelong(Request $request)
{
//new added 120922 nisha
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$current = new Carbon();
$t_mohon = $current->toDateString();
$selectedbid_id = $request->lelongbid_id;
//dd($selectedbid_id);
$nokp = $request->nokp;
$lelong_id = $request->lelong_id;
if(empty($selectedbid_id))
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Sila Pilih No Rujukan Terlebih Dahulu');
}
else
{
$lelongbid = LelongBid::whereIn('lelongbid.id', $selectedbid_id)
->get();
// dd($lelongbid);
$arraynorujukan = [];
foreach($lelongbid as $index1=>$bidmarhun)
{
// dd($bidmarhun->toArray());
$lelongbidmarhun = LelongBidMarhun::where('lelongbid_id',$bidmarhun->id)
->get();
$bidmarhun['lelongbidmarhun'] = $lelongbidmarhun->toArray();
if(empty($bidmarhun->nmarhuns))
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Sila Maklum Operasi Kemaskini Harga Emas Lelong Terlebih Dahulu');
}
else
{
$bidmarhun['percents'] = round(($bidmarhun->pinjaman / $bidmarhun->nmarhuns * 100),2);
$history = TangguhLelong::where('lelongbid_id',$bidmarhun->id)
->first();
if($history)
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Maaf No Rujukan Telah Wujud Dalam Senarai Mohon Tangguh');
} elseif($bidmarhun->fasa == 2)
{
//block tangguh sekiranya telah masuk fasa 2
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Maaf No Rujukan Telah Berada Dalam Fasa 2');
}else {
$tangguhlelong = new TangguhLelong(); //pastikan hanya 1 kali insert utk lelong_id & norujukan yg sama
$tangguhlelong->kodcaw = $bidmarhun->kodcaw;
$tangguhlelong->lelong_id = $request->lelong_id;
$tangguhlelong->lelongbid_id = $bidmarhun->id;
$tangguhlelong->norujukan = $bidmarhun->norujukan;
$tangguhlelong->pinjaman = $bidmarhun->pinjaman;
$tangguhlelong->ditangguh_oleh = $user->id;
$tangguhlelong->ditangguh_pada = $currentdate;
$tangguhlelong->status = 0;
$tangguhlelong->save();
$pengesahan = new Pengesahan();
$pengesahan->lelong_id = $request->lelong_id;
$pengesahan->lelongbid_id = $bidmarhun->id;
$pengesahan->lelongbidmarhun_id = 0;
$pengesahan->norujukan = $bidmarhun->norujukan;
$pengesahan->diminta_oleh = $user->id;
$pengesahan->diminta_pada = $currentdate;
$pengesahan->save();
}
$cwgn = Cawangan::where('caw_code','=',$bidmarhun->kodcaw)
->first();
$customer = Customer::where('kpbaru','=',$nokp)
->orWhere('kplama','=',$nokp)
->join('poskod','customer.poskod','=','poskod.poskod')
->join('daerah','poskod.koddaerah','=','daerah.koddaerah')
->join('negeri','poskod.kodnegeri','=','negeri.kodnegeri')
->first();
$lelongbid[$index1]['nama'] = ($customer) ? $customer : dd($nokp);
}
}
//get staf cwgn roles harian
$roles_harian_penilai = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'penilai'
])->json();
$roles_harian_khazanah = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'khazanah'
])->json();
$roles_harian_pc = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'pc'
])->json();
// dd($roles_harian_penilai,$roles_harian_khazanah,$roles_harian_pc);
}
// return view('pdf.brgtangguhlelong',compact('lelongbid','lelongbidmarhun','customer','cwgn','t_mohon','nokp','roles_harian_penilai','roles_harian_khazanah','roles_harian_pc'));
$pdf = PDF::loadView('pdf.brgtangguhlelong',compact('lelongbid','lelongbidmarhun','customer','cwgn','t_mohon','nokp','roles_harian_penilai','roles_harian_khazanah','roles_harian_pc'))
->setPaper('a4', 'potrait');
return $pdf->download('Borang Tangguh Lelong '.$lelong_id.'.pdf');
}
public function ulangdownloadmohon($lelongbid_id)
{
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$current = new Carbon();
$t_mohon = $current->toDateString();
$selectedbid_id = $lelongbid_id;
//dd($selectedbid_id);
// $nokp = $request->nokp;
// $lelong_id = $request->lelong_id;
$lelongbid = LelongBid::where('lelongbid.id', $selectedbid_id)
->get();
$arraynorujukan = [];
foreach($lelongbid as $index1=>$bidmarhun)
{
$cust = Gadai::on($bidmarhun->kodcaw)->where('norujukan',$bidmarhun->norujukan)
->first();
//dd($cust['nokp']);
//to get nokp
$nokp = $cust['nokp'];
$lelongbidmarhun = LelongBidMarhun::where('lelongbid_id',$bidmarhun->id)
->get();
$bidmarhun['percents'] = round(($bidmarhun->pinjaman / $bidmarhun->nmarhuns * 100),2);
$history = TangguhLelong::where('lelongbid_id',$bidmarhun->id)
->first();
$cwgn = Cawangan::where('caw_code','=',$bidmarhun->kodcaw)
->first();
$customer = Customer::where('kpbaru','=',$cust['nokp'])
->orWhere('kplama','=',$cust->nokp)
->join('poskod','customer.poskod','=','poskod.poskod')
->join('daerah','poskod.koddaerah','=','daerah.koddaerah')
->join('negeri','poskod.kodnegeri','=','negeri.kodnegeri')
->first();
$lelongbid[$index1]['nama'] = ($customer) ? $customer : dd($cust['nokp']);
}
//get staf cwgn roles harian
$roles_harian_penilai = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'penilai'
])->json();
$roles_harian_khazanah = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'khazanah'
])->json();
$roles_harian_pc = Http::get(config('app.api_url_kaunter').'api/roles_harian/' . $user->kodcaw ,[
'role_harian' => 'pc'
])->json();
// dd($roles_harian_penilai,$roles_harian_khazanah,$roles_harian_pc);
//return view('pdf.brgtangguhlelong',compact('lelongbid','lelongbidmarhun','customer','cwgn','t_mohon','nokp','roles_harian_penilai','roles_harian_khazanah','roles_harian_pc'));
$pdf = PDF::loadView('pdf.brgtangguhlelong',compact('lelongbid','lelongbidmarhun','customer','cwgn','t_mohon','nokp','roles_harian_penilai','roles_harian_khazanah','roles_harian_pc'))
->setPaper('a4', 'potrait');
return $pdf->download('Borang Tangguh Lelong '.$selectedbid_id.'.pdf');
}
public function sentangguh()
{
$user = Auth::user();
//baru mohon@belum dilulus
$tangguh = TangguhLelong::join('lelongbid', 'tangguhlelong.lelongbid_id', '=', 'lelongbid.id')
->where('tangguhlelong.kodcaw', $user->kodcaw)
->where(function($query){
$query->whereNotNull('tangguhlelong.status')
->orWhere('tangguhlelong.status','!=', 4);
})
->get();
foreach ($tangguh as $index1 => $t) {
$lelongbid = LelongBid::join('tangguhlelong', 'tangguhlelong.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbid.id', $t->lelongbid_id)
->where('lelongbid.lelong_id', $t->lelong_id)
->where('lelongbid.norujukan', $t->norujukan)
->get();
$tangguh[$index1]['tdet'] = $lelongbid;
}
//telah dilulus
$tlhtangguh = TangguhLelong::where('tangguhlelong.kodcaw', $user->kodcaw)
->where('tangguhlelong.status','=', 4)
->get();
foreach ($tlhtangguh as $index1 => $l) {
$lelong = Lelong::join('tangguhlelong','tangguhlelong.lelong_id','=','lelong.id')
->where('lelong.id', $l->lelong_id)
->where('tangguhlelong.kodcaw',$user->kodcaw)
->get();
$tlhtangguh[$index1]['tlh'] = $lelong;
}
//ditangguh terus dari operasi/ bukan permohonan cwgn
$oprtangguh = TangguhLelong::where('tangguhlelong.kodcaw', $user->kodcaw)
->whereNull('tangguhlelong.status')
->get();
foreach ($oprtangguh as $index1 => $o) {
$lelong = TangguhLelong::where('lelong_id', $o->lelong_id)
->where('kodcaw',$user->kodcaw)
->get();
$oprtangguh[$index1]['opr'] = $lelong;
}
return view('tangguhlelong.senaraimohontangguh', compact('user', 'tangguh', 'tlhtangguh', 'oprtangguh'));
}
public function uploadborang(Request $request)
{
$data = base64_encode($request->borang->get());
$file_type = $request->borang->extension();
$tangguhlelong = TangguhLelong::where('lelongbid_id','=',$request->lelongbid_id)
->where('norujukan','=',$request->norujukan)->first();
$tangguhlelong->filename = $data;
$tangguhlelong->file_type = $file_type;
$tangguhlelong->status = 1;
$tangguhlelong->update();
return redirect()->route('tangguhlelong.sentangguh',$request->lelong_id)
->with('success', 'Borang Tangguh Lelong Berjaya Di Simpan.');
}
public function operasisenmohontangguh($lelong_id, $caw_code)
{
$caw_code = $caw_code;
$lelong_id = $lelong_id;
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$pengesahan = Pengesahan::join('tangguhlelong', 'pengesahan.norujukan', '=', 'tangguhlelong.norujukan')
->where('tangguhlelong.kodcaw', $caw_code)
->where('pengesahan.lelong_id', $lelong_id)
->whereNull('pengesahan.disahkan_oleh')
->whereNull('pengesahan.disahkan_pada')
->whereNull('tangguhlelong.tarikhtangguh')
->whereIn('tangguhlelong.status',[0,1,2,3,4])
->get();
// dd($pengesahan);
foreach($pengesahan as $index1=>$sah)
{
$lelongbid = LelongBid::where('id', $sah->lelongbid_id)
->where('norujukan', $sah->norujukan)
// ->where('kodcaw', $caw_code)
->get();
// dd($lelongbid);
$pengesahan[$index1]['bid_details'] = $lelongbid;
$pengesahan[$index1]['nota'] = $sah->nota;
}
$filter_null = function($x){
if(! empty( $x->bid_details->first())){
return $x;
}
};
$filtered_pengesahan = $pengesahan->filter($filter_null);
// return view('tangguhlelong.sensahpc', compact('pengesahan', 'lelong_id' , 'caw_code'));
return view('tangguhlelong.senactionoperasi', compact('filtered_pengesahan', 'lelong_id' , 'caw_code'));
}
public function operasidownloadborang($lelongbid_id)
{
//dd($lelongbid_id);
$selectedbid_id = $lelongbid_id;
$tangguh = TangguhLelong::where('lelongbid_id',$selectedbid_id)
->first();
// $download = Http::get(config('api.url').'/admin/permohonan/viewfiles',[
// 'files_id' => $tangguh->files_id
// ])->json();
//update status=operasi download borang tangguh
$tangguh->status = 2; //operasi download
$tangguh->update();
return response(base64_decode($tangguh['filename']), 200, [
'Content-type' => 'application/' . $tangguh['file_type'],
'Content-Disposition' => 'inline; filename='.$tangguh['norujukan']
]);
}
public function operasiuploadborang(Request $request)
{
// dd($request->all());
$data = base64_encode($request->surat->get());
$file_type = $request->surat->extension();
$tangguhlelong = TangguhLelong::where('lelongbid_id','=',$request->lelongbidid_modal)
->where('norujukan','=',$request->norujukan_modal)->first();
// dd($tangguhlelong->toArray());
// dd($data);
// dd($tangguhlelong);
$tangguhlelong->filename = $data;
$tangguhlelong->file_type = $file_type;
$tangguhlelong->status = 3;
$tangguhlelong->update();
return redirect()->route('pengesahan.opsenaraisahtangguh',[$tangguhlelong->lelong_id, $tangguhlelong->kodcaw])
->with('success', 'Borang Pengesahan Tangguh Lelong Berjaya Di Simpan.');
}
public function operasisahtangguh(Request $request)
{
$user = Auth::user();
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
//dd($request->all());
$tangguhlelong = TangguhLelong::where('lelongbid_id','=',$request->lelongbidid_mdl)
->where('norujukan','=',$request->norujukan_mdl)->first();
if($request->sahkan == "1") {
$tangguhlelong->status = 4;
$tangguhlelong->ditangguh_oleh = $user->id;
$tangguhlelong->ditangguh_pada = $currentdate;
$tangguhlelong->update();
//update pengesahan sbb operasi dh lulus
$pengesahan = Pengesahan::where('lelongbid_id','=',$request->lelongbidid_mdl)
->where('norujukan','=',$request->norujukan_mdl)->first();
$pengesahan->disahkan_oleh = $user->id;
$pengesahan->disahkan_pada = $currentdate;
$pengesahan->update();
//delete from lelongbid,lelongbidmarhun
$lelongbidmarhun = LelongBidMarhun::where('lelongbidmarhun.lelongbid_id', $request->lelongbidid_mdl)
->delete();
$lelongbid = LelongBid::where('lelongbid.id', $request->lelongbidid_mdl)
->delete();
$updategadai = Http::withOptions(['verify' => config('app.api_verify')])
->post(config('app.api_url').'taglel/revert',[
'kodcaw'=> $tangguhlelong->kodcaw,
'norujukan'=> $request->norujukan_mdl
])
->json();
return redirect()->route('pengesahan.opsenaraisahtangguh',[$tangguhlelong->lelong_id, $tangguhlelong->kodcaw])
->with('success', 'Tangguh Lelong Telah Di Lulus.');
}else{
$tangguhlelong->status = 99;
$tangguhlelong->update();
return redirect()->route('pengesahan.opsenaraisahtangguh',[$tangguhlelong->lelong_id, $tangguhlelong->kodcaw])
->with('success', 'Tangguh Lelong Tidak Di Lulus.');
}
}
public function senaraitlhtangguh()
{
$arrayinfo = [];
$arraysms = [];
$arraysls = [];
$lelong = TangguhLelong::join('lelong','lelong.id','=','tangguhlelong.lelong_id')
->join('cawangan','cawangan.caw_code','=','tangguhlelong.kodcaw')
->where(function($query){
$query->whereNull('tangguhlelong.status')
->orWhere('tangguhlelong.status','=', 4);
})
->select('tangguhlelong.kodcaw','tangguhlelong.lelong_id', 'lelong.sts_lelong','cawangan.caw_name','lelong.tarikh_lelong','cawangan.caw_code','lelong.jbg')
->distinct()
->get();
//display only cwgn yg mohon tangguh 24.01.2023..to be continued ..done
foreach($lelong as $index=>$info)
{
$sag = TangguhLelong::where('lelong_id', $info['lelong_id'])
->where('kodcaw', $info['caw_code'])
->where(function($query){
$query->whereNull('tangguhlelong.status')
->orWhere('tangguhlelong.status','=', 4);
})
->select('norujukan')
->get()
->count();
$tangguh[$index]['bilsag'] = $sag;
if($info['sts_lelong'] == '0' )
{
array_push($arraysms,['info'=>$info, 'sag'=>$sag]);
} else {
array_push($arraysls,['info'=>$info, 'sag'=>$sag]);
}
// array_push($arrayinfo,['info'=>$info, 'sag'=>$sag]);
}
return view('tangguhlelong.senleltlhtangguh',compact('arraysms','arraysls','lelong', 'arrayinfo'));
}
public function operasisenlulustangguh($lelong_id, $caw_code)
{
$caw_code = $caw_code;
$lelong_id = $lelong_id;
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateTimeString();
$tangguh = TangguhLelong::where(function($query){
$query->whereNull('tangguhlelong.status')
->orWhere('tangguhlelong.status','=', 4);
})
->where('kodcaw','=',$caw_code)
->where('lelong_id','=',$lelong_id)
->get();
// dd($tangguh);
if($tangguh){
foreach($tangguh as $index1=>$sah)
{
$lelongbid = CawanganLelong::join('lelong','cawangan_lelong.lelong_id','=','lelong.id')
->where('lelong.id', $sah->lelong_id)
->get();
// dd($lelongbid);
$tangguh[$index1]['bid_details'] = $lelongbid;
$tangguh[$index1]['status'] = $sah['status'];
}
}
// $filter_null = function($x){
// if(! empty( $x->bid_details->first())){
// return $x;
// }
// };
// $filtered_pengesahan = $pengesahan->filter($filter_null);0
return view('tangguhlelong.sentangguhoperasi', compact('tangguh', 'lelong_id' , 'caw_code'));
}
public function operasidownloadboranglulus($lelongbid_id)
{
//dd($lelongbid_id);
$selectedbid_id = $lelongbid_id;
$tangguh = TangguhLelong::where('lelongbid_id',$selectedbid_id)
->first();
// $download = Http::get(config('api.url').'/admin/permohonan/viewfiles',[
// 'files_id' => $tangguh->files_id
// ])->json();
//update status=operasi download borang tangguh
// $tangguh->status = 2; //operasi download
// $tangguh->update();
return response(base64_decode($tangguh['filename']), 200, [
'Content-type' => 'application/' . $tangguh['file_type'],
'Content-Disposition' => 'inline; filename='.$tangguh['norujukan']
]);
}
public function tangguhlelongoperasi()
{
return view('lelong.tangguhlelongoperasi');
}
public function tangguhlelongsearchsag(Request $request)
{
if ($request->norujukan == null) {
return redirect()->route('tangguhlelong.tangguhlelongoperasi')->with('failed', 'Sila isi ruangan no rujukan dibawah.');
}
$lelong_bid = LelongBid::with('lelong', 'cawangan')->where('norujukan', $request->norujukan)->first();
if ($lelong_bid) {
if ($lelong_bid->status_jual == 1) {
return redirect()->route('tangguhlelong.tangguhlelongoperasi')->with('failed', 'No rujukan ' . $request->norujukan . ' telah berjaya dilelong pada ' . $lelong_bid->lelong->tarikh_lelong);
} else {
$sumcajlelong = $lelong_bid->hargaasas * ($lelong_bid->lelong->cajlelong / 100);
$cajlelongnew = round($sumcajlelong, 1, 1);
$totalbaki = $lelong_bid->hargaasas - $lelong_bid->pinjaman - $lelong_bid->bakiupah - $cajlelongnew;
$lelong_bid['cajlelong'] = $cajlelongnew;
$lelong_bid['baki'] = $totalbaki;
$lelong_available = Lelong::whereHas('cawangan', function ($query) use ($lelong_bid) {
$query->where('cawangan.id', '=', $lelong_bid->cawangan->id);
})
->where('sts_lelong', 0)
->where('id', '!=', $lelong_bid->lelong->id)
->where('tarikh_lelong', '>', $lelong_bid->lelong->tarikh_lelong)
->get();
return view('lelong.tangguhlelongdetail', compact('lelong_bid', 'lelong_available'));
}
} else {
return redirect()->route('tangguhlelong.tangguhlelongoperasi')->with('failed', 'No rujukan ' . $request->norujukan . ' tiada dalam senarai lelongan.');
}
}
public function tangguhlelongsubmitform(Request $request)
{
$user = Auth::user();
$current_date = Carbon::now();
$current_date = $current_date->toDateTimeString();
$lelong_id_asal = $request->lelong_id;
$lelong_bid = LelongBid::find($request->lelong_bid_id);
$log_user = new LogUser();
$log_user->user_id = $user->id;
$log_user->date = $current_date;
$log_user->username = $user->username;
$log_user->nama_user = $user->name;
$log_user->norujukan = $lelong_bid->norujukan;
if ($request->jenis_tangguh == "hapus") {
$lelong_bid_tangguh_lelong = new TangguhLelong();
$lelong_bid_tangguh_lelong->lelong_id = $lelong_bid->lelong_id;
$lelong_bid_tangguh_lelong->lelongbid_id = $lelong_bid->id;
$lelong_bid_tangguh_lelong->norujukan = $lelong_bid->norujukan;
$lelong_bid_tangguh_lelong->pinjaman = $lelong_bid->pinjaman;
$lelong_bid_tangguh_lelong->tarikhtangguh = $current_date;
$lelong_bid_tangguh_lelong->ditangguh_oleh = $user->id;
$lelong_bid_tangguh_lelong->ditangguh_pada = $current_date;
$lelong_bid_tangguh_lelong->nota = "Ditangguh Oleh Operasi (" . $user->name . ")";
$lelong_bid_tangguh_lelong->kodcaw = $lelong_bid->kodcaw;
$lelong_bid_tangguh_lelong->save();
Http::withOptions(['verify' => config('app.api_verify')])
->post(config('app.api_url') . 'taglel/revert', [
'kodcaw' => $lelong_bid->kodcaw,
'norujukan' => $lelong_bid->norujukan
])->json();
$log_user->nota = 'Tangguh Lelong';
$lelong_bid->delete();
} else {
$lelong_id_baru = $request->jenis_tangguh;
$lelong_baru = Lelong::find($lelong_id_baru, ['id', 'tarikh_lelong']);
$lelong_bid->lelong_id = $lelong_baru->id;
$lelong_bid->t_lelong = $lelong_baru->tarikh_lelong;
$lelong_bid->update();
$log_user->nota = 'Pindah Lelong ' . $lelong_id_asal . '-' . $lelong_id_baru;
}
$log_user->save();
$check_lelong_availability = LelongBid::where('lelong_id', $request->lelong_id)->select('id')->first();
if ($check_lelong_availability == null) {
Lelong::where('id', '=', $lelong_id_asal)->delete();
$log_user = new LogUser;
$log_user->user_id = $user->id;
$log_user->date = $current_date;
$log_user->username = $user->username;
$log_user->nama_user = $user->name;
$log_user->nota = 'Hapus Batch Lelong ' . $lelong_id_asal;
$log_user->save();
}
$check_cawangan_availability = LelongBid::where('lelong_id', $lelong_id_asal)->where('caw_id', $lelong_bid->caw_id)->select('id')->first();
if ($check_cawangan_availability == null) {
CawanganLelong::where('lelong_id', $lelong_id_asal)->where('caw_id', $lelong_bid->caw_id)->delete();
}
return redirect()->route('tangguhlelong.tangguhlelongoperasi')->with('success', 'Berjaya tangguh lelong ' . $lelong_bid->norujukan);
}
}