Files
lelong/app/Http/Controllers/TangguhLelongController.php
T
2022-07-27 17:01:48 +08:00

531 lines
21 KiB
PHP

<?php
namespace App\Http\Controllers;
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;
class TangguhLelongController extends Controller
{
//PC
public function senleluntuktangguh()
{
$user = Auth::user();
$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::join('cawangan','cawangan_lelong.caw_id','=','cawangan.id')
// ->where('lelong_id',$info['lelong_id'])
$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'));
}
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();
// $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();
foreach($getic as $index1=>$ic)
{
$getnorujukan = LelongBid::join('lelongbidmarhun', 'lelongbid.id', '=', 'lelongbidmarhun.lelongbid_id')
->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('daerah', 'customer.koddaerah', '=', 'daerah.koddaerah')
->join('negeri', 'customer.kodnegeri', '=', 'negeri.kodnegeri')
->where('customer.kpbaru', $ic['nokp'])
->orWhere('customer.kplama', $ic['nokp'])
->first();
// $customer_detail = Customer::join('daerah', 'customer.koddaerah', '=', 'daerah.koddaerah')
// ->join('negeri', 'customer.kodnegeri', '=', 'negeri.kodnegeri')
// ->where('customer.kpbaru', $ic['nokp'])
// ->orWhere('customer.kplama', $ic['nokp'])
// ->first();
// dd($customer_detail);
// $getic['customer_detail'] = $customer_detail;
// $getic2 = $customer_detail;
// dd($getic2);
foreach($getnorujukan as $norujukan)
{
// dd($norujukan);
$pengesahan = Pengesahan::where('lelongbidmarhun_id', $norujukan->id)
->where('lelongbid_id', $norujukan->lelongbid_id)
->where('norujukan', $norujukan->norujukan)
->first();
// dd($pengesahan);
$adapengesahan = Pengesahan::join('lelongbid', 'pengesahan.norujukan', '=', 'lelongbid.norujukan')
->where('pengesahan.norujukan', $norujukan->norujukan)
->where('pengesahan.status_ubah', 6)
->where('pengesahan.lelong_id', $request->lelong_id)
->get();
// dd($adapengesahan);
if($pengesahan)
{
return redirect()->route('tangguhlelong.carian', $request->lelong_id)->with('failed','Pengesahan Tangguh Lelong Telah Dibuat');
}
else
{
$getic[$index1]['user_details'] = $getnorujukan;
$getic[$index1]['t_lelong'] = $getnorujukan[0]['t_lelong'];
$getic[$index1]['sdhadapengesahan'] = $adapengesahan;
}
}
}
$lelong_id = $request->lelong_id;
return view('tangguhlelong.searchbyic', compact('getic', 'customer_detail', 'user', 'lelong_id', 'namacaw'));
}
}
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 = [];
$lelong = CawanganLelong::join('lelong','cawangan_lelong.lelong_id','=','lelong.id')
->join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id')
->where('sts_lelong', 0)
->select('lelong_id','tarikh_lelong','lelong.masatamat_lelong','harga_emas_asas','jbg','cajlelong','sts_lelong')
->groupBy('lelong_id')
->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]);
// dd($arrayinfo);
}
return view('tangguhlelong.senleltangguh',compact('lelong', '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->save();
$tangguhlelong = TangguhLelong::where('lelong_id', $request->lelong_id)
->where('lelongbid_id', $bidmarhun)
->where('norujukan', $lelongbidmarhun[0]['norujukan'])
->first();
$tangguhlelong->tarikhtangguh = $currentdate;
$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'));
}
}