Add feature tangguh lelong operasi

This commit is contained in:
Amir Hassan
2023-04-05 15:24:56 +08:00
parent b5324d08dc
commit e3d075e3c9
5 changed files with 307 additions and 2 deletions
@@ -17,6 +17,7 @@ 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;
@@ -1016,5 +1017,115 @@ class TangguhLelongController extends Controller
}
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('fasa', $lelong_bid->lelong->fasa)
->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);
}
}
+3 -1
View File
@@ -561,6 +561,9 @@
<li class="{{ (request()->is('lelong/tukartarikhlelong/*') || request()->is('lelong/tukartarikhlelong') ) ? 'active' : '' }}">
<a href="{{url('lelong/tukartarikhlelong')}}">Tukar Tarikh Lelong</a>
</li>
<li class="{{ (request()->is('tangguhlelong/tangguhlelongoperasi/*') || request()->is('tangguhlelong/tangguhlelongoperasi') ) ? 'active' : '' }}">
<a href="{{url('tangguhlelong/tangguhlelongoperasi')}}">Tangguh Lelong</a>
</li>
<li class="{{ (request()->is('jananotis/*')) ? 'active' : '' }}">
<a href="{{url('jananotis/kemaskininotis')}}">
<!-- <div class="sidebar-menu-main-title"> -->
@@ -569,7 +572,6 @@
</span> -->
Notis Lelong
<!-- </div> -->
</a>
</li>
</ul>
@@ -0,0 +1,149 @@
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col">
<div class="card">
<div class="card-header header-style">
<a href="{{ route('tangguhlelong.tangguhlelongoperasi') }}" class="header-style-icon">
<i class="fas fa-arrow-left"></i>
</a>
<div class="header-style-title">
Tangguh Lelong: {{$lelong_bid->norujukan}}
</div>
</div>
<div class="card-body">
<div class="row justify-content-center">
<div class="col-8">
<div class="form-group row">
<label class="col-3 col-form-label">Tarikh Lelong</label>
<div class="col">
<div class="input-group">
<input type="text" readonly class="form-control bg-light" value="{{$lelong_bid->lelong->tarikh_lelong}}">
</div>
</div>
</div>
<div class="form-group row">
<label class="col-3 col-form-label">Batch Lelong</label>
<div class="col">
<div class="input-group">
<input type="text" readonly class="form-control bg-light" value="{{$lelong_bid->lelong->id}}">
</div>
</div>
</div>
<div class="form-group row">
<label class="col-3 col-form-label">Fasa</label>
<div class="col">
<div class="input-group">
<input type="text" readonly class="form-control bg-light" value="{{$lelong_bid->lelong->fasa}}">
</div>
</div>
</div>
<div class="form-group row">
<label class="col-3 col-form-label">Cawangan</label>
<div class="col">
<div class="input-group">
<input type="text" readonly class="form-control bg-light" value="{{$lelong_bid->cawangan->caw_name}} ({{$lelong_bid->cawangan->caw_code}})">
</div>
</div>
</div>
</div>
<div style="overflow-x: auto;" class="mx-4">
<table class="table table-bordered text-center" style="width:100%">
<thead class="bg-primary text-white">
<th>No Rujukan</th>
<th>Tempoh</th>
<th>Berat (gm)</th>
<th>Nilai Marhun Asal (RM)</th>
<th>Pembiayaan (RM)</th>
<th>Keuntungan (RM)</th>
<th>Caj Lelong (RM)</th>
<th>Harga Asas (RM)</th>
<th>Baki Lelong (RM)</th>
</thead>
<tbody>
<td style="white-space: nowrap;">{{ $lelong_bid->norujukan}}</td>
<td>{{ $lelong_bid->jbg}}</td>
<td>{{ number_format($lelong_bid->berat, 2, '.', ',')}} </td>
<td>{{ number_format($lelong_bid->nilaimarhun, 2, '.', ',')}} </td>
<td>{{ number_format($lelong_bid->pinjaman, 2, '.', ',')}} </td>
<td>{{ number_format($lelong_bid->bakiupah, 2, '.', ',')}} </td>
<td>{{ number_format($lelong_bid->cajlelong, 2, '.', ',')}} </td>
<td>{{ number_format($lelong_bid->hargaasas, 2, '.', ',')}} </td>
@php
$rugi = 0;
$baki = 0;
if(strpos($lelong_bid->baki, '-') !== false) {
$baki = -$lelong_bid->baki;
} else {
$baki = $lelong_bid->baki;}
@endphp
<td>
@if($lelong_bid->baki > 0)
{{number_format($lelong_bid->baki, 2, '.', ',')}}
@elseif($lelong_bid->baki < 0 ) ({{number_format(-($lelong_bid->baki), 2, '.', ',')}}) @endif </td>
</tbody>
</table>
</div>
</div>
<form id="tangguhsag" action="{{route('tangguhlelong.tangguhlelongsubmitform')}}" method="POST">
@csrf
<input type="hidden" name="lelong_bid_id" value="{{ $lelong_bid->id }}">
<input type="hidden" name="lelong_id" value="{{ $lelong_bid->lelong_id }}">
<div class="row justify-content-center mt-3">
<select name="jenis_tangguh" id="jenisTangguh" style="min-width:200px">
<option disabled selected value="none">Pilih Jenis Tangguh</option>
<option value="hapus">Hapus Lelong</option>
@if($lelong_available->isNotEmpty())
@foreach($lelong_available as $lelong)
<option value="{{$lelong->id}}">Pindah Batch:{{$lelong->id}} / Tarikh:{{$lelong->tarikh_lelong}} / Kali Ke:{{$lelong->kali}}</option>
@endforeach
@endif
</select>
<button class="btn confirmtangguh btn-danger" disabled id="btnTangguh">Tangguh Surat Ini</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script>
$("#jenisTangguh").on('change', function() {
if ($(this).find('option:selected').text() == "No")
$("#btnTangguh").attr('disabled', true)
else
$("#btnTangguh").attr('disabled', false)
});
$('button.confirmtangguh').confirm({
title: 'Tangguh Lelong',
content: 'Adakah anda pasti? Tindakan ini tidak dikembalikan.',
type: 'red',
typeAnimated: true,
buttons: {
Kembali: {
btnClass: 'btn-default',
action: function() {}
},
Teruskan: {
btnClass: 'btn-danger',
action: function() {
$("#tangguhsag").submit();
$.dialog({
icon: 'fa fa-spinner fa-spin',
title: 'Dalam Proses !',
content: 'Halaman akan dikemaskini selepas proses selesai.',
closeIcon: false,
boxWidth: '500px',
useBootstrap: false,
});
}
},
}
});
</script>
@endsection
@@ -0,0 +1,40 @@
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-8">
<div class="card">
<div class="card-header header-style">
<div class="header-style-title">
Tangguh Lelong
</div>
</div>
<div class="card-body">
<div class="mb-3">Sila masukkan no rujukan untuk tangguh.</div>
@if ($message = Session::get('success'))
<div class="alert alert-success">
{{ $message }}
</div>
@elseif ($message = Session::get('failed'))
<div class="alert alert-danger">
{{ $message }}
</div>
@endif
<form action="{{route('tangguhlelong.tangguhlelongsearchsag')}}" method="POST">
@csrf
<div class="row">
<label class="col-4 col-form-label text-left">No Rujukan</label>
<div class="col-8 d-flex">
<input type="text" name="norujukan" class="form-control" placeholder="xxxxxxxxxxxx-xxxx">
<button type="submit" class="btn btn-primary">Carian</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
+3
View File
@@ -426,6 +426,9 @@ Route::group(['middleware' => ['permission:tangguhlelong'],'prefix'=>'tangguhlel
Route::get('/operasidownloadboranglulus/{lelongbid_id}', ['as'=>'tangguhlelong.operasidownloadboranglulus','uses'=>'TangguhLelongController@operasidownloadboranglulus']);
Route::get('/cwgndownloadboranglulus/{lelongbid_id}', ['as'=>'tangguhlelong.cwgndownloadboranglulus','uses'=>'TangguhLelongController@operasidownloadboranglulus']);
Route::get('/ulangdownloadmohon/{lelongbid_id}', ['as'=>'tangguhlelong.ulangdownloadmohon','uses'=>'TangguhLelongController@ulangdownloadmohon']);
Route::get('/tangguhlelongoperasi', ['as'=>'tangguhlelong.tangguhlelongoperasi','uses'=>'TangguhLelongController@tangguhlelongoperasi']);
Route::post('/tangguhlelongsearchsag', ['as'=>'tangguhlelong.tangguhlelongsearchsag','uses'=>'TangguhLelongController@tangguhlelongsearchsag']);
Route::post('/tangguhlelongsubmitform', ['as'=>'tangguhlelong.tangguhlelongsubmitform','uses'=>'TangguhLelongController@tangguhlelongsubmitform']);
});
//pengurus cawangan KHAS