Files
lelong/app/Http/Controllers/MarhunController.php
T
faiqahzaman 95a39357b8 semak marhun
2022-03-09 16:45:03 +08:00

293 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 exportmarhundetails(Request $request)
{
$lelongbid = LelongBid::where('id','=',$request->lelongbid)->first();
$marhun = LelongBidMarhun::where('lelongbid_id','=',$request->lelongbid)->get();
$karatall = JenisKarat::all();
$emasall = JenisEmas::all();
$pdf = PDF::loadView('pdf.marhundetails',compact('marhun',
'lelongbid',
'karatall',
'emasall'))->setPaper('a4', 'landscape');
return $pdf->download('Senarai Lelong Details.pdf');
}
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 semak($id)
{
$lelongbid = LelongBid::where('id','=',$id)->first();
$lelongbid->status_semak = 1;
$lelongbid->save();
return redirect()->route('marhun.show',$lelongbid->id)
->with('success','Semakan Marhun Berjaya');
}
//Operasi
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');
}
}