main
Ilham Wara Nugroho 2026-01-15 16:05:51 +07:00
parent 83e70a99bc
commit 51e71a03f1
4 changed files with 100 additions and 71 deletions

View File

@ -54,7 +54,7 @@ class AdministrasiController extends Controller
} }
if(@request()->status_sekolah){ if(@request()->status_sekolah){
$kuesioner->whereHas('sekolah',function($query){ $kuesioner->whereHas('sekolah',function($query){
$query->where('status',request()->status); $query->where('status',request()->status_sekolah);
}); });
} }
if(@request()->level){ if(@request()->level){

View File

@ -14,6 +14,7 @@ use App\Models\Master\Sekolah;
use App\Models\Master\Provinsi; use App\Models\Master\Provinsi;
use App\Models\Master\MasterGroup; use App\Models\Master\MasterGroup;
use App\Models\Master\Kabupaten; use App\Models\Master\Kabupaten;
use App\Models\Master\Kecamatan;
use App\Models\SK; use App\Models\SK;
use App\Models\User; use App\Models\User;
@ -198,19 +199,40 @@ class ProfileController extends Controller
return view($this->template.'.sekolah', $data); return view($this->template.'.sekolah', $data);
}else{ }else{
$data['provinsi'] = Provinsi::where('kode_wilayah','010000')->get(); $data['provinsi'] = Provinsi::where('kode_wilayah','010000')->get();
if(session('kabupaten_id') != ''){
$data['kecamatan'] = Kecamatan::where('ms_kabupaten_id',session('kabupaten_id'))->get();
}
return view($this->template.'.admin', $data); return view($this->template.'.admin', $data);
} }
} }
public function grid(Request $request) public function grid(Request $request)
{ {
$_data = [];
$profile = Profile::groupBy('ms_sekolah_id')->pluck('ms_sekolah_id')->toArray(); $profile = Profile::groupBy('ms_sekolah_id')->pluck('ms_sekolah_id')->toArray();
if(session('kabupaten_id') != ''){ if(session('kabupaten_id') != ''){
$sekolah = Sekolah::whereIn('MsSekolahId',$profile)->where('ms_kabupaten_id',session('kabupaten_id'))->get(); $sekolah = Sekolah::whereIn('MsSekolahId',$profile)->where('ms_kabupaten_id',session('kabupaten_id'));
}else{ }else{
$sekolah = Sekolah::whereIn('MsSekolahId',$profile)->get(); $sekolah = Sekolah::whereIn('MsSekolahId',$profile);
} }
foreach ($sekolah as $key => $row) {
if(@request()->tingkat){
$sekolah->where('ms_tingkat_sekolah_id',request()->tingkat);
}
if(@request()->status_sekolah){
$sekolah->where('status',request()->status_sekolah);
}
if(@request()->provinsi != 0){
$sekolah->where('ms_provinsi_id',decode_id(request()->provinsi));
}
if(@request()->kabupaten != 0){
$sekolah->where('ms_kabupaten_id',decode_id(request()->kabupaten));
}
if(@request()->kecamatan != 0){
$sekolah->where('ms_kecamatan_id',decode_id(request()->kecamatan));
}
foreach ($sekolah->get() as $key => $row) {
$action = ''; $action = '';

View File

@ -14,63 +14,11 @@
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<h5 class="mb-4"><i class="fal fa-filter"></i>&nbsp;Filter</h5> <h5 class="mb-4"><i class="fal fa-filter"></i>&nbsp;Filter</h5>
<div class="row"> <div class="row" id="pencarian">
<div class="col-md-12 mb-2">
<div class="row">
<div class="col-md-3">
<div class="form-group">
<select class="form-control select2">
<option value="">-- PILIH TINGKAT --</option>
<option value="1">SD</option>
<option value="2">SMP</option>
<option value="3">SMA</option>
<option value="4">SMK</option>
<option value="5">MI</option>
<option value="6">MTs</option>
<option value="7">MA</option>
<option value="8">SD LB</option>
<option value="9">SMP LB</option>
<option value="10">SMA LM</option>
<option value="11">SLB Khusus</option>
</select>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<select class="form-control select2">
<option value="">-- PILIH STATUS --</option>
<option value="Negeri">Negeri</option>
<option value="Swasta">Swasta</option>
</select>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<select class="form-control select2">
<option value="">-- PILIH LEVEL --</option>
<option value="1"> LEVEL 1</option>
<option value="2"> LEVEL 2</option>
<option value="3"> LEVEL 3</option>
<option value="4"> LEVEL 4</option>
<option value="5"> LEVEL 5</option>
</select>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<select class="form-control select2">
<option value="">-- PILIH JENIS USULAN --</option>
<option value="1">Kab/Kota</option>
<option value="2">Provinsi</option>
<option value="3">Nasional</option>
<option value="4">Mandiri</option>
</select>
</div>
</div>
</div>
</div>
<div class="col-md-12 mb-2"> <div class="col-md-12 mb-2">
<div class="row"> <div class="row">
@if(session('group_alias') == 'administrator')
<div class="col-md-3"> <div class="col-md-3">
<div class="form-group"> <div class="form-group">
<select name="provinsi" class="form-control select2" id="provinsi"> <select name="provinsi" class="form-control select2" id="provinsi">
@ -94,10 +42,53 @@
<option value="0">- PILIH KECAMATAN -</option> <option value="0">- PILIH KECAMATAN -</option>
</select> </select>
</div> </div>
</div> </div>
@else
<div class="col-md-3"> <div class="col-md-3">
<div class="form-group"> <div class="form-group">
<button class="btn btn-success btn-block"><i class="fal fa-search"></i>&nbsp;Cari Data</button> <select name="kecamatan" class="form-control select2" id="kecamatan" required>
<option value="0">- PILIH KECAMATAN -</option>
@foreach($kecamatan as $dataKec)
<option value="{{encode_id($dataKec->MsKecamatanId)}}">{{$dataKec->name}}</option>
@endforeach
</select>
</div>
</div>
@endif
</div>
</div>
<div class="col-md-12 mb-2">
<div class="row">
<div class="col-md-3">
<div class="form-group">
<select name="tingkat" class="form-control select2">
<option value="">-- PILIH TINGKAT --</option>
<option value="1">SD</option>
<option value="2">SMP</option>
<option value="3">SMA</option>
<option value="4">SMK</option>
<option value="5">MI</option>
<option value="6">MTs</option>
<option value="7">MA</option>
<option value="8">SD LB</option>
<option value="9">SMP LB</option>
<option value="10">SMA LM</option>
<option value="11">SLB Khusus</option>
</select>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<select name="status_sekolah" class="form-control select2">
<option value="">-- PILIH STATUS --</option>
<option value="Negeri">Negeri</option>
<option value="Swasta">Swasta</option>
</select>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<button id="ok" class="btn btn-success btn-block"><i class="fal fa-search"></i>&nbsp;Cari Data</button>
</div> </div>
</div> </div>
</div> </div>
@ -126,6 +117,7 @@
data-sort-order="desc" data-sort-order="desc"
data-page-size="10" data-page-size="10"
data-id-field="id" data-id-field="id"
data-query-params="queryParams"
id="grid-data"> id="grid-data">
<thead class="bg-primary-light text-primary"> <thead class="bg-primary-light text-primary">
<tr> <tr>
@ -158,9 +150,23 @@
<script src="{{asset('assets/js/datagrid/datatables/datatables.bundle.js')}}"></script> <script src="{{asset('assets/js/datagrid/datatables/datatables.bundle.js')}}"></script>
<script src="{{asset('assets/js/bootstrap-table.min.js')}}"></script> <script src="{{asset('assets/js/bootstrap-table.min.js')}}"></script>
<script type="text/javascript"> <script type="text/javascript">
var $table = $('#grid-data');
var $ok = $('#ok');
$('.btn-filter').on('click',function(){ $('.btn-filter').on('click',function(){
$('#filter').toggleClass('d-none'); $('#filter').toggleClass('d-none');
}); });
$(function() {
$ok.click(function() {
$table.bootstrapTable('refresh');
})
});
function queryParams(params) {
$('#pencarian').find('input[name], select').each(function() {
params[$(this).attr('name')] = $(this).val()
})
return params
}
$('select').on("select2:selecting", function(e) { $('select').on("select2:selecting", function(e) {
var selectorOrigin = this.id; var selectorOrigin = this.id;
var id = e.params.args.data.id; var id = e.params.args.data.id;

View File

@ -201,10 +201,17 @@
$('#filter').toggleClass('d-none'); $('#filter').toggleClass('d-none');
}); });
$(function() { $(function() {
$ok.click(function() { $ok.click(function() {
$table.bootstrapTable('refresh'); $table.bootstrapTable('refresh');
})
}) })
});
function queryParams(params) {
$('#pencarian').find('input[name], select').each(function() {
params[$(this).attr('name')] = $(this).val()
})
return params
}
$("#grid-data").on("click", ".toggle-row", function() { $("#grid-data").on("click", ".toggle-row", function() {
let btn = $(this); let btn = $(this);
let row = btn.closest("tr"); let row = btn.closest("tr");
@ -434,13 +441,7 @@
} }
}); });
}); });
function queryParams(params) {
$('#pencarian').find('input[name], select').each(function() {
params[$(this).attr('name')] = $(this).val()
})
return params
}
$('select').on("select2:selecting", function(e) { $('select').on("select2:selecting", function(e) {
var selectorOrigin = this.id; var selectorOrigin = this.id;
var id = e.params.args.data.id; var id = e.params.args.data.id;