314 lines
10 KiB
PHP
314 lines
10 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\User;
|
|
use PDF;
|
|
use App\Models\Cawangan;
|
|
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;
|
|
use App\Models\LelKarat_temp;
|
|
|
|
use App\Models\Pengesahan;
|
|
use App\Models\GadaiMarhun;
|
|
use App\Models\TangguhLelong;
|
|
use Carbon\Carbon;
|
|
|
|
class MarhunController 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();
|
|
|
|
$caw = Cawangan::where('caw_code','=',$user->kodcaw)->first();
|
|
$lelongbid = LelongBid::where('caw_id','=',$caw->id)->get();
|
|
|
|
$lelongid = LelongBid::select('lelong_id')->where('caw_id','=',$caw->id)->groupBy('lelong_id')->get();
|
|
$lelong = Lelong::whereIn('id', $lelongid)->get();
|
|
|
|
return view('marhun.senaraimarhun',compact('lelongbid','lelong'));
|
|
}
|
|
|
|
public function kemaskini(Request $request)
|
|
{
|
|
$user = Auth::user();
|
|
|
|
$currentdate = Carbon::now();
|
|
$currentdate = $currentdate->toDateTimeString();
|
|
|
|
// dd($request->all());
|
|
$marhun = LelongBidMarhun::where('id','=',$request->idmarhun)->first();
|
|
$lelongbid = LelongBid::where('id','=',$marhun->lelongbid_id)->first();
|
|
// dd($marhun);
|
|
|
|
if($marhun->marhun != $request->marhun)
|
|
{
|
|
// dd($marhun->marhun);
|
|
$txtmarhun = ",1 " . $marhun->marhun ;
|
|
// dd($txtmarhun);
|
|
$lelongbid->marhun = $lelongbid->marhun ."1 " . $request->marhun . "," ;
|
|
$lelongbid->marhun = str_replace( $txtmarhun,"",$lelongbid->marhun);
|
|
}
|
|
$caw = CawanganLelong::where('id','=',$lelongbid->caw_id)->first();
|
|
$lelong = Lelong::where('id','=',$lelongbid->lelong_id)->first();
|
|
|
|
// $simkarat = LelKarat::where('lelong_id','=',$lelong->id)->get();
|
|
|
|
// foreach($simkarat as $karat)
|
|
// {
|
|
// if($karat->karat == $request->karat)
|
|
// {
|
|
if($request->karat != $marhun->karat)
|
|
{
|
|
$checkdata = Pengesahan::where('lelongbid_id', $lelongbid->id)
|
|
->whereNull('disahkan_pada')
|
|
->first();
|
|
if($checkdata)
|
|
{
|
|
//
|
|
}
|
|
else
|
|
{
|
|
$karat = new Pengesahan;
|
|
$karat->lelong_id = $lelong->id;
|
|
$karat->lelongbid_id = $lelongbid->id;
|
|
$karat->norujukan = $lelongbid->norujukan;
|
|
$karat->diminta_oleh = $user->id;
|
|
$karat->diminta_pada = $currentdate;
|
|
$karat->save();
|
|
}
|
|
}
|
|
$bezaberat = $marhun->berat - $request->berat_emas;
|
|
$bezahargaasas = $marhun->hargaasas - $request->harga_asas;
|
|
// $val = round($request->berat_emas * $karat->harga);
|
|
|
|
$marhun->marhun = $request->marhun;
|
|
$marhun->karat = $request->karat;
|
|
$marhun->berat = $request->berat_emas;
|
|
$marhun->harga = $request->harga;
|
|
$marhun->n_marhun = $request->nilai_marhun;
|
|
$marhun->hargaasas = $request->harga_asas;
|
|
$marhun->save();
|
|
// dd($marhun->marhun);
|
|
|
|
$lelongbid->berat = $lelongbid->berat - ($bezaberat);
|
|
$lelongbid->hargaasas = $lelongbid->hargaasas - ($bezahargaasas);
|
|
$lelongbid->save();
|
|
|
|
// }
|
|
// }
|
|
|
|
|
|
return redirect()->route('marhun.show',$lelongbid->id)
|
|
->with('success','Kemaskini Marhun Berjaya');
|
|
}
|
|
|
|
public function show($id)
|
|
{
|
|
$lelongbid = LelongBid::where('id','=',$id)->first();
|
|
$marhun = LelongBidMarhun::where('lelongbid_id','=',$id)->get();
|
|
$lelkarat = LelKarat::where('lelong_id','=',$lelongbid->lelong_id)->get();
|
|
$karatall = JenisKarat::all();
|
|
$emasall = JenisEmas::all();
|
|
// dd($lelkarat);
|
|
return view('marhun.marhun',compact('marhun','lelongbid','karatall','emasall','lelkarat'));
|
|
}
|
|
|
|
|
|
public function senarailelongmarhun(Request $request){
|
|
|
|
$user = Auth::user();
|
|
|
|
// $lelongid = CawanganLelong::join('lelong','cawangan_lelong.lelong_id','=','lelong.id')
|
|
// ->join('cawangan','cawangan_lelong.caw_id','=','cawangan.id')
|
|
// ->where('cawangan.caw_code','=',$user->kodcaw)
|
|
// ->get();
|
|
$senarai = CawanganLelong::join('lelong', 'cawangan_lelong.lelong_id', '=', 'lelong.id')
|
|
->join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id')
|
|
->where('lelong.sts_lelong', 0)
|
|
->where('cawangan.caw_code','=',$user->kodcaw)
|
|
->get();
|
|
|
|
return view('marhun.senarailelongmarhun',compact('senarai'));
|
|
}
|
|
|
|
|
|
|
|
public function exportmarhundetails($lelong_id)
|
|
{
|
|
$lelongs= LelongBid::where('lelong_id','=',$lelong_id)->get()->toArray();
|
|
|
|
$arraycaw= [];
|
|
|
|
$total_berat = 0;
|
|
$berat = 0;
|
|
|
|
$total_harga = 0;
|
|
$harga = 0;
|
|
|
|
$total_nmarhun = 0;
|
|
$nilai_marhun = 0;
|
|
|
|
$total_hargaasas = 0;
|
|
$hargaasas = 0;
|
|
|
|
foreach($lelongs as $index1=>$lelong){
|
|
|
|
$marhun= LelongBidMarhun::where('lelongbid_id','=',$lelong['id'])->get();
|
|
$total_berat = $total_berat + ($marhun->sum('berat'));
|
|
$total_harga = $total_harga + ($marhun->sum('harga'));
|
|
$total_nmarhun = $total_nmarhun + ($marhun->sum('n_marhun'));
|
|
$total_hargaasas = $total_hargaasas + ($marhun->sum('hargaasas'));
|
|
|
|
$lelongs[$index1]['detailmarhun']=$marhun;
|
|
|
|
}
|
|
|
|
array_push($arraycaw,[
|
|
'berat'=>$berat,
|
|
'harga'=>$harga,
|
|
'n_marhun'=>$nilai_marhun,
|
|
'hargaasas'=>$hargaasas
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
$pdf = PDF::loadView('pdf.marhundetails',compact('lelongs','arraycaw','total_nmarhun','total_berat','total_harga','total_hargaasas'
|
|
))->setPaper('a4', 'potrait');
|
|
|
|
return $pdf->download('Senarai Marhun.pdf');
|
|
|
|
|
|
}
|
|
|
|
|
|
public function sahubahmutu(Request $request)
|
|
{
|
|
// dd($request->all());
|
|
$mutumarhun = Pengesahan::join('lelong', 'pengesahan.lelong_id', '=', 'lelong.id')
|
|
->whereNull('disahkan_oleh')
|
|
->select(
|
|
'pengesahan.id as pengesahan_id',
|
|
'pengesahan.norujukan',
|
|
'lelong.tarikh_lelong',
|
|
'pengesahan.norujukan'
|
|
)
|
|
->get();
|
|
|
|
return view('pengesahan.perubahanmutumarhun', compact('mutumarhun'));
|
|
}
|
|
|
|
public function mutumarhun($pengesahan_id, $norujukan)
|
|
{
|
|
$pengesahan = Pengesahan::where('id', $pengesahan_id)
|
|
->where('norujukan', $norujukan)
|
|
->first();
|
|
|
|
$marhuns = LelongBidMarhun::where('lelongbid_id', $pengesahan->lelongbid_id)
|
|
->get()->toArray();
|
|
|
|
$lelongbid = LelongBid::where('id', $pengesahan->lelongbid_id)->first();
|
|
$karat = Lelkarat::where('lelong_id', $pengesahan->lelong_id)->get();
|
|
|
|
foreach($marhuns as $index1=>$marhun)
|
|
{
|
|
$gadaimarhun = GadaiMarhun::where('marhun', $marhun['marhun'])
|
|
->where('norujukan', $lelongbid->norujukan)
|
|
->first();
|
|
|
|
$karat = $karat->where('karat', $gadaimarhun->karat)->first();
|
|
|
|
$total = $karat->harga * $gadaimarhun->berat;
|
|
$hargaasas = round($total);
|
|
// if($gadaimarhun->karat == $marhun['karat'])
|
|
// {
|
|
// $status = 0;
|
|
// }
|
|
// else
|
|
// {
|
|
// $status = 1;
|
|
// }
|
|
$marhuns[$index1]['old_marhun'] = $gadaimarhun->marhun;
|
|
$marhuns[$index1]['old_karat'] = $gadaimarhun->karat;
|
|
// $marhun[$index1]['status_perubahan'] = $status;
|
|
$marhuns[$index1]['old_berat'] = $gadaimarhun->berat;
|
|
$marhuns[$index1]['old_harga'] = $karat->harga;
|
|
$marhuns[$index1]['old_nilaimarhun'] = $total;
|
|
$marhuns[$index1]['old_hargaasas'] = $hargaasas;
|
|
}
|
|
return view('pengesahan.mutumarhun', compact('marhuns', 'lelongbid', 'pengesahan_id', 'norujukan'));
|
|
}
|
|
|
|
public function terimaperubahan(Request $request)
|
|
{
|
|
//update mutu marhun - gadaimarhun
|
|
$user = Auth::user();
|
|
|
|
$currentdate = Carbon::now();
|
|
$currentdate = $currentdate->toDateTimeString();
|
|
|
|
$pengesahan = Pengesahan::where('id', $request->pengesahan_id)
|
|
->first();
|
|
$pengesahan->disahkan_oleh = $user->id;
|
|
$pengesahan->disahkan_pada = $currentdate;
|
|
$pengesahan->update();
|
|
|
|
$gadaimarhun = GadaiMarhun::where('norujukan', $pengesahan->norujukan)->delete();
|
|
$lelongbidmarhun = LelongBidMarhun::where('lelongbid_id', $pengesahan->lelongbid_id)->get();
|
|
foreach($lelongbidmarhun as $bidmarhun)
|
|
{
|
|
$newmarhun = new GadaiMarhun;
|
|
$newmarhun->norujukan = $pengesahan->norujukan;
|
|
$newmarhun->bil = $bidmarhun->bil;
|
|
$newmarhun->marhun = $bidmarhun->marhun;
|
|
$newmarhun->nota = $bidmarhun->nota;
|
|
$newmarhun->karat = $bidmarhun->karat;
|
|
$newmarhun->berat = $bidmarhun->berat;
|
|
$newmarhun->save();
|
|
}
|
|
|
|
//update status lelongbidmarhun = tangguh
|
|
|
|
$tangguhlelong = new TangguhLelong;
|
|
$tangguhlelong->lelong_id = $pengesahan->lelong_id;
|
|
$tangguhlelong->lelongbid_id = $pengesahan->lelongbid_id;
|
|
$tangguhlelong->norujukan = $pengesahan->norujukan;
|
|
$tangguhlelong->tarikhtangguh = $currentdate;
|
|
$tangguhlelong->ditangguh_oleh = $user->id;
|
|
$tangguhlelong->ditangguh_pada = $currentdate;
|
|
$tangguhlelong->nota = 'Ditangguh Kerana Perubahan Mutu/Karat Marhun';
|
|
$tangguhlelong->save();
|
|
|
|
return redirect()->route('pengesahan.perubahanmutumarhun')->with('success','Pengesahan Mutu Marhun Berjaya');
|
|
}
|
|
|
|
|
|
}
|
|
|