first commit
This commit is contained in:
161
app/Http/Controllers/Admin/DashboardController.php
Normal file
161
app/Http/Controllers/Admin/DashboardController.php
Normal file
@@ -0,0 +1,161 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Models\Syarikat;
|
||||
use App\Models\LesenPenjaja;
|
||||
use App\Models\BilPelbagai;
|
||||
use App\Models\BilPelbagaiItem;
|
||||
use App\Models\EpbtBpBil;
|
||||
use App\Models\EpbtEcasResit;
|
||||
use App\Models\GrabResitLesen;
|
||||
use Auth;
|
||||
|
||||
class DashboardController extends Controller
|
||||
{
|
||||
//
|
||||
public function utama(Request $request, $ctahun=''){
|
||||
if($ctahun == ''){
|
||||
$ctahun = date('Y');
|
||||
}
|
||||
|
||||
$permohonans = LesenPenjaja::whereYear('tarikhmohon', $ctahun)->get();
|
||||
|
||||
$countKPI = LesenPenjaja::whereYear('tarikhlulus', $ctahun)
|
||||
->whereRaw('DATEDIFF(tarikhlulus, tarikhmohon) > 14')
|
||||
->count();
|
||||
|
||||
//dapatkan status bayaran untuk update mana yg tgu wang proses
|
||||
$semakresits = LesenPenjaja::where('status_progress', 'LIKE', 'menunggu bayaran proses')->get();
|
||||
|
||||
foreach($semakresits as $semakresit){
|
||||
$bil_p = BilPelbagai::where('jenis_bil', 'wang proses')->where('lesen_penjaja_id', $semakresit->id)->first();
|
||||
// dd($semakresit,$bil_p);
|
||||
if(!is_null(optional($bil_p)->no_akaun_bilpelbagai)){
|
||||
$bp_bayar = EpbtEcasResit::whereHas('resitItems', function($query) use ($bil_p){
|
||||
$query->where('noakaun', $bil_p->no_akaun_bilpelbagai);
|
||||
})->select('noresit', 'tarikh','amaun')
|
||||
->orderBy('tarikh')
|
||||
->first();
|
||||
|
||||
if(!is_null($bp_bayar)){ //cek no resit daripada epbt..klu ada, kita simpan rekod
|
||||
$bil_p->dt_bayar = $bp_bayar->tarikh;
|
||||
$bil_p->no_resit = $bp_bayar->noresit;
|
||||
$bil_p->amaun_bayar = $bp_bayar->amaun;
|
||||
$bil_p->save();
|
||||
|
||||
$semakresit->status_progress = 'semakan bayaran proses';
|
||||
$semakresit->save();
|
||||
}
|
||||
}
|
||||
}
|
||||
//end update status wang proses
|
||||
|
||||
$txt_bayar = '';
|
||||
//senarai permohonan baru
|
||||
$baru = LesenPenjaja::where('status_progress', 'baru')->count();
|
||||
//senarai belum bayar wang proses
|
||||
$belum_bayar_proses = LesenPenjaja::where('status_progress', 'menunggu bayaran proses')->count();
|
||||
//senarai dah bayar wang proses
|
||||
$bayar_proses = LesenPenjaja::where('status_progress', 'semakan bayaran proses')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$periksa_tapak = LesenPenjaja::where('status_progress', 'LIKE', 'lawatan tapak')->count();
|
||||
//senarai tiada lesen
|
||||
$tiada_lesen = LesenPenjaja::whereIn('status_progress', ['ulasan pegawai', 'ulasan pengarah', 'sokong dibawa ke mesyuarat'])->whereNull('no_akaun_lesen')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$pegawai_belum_ulas = LesenPenjaja::where('status_progress', 'LIKE', 'ulasan pegawai')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$pengarah_belum_ulas = LesenPenjaja::where('status_progress', 'LIKE', 'ulasan pengarah')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$bawa_mesyuarat = LesenPenjaja::where('status_progress', 'LIKE', 'sokong dibawa ke mesyuarat')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$keputusan_mesyuarat = LesenPenjaja::where('status_progress', 'LIKE', 'menunggu keputusan mesyuarat')->count();
|
||||
//dapatkan yang belum bayar lesen
|
||||
$hutang_lesen = LesenPenjaja::whereNotNull('no_akaun_lesen')->where('no_akaun_lesen', '<>', '')->whereNull('lesen_no_resit')->count();
|
||||
//dapatkan yang perlu lawatan tapak
|
||||
$selesai = LesenPenjaja::where('status_progress', 'LIKE', 'keputusan diperolehi')->whereNotNull('status_mesyuarat')->count();
|
||||
|
||||
return view('admin.penjaja.dashboard', compact('ctahun', 'permohonans', 'countKPI', 'baru', 'belum_bayar_proses', 'bayar_proses', 'periksa_tapak', 'pegawai_belum_ulas', 'pengarah_belum_ulas', 'bawa_mesyuarat', 'keputusan_mesyuarat', 'hutang_lesen', 'selesai', 'tiada_lesen'));
|
||||
|
||||
}
|
||||
|
||||
public function carianutama(Request $request){
|
||||
if($request->input('ctahun') == ''){
|
||||
$ctahun = date('Y');
|
||||
}
|
||||
else{
|
||||
$ctahun = $request->input('ctahun');
|
||||
}
|
||||
|
||||
$permohonans = LesenPenjaja::whereYear('tarikhmohon', $ctahun)->get();
|
||||
|
||||
$countKPI = LesenPenjaja::whereYear('tarikhlulus', $ctahun)
|
||||
->whereRaw('DATEDIFF(tarikhlulus, tarikhmohon) > 14')
|
||||
->count();
|
||||
|
||||
|
||||
|
||||
return view('admin.penjaja.dashboard', compact('ctahun', 'permohonans', 'countKPI'));
|
||||
|
||||
}
|
||||
|
||||
public function senaraiLesenBelumBayar(Request $request){
|
||||
|
||||
$senarais = LesenPenjaja::whereNotNull('no_akaun_lesen')->where('no_akaun_lesen', '<>', '')->whereNull('lesen_no_resit')->get();
|
||||
|
||||
|
||||
return view('admin.penjaja.senarailesenbelumbayar', compact('senarais'));
|
||||
|
||||
}
|
||||
|
||||
public function semakBayaranLesen(Request $request){
|
||||
|
||||
|
||||
try {
|
||||
DB::connection('second_mysql')->getPdo();
|
||||
|
||||
$grab = GrabResitLesen::create([
|
||||
'tarikh_grab' => now(),
|
||||
'jumlah_data' => 0,
|
||||
'admin_id' => Auth::id(),
|
||||
]);
|
||||
|
||||
$jumlah = 0;
|
||||
|
||||
$permohonans = LesenPenjaja::whereNotNull('no_akaun_lesen')->where('no_akaun_lesen', '<>', '')->whereNull('lesen_no_resit')->get();
|
||||
foreach($permohonans as $semakresit){
|
||||
|
||||
$bp_bayar = EpbtEcasResit::whereHas('resitItems', function($query) use ($semakresit){
|
||||
$query->where('noakaun', $semakresit->no_akaun_lesen);
|
||||
})->select('noresit', 'tarikh','amaun')
|
||||
->orderBy('tarikh')
|
||||
->first();
|
||||
|
||||
if(!is_null($bp_bayar)){ //cek no resit daripada epbt..klu ada, kita simpan rekod
|
||||
$semakresit->lesen_dt_bayar = $bp_bayar->tarikh;
|
||||
$semakresit->lesen_no_resit = $bp_bayar->noresit;
|
||||
$semakresit->lesen_amaun = $bp_bayar->amaun;
|
||||
$semakresit->lesen_grab = now();
|
||||
|
||||
$semakresit->save();
|
||||
|
||||
$jumlah++;
|
||||
}
|
||||
}
|
||||
|
||||
$grab->jumlah_data = $jumlah;
|
||||
$grab->save();
|
||||
|
||||
} catch (\Exception $e) {
|
||||
//return back()->with('error', 'Sambungan ke pangkalan data gagal. Sila cuba sebentar lagi.');
|
||||
}
|
||||
|
||||
|
||||
return redirect()->route('pt.lesenhutang')->with('success', 'Sebanyak '.$jumlah.' lesen telah menerima bayaran.');;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user