main
Ilham Wara Nugroho 2026-01-26 16:23:33 +07:00
parent 6e5c93080d
commit 8d89fa018d
11 changed files with 237 additions and 133 deletions

View File

@ -259,15 +259,37 @@ if (!function_exists('kuesionerLogStatus')) {
$progress = str_replace('_',' ',\Str::title($log->step));
}else{
if(@$log->status == 11){
$progress = '<span style="width:100%;" class="badge bg-success text-white">Terbit SK</span>';
$progress = '<span class="badge bg-success text-white">Terbit SK</span>';
}else{
$progress = '<span style="width:100%;" class="badge bg-warning text-white">'.str_replace('_',' ',\Str::title($log->step)).'</span>';
$progress = '<span class="badge bg-warning text-white">'.str_replace('_',' ',\Str::title($log->step)).'</span>';
}
}
return $progress;
}
}
if (!function_exists('StatusActivity')) {
/**
* @param $val
*
* @return string
*/
function StatusActivity($sekolah)
{
$kuesioner = Kuesioner::where('ms_sekolah_id',$sekolah)->first();
if(!@$kuesioner){
$text = '<span class="badge bg-primary text-white">Sekolah mendaftar Akun</span>';
}else{
$profile = ProfileSekolah::where('ms_sekolah_id',$sekolah)->first();
if(@$profile){
$text = '<span class="badge bg-primary text-white">Sekolah mengisi profil sekolah.</span>';
}
}
return $text;
}
}
if (!function_exists('status_kuesioner')) {
/**
* @param $val
@ -955,7 +977,7 @@ if (!function_exists('formKriteria')) {
// $html .= '</div>';
}
$html .= '<div style="border: 2px dashed #0087F7; padding: 20px;" class="dropzone" id="my-dropzone">
$html .= '<div style="border: 2px dashed #0087F7; padding: 20px;" class="dropzone d-none" id="my-dropzone">
<div class="dz-message">
Drop PDF files here or click to upload
</div>

View File

@ -306,7 +306,7 @@ class HomeController extends Controller
'status_sekolah' => $row->sekolah->status,
'tahun' => $row->tahun,
'alamat_sekolah' => $row->profile->alamat_sekolah,
'status' => kuesionerLogStatus($row->KuesionerId).'<br>'.$labelDok,
'status' => kuesionerLogStatus($row->KuesionerId),
'action' => $action,
];

View File

@ -133,7 +133,7 @@ class KuesionerController extends Controller
'tahun' => $row->tahun,
'alamat_sekolah' => $row->profile->alamat_sekolah,
'penghargaan' => $penghargaan,
'status' => kuesionerLogStatus($row->KuesionerId).'<br>'.$labelDok,
'status' => kuesionerLogStatus($row->KuesionerId),
'action' => $action,
];
@ -541,7 +541,7 @@ class KuesionerController extends Controller
$log->ms_sekolah_id = session('sekolah_id');
$log->npsn = session('npsn');
$log->ms_group_id = session('group_id');
$log->step = 'create_usulan';
$log->step = 'sekolah_mengisi_kuesioner_leveling';
$log->status = 0;
$log->created_by = auth()->user()->id;
$log->save();
@ -551,7 +551,7 @@ class KuesionerController extends Controller
$log->ms_sekolah_id = session('sekolah_id');
$log->npsn = session('npsn');
$log->ms_group_id = session('group_id');
$log->step = 'proses_usulan';
$log->step = 'menunggu_verifikasi_kuesioner_leveling';
$log->status = 1;
$log->created_by = auth()->user()->id;
$log->save();

View File

@ -9,6 +9,7 @@ use Carbon\Carbon;
use Illuminate\Http\Request;
use App\Models\Master\Provinsi;
use App\Models\Kuesioner;
use App\Models\KuesionerLog;
use App\Models\DokumenAdministrasi;
use App\Models\Usulan;
use App\Models\Master\Kecamatan;
@ -367,6 +368,18 @@ class AdministrasiController extends Controller
$dok->status = 1;
$dok->save();
$kuesioner = Kuesioner::where('KuesionerId',$dok->kuesioner_id)->first();
$log = new KuesionerLog;
$log->kuesioner_id = $kuesioner->KuesionerId;
$log->ms_sekolah_id = $kuesioner->ms_sekolah_id;
$log->npsn = $kuesioner->npsn;
$log->ms_group_id = session('group_id');
$log->step = 'sekolah_mengisi_form_pemenuhan_kriteria';
$log->status = 1;
$log->created_by = auth()->user()->id;
$log->save();
return response()->json(['status' => true,'message' => 'Data Berhasil Di Update','type' => 'success']);
}
public function tolak($id)
@ -376,6 +389,18 @@ class AdministrasiController extends Controller
$dok->status = 2;
$dok->save();
$kuesioner = Kuesioner::where('KuesionerId',$dok->kuesioner_id)->first();
$log = new KuesionerLog;
$log->kuesioner_id = $kuesioner->KuesionerId;
$log->ms_sekolah_id = $kuesioner->ms_sekolah_id;
$log->npsn = $kuesioner->npsn;
$log->ms_group_id = session('group_id');
$log->step = 'verifikasi_kuesioner_dikembalikan';
$log->status = 1;
$log->created_by = auth()->user()->id;
$log->save();
return response()->json(['status' => true,'message' => 'Data Berhasil Di Update','type' => 'success']);
}

View File

@ -245,30 +245,39 @@ class ProfileController extends Controller
if(@$log){
$progress = '<span class="badge bg-warning-light text-warning">'.str_replace('_',' ',\Str::title($log->step)).'</span>';
}else{
$progress = '';
$progress = StatusActivity($row->MsSekolahId);
}
if(@$kuesioner->level == 0){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Belum Pernah';
}elseif(@$kuesioner->level == 1){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Kab/Kota';
}elseif(@$kuesioner->level == 2){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Provinsi';
}elseif(@$kuesioner->level == 3){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Nasional';
}elseif(@$kuesioner->level == 4){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Mandiri';
if($kuesioner){
if(@$kuesioner->level == 0){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Belum Pernah';
}elseif(@$kuesioner->level == 1){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Kab/Kota';
}elseif(@$kuesioner->level == 2){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Provinsi';
}elseif(@$kuesioner->level == 3){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Nasional';
}elseif(@$kuesioner->level == 4){
$penghargaan = '<i class="fal fa-trophy"></i>&nbsp;Adiwiyata Mandiri';
}
}else{
$penghargaan = '-';
}
if((@$kuesioner->level+1) == 1){
$jenis_usulan = 'Adiwiyata Kab/Kota';
}elseif((@$kuesioner->level+1) == 2){
$jenis_usulan = 'Adiwiyata Provinsi';
}elseif((@$kuesioner->level+1) == 3){
$jenis_usulan = 'Adiwiyata Nasional';
}elseif((@$kuesioner->level+1) == 4){
$jenis_usulan = 'Adiwiyata Mandiri';
if($kuesioner){
if((@$kuesioner->level+1) == 1){
$jenis_usulan = 'Adiwiyata Kab/Kota';
}elseif((@$kuesioner->level+1) == 2){
$jenis_usulan = 'Adiwiyata Provinsi';
}elseif((@$kuesioner->level+1) == 3){
$jenis_usulan = 'Adiwiyata Nasional';
}elseif((@$kuesioner->level+1) == 4){
$jenis_usulan = 'Adiwiyata Mandiri';
}
}else{
$jenis_usulan = '-';
}
$penilaian = '';
$penilaian .= '<span style="width:100%;" class="text-left badge bg-secondary text-secondary"> Sekolah : '.getNilaiAll('sekolah',$row->MsSekolahId).'</span></br>';
@ -280,10 +289,18 @@ class ProfileController extends Controller
$penilaian .= '<span style="width:100%;" class="text-left badge bg-success-light text-success"> Provinsi : '.getNilaiAll('provinsi',$row->MsSekolahId).'</span></br>';
}
$sekolah = '';
$sekolah .= @$row->nama_sekolah.'<br>';
$sekolah .= '<span class="badge bg-success-light text-success">'.@$row->profile->tingkat->name.'</span>&nbsp;';
$sekolah .= '<span class="badge bg-primary-light text-primary mt-1">'.@$row->profile->status_sekolah.'</span>&nbsp;';
$sekolah .= '<span class="badge bg-info-light text-info">Level '.levelAdiwiyata($row->npsn).'</span>';
$sekolah .= '<span class="badge bg-secondary text-secondary text-left mt-1">'.@$row->profile->alamat_sekolah.'</span>&nbsp;';
$_data[] = [
'no' => $key+1,
'id' => encode_id($row->id),
'npsn' => $row->npsn,
'sekolah' => $sekolah,
'nama' => $row->nama_sekolah,
'status_level' => '<span class="badge bg-success-light text-success">Level '.levelAdiwiyata($row->npsn).'</span>',
'kecamatan' => $row->kecamatan->name,

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 KiB

View File

@ -11,112 +11,147 @@
<?php
$jumlah = json_decode(@$profile->data_jumlah);
?>
<div class="row mb-2">
<div class="col-sm-6 col-xl-3 mb-2">
<div class="card bg-primary">
<div class="col-md-6 mb-2">
<div class="card h-100">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n text-white">Jumlah Siswa</span> <br><br>
<h3 class="f20 fw-700 text-white">{{@$jumlah ? @$jumlah->jumlah_peserta_didik : 0}} <span class="f12 fw-300">Siswa</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-users f16 text-primary"></i>
</div>
</div>
</div>
<div id="container"></div>
</div>
</div>
</div>
<div class="col-sm-6 col-xl-3 mb-2">
<div class="card bg-success">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n text-white">Jumlah Guru</span> <br><br>
<h3 class="f20 fw-700 text-white">{{@$jumlah ? @$jumlah->jumlah_tenaga_pendidik : 0}} <span class="f12 fw-300">Guru</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-users f16 text-success"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-6 col-xl-3 mb-2">
<div class="card bg-warning">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n text-white">Penghargaan Terakhir</span> <br><br>
<h3 class="f20 fw-700 text-white"><span class="f12 fw-500">{{@getPenghargaanTerakhir(session('sekolah_id'))}}</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-trophy f16 text-warning"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-6 col-xl-3 mb-2">
<div class="card bg-info">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n text-white">Proses Usulan</span> <br><br>
<h3 class="f20 fw-700 text-white"><span class="f12 fw-500">{!!@kuesionerLogStatus(@$kuesioner->KuesionerId,'plain')!!}</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-chart-line f16 text-info"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<figure class="highcharts-figure">
<div id="container"></div>
</figure>
</div>
</div>
<div class="row mb-4">
<div class="col-md-6">
<div class="card">
<div class="card-header bg-primary-light border-none">
<div class="d-flex justify-content-between align-items-center">
<div class="d-flex flex-row align-items-center gap-3">
<div class="">
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-home f16 text-primary"></i>
<div class="col-md-6 mb-2">
<div class="row">
<div class="col-6 col-sm-12 col-xl-12 mb-2">
<div class="card bg-primary-light border-left-primary text-primary">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n fw-500">Total Sampah Organik</span> <br><br>
<h3 class="f20 fw-700 ">{{number_format(@$summary->organik)}} <span class="f12 fw-300">Kg</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-recycle f16 text-primary"></i>
</div>
</div>
</div>
<div>
<div class="d-flex gap-1 align-items-center mb-2">
<span class="f14 fw-700 text-primary">{{@$profile->sekolah->nama_sekolah}}</span>
<span class="badge bg-warning text-white">{{session('tingkat_sekolah')}}</span>
<span class="badge bg-success text-white">{{session('status_sekolah')}}</span>
</div>
</div>
</div>
<div class="col-6 col-sm-12 col-xl-12 mb-2">
<div class="card bg-warning-light border-left-warning text-warning">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n fw-500">Total Sampah Anorganik</span> <br><br>
<h3 class="f20 fw-700 ">{{number_format(@$summary->anorganik)}} <span class="f12 fw-300">Kg</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-recycle f16 text-warning"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-6 col-sm-12 col-xl-12 mb-2">
<div class="card bg-info-light border-left-info text-info">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n fw-500">Total Sampah B3</span> <br><br>
<h3 class="f20 fw-700 ">{{number_format(@$summary->b3)}} <span class="f12 fw-300">Kg</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-recycle f16 text-info"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-6 col-sm-12 col-xl-12 mb-2">
<div class="card bg-success-light border-left-success text-success">
<div class="card-body">
<div class="d-flex flex-row justify-content-between align-items-center">
<div>
<span class="m-0 l-h-n fw-500">Total Sampah Minyak Jelantah</span> <br><br>
<h3 class="f20 fw-700 ">{{number_format(@$summary->minyak)}} <span class="f12 fw-300">Kg</span> </h3>
</div>
<div>
<div class="p-2 bg-white rounded-circle">
<i class="fal fa-tint f16 text-success"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row mb-4">
<div class="col-md-6 mb-2">
<div class="card">
<div class="card-body">
<div class="d-flex gap-2">
<div class="d-flex justify-content-center align-items-center gap-3">
<img src="{{ asset('assets/school.jpg') }}" class="img-fluid" width="180" alt="">
<div class="d-flex flex-column">
<h3 class="fw-700">{{@$profile->sekolah->nama_sekolah}}</h3>
<div class="d-flex gap-1 align-items-start mb-2">
<span class="p-2 badge bg-primary text-white">{{session('tingkat_sekolah')}}</span>
<span class="p-2 badge bg-success text-white">{{session('status_sekolah')}}</span>
<h6 class="p-2 badge bg-warning text-white">Level {{@levelAdiwiyata(session('npsn'))}}</h6>
</div>
<h5 class="f14 text-primary">NPSN : {{@$profile->sekolah->npsn}}</h5>
</div>
</div>
<div>
<h6 class="rounded-plus px-2 py-1 bg-success text-white">Level {{@levelAdiwiyata(session('npsn'))}}</h6>
</div>
<hr class="mt-0">
<h6 class="fw-500">DATA SEKOLAH</h6>
<div class="d-flex flex-column gap-2 mb-3">
<div class="d-flex justify-content-between align-items-center">
<span>Jumlah Siswa</span>
<span class="badge bg-success text-white fw-500">{{@$jumlah ? @$jumlah->jumlah_peserta_didik : 0}}</span>
</div>
<div class="d-flex justify-content-between align-items-center">
<span>Jumlah Guru</span>
<span class="badge bg-success text-white fw-500">{{@$jumlah ? @$jumlah->jumlah_tenaga_pendidik : 0}}</span>
</div>
<div class="d-flex justify-content-between align-items-center">
<span>Penghargaan Terakhir</span>
<span class="badge bg-success text-white fw-500">{{@getPenghargaanTerakhir(session('sekolah_id'))}}</span>
</div>
<div class="d-flex justify-content-between align-items-center">
<span>Proses Usulan</span>
@if(@$kuesioner->KuesionerId)
<span class="badge bg-success text-white fw-500">
{!!@kuesionerLogStatus(@$kuesioner->KuesionerId,'plain')!!}
</span>
@else
{!! StatusActivity(session('sekolah_id')) !!}
@endif
</div>
</div>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="d-flex flex-column gap-1">
<div>
<hr class="mt-0">
<h6 class="fw-500">ALAMAT</h6>
<p class="text-muted">{{session('alamat_sekolah')}}</p>
</div>
<div>
<hr class="mt-0">
<h6 class="fw-500">KONTAK</h6>
<div class="d-flex flex-row gap-3 justify-content-start mt-3">
<div>
@ -130,18 +165,16 @@
</div>
</div>
</div>
<div class="col-md-6">
<h6 class="fw-500">ALAMAT</h6>
<p class="text-muted">{{session('alamat_sekolah')}}</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="col-md-6 mb-2">
<div class="card h-100">
<div class="card-header bg-primary-light text-primary">
<h5 class="fw-500 mb-0">Riwayat Usulan</h5>
<h5 class="fw-500 mb-0"><i class="fal fa-trophy"></i>&nbsp;Riwayat Usulan</h5>
</div>
<div class="card-body">
<div class="">

View File

@ -95,6 +95,13 @@
<a href="#" data-filetim="{{@$dok->file_sk_tim}}" data-fileusulan="{{@$dok->file_usulan}}" data-link="{{@$dok->link}}" data-level="{{$kuesioner->level}}" data-secureid="{{encode_id($kuesioner->KuesionerId)}}" data-toggle="modal" data-target="#modal" title="View Data" data-jenisusulan="{{$jenis_usulan}}" class="btn btn-primary btnModal">Perbaikan Data &nbsp; <i class="fal fa-pencil text-white"></i></a>
</div>
</div>
@else
<div class="card mb-2 bg-primary-light text-primary">
<div class="card-body">
<h4 class="fw-500"><i class="fal fa-info-circle"></i>&nbsp;Verifikasi Kuesioner Leveling</h4>
<p>Kuesioner anda sedang dilakukan verifikasi oleh sudin/dinas terkait. Mohon Menunggu...</p>
</div>
</div>
@endif
@endif
<form method="POST" action="{{route($route.'.store')}}" id="form" enctype="multipart/form-data">

View File

@ -123,15 +123,15 @@
<tr>
<!-- <th data-field="action">#</th> -->
<th data-field="no">No</th>
<th data-field="npsn">NPSN</th>
<th data-field="nama">Nama Sekolah</th>
{{-- <th data-field="npsn">NPSN</th> --}}
<th data-field="sekolah">Sekolah</th>
<th data-field="wilayah">Wilayah</th>
<th data-field="kecamatan">Kecamatan</th>
<th data-field="status_level">Status Level</th>
{{-- <th data-field="status_level">Status Level</th> --}}
<!-- <th data-field="tanggal_level">Tanggal Level</th> -->
<!-- <th data-field="penghargaan">Penghargaan Terakhir</th> -->
<th data-field="penghargaan">Penghargaan Terakhir</th>
<!-- <th data-field="dok">DOK Administrasi</th> -->
<th data-field="kriteria">Pemenuhan Kriteria</th>
{{-- <th data-field="kriteria">Pemenuhan Kriteria</th> --}}
<th data-field="jenis_usulan">Jenis Usulan</th>
<th data-field="usulkan_csa">Status</th>
<!-- <th data-field="perpanjang_csa">Perpanjangan CSA</th> -->

View File

@ -168,7 +168,7 @@
</script>
<script type="text/javascript">
$(document).on('change', '.checklistInput1[type="radio"]', function () {
$(document).on('change', '.checklistInput[type="radio"]', function () {
const value = $(this).data('value');
const label = $(this).val();
const container = $('#dynamic-file-container');
@ -186,7 +186,7 @@
`);
});
$(document).on('change', '.checklistInput1', function () {
$(document).on('change', '.checklistInput', function () {
const value = $(this).data('value');
const label = $(this).val();
const container = $('#dynamic-file-container');

View File

@ -31,7 +31,7 @@ Route::get('dashboard',[HomeController::class,'dashboard'])->name('dashboard');
Route::post('session', [HomeController::class, 'session'])->name('dashboard.session');
Route::get('dashboard/gridUsulan',[HomeController::class,'gridUsulan'])->name('gridUsulan');
Route::get('dashboard/gridAdministrasi',[HomeController::class,'gridAdministrasi'])->name('gridAdministrasi');
Route::get('profile',[ProfileController::class,'profile'])->name('profile');
Route::get('profile/{id?}',[ProfileController::class,'profile'])->name('profile');
Route::post('profile-store',[ProfileController::class,'profileStore'])->name('profileStore');
Route::get('profile-sekolah',[ProfileController::class,'index'])->name('profile.index');
Route::get('profile-sekolah/grid',[ProfileController::class,'grid'])->name('profile.grid');