467 lines
19 KiB
PHP
467 lines
19 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 Carbon\Carbon;
|
|
use App\Models\User;
|
|
use PDF;
|
|
use App\Models\Cawangan;
|
|
use App\Models\Gadai;
|
|
use App\Models\GadaiMarhun;
|
|
use App\Models\Simulasi;
|
|
use App\Models\SimulasiBid;
|
|
use App\Models\SimulasiBidMarhun;
|
|
use App\Models\SimKarat;
|
|
use App\Models\SimKarat_temp;
|
|
use App\Models\CawanganSimulasi;
|
|
use App\Models\JenisEmas;
|
|
use App\Models\JenisKarat;
|
|
|
|
use App\Models\Lelong;
|
|
use App\Models\CawanganLelong;
|
|
use App\Models\LelongBid;
|
|
use App\Models\LelongBidMarhun;
|
|
use App\Models\LelKarat;
|
|
|
|
class SimulasiController 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()
|
|
{
|
|
$caw = Cawangan::all();
|
|
return view('simulasi.janasimulasi',compact('caw'));
|
|
}
|
|
|
|
public function janadata(Request $request)
|
|
{
|
|
|
|
$t_lelong = Carbon::parse($request->tarikh_lelong);
|
|
$bulan = round($request->jbg,0);
|
|
$jbgadai = ($t_lelong->subMonths($bulan))->toDateString();
|
|
// dd($jbgadai);
|
|
$surat = Gadai::where('t_gadai','<=',$jbgadai)
|
|
->where('sttebus','=',0)
|
|
->where('tagpalsu','=',0)
|
|
->where('tagpalsu2','=',0)
|
|
->where('taglel','=',0)
|
|
->where('lelong_tawarruq','=',1)
|
|
->get();
|
|
|
|
$cawangan = Cawangan::all();
|
|
// dd($cawangan);
|
|
//create simulasi
|
|
$simulasi = new Simulasi;
|
|
$simulasi->tarikh_lelong = $request->tarikh_lelong;
|
|
$simulasi->harga_emas_asas = $request->hargaasas;
|
|
$simulasi->jbg = $request->jbg;
|
|
$simulasi->cajlelong = $request->cajlelong;
|
|
$simulasi->save();
|
|
|
|
//create harga asas berdasarkan input harga asas
|
|
$karat = JenisKarat::all();
|
|
$hargaasas = $request->hargaasas; //rial
|
|
foreach($karat as $item)
|
|
{
|
|
$simkarat = new SimKarat;
|
|
$simkarat->simulasi_id = $simulasi->id;
|
|
$simkarat->karat = $item->karat;
|
|
$simkarat->keterangan = $item->keterangan;
|
|
$simkarat->harga = ($hargaasas + ($item->dariharga916))/2.72; //gram
|
|
$simkarat->harga2 = $hargaasas + ($item->dariharga916); //rial
|
|
$simkarat->save();
|
|
}
|
|
|
|
|
|
// join cawangan yang terlibat dengan simulasi
|
|
if($request->caw && $request->caw == 'all')
|
|
{
|
|
foreach($cawangan as $key=>$caw)
|
|
{
|
|
|
|
$caw_simulasi = new CawanganSimulasi;
|
|
$caw_simulasi->simulasi_id = $simulasi->id;
|
|
$caw_simulasi->caw_id = $caw->id;
|
|
$caw_simulasi->online = 'Online';
|
|
$caw_simulasi->lokasi = $caw->lokasi;
|
|
$caw_simulasi->save();
|
|
|
|
// dd($caw->caw_code);
|
|
$suratcaw = $surat->where('kodcaw','=',$caw->caw_code)->all();
|
|
// $simulasibid = SimulasiBid::where('caw_id','=',$caw->id)->get();
|
|
foreach($suratcaw as $data)
|
|
{
|
|
$simulasibid = new SimulasiBid;
|
|
$simulasibid->simulasi_id = $simulasi->id;
|
|
$simulasibid->caw_id = $caw->id;
|
|
$simulasibid->kodcaw = $data->kodcaw;
|
|
$simulasibid->norujukan = $data->norujukan;
|
|
$simulasibid->t_lelong = $request->tarikh_lelong;
|
|
$simulasibid->hargaasas = 0.00;
|
|
$simulasibid->hargajual = 0.00;
|
|
$simulasibid->jbg = $data->jbg;
|
|
$simulasibid->kadarupah = $data->kadarupah;
|
|
$simulasibid->upahsimpan = $data->upahsimpan;
|
|
$simulasibid->ansuran = $data->ansuran;
|
|
$simulasibid->nilaimarhun = $data->nilaimarhun;
|
|
$simulasibid->pinjaman = $data->pinjaman;
|
|
$simulasibid->bakiupah = $data->bakiupah;
|
|
$simulasibid->cajlain = $data->cajlain;
|
|
$simulasibid->cajlelong = 0.00;
|
|
$simulasibid->baki = $data->baki;
|
|
$simulasibid->berat = $data->berat;
|
|
$simulasibid->marhun = $data->marhun;
|
|
$simulasibid->gst_hj = $data->gst_hj;
|
|
$simulasibid->gst_cl = $data->gst_cl;
|
|
$simulasibid->percent = $data->percent;
|
|
$simulasibid->status_jual = 0;
|
|
$simulasibid->status_payment = 0;
|
|
$simulasibid->mora_upah = 0;
|
|
$simulasibid->save();
|
|
|
|
$sumhargaasas = 0;
|
|
$berat = 0;
|
|
$gadaimarhun = GadaiMarhun::where('gadai_id','=',$data->id)->get();
|
|
foreach($gadaimarhun as $marhun)
|
|
{
|
|
$simkarat = SimKarat::where('simulasi_id','=',$simulasi->id)->get();
|
|
// dd($simkarat);
|
|
foreach($simkarat as $karat)
|
|
{
|
|
|
|
if($karat->karat == $marhun->karat)
|
|
{
|
|
$val = round($marhun->berat * $karat->harga);
|
|
$sumhargaasas = $sumhargaasas + $val;
|
|
$berat = $berat + $marhun->berat;
|
|
|
|
$simmarhun = new SimulasiBidMarhun;
|
|
$simmarhun->simulasibid_id = $simulasibid->id;
|
|
$simmarhun->bil = $marhun->bil;
|
|
$simmarhun->marhun = $marhun->marhun;
|
|
$simmarhun->nota = $marhun->nota;
|
|
$simmarhun->karat = $marhun->karat;
|
|
$simmarhun->berat = $marhun->berat;
|
|
$simmarhun->harga = $karat->harga;
|
|
$simmarhun->n_marhun = $marhun->berat * $karat->harga;
|
|
$simmarhun->hargaasas = $val;
|
|
$simmarhun->save();
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
$calcaj = ($request->cajlelong/100)*$sumhargaasas;
|
|
$updatesimbid = SimulasiBid::where('id','=',$simulasibid->id)->first();
|
|
$updatesimbid->hargaasas = $sumhargaasas;
|
|
$updatesimbid->cajlelong = $calcaj;
|
|
$updatesimbid->baki = $sumhargaasas-$data->pinjaman - $data->bakiupah - $calcaj;
|
|
$updatesimbid->berat = $berat;
|
|
$updatesimbid->save();
|
|
}
|
|
}
|
|
}
|
|
elseif($request->caw && $request->caw != 'all')
|
|
{
|
|
$caw = Cawangan::where('id','=',$request->caw)->first();
|
|
$caw_simulasi = new CawanganSimulasi;
|
|
$caw_simulasi->simulasi_id = $simulasi->id;
|
|
$caw_simulasi->caw_id = $caw->id;
|
|
$caw_simulasi->online = 'Online';
|
|
$caw_simulasi->lokasi = $caw->lokasi;
|
|
$caw_simulasi->save();
|
|
|
|
$suratcaw = $surat->where('kodcaw','=',$caw->caw_code)->all();
|
|
// $simulasibid = SimulasiBid::where('caw_id','=',$caw->id)->get();
|
|
foreach($suratcaw as $data)
|
|
{
|
|
$simulasibid = new SimulasiBid;
|
|
$simulasibid->simulasi_id = $simulasi->id;
|
|
$simulasibid->caw_id = $caw->id;
|
|
$simulasibid->kodcaw = $data->kodcaw;
|
|
$simulasibid->norujukan = $data->norujukan;
|
|
$simulasibid->t_lelong = $request->tarikh_lelong;
|
|
$simulasibid->hargaasas = 0.00;
|
|
$simulasibid->hargajual = 0.00;
|
|
$simulasibid->jbg = $data->jbg;
|
|
$simulasibid->kadarupah = $data->kadarupah;
|
|
$simulasibid->upahsimpan = $data->upahsimpan;
|
|
$simulasibid->ansuran = $data->ansuran;
|
|
$simulasibid->nilaimarhun = $data->nilaimarhun;
|
|
$simulasibid->pinjaman = $data->pinjaman;
|
|
$simulasibid->bakiupah = $data->bakiupah;
|
|
$simulasibid->cajlain = $data->cajlain;
|
|
$simulasibid->cajlelong = 0.00;
|
|
$simulasibid->baki = $data->baki;
|
|
$simulasibid->berat = $data->berat;
|
|
$simulasibid->marhun = $data->marhun;
|
|
$simulasibid->gst_hj = $data->gst_hj;
|
|
$simulasibid->gst_cl = $data->gst_cl;
|
|
$simulasibid->percent = $data->percent;
|
|
$simulasibid->status_jual = 0;
|
|
$simulasibid->status_payment = 0;
|
|
$simulasibid->mora_upah = 0;
|
|
$simulasibid->save();
|
|
|
|
$sumhargaasas = 0;
|
|
$berat = 0;
|
|
$gadaimarhun = GadaiMarhun::where('gadai_id','=',$data->id)->get();
|
|
foreach($gadaimarhun as $marhun)
|
|
{
|
|
$simkarat = SimKarat::where('simulasi_id','=',$simulasi->id)->get();
|
|
// dd($simkarat);
|
|
foreach($simkarat as $karat)
|
|
{
|
|
|
|
if($karat->karat == $marhun->karat)
|
|
{
|
|
$val = round($marhun->berat * $karat->harga);
|
|
$sumhargaasas = $sumhargaasas + $val;
|
|
$berat = $berat + $marhun->berat;
|
|
|
|
$simmarhun = new SimulasiBidMarhun;
|
|
$simmarhun->simulasibid_id = $simulasibid->id;
|
|
$simmarhun->bil = $marhun->bil;
|
|
$simmarhun->marhun = $marhun->marhun;
|
|
$simmarhun->nota = $marhun->nota;
|
|
$simmarhun->karat = $marhun->karat;
|
|
$simmarhun->berat = $marhun->berat;
|
|
$simmarhun->harga = $karat->harga;
|
|
$simmarhun->n_marhun = $marhun->berat * $karat->harga;
|
|
$simmarhun->hargaasas = $val;
|
|
$simmarhun->save();
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
$calcaj = ($request->cajlelong/100)*$sumhargaasas;
|
|
$updatesimbid = SimulasiBid::where('id','=',$simulasibid->id)->first();
|
|
$updatesimbid->hargaasas = $sumhargaasas;
|
|
$updatesimbid->cajlelong = $calcaj;
|
|
$updatesimbid->baki = $sumhargaasas-$data->pinjaman - $data->bakiupah - $calcaj;
|
|
$updatesimbid->berat = $berat;
|
|
$updatesimbid->save();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
dd('error');
|
|
}
|
|
|
|
return redirect()->route('analisa.show',$simulasi->id);
|
|
}
|
|
|
|
public function senaraisimulasi()
|
|
{
|
|
$simulasi = Simulasi::all();
|
|
|
|
return view('simulasi.senaraisimulasi',compact('simulasi'));
|
|
}
|
|
|
|
public function show($id)
|
|
{
|
|
$simulasi_id = $id;
|
|
$simulasi = Simulasi::where('id','=',$id)->first();
|
|
$cawangansim = CawanganSimulasi::where('simulasi_id','=',$id)->get();
|
|
$simkarat = SimKarat::where('simulasi_id','=',$id)->get();
|
|
|
|
$arraydata = [];
|
|
$arraycaw = [];
|
|
$data = [];
|
|
|
|
$total_marhun = 0;
|
|
$total_berat = 0;
|
|
$total_nmarhun = 0;
|
|
$total_pinjaman = 0;
|
|
$total_upah = 0;
|
|
$total_hargaasas = 0;
|
|
$total_cazlelong = 0;
|
|
$total_rugilelong = 0;
|
|
$total_bakilelong = 0;
|
|
|
|
$total24Kgb = 0;
|
|
$total24K = 0;
|
|
$total23k = 0;
|
|
$total22K = 0;
|
|
$total21K = 0;
|
|
$total20K = 0;
|
|
$total18Kp = 0;
|
|
$total18K = 0;
|
|
$total14Kp = 0;
|
|
$total14K = 0;
|
|
$total9K = 0;
|
|
|
|
foreach($cawangansim as $cawsim)
|
|
{
|
|
$cawangan = Cawangan::where('id','=',$cawsim->caw_id)->first();
|
|
$databid = SimulasiBid::where('simulasi_id','=',$simulasi_id)->get();
|
|
|
|
$packet = 0;
|
|
$berat = 0;
|
|
$nilai_marhun = 0;
|
|
$pinjaman =0;
|
|
$upah = 0;
|
|
$hargaasas = 0;
|
|
$cajlelong = 0;
|
|
$rugilelong = 0;
|
|
$bakilelong = 0;
|
|
|
|
foreach($databid as $bid)
|
|
{
|
|
$marhun = SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)->get();
|
|
$berat = $berat + $bid->berat;
|
|
$nilai_marhun = $nilai_marhun + ($marhun->sum('n_marhun'));
|
|
$pinjaman =$pinjaman + $bid->pinjaman;
|
|
$upah = $upah + $bid->upah;
|
|
$hargaasas = $hargaasas + $bid->hargaasas;
|
|
$cajlelong = $cajlelong + $bid->cajlelong;
|
|
|
|
|
|
if($bid->baki > 0)
|
|
{
|
|
$bakilelong = $bakilelong + $bid->baki;
|
|
}
|
|
else
|
|
{
|
|
$rugilelong = $rugilelong - $bid->baki;
|
|
}
|
|
|
|
|
|
$total24Kgb += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','24.0Kgb')
|
|
->sum('berat');
|
|
|
|
$total24K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','24.0K')
|
|
->sum('berat');
|
|
|
|
$total23k += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','23.0K')
|
|
->sum('berat');
|
|
|
|
$total22K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','22.0K')
|
|
->sum('berat');
|
|
|
|
$total21K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','21.0K')
|
|
->sum('berat');
|
|
|
|
$total20K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','20.0K')
|
|
->sum('berat');
|
|
|
|
$total18Kp += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','18.0Kp')
|
|
->sum('berat');
|
|
|
|
$total18K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','18.0K')
|
|
->sum('berat');
|
|
|
|
$total14Kp += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','14.0Kp')
|
|
->sum('berat');
|
|
|
|
$total14K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','14.0K')
|
|
->sum('berat');
|
|
|
|
$total9K += SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)
|
|
->where('karat','=','9.0K')
|
|
->sum('berat');
|
|
|
|
|
|
|
|
}
|
|
array_push($arraycaw,[
|
|
'cawangan'=>$cawangan->caw_name,
|
|
't_lelong'=>$simulasi->tarikh_lelong,
|
|
'bil_marhun'=>sizeof($databid),
|
|
'berat'=>$berat,
|
|
'n_marhun'=>$nilai_marhun,
|
|
'pinjaman'=>$pinjaman,
|
|
'upah'=>0,
|
|
'hargaasas'=>$hargaasas,
|
|
'cajlelong'=>$cajlelong,
|
|
'rugilelong'=>$rugilelong,
|
|
'bakilelong'=>$bakilelong,
|
|
]);
|
|
|
|
$total_marhun = $total_marhun + sizeof($databid);
|
|
$total_berat = $total_berat + $berat;
|
|
$total_nmarhun = $total_nmarhun + $nilai_marhun;
|
|
$total_pinjaman = $total_pinjaman + $pinjaman;
|
|
$total_upah = $total_upah + 0;
|
|
$total_hargaasas = $total_hargaasas + $hargaasas;
|
|
$total_cazlelong = $total_cazlelong + $cajlelong;
|
|
$total_rugilelong = $total_rugilelong + $rugilelong;
|
|
$total_bakilelong = $total_bakilelong + $bakilelong;
|
|
}
|
|
|
|
|
|
|
|
return view('simulasi.showsimulasi',compact(
|
|
'arraycaw',
|
|
'total_marhun',
|
|
'total_berat',
|
|
'total_nmarhun',
|
|
'total_pinjaman',
|
|
'total_upah',
|
|
'total_hargaasas',
|
|
'total_cazlelong',
|
|
'total_rugilelong',
|
|
'total_bakilelong',
|
|
'total24Kgb',
|
|
'total24K',
|
|
'total23k',
|
|
'total22K',
|
|
'total21K',
|
|
'total20K',
|
|
'total18Kp',
|
|
'total18K',
|
|
'total14Kp',
|
|
'total14K',
|
|
'total9K',
|
|
'simkarat',
|
|
'simulasi_id'));
|
|
}
|
|
|
|
public function delete($id)
|
|
{
|
|
$role = Simulasi::where('id','=',$id)->first();
|
|
// dd($role);
|
|
$role->delete();
|
|
return redirect()->route('analisa.senaraisimulasi')
|
|
->with('success','Padam Simulasi Berjaya');
|
|
}
|
|
|
|
public function filter(Request $request)
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|