update
parent
b1dbd6c997
commit
19667aeb83
|
@ -4,6 +4,347 @@ use App\Models\Master\MasterMenu;
|
|||
use App\Models\Master\MasterAccessMenu;
|
||||
use App\Models\Kuesioner;
|
||||
use App\Models\Master\FormKriteria;
|
||||
use App\Models\Penilaian;
|
||||
|
||||
if (!function_exists('hitungSkor')) {
|
||||
/**
|
||||
* @param $val
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
function hitungSkor($key,$val,$lainnya = [])
|
||||
{
|
||||
|
||||
$skor = 0;
|
||||
$countLainnya = 0;
|
||||
if(@$lainnya){
|
||||
$countLainnya = count(array_filter($lainnya, function ($value) {
|
||||
return !is_null($value);
|
||||
}));
|
||||
}
|
||||
|
||||
if($key == 'rencana_gerakan_pblhs'){
|
||||
if($val == "Sesuai dengan Laporan EDS dan hasil IPMLH."){
|
||||
$skor = 3;
|
||||
}elseif($val == "Sesuai dengan Laporan EDS atau hasil IPMLH."){
|
||||
$skor = 2;
|
||||
}elseif($val == "Tidak sesuai dengan Laporan EDS dan hasil IPMLH."){
|
||||
$skor = 1;
|
||||
}else{
|
||||
$skor = 0;
|
||||
}
|
||||
}elseif($key == 'pihak_terlibat_pblhs'){
|
||||
$array3 = ["Kepala Sekolah", "Dewan pendidik", "Komite sekolah", "Peserta Didik", "Masyarakat"];
|
||||
$array2 = ["Kepala Sekolah", "Dewan pendidik", "Komite sekolah", "Peserta Didik"];
|
||||
$array1 = ["Kepala Sekolah", "Dewan pendidik", "Komite sekolah"];
|
||||
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif (!array_diff($array2, $val) && !array_diff($val, $array2)) {
|
||||
$skor = 2;
|
||||
} elseif (!array_diff($array1, $val) && !array_diff($val, $array1)) {
|
||||
$skor = 1;
|
||||
} else {
|
||||
$skor = 0;
|
||||
}
|
||||
|
||||
}elseif($key == 'dokumen_ktsp'){
|
||||
|
||||
$array3 = ["Visi", "Misi", "Tujuan", "Program pengembangan diri"];
|
||||
$array2 = ["Visi", "Misi", "Tujuan"];
|
||||
$array22 = ["Visi", "Misi", "Program pengembangan diri"];
|
||||
$array1 = ["Visi", "Misi","Tujuan", "Program pengembangan diri tidak memuat"];
|
||||
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif ((!array_diff($array2, $val) && !array_diff($val, $array2)) || (!array_diff($array22, $val) && !array_diff($val, $array22))) {
|
||||
$skor = 2;
|
||||
} elseif (!array_diff($array1, $val) && !array_diff($val, $array1)) {
|
||||
$skor = 1;
|
||||
} else {
|
||||
$skor = 0;
|
||||
}
|
||||
}elseif($key == 'aspek_prlh'){
|
||||
if(count($val) >= 5){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}elseif(count($val) == 1){
|
||||
$skor = 1;
|
||||
}else{
|
||||
$skor = 0;
|
||||
}
|
||||
}elseif($key == 'jumlah_rpp'){
|
||||
if($val > 80){
|
||||
$skor = 5;
|
||||
}elseif(($val > 60) && ($val < 80)){
|
||||
$skor = 4;
|
||||
}elseif(($val > 40) && ($val < 60)){
|
||||
$skor = 3;
|
||||
}elseif(($val > 20) && ($val < 40)){
|
||||
$skor = 2;
|
||||
}elseif($val <= 20){
|
||||
$skor = 1;
|
||||
}else{
|
||||
$skor = 0;
|
||||
}
|
||||
}elseif($key == 'unsur_warga_partisipasi'){
|
||||
|
||||
if(count($val) <= 4){
|
||||
$skor = 1;
|
||||
}elseif((count($val) >= 4) && ($countLainnya == 1)){
|
||||
$skor = 2;
|
||||
}elseif((count($val) >= 4) && ($countLainnya == 2)){
|
||||
$skor = 3;
|
||||
}elseif((count($val) >= 4) && ($countLainnya == 3)){
|
||||
$skor = 4;
|
||||
}elseif((count($val) >= 4) && ($countLainnya >= 4)){
|
||||
$skor = 5;
|
||||
}else{
|
||||
$skor = 0;
|
||||
}
|
||||
}elseif($key == 'upaya_pemeliharaan'){
|
||||
if(count($val) >= 7){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 6){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 5){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 2;
|
||||
}elseif(count($val) <= 3){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'pelihara_kebersihan'){
|
||||
|
||||
$array3 = ["Sekolah bersih", "Sanitasi berfungsi", "Drainase berfungsi"];
|
||||
$array2 = ["Sekolah bersih", "Sanitasi berfungsi"];
|
||||
$array22 = ["Sekolah bersih", "Drainase berfungsi"];
|
||||
if(!empty($val) && !is_array($val)){
|
||||
$val = array($val);
|
||||
}
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif ((!array_diff($array2, $val) && !array_diff($val, $array2)) || (!array_diff($array22, $val) && !array_diff($val, $array22))) {
|
||||
$skor = 2;
|
||||
} else {
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'upaya_pengurangan_timbulan'){
|
||||
if(count($val) >= 7){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 6){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 5){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 2;
|
||||
}elseif(count($val) <= 3){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'upaya_daur_ulang_sampah'){
|
||||
if(count($val) >= 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}elseif(count($val) == 1){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'pihak_terlibat_pemindahan_sampah'){
|
||||
$array3 = ["Peserta didik", "Kader Adiwiyata", "Petugas kebersihan"];
|
||||
$array2 = ["Peserta didik", "Kader Adiwiyata"];
|
||||
$array1 = ["Petugas kebersihan"];
|
||||
if(!empty($val) && !is_array($val)){
|
||||
$val = array($val);
|
||||
}
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif ((!array_diff($array2, $val) && !array_diff($val, $array2))) {
|
||||
$skor = 2;
|
||||
}elseif ((!array_diff($array1, $val) && !array_diff($val, $array1))) {
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'kegiatan_penghijauan'){
|
||||
$array3 = ["Penanaman", "Pemeliharaan", "Pembibitan"];
|
||||
$array2 = ["Penanaman", "Pemeliharaan"];
|
||||
$array1 = ["Penanaman"];
|
||||
if(!empty($val) && !is_array($val)){
|
||||
$val = array($val);
|
||||
}
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif ((!array_diff($array2, $val) && !array_diff($val, $array2))) {
|
||||
$skor = 2;
|
||||
}elseif ((!array_diff($array1, $val) && !array_diff($val, $array1))) {
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'warga_sekolah'){
|
||||
if(count($val) >= 5){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}elseif(count($val) <= 1){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'upaya_konservasi_air'){
|
||||
if(count($val) >= 7){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 6){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 5){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 2;
|
||||
}elseif(count($val) <= 3){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'upaya_konservasi_energi'){
|
||||
if(count($val) >= 7){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 6){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 5){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 2;
|
||||
}elseif(count($val) <= 3){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'jumlah_karya_inovatif'){
|
||||
if($val >= 5){
|
||||
$skor = 3;
|
||||
}elseif(($val >= 3) || ($val <= 4)){
|
||||
$skor = 2;
|
||||
}elseif(($val >= 1) || ($val <= 2)){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'aksi_penerapan_prlh'){
|
||||
if(count($val) >= 4){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 1){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'pemilahan_sampah'){
|
||||
if($val == 'Sampah terpilah dan terkelola dengan baik'){
|
||||
$skor = 3;
|
||||
}elseif($val == 'Sampah terpilah namun tidak terkelola dengan baik'){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'jejaring_kerja'){
|
||||
if(count($val) >= 5){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'kegiatan_kampanye'){
|
||||
if(count($val) >= 5){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'media'){
|
||||
if($val >= 5){
|
||||
$skor = 3;
|
||||
}elseif(($val >= 3) || ($val <= 4)){
|
||||
$skor = 2;
|
||||
}elseif(($val >= 1) || ($val <= 2)){
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'jumlah_kader'){
|
||||
if($val > 20){
|
||||
$skor = 5;
|
||||
}elseif(($val > 15) || ($val <= 20)){
|
||||
$skor = 4;
|
||||
}elseif(($val > 10) || ($val <= 15)){
|
||||
$skor = 3;
|
||||
}elseif(($val > 5) || ($val <= 10)){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'kegiatan_kader_adiwiyata'){
|
||||
if(count($val) >= 5){
|
||||
$skor = 5;
|
||||
}elseif(count($val) == 4){
|
||||
$skor = 4;
|
||||
}elseif(count($val) == 3){
|
||||
$skor = 3;
|
||||
}elseif(count($val) == 2){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'frekuensi_pelaksanaan'){
|
||||
if($val == '3 kali dalam 1 tahun'){
|
||||
$skor = 3;
|
||||
}elseif($val == '2 kali dalam 1 tahun'){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'rencana_kegiatan_pblhs'){
|
||||
if($val > 80){
|
||||
$skor = 5;
|
||||
}elseif(($val > 60) || ($val <= 80)){
|
||||
$skor = 4;
|
||||
}elseif(($val > 40) || ($val <= 60)){
|
||||
$skor = 3;
|
||||
}elseif(($val > 20) || ($val <= 40)){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'unsur_pemantauan_evaluasi'){
|
||||
$array3 = ["Kepala sekolah", "Dewan Pendidik", "Komite sekolah","Peserta Didik","Masyarakat"];
|
||||
$array2 = ["Kepala sekolah", "Dewan Pendidik", "Komite sekolah","Peserta Didik"];
|
||||
$array1 = ["Kepala sekolah", "Dewan Pendidik", "Komite sekolah"];
|
||||
if(!empty($val) && !is_array($val)){
|
||||
$val = array($val);
|
||||
}
|
||||
if (!array_diff($array3, $val) && !array_diff($val, $array3)) {
|
||||
$skor = 3;
|
||||
} elseif ((!array_diff($array2, $val) && !array_diff($val, $array2))) {
|
||||
$skor = 2;
|
||||
}elseif ((!array_diff($array1, $val) && !array_diff($val, $array1))) {
|
||||
$skor = 1;
|
||||
}
|
||||
}
|
||||
//
|
||||
|
||||
|
||||
return $skor;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (!function_exists('formKriteria')) {
|
||||
/**
|
||||
|
@ -17,7 +358,7 @@ if (!function_exists('formKriteria')) {
|
|||
$html = '';
|
||||
foreach($kriteria as $keyKriteria => $data){
|
||||
|
||||
$nameOption = 'option_number_'.$keyKriteria;
|
||||
$penilaian = Penilaian::where('key',$data->key)->first();
|
||||
|
||||
$html .= '<div class="card mb-2 removeFormKriteria">';
|
||||
$html .= '<div class="card-body">';
|
||||
|
@ -27,13 +368,13 @@ if (!function_exists('formKriteria')) {
|
|||
if($data->type == 'textarea'){
|
||||
|
||||
$html .= '<div class="form-group m-2">';
|
||||
$html .= '<textarea class="form-control" name="'.$nameOption.'"></textarea>';
|
||||
$html .= '<textarea class="form-control is-required" name="input_'.$data->key.'"></textarea>';
|
||||
$html .= '</div>';
|
||||
|
||||
}elseif($data->type == 'freetext'){
|
||||
|
||||
$html .= '<div class="form-group m-2">';
|
||||
$html .= '<input type="text" class="form-control" name="'.$nameOption.'">';
|
||||
$html .= '<input type="text" class="form-control is-required" name="input_'.$data->key.'">';
|
||||
$html .= '</div>';
|
||||
|
||||
}elseif($data->type == 'checkbox'){
|
||||
|
@ -43,7 +384,7 @@ if (!function_exists('formKriteria')) {
|
|||
$key = 'number_'.$keyKriteria.'_'.$keyOption;
|
||||
|
||||
$html .= '<div class="custom-control custom-checkbox m-2">';
|
||||
$html .= '<input type="checkbox" class="custom-control-input" id="'.$key.'" value="'.$dataOption.'" name="'.$nameOption.'">';
|
||||
$html .= '<input type="checkbox" class="custom-control-input is-required" id="'.$key.'" value="'.$dataOption.'" name="input_'.$data->key.'[]">';
|
||||
$html .= '<label class="custom-control-label" for="'.$key.'">'.$dataOption.'</label>';
|
||||
$html .= '</div>';
|
||||
}
|
||||
|
@ -55,14 +396,14 @@ if (!function_exists('formKriteria')) {
|
|||
$key = 'number_'.$keyKriteria.'_'.$keyOption;
|
||||
|
||||
$html .= '<div class="custom-control custom-radio m-2">';
|
||||
$html .= '<input type="radio" class="custom-control-input" id="'.$key.'" value="'.$dataOption.'" name="'.$nameOption.'">';
|
||||
$html .= '<input type="radio" class="custom-control-input is-required" id="'.$key.'" value="'.$dataOption.'" name="input_'.$data->key.'">';
|
||||
$html .= '<label class="custom-control-label" for="'.$key.'">'.$dataOption.'</label>';
|
||||
$html .= '</div>';
|
||||
}
|
||||
|
||||
}elseif($data->type == 'number'){
|
||||
$html .= '<div class="form-group m-2">';
|
||||
$html .= '<input type="text" class="form-control numberInput" name="'.$nameOption.'">';
|
||||
$html .= '<input type="text" class="form-control is-required numberInput" name="input_'.$data->key.'">';
|
||||
$html .= '</div>';
|
||||
}
|
||||
|
||||
|
@ -70,14 +411,13 @@ if (!function_exists('formKriteria')) {
|
|||
$html .= '</div>';
|
||||
|
||||
if($data->active_lainnya == 1){
|
||||
$nameOptionLainnya = 'lainnya_number_'.$keyKriteria;
|
||||
$html .= '<div class="card mb-2 removeFormKriteria">';
|
||||
$html .= '<div class="card-body">';
|
||||
$html .= '<h6><b>'.$data->judul_lainnya.'</b></h6>';
|
||||
|
||||
for($i = 1; $i <= $data->number_answer_lainnya; $i++){
|
||||
$html .= '<div class="form-group m-2">';
|
||||
$html .= '<input type="text" class="form-control" placeholder="Jawaban" name="'.$nameOptionLainnya.'">';
|
||||
$html .= '<input type="text" class="form-control" placeholder="Jawaban" name="input_lainnya[]">';
|
||||
$html .= '</div>';
|
||||
}
|
||||
$html .= '</div>';
|
||||
|
@ -85,6 +425,17 @@ if (!function_exists('formKriteria')) {
|
|||
}
|
||||
}
|
||||
|
||||
$html .= '<div class="card mb-2 removeFormKriteria">';
|
||||
$html .= '<input type="hidden" name="key" value="'.encode_id($page_number).'">';
|
||||
$html .= '<div class="card-body">';
|
||||
$html .= '<h6><b>Link Google Drive (folder/File penyimpanan bukti)</b></h6>';
|
||||
$html .= '<div class="form-group">';
|
||||
$html .= '<input type="text" class="form-control" name="input_link_grdive" placeholder="Link Google Drive (folder penyimpanan bukti)">';
|
||||
$html .= '<small><i>Contoh link : https://example.com</i></small>';
|
||||
$html .= '</div>';
|
||||
$html .= '</div>';
|
||||
$html .= '</div>';
|
||||
|
||||
return $html;
|
||||
}
|
||||
}
|
||||
|
@ -98,6 +449,7 @@ if (!function_exists('levelAdiwiyata')) {
|
|||
function levelAdiwiyata($npsn)
|
||||
{
|
||||
$kuesioner = Kuesioner::where('npsn',$npsn)->where('tahun',date('Y'))->first();
|
||||
$data = null;
|
||||
if(@$kuesioner){
|
||||
$data = $kuesioner;
|
||||
}else{
|
||||
|
@ -106,20 +458,20 @@ if (!function_exists('levelAdiwiyata')) {
|
|||
}
|
||||
$level = '';
|
||||
|
||||
if($data->level == 0){
|
||||
if(($data->level == 0) && ($data->tim_adiwiyata == 2) && ($data->info_pblhs == 2) ){
|
||||
if(@$data->level == 0){
|
||||
if((@$data->level == 0) && (@$data->tim_adiwiyata == 2) && (@$data->info_pblhs == 2) ){
|
||||
$level = '2';
|
||||
}elseif(($data->level == 0) && ($data->tim_adiwiyata == 2)){
|
||||
}elseif((@$data->level == 0) && (@$data->tim_adiwiyata == 2)){
|
||||
$level = '1';
|
||||
}else{
|
||||
$level = '0';
|
||||
}
|
||||
}elseif($data->level == 1){
|
||||
}elseif(@$data->level == 1){
|
||||
$level = '3';
|
||||
}elseif($data->level == 2){
|
||||
}elseif(@$data->level == 2){
|
||||
$level = '4';
|
||||
}else{
|
||||
$level = '4';
|
||||
$level = '0';
|
||||
}
|
||||
|
||||
return $level;
|
||||
|
|
|
@ -4,6 +4,10 @@ namespace App\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Master\FormKriteria;
|
||||
use App\Models\Master\Provinsi;
|
||||
use App\Models\Master\Kabupaten;
|
||||
use App\Models\Master\Kecamatan;
|
||||
use App\Models\Master\Sekolah;
|
||||
|
||||
class AjaxController extends Controller
|
||||
{
|
||||
|
@ -14,4 +18,45 @@ class AjaxController extends Controller
|
|||
|
||||
return response()->json(['status' => true, 'data' => $data,'title' => $title->kategori]);
|
||||
}
|
||||
public function getKabupaten(Request $request)
|
||||
{
|
||||
$_data = [];
|
||||
if(@$request->id){
|
||||
$keyId = decode_id($request->id);
|
||||
$data = Kabupaten::where('ms_provinsi_id',$keyId)->get();
|
||||
foreach($data as $k => $val){
|
||||
$_data[$k]['id'] = encode_id($val->MsKabupatenId);
|
||||
$_data[$k]['name'] = $val->name;
|
||||
}
|
||||
}
|
||||
return response()->json(['status' => true, 'data' => $_data]);
|
||||
}
|
||||
public function getKecamatan(Request $request)
|
||||
{
|
||||
$_data = [];
|
||||
if(@$request->id){
|
||||
$keyId = decode_id($request->id);
|
||||
$data = Kecamatan::where('ms_kabupaten_id',$keyId)->get();
|
||||
foreach($data as $k => $val){
|
||||
$_data[$k]['id'] = encode_id($val->MsKecamatanId);
|
||||
$_data[$k]['name'] = $val->name;
|
||||
}
|
||||
}
|
||||
return response()->json(['status' => true, 'data' => $_data]);
|
||||
}
|
||||
|
||||
public function getSekolah(Request $request)
|
||||
{
|
||||
$_data = [];
|
||||
if(@$request->id){
|
||||
$keyId = decode_id($request->id);
|
||||
$data = Sekolah::where('ms_kecamatan_id',$keyId)->get();
|
||||
foreach($data as $k => $val){
|
||||
$_data[$k]['id'] = encode_id($val->MsSekolahId);
|
||||
$_data[$k]['name'] = $val->nama_sekolah;
|
||||
$_data[$k]['npsn'] = $val->npsn;
|
||||
}
|
||||
}
|
||||
return response()->json(['status' => true, 'data' => $_data]);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,145 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use App\Models\Master\Provinsi;
|
||||
use App\Models\Master\Kabupaten;
|
||||
use App\Models\Master\Kecamatan;
|
||||
use App\Models\Master\Sekolah;
|
||||
use App\Models\Master\MasterTingkatSekolah;
|
||||
|
||||
class ApiController extends Controller
|
||||
{
|
||||
public function getProvince()
|
||||
{
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, array(
|
||||
CURLOPT_URL => 'https://dapo.dikdasmen.go.id/rekap/dataSekolah?id_level_wilayah=0&kode_wilayah=000000&semester_id=20242',
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => '',
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_CUSTOMREQUEST => 'GET',
|
||||
));
|
||||
|
||||
$response = curl_exec($curl);
|
||||
|
||||
curl_close($curl);
|
||||
|
||||
$data = json_decode($response);
|
||||
$_data = [];
|
||||
foreach($data as $k => $val){
|
||||
$_data = Provinsi::updateOrCreate([
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah)
|
||||
],[
|
||||
'name' => str_replace('Prov. ','',$val->nama),
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah),
|
||||
]);
|
||||
}
|
||||
|
||||
echo "-- DONE --";
|
||||
|
||||
}
|
||||
|
||||
public function getKabupaten()
|
||||
{
|
||||
$prov = Provinsi::where('kode_wilayah','010000')->first();
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, array(
|
||||
CURLOPT_URL => 'https://dapo.dikdasmen.go.id/rekap/dataSekolah?id_level_wilayah=1&kode_wilayah=010000&semester_id=20242',
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => '',
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_CUSTOMREQUEST => 'GET',
|
||||
));
|
||||
|
||||
$response = curl_exec($curl);
|
||||
|
||||
curl_close($curl);
|
||||
$data = json_decode($response);
|
||||
$_data = [];
|
||||
|
||||
|
||||
foreach($data as $k => $val){
|
||||
$_data = Kabupaten::updateOrCreate([
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah),
|
||||
],[
|
||||
'ms_provinsi_id' => $prov->MsProvinsiId,
|
||||
'name' => str_replace('Kab. ','',$val->nama),
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah),
|
||||
]);
|
||||
}
|
||||
|
||||
echo "-- DONE --";
|
||||
|
||||
}
|
||||
|
||||
public function getKecamatan()
|
||||
{
|
||||
//get kabupaten jakarta
|
||||
$prov = Provinsi::where('kode_wilayah','010000')->first();
|
||||
$kab = Kabupaten::where('ms_provinsi_id',$prov->MsProvinsiId)->get();
|
||||
foreach($kab as $data){
|
||||
$response = Http::timeout(300)->withoutVerifying()->get('https://dapo.dikdasmen.go.id/rekap/dataSekolah?id_level_wilayah=2&kode_wilayah='.$data->kode_wilayah.'&semester_id=20242');
|
||||
|
||||
$kec = json_decode($response->body());
|
||||
foreach($kec as $val){
|
||||
$_data = Kecamatan::updateOrCreate([
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah),
|
||||
],[
|
||||
'ms_provinsi_id' => $prov->MsProvinsiId,
|
||||
'ms_kabupaten_id' => $data->MsKabupatenId,
|
||||
'name' => str_replace('Kec. ','',$val->nama),
|
||||
'kode_wilayah' => str_replace(' ', '', $val->kode_wilayah),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
echo "-- DONE --";
|
||||
}
|
||||
|
||||
public function getSekolah()
|
||||
{
|
||||
|
||||
$type = request()->type;
|
||||
|
||||
$level = MasterTingkatSekolah::where('name',strtoupper($type))->first();
|
||||
//get kabupaten jakarta
|
||||
$prov = Provinsi::where('kode_wilayah','010000')->first();
|
||||
$kab = Kabupaten::where('ms_provinsi_id',$prov->MsProvinsiId)->get();
|
||||
foreach($kab as $data){
|
||||
$kec = Kecamatan::where('ms_kabupaten_id',$data->MsKabupatenId)->get();
|
||||
|
||||
foreach($kec as $dataKec){
|
||||
$response = Http::timeout(300)->withoutVerifying()->get('https://dapo.dikdasmen.go.id/rekap/progresSP?id_level_wilayah=3&kode_wilayah='.$dataKec->kode_wilayah.'&semester_id=20242&bentuk_pendidikan_id='.$type);
|
||||
|
||||
$dataSekolah = json_decode($response->body());
|
||||
|
||||
foreach($dataSekolah as $val){
|
||||
$_data = Sekolah::updateOrCreate([
|
||||
'npsn' => $val->npsn,
|
||||
],[
|
||||
'ms_provinsi_id' => $prov->MsProvinsiId,
|
||||
'ms_kabupaten_id' => $data->MsKabupatenId,
|
||||
'ms_kecamatan_id' => $dataKec->MsKecamatanId,
|
||||
'ms_tingkat_sekolah_id' => $level->MsTingkatSekolahId,
|
||||
'status' => $val->status_sekolah,
|
||||
'nama_sekolah' => $val->nama,
|
||||
'npsn' => $val->npsn,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
echo "-- DONE --";
|
||||
}
|
||||
}
|
|
@ -9,6 +9,7 @@ use Illuminate\Support\Facades\Auth;
|
|||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use App\Models\Master\Sekolah;
|
||||
|
||||
class CustomLoginController extends Controller
|
||||
{
|
||||
|
@ -40,12 +41,13 @@ class CustomLoginController extends Controller
|
|||
'username' => $user->username,
|
||||
'name' => $user->name,
|
||||
'email' => $user->email,
|
||||
'npsn' => @$user->sekolah->npsn,
|
||||
'tingkat_sekolah' => @$user->sekolah->tingkat->name,
|
||||
'status_sekolah' => @$user->sekolah->status_sekolah,
|
||||
'alamat_sekolah' => @$user->sekolah->alamat_sekolah,
|
||||
'kontak_person' => @$user->sekolah->kontak_person,
|
||||
'telp' => @$user->sekolah->telp,
|
||||
'sekolah_id' => @$user->profile->sekolah->MsSekolahId,
|
||||
'npsn' => @$user->profile->npsn,
|
||||
'tingkat_sekolah' => @$user->profile->tingkat->name,
|
||||
'status_sekolah' => @$user->profile->status_sekolah,
|
||||
'alamat_sekolah' => @$user->profile->alamat_sekolah,
|
||||
'kontak_person' => @$user->profile->kontak_person,
|
||||
'telp' => @$user->profile->telp,
|
||||
'currYear' => date('Y'),
|
||||
'group_id' => @$user->ms_group_id,
|
||||
'group_alias' => @$user->group->alias,
|
||||
|
@ -74,12 +76,13 @@ class CustomLoginController extends Controller
|
|||
'username' => $user->username,
|
||||
'name' => $user->name,
|
||||
'email' => $user->email,
|
||||
'npsn' => @$user->sekolah->npsn,
|
||||
'tingkat_sekolah' => @$user->sekolah->tingkat->name,
|
||||
'status_sekolah' => @$user->sekolah->status_sekolah,
|
||||
'alamat_sekolah' => @$user->sekolah->alamat_sekolah,
|
||||
'kontak_person' => @$user->sekolah->kontak_person,
|
||||
'telp' => @$user->sekolah->telp,
|
||||
'sekolah_id' => @$user->profile->sekolah->MsSekolahId,
|
||||
'npsn' => @$user->profile->npsn,
|
||||
'tingkat_sekolah' => @$user->profile->tingkat->name,
|
||||
'status_sekolah' => @$user->profile->status_sekolah,
|
||||
'alamat_sekolah' => @$user->profile->alamat_sekolah,
|
||||
'kontak_person' => @$user->profile->kontak_person,
|
||||
'telp' => @$user->profile->telp,
|
||||
'currYear' => date('Y'),
|
||||
'group_id' => @$user->ms_group_id,
|
||||
'group_alias' => @$user->group->alias,
|
||||
|
|
|
@ -10,24 +10,31 @@ use Illuminate\Support\Facades\Hash;
|
|||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use App\Models\Master\MasterGroupUser;
|
||||
use App\Models\Master\Provinsi;
|
||||
use App\Models\Master\Sekolah;
|
||||
use App\Models\ProfileSekolah as Profile;
|
||||
|
||||
class CustomRegisterController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('auth.register');
|
||||
$data['provinsi'] = Provinsi::where('kode_wilayah','010000')->get();
|
||||
return view('auth.register',$data);
|
||||
}
|
||||
|
||||
public function post_register(Request $request)
|
||||
{
|
||||
|
||||
try {
|
||||
Validator::make($request->all(), [
|
||||
'email' => 'required|unique:users|email',
|
||||
'name' => 'required|max:50',
|
||||
'npsn' => 'required',
|
||||
'tingkat_sekolah' => 'required',
|
||||
'status_sekolah' => 'required',
|
||||
// 'name' => 'required|max:50',
|
||||
'provinsi' => 'required',
|
||||
'kabupaten' => 'required',
|
||||
'kecamatan' => 'required',
|
||||
'sekolah' => 'required',
|
||||
// 'tingkat_sekolah' => 'required',
|
||||
// 'status_sekolah' => 'required',
|
||||
'alamat_sekolah' => 'required',
|
||||
'kontak_person' => 'required',
|
||||
'telp' => 'required',
|
||||
|
@ -39,6 +46,8 @@ class CustomRegisterController extends Controller
|
|||
'password.regex' => 'Format Kata Sandi harus mengandung minimal Huruf Besar, Huruf Kecil, Angka, Spesial Karakter',
|
||||
])->validate();
|
||||
|
||||
|
||||
|
||||
$cek = Profile::where('npsn',$request->npsn)->count();
|
||||
if($cek > 0){
|
||||
return redirect('register')->with([
|
||||
|
@ -47,18 +56,27 @@ class CustomRegisterController extends Controller
|
|||
]);
|
||||
}
|
||||
|
||||
$sekolah = Sekolah::find(decode_id($request->sekolah));
|
||||
|
||||
$user = new User;
|
||||
$user->email = $request->email;
|
||||
$user->username = $request->npsn;
|
||||
$user->username = $sekolah->npsn;
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->name = $request->name;
|
||||
$user->name = $sekolah->nama_sekolah;
|
||||
$user->ms_group_id = 2;
|
||||
$user->save();
|
||||
|
||||
|
||||
|
||||
$profile = new Profile;
|
||||
$profile->user_id = $user->id;
|
||||
$profile->npsn = $request->npsn;
|
||||
$profile->ms_tingkat_sekolah_id = $request->tingkat_sekolah;
|
||||
$profile->status_sekolah = $request->status_sekolah;
|
||||
$profile->ms_provinsi_id = decode_id($request->provinsi);
|
||||
$profile->ms_kabupaten_id = decode_id($request->kabupaten);
|
||||
$profile->ms_kecamatan_id = decode_id($request->kecamatan);
|
||||
$profile->ms_sekolah_id = decode_id($request->sekolah);
|
||||
$profile->npsn = $sekolah->npsn;
|
||||
$profile->ms_tingkat_sekolah_id = $sekolah->ms_tingkat_sekolah_id;
|
||||
$profile->status_sekolah = $sekolah->status;
|
||||
$profile->alamat_sekolah = $request->alamat_sekolah;
|
||||
$profile->kontak_person = $request->kontak_person;
|
||||
$profile->telp = $request->telp;
|
||||
|
|
|
@ -141,4 +141,13 @@ class FormKriteriaController extends Controller
|
|||
|
||||
// dd(request()->all());
|
||||
}
|
||||
|
||||
public function delete($id)
|
||||
{
|
||||
$keyId = decode_id($id);
|
||||
|
||||
$form = FormKriteria::where('MsFormKriteriaId',$keyId)->delete();
|
||||
|
||||
return response()->json(['success' => true,'message' => 'Berhasil update data','type' => 'success']);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
|
|||
use Illuminate\Http\Request;
|
||||
use App\Models\Kuesioner;
|
||||
use App\Models\Master\FormKriteria;
|
||||
use App\Models\Penilaian;
|
||||
|
||||
class KriteriaController extends Controller
|
||||
{
|
||||
|
@ -23,4 +24,87 @@ class KriteriaController extends Controller
|
|||
|
||||
return view($this->template.'.form',$data);
|
||||
}
|
||||
public function store(Request $request)
|
||||
{
|
||||
// dd();
|
||||
$data = $request['data'];
|
||||
$_value = [];
|
||||
|
||||
foreach ($data as $key => $value) {
|
||||
if (strpos($key, 'input_') === 0) {
|
||||
$_value[$key] = $value;
|
||||
|
||||
if($key == 'input_unsur_warga_partisipasi'){
|
||||
$skor = hitungSkor(str_replace('input_','','input_unsur_warga_partisipasi'),$value,$data['input_lainnya']);
|
||||
}elseif($key == 'input_jumlah_timbulan'){
|
||||
$sebelum = $data['input_jumlah_timbulan'];
|
||||
$sekarang = $data['input_ratarata_jumlah_timbulan'];
|
||||
$pengurangan = $sebelum - $sekarang;
|
||||
$persentase = $sebelum > 0 ? ($pengurangan / $sebelum) * 100 : 0;
|
||||
if($persentase > 80){
|
||||
$skor = 5;
|
||||
}elseif(($persentase > 60) || ($persentase <= 80)){
|
||||
$skor = 4;
|
||||
}elseif(($persentase > 40) || ($persentase <= 60)){
|
||||
$skor = 3;
|
||||
}elseif(($persentase > 20) || ($persentase <= 40)){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
}elseif($key == 'input_jumlah_pohon'){
|
||||
$pohon = $data['input_jumlah_pohon'];
|
||||
$warga = $data['input_jumlah_warga_sekolah'];
|
||||
$persentase = $warga > 0 ? ($pohon / $warga) * 100 : 0;
|
||||
|
||||
if($persentase > 80){
|
||||
$skor = 5;
|
||||
}elseif(($persentase > 60) || ($persentase <= 80)){
|
||||
$skor = 4;
|
||||
}elseif(($persentase > 40) || ($persentase <= 60)){
|
||||
$skor = 3;
|
||||
}elseif(($persentase > 20) || ($persentase <= 40)){
|
||||
$skor = 2;
|
||||
}else{
|
||||
$skor = 1;
|
||||
}
|
||||
|
||||
}elseif($key == 'input_kondisi_kebersihan'){
|
||||
$kebersihan = $data['input_kondisi_kebersihan'];
|
||||
$drainase = $data['input_kondisi_drainase'];
|
||||
|
||||
if ($kebersihan == "Bersih" && $drainase == "Bersih") {
|
||||
$skor = 3; // Lingkungan bersih dan drainase berfungsi
|
||||
} elseif (($kebersihan == "Bersih" && $drainase == "Kurang Bersih") || ($kebersihan == "Kurang Bersih" && $drainase == "Bersih")) {
|
||||
$skor = 2; // Salah satu kondisi kurang baik
|
||||
} else {
|
||||
$skor = 1; // Lingkungan kurang bersih dan drainase tidak berfungsi
|
||||
}
|
||||
}else{
|
||||
$skor = hitungSkor(str_replace('input_','',$key),$value);
|
||||
}
|
||||
|
||||
$penilaian[$key] = Penilaian::updateOrCreate([
|
||||
'tahun' => date('Y'),
|
||||
'ms_sekolah_id' => session('sekolah_id'),
|
||||
'npsn' => session('npsn'),
|
||||
'page_number' => decode_id($data['key']),
|
||||
'key' => str_replace('input_','',$key),
|
||||
],[
|
||||
'user_id' => auth()->user()->id,
|
||||
'ms_sekolah_id' => session('sekolah_id'),
|
||||
'npsn' => session('npsn'),
|
||||
'page_number' => decode_id($data['key']),
|
||||
'key' => str_replace('input_','',$key),
|
||||
'value' => json_encode($value),
|
||||
'status' => 0,
|
||||
'skor' => $skor,
|
||||
'tahun' => date('Y'),
|
||||
'created_by' => auth()->user()->id,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,24 +24,24 @@ class ProfileController extends Controller
|
|||
|
||||
$profile = Profile::where('user_id',auth()->user()->id)->first();
|
||||
$jumlah = json_decode($profile->data_jumlah);
|
||||
$data['jumlah_peserta_didik'] = $jumlah->jumlah_peserta_didik;
|
||||
$data['jumlah_tenaga_pendidik'] = $jumlah->jumlah_tenaga_pendidik;
|
||||
$data['jumlah_tenaga_kependidikan'] = $jumlah->jumlah_tenaga_kependidikan;
|
||||
$data['jumlah_warga_sekolah_lainnya'] = $jumlah->jumlah_warga_sekolah_lainnya;
|
||||
$data['jumlah_biopori'] = $jumlah->jumlah_biopori;
|
||||
$data['jumlah_sumur_resapan'] = $jumlah->jumlah_sumur_resapan;
|
||||
$data['jumlah_pohon'] = $jumlah->jumlah_pohon;
|
||||
$data['jumlah_peserta_didik'] = @$jumlah->jumlah_peserta_didik;
|
||||
$data['jumlah_tenaga_pendidik'] = @$jumlah->jumlah_tenaga_pendidik;
|
||||
$data['jumlah_tenaga_kependidikan'] = @$jumlah->jumlah_tenaga_kependidikan;
|
||||
$data['jumlah_warga_sekolah_lainnya'] = @$jumlah->jumlah_warga_sekolah_lainnya;
|
||||
$data['jumlah_biopori'] = @$jumlah->jumlah_biopori;
|
||||
$data['jumlah_sumur_resapan'] = @$jumlah->jumlah_sumur_resapan;
|
||||
$data['jumlah_pohon'] = @$jumlah->jumlah_pohon;
|
||||
|
||||
$air = json_decode($profile->penghematan_air);
|
||||
$data['air_sebelum_pblhs'] = $air->air_sebelum_pblhs;
|
||||
$data['air_setelah_pblhs'] = $air->air_setelah_pblhs;
|
||||
$data['air_sebelum_pblhs'] = @$air->air_sebelum_pblhs;
|
||||
$data['air_setelah_pblhs'] = @$air->air_setelah_pblhs;
|
||||
|
||||
$listrik = json_decode($profile->penghematan_listrik);
|
||||
$data['listrik_sebelum_pblhs'] = $listrik->listrik_sebelum_pblhs;
|
||||
$data['listrik_setelah_pblhs'] = $listrik->listrik_setelah_pblhs;
|
||||
$data['luas_ruangan_ac'] = $listrik->luas_ruangan_ac;
|
||||
$data['luas_ruangan_non_ac'] = $listrik->luas_ruangan_non_ac;
|
||||
$data['jumlah_kader'] = $listrik->jumlah_kader;
|
||||
$data['listrik_sebelum_pblhs'] = @$listrik->listrik_sebelum_pblhs;
|
||||
$data['listrik_setelah_pblhs'] = @$listrik->listrik_setelah_pblhs;
|
||||
$data['luas_ruangan_ac'] = @$listrik->luas_ruangan_ac;
|
||||
$data['luas_ruangan_non_ac'] = @$listrik->luas_ruangan_non_ac;
|
||||
$data['jumlah_kader'] = @$listrik->jumlah_kader;
|
||||
|
||||
return view($this->template.'.sekolah', $data);
|
||||
}else{
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Master;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Kabupaten extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $table = 'ms_kabupaten';
|
||||
protected $primaryKey = 'MsKabupatenId';
|
||||
|
||||
protected $fillable = [
|
||||
'ms_provinsi_id',
|
||||
'name',
|
||||
'kode_wilayah',
|
||||
];
|
||||
|
||||
public function provinsi()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Provinsi','ms_provinsi_id','MsProvinsiId');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Master;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Kecamatan extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $table = 'ms_kecamatan';
|
||||
protected $primaryKey = 'MsKecamatanId';
|
||||
|
||||
protected $fillable = [
|
||||
'ms_provinsi_id',
|
||||
'ms_kabupaten_id',
|
||||
'name',
|
||||
'kode_wilayah',
|
||||
];
|
||||
|
||||
public function provinsi()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Provinsi','ms_provinsi_id','MsProvinsiId');
|
||||
}
|
||||
|
||||
public function kabupaten()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Kabupaten','ms_kabupaten_id','MsKabupatenId');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Master;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Kelurahan extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $table = 'ms_kelurahan';
|
||||
protected $primaryKey = 'MsKelurahanId';
|
||||
|
||||
protected $fillable = [
|
||||
'ms_provinsi_id',
|
||||
'ms_kabupaten_id',
|
||||
'ms_kecamatan_id',
|
||||
'name',
|
||||
'kode_wilayah',
|
||||
];
|
||||
|
||||
public function provinsi()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Provinsi','ms_provinsi_id','MsProvinsiId');
|
||||
}
|
||||
|
||||
public function kabupaten()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Kabupaten','ms_kabupaten_id','MsKabupatenId');
|
||||
}
|
||||
|
||||
public function kecamatan()
|
||||
{
|
||||
return $this->belongsTo('\App\Models\Master\Kecamatan','ms_kecamatan_id','MsKecamatanId');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Master;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Provinsi extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $table = 'ms_provinsi';
|
||||
protected $primaryKey = 'MsProvinsiId';
|
||||
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'kode_wilayah',
|
||||
];
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Master;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Sekolah extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $table = 'ms_sekolah';
|
||||
protected $primaryKey = 'MsSekolahId';
|
||||
protected $fillable = [
|
||||
'ms_provinsi_id',
|
||||
'ms_kabupaten_id',
|
||||
'ms_kecamatan_id',
|
||||
'ms_tingkat_sekolah_id',
|
||||
'status',
|
||||
'nama_sekolah',
|
||||
'npsn',
|
||||
'alamat_sekolah',
|
||||
'lat',
|
||||
'long',
|
||||
];
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Penilaian extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $table = 'penilaian';
|
||||
protected $primaryKey = 'PenilaianId';
|
||||
protected $fillable = [
|
||||
'ms_sekolah_id',
|
||||
'npsn',
|
||||
// 'ms_form_kriteria_id',
|
||||
'key',
|
||||
'page_number',
|
||||
'value',
|
||||
'skor',
|
||||
'status',
|
||||
'tahun',
|
||||
'created_by',
|
||||
];
|
||||
}
|
|
@ -14,6 +14,10 @@ class ProfileSekolah extends Model
|
|||
protected $fillable = [
|
||||
'user_id',
|
||||
'npsn',
|
||||
'ms_provinsi_id',
|
||||
'ms_kabupaten_id',
|
||||
'ms_kecamatan_id',
|
||||
'ms_sekolah_id',
|
||||
'ms_tingkat_sekolah_id',
|
||||
'status_sekolah',
|
||||
'alamat_sekolah',
|
||||
|
@ -30,4 +34,9 @@ class ProfileSekolah extends Model
|
|||
{
|
||||
return $this->belongsTo(\App\Models\Master\MasterTingkatSekolah::class,'ms_tingkat_sekolah_id','MsTingkatSekolahId');
|
||||
}
|
||||
|
||||
public function sekolah()
|
||||
{
|
||||
return $this->belongsTo(\App\Models\Master\Sekolah::class,'ms_sekolah_id','MsSekolahId');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ class User extends Authenticatable
|
|||
'email_verified_at' => 'datetime',
|
||||
];
|
||||
|
||||
public function sekolah()
|
||||
public function profile()
|
||||
{
|
||||
return $this->belongsTo(ProfileSekolah::class,'id','user_id');
|
||||
}
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('penilaian', function (Blueprint $table) {
|
||||
$table->id('PenilaianId');
|
||||
$table->integer('ms_sekolah_id');
|
||||
$table->string('npsn');
|
||||
// $table->integer('ms_form_kriteria_id');
|
||||
$table->string('key')->nullable();
|
||||
$table->integer('page_number');
|
||||
$table->json('value')->nullable();
|
||||
$table->integer('skor')->default(0);
|
||||
$table->integer('status')->nullable();
|
||||
$table->year('tahun')->nullable();
|
||||
$table->integer('created_by');
|
||||
$table->timestamps();
|
||||
|
||||
$table->foreign('created_by')->references('id')->on('users')->cascadeOnDelete();
|
||||
$table->foreign('ms_sekolah_id')->references('MsSekolahId')->on('ms_sekolah')->cascadeOnDelete();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('penilaians');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('ms_sekolah', function (Blueprint $table) {
|
||||
$table->id('MsSekolahId');
|
||||
$table->integer('ms_provinsi_id');
|
||||
$table->integer('ms_kabupaten_id');
|
||||
$table->integer('ms_kecamatan_id');
|
||||
$table->integer('ms_tingkat_sekolah_id');
|
||||
$table->string('status')->nullable();
|
||||
$table->string('nama_sekolah');
|
||||
$table->string('npsn');
|
||||
$table->text('alamat_sekolah')->nullable();
|
||||
$table->text('lat')->nullable();
|
||||
$table->text('long')->nullable();
|
||||
$table->timestamps();
|
||||
|
||||
$table->foreign('ms_tingkat_sekolah_id')->references('MsTingkatSekolahId')->on('ms_tingkat_sekolah')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('sekolahs');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('ms_provinsi', function (Blueprint $table) {
|
||||
$table->id('MsProvinsiId');
|
||||
$table->string('name');
|
||||
$table->string('kode_wilayah');
|
||||
$table->timestampsTz();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('provinsis');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('ms_kabupaten', function (Blueprint $table) {
|
||||
$table->id('MsKabupatenId');
|
||||
$table->integer('ms_provinsi_id');
|
||||
$table->string('name');
|
||||
$table->string('kode_wilayah');
|
||||
$table->timestampsTz();
|
||||
|
||||
$table->foreign('ms_provinsi_id')->references('MsProvinsiId')->on('ms_provinsi')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('kabupatens');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('ms_kecamatan', function (Blueprint $table) {
|
||||
$table->id('MsKecamatanId');
|
||||
$table->integer('ms_provinsi_id');
|
||||
$table->integer('ms_kabupaten_id');
|
||||
$table->string('name');
|
||||
$table->string('kode_wilayah');
|
||||
$table->timestampsTz();
|
||||
|
||||
$table->foreign('ms_provinsi_id')->references('MsProvinsiId')->on('ms_provinsi')->onDelete('cascade');
|
||||
$table->foreign('ms_kabupaten_id')->references('MsKabupatenId')->on('ms_kabupaten')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('kecamatans');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,36 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('ms_kelurahan', function (Blueprint $table) {
|
||||
$table->id('MsKelurahanId');
|
||||
$table->integer('ms_provinsi_id');
|
||||
$table->integer('ms_kabupaten_id');
|
||||
$table->integer('ms_kecamatan_id');
|
||||
$table->string('name');
|
||||
$table->string('kode_wilayah');
|
||||
$table->timestampsTz();
|
||||
|
||||
$table->foreign('ms_provinsi_id')->references('MsProvinsiId')->on('ms_provinsi')->onDelete('cascade');
|
||||
$table->foreign('ms_kabupaten_id')->references('MsKabupatenId')->on('ms_kabupaten')->onDelete('cascade');
|
||||
$table->foreign('ms_kecamatan_id')->references('MsKecamatanId')->on('ms_kecamatan')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('kelurahans');
|
||||
}
|
||||
};
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::table('ms_sekolah', function (Blueprint $table) {
|
||||
$table->foreign('ms_provinsi_id')->references('MsProvinsiId')->on('ms_provinsi')->onDelete('cascade');
|
||||
$table->foreign('ms_kabupaten_id')->references('MsKabupatenId')->on('ms_kabupaten')->onDelete('cascade');
|
||||
$table->foreign('ms_kecamatan_id')->references('MsKecamatanId')->on('ms_kecamatan')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::table('ms_sekolah', function (Blueprint $table) {
|
||||
//
|
||||
});
|
||||
}
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::table('profile', function (Blueprint $table) {
|
||||
$table->integer('ms_provinsi_id');
|
||||
$table->integer('ms_kabupaten_id');
|
||||
$table->integer('ms_sekolah_id');
|
||||
|
||||
$table->foreign('ms_provinsi_id')->references('MsProvinsiId')->on('ms_provinsi')->onDelete('cascade');
|
||||
$table->foreign('ms_kabupaten_id')->references('MsKabupatenId')->on('ms_kabupaten')->onDelete('cascade');
|
||||
$table->foreign('ms_sekolah_id')->references('MsSekolahId')->on('ms_sekolah')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::table('profile', function (Blueprint $table) {
|
||||
//
|
||||
});
|
||||
}
|
||||
};
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::table('profile', function (Blueprint $table) {
|
||||
$table->integer('ms_kecamatan_id');
|
||||
|
||||
$table->foreign('ms_kecamatan_id')->references('MsKecamatanId')->on('ms_kecamatan')->onDelete('cascade');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::table('profile', function (Blueprint $table) {
|
||||
//
|
||||
});
|
||||
}
|
||||
};
|
|
@ -21,6 +21,7 @@
|
|||
<link rel="mask-icon" href="https://banksampah.jakarta.go.id/images/logo-dinas.ico" color="#5bbad5">
|
||||
<!-- Optional: page related CSS-->
|
||||
<link rel="stylesheet" media="screen, print" href="{{asset('assets/css/fa-brands.css')}}">
|
||||
<link rel="stylesheet" href="{{asset('assets/css/formplugins/select2/select2.bundle.css')}}">
|
||||
</head>
|
||||
<body>
|
||||
<div class="page-wrapper">
|
||||
|
@ -46,122 +47,169 @@
|
|||
@include('include.alert')
|
||||
<form method="POST" action="{{url('register')}}">
|
||||
{{csrf_field()}}
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">NPSN</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input maxlength="8" type="text" value="{{old('npsn')}}" name="npsn" class="form-control @error('npsn') is-invalid @enderror numberInput" placeholder="Masukan NPSN Sekolah" required>
|
||||
@error('npsn')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
<small class="text-primary"><i>Pastikan NPSN Telah Sesuai</i></small>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div id="loading-spinner" style="display: none; text-align: center;">
|
||||
<img src="{{ asset('assets/spinner.gif') }}" alt="Loading..." width="20">
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Provinsi</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="provinsi" class="form-control select2 @error('provinsi') provinsi is-invalid @enderror" id="provinsi">
|
||||
<option value="0">- PILIH PROVINSI -</option>
|
||||
@foreach($provinsi as $datProv)
|
||||
<option value="{{encode_id($datProv->MsProvinsiId)}}">{{$datProv->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('provinsi')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Kabupaten</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="kabupaten" class="form-control select2 @error('kabupaten') kabupaten is-invalid @enderror" id="kabupaten" required>
|
||||
<option value="0">- PILIH KABUPATEN/KOTA -</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Kecamatan</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="kecamatan" class="form-control select2 @error('kecamatan') kecamatan is-invalid @enderror" id="kecamatan" required>
|
||||
<option value="0">- PILIH KECAMATAN -</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="sekolah" class="form-control select2 @error('sekolah') sekolah is-invalid @enderror" id="sekolah" required>
|
||||
<option value="0">- PILIH SEKOLAH -</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group d-none row">
|
||||
<label class="col-xl-12 form-label" for="fname">Tingkat Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="tingkat_sekolah" class="form-control @error('tingkat_sekolah') is-invalid @enderror">
|
||||
<option value="" data-select2-id="3">-Pilih Tingkat Sekolah-</option>
|
||||
<option value="1" data-select2-id="11">SD</option>
|
||||
<option value="2" data-select2-id="12">SMP</option>
|
||||
<option value="3" data-select2-id="13">SMA</option>
|
||||
<option value="4" data-select2-id="14">SMK</option>
|
||||
<option value="5" data-select2-id="15">MI</option>
|
||||
<option value="6" data-select2-id="16">MTs</option>
|
||||
<option value="7" data-select2-id="17">MA</option>
|
||||
<option value="8" data-select2-id="18">SD LB</option>
|
||||
<option value="9" data-select2-id="19">SMP LB</option>
|
||||
<option value="10" data-select2-id="20">SMA LM</option>
|
||||
<option value="11" data-select2-id="21">SLB Khusus</option>
|
||||
</select>
|
||||
@error('tingkat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group d-none row">
|
||||
<label class="col-xl-12 form-label" for="fname">Status Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="status_sekolah" class="form-control @error('status_sekolah') is-invalid @enderror">
|
||||
<option value="" data-select2-id="3">-Pilih Status Sekolah-</option>
|
||||
<option value="Negeri">Negeri</option>
|
||||
<option value="Swasta">Swasta</option>
|
||||
</select>
|
||||
@error('status_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">NPSN</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input maxlength="8" readonly type="text" value="{{old('npsn')}}" name="npsn" class="form-control @error('npsn') is-invalid @enderror numberInput npsn" placeholder="">
|
||||
@error('npsn')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group d-none row">
|
||||
<label class="col-xl-12 form-label" for="fname">Nama Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input type="text" value="{{old('name')}}" name="name" class="form-control @error('name') is-invalid @enderror" placeholder="Masukan Nama Sekolah">
|
||||
@error('name')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Nama Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input type="text" value="{{old('name')}}" name="name" class="form-control @error('name') is-invalid @enderror" placeholder="Masukan Nama Sekolah" required>
|
||||
@error('name')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Tingkat Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="tingkat_sekolah" class="form-control @error('tingkat_sekolah') is-invalid @enderror">
|
||||
<option value="" data-select2-id="3">-Pilih Tingkat Sekolah-</option>
|
||||
<option value="1" data-select2-id="11">SD</option>
|
||||
<option value="2" data-select2-id="12">SMP</option>
|
||||
<option value="3" data-select2-id="13">SMA</option>
|
||||
<option value="4" data-select2-id="14">SMK</option>
|
||||
<option value="5" data-select2-id="15">MI</option>
|
||||
<option value="6" data-select2-id="16">MTs</option>
|
||||
<option value="7" data-select2-id="17">MA</option>
|
||||
<option value="8" data-select2-id="18">SD LB</option>
|
||||
<option value="9" data-select2-id="19">SMP LB</option>
|
||||
<option value="10" data-select2-id="20">SMA LM</option>
|
||||
<option value="11" data-select2-id="21">SLB Khusus</option>
|
||||
</select>
|
||||
@error('tingkat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-xl-12 form-label" for="fname">Status Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<select name="status_sekolah" class="form-control @error('status_sekolah') is-invalid @enderror" required>
|
||||
<option value="" data-select2-id="3">-Pilih Status Sekolah-</option>
|
||||
<option value="Negeri">Negeri</option>
|
||||
<option value="Swasta">Swasta</option>
|
||||
</select>
|
||||
@error('status_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Alamat Sekolah</label>
|
||||
<input type="text" value="{{old('alamat_sekolah')}}" name="alamat_sekolah" class="form-control @error('alamat_sekolah') is-invalid @enderror" placeholder="Masukan Alamat Sekolah, Nama Jalan / Dusun / RT-RW" required>
|
||||
@error('alamat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Kontak Person</label>
|
||||
<input type="text" value="{{old('kontak_person')}}" name="kontak_person" class="form-control @error('kontak_person') is-invalid @enderror" placeholder="Masukan Kontak Person" required>
|
||||
@error('kontak_person')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Telp/WA</label>
|
||||
<input type="text" value="{{old('telp')}}" name="telp" class="form-control @error('telp') is-invalid @enderror numberInput" maxlength="16" placeholder="Masukan Telp/WA" required>
|
||||
@error('telp')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Email</label>
|
||||
<input type="email" name="email" id="emailverify" class="form-control @error('email') is-invalid @enderror" placeholder="Masukan Email Aktif" required>
|
||||
@error('email')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
<small class="text-primary">* Pastikan email benar dan aktif, akses aplikasi akan dikirim ke email yang didaftarkan.</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">Password</label>
|
||||
<div class="input-group">
|
||||
<input type="password" id="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="Masukan Password Minimm 8 characters" required>
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-default waves-effect waves-themed" type="button" id="togglePassword"><i class="fal fa-eye"></i></button>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Alamat Sekolah</label>
|
||||
<input type="text" value="{{old('alamat_sekolah')}}" name="alamat_sekolah" class="form-control @error('alamat_sekolah') is-invalid @enderror" placeholder="Masukan Alamat Sekolah, Nama Jalan / Dusun / RT-RW" required>
|
||||
@error('alamat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Kontak Person</label>
|
||||
<input type="text" value="{{old('kontak_person')}}" name="kontak_person" class="form-control @error('kontak_person') is-invalid @enderror" placeholder="Masukan Kontak Person" required>
|
||||
@error('kontak_person')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Telp/WA</label>
|
||||
<input type="text" value="{{old('telp')}}" name="telp" class="form-control @error('telp') is-invalid @enderror numberInput" maxlength="16" placeholder="Masukan Telp/WA" required>
|
||||
@error('telp')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="emailverify">Email</label>
|
||||
<input type="email" name="email" id="emailverify" class="form-control @error('email') is-invalid @enderror" placeholder="Masukan Email Aktif" required>
|
||||
@error('email')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
<small class="text-primary">* Pastikan email benar dan aktif, akses aplikasi akan dikirim ke email yang didaftarkan.</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">Password</label>
|
||||
<div class="input-group">
|
||||
<input type="password" id="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="Masukan Password Minimm 8 characters" required>
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-default waves-effect waves-themed" type="button" id="togglePassword"><i class="fal fa-eye"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
@error('password')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
<div class="help-block">
|
||||
Kata Sandi harus mengandung Minimal 8 karakter, maksimal 15 karakter, <br>setidaknya 1 huruf kecil dan huruf besar, angka dan simbol
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="checkbox" name="check" required> Dengan ini menyatakan bahwa isian registrasi diatas sudah benar.
|
||||
@error('check')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="row no-gutters">
|
||||
<div class="col-md-12 ml-auto text-right">
|
||||
<button id="js-login-btn" type="submit" class="btn btn-block btn-primary btn-lg mt-3">Registrasi</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group text-center mt-3">
|
||||
<span class="">
|
||||
Sudah punya akun? <a href="{{url('login')}}">Login</a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@error('password')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
<div class="help-block">
|
||||
Kata Sandi harus mengandung Minimal 8 karakter, maksimal 15 karakter, <br>setidaknya 1 huruf kecil dan huruf besar, angka dan simbol
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<input type="checkbox" name="check" required> Dengan ini menyatakan bahwa isian registrasi diatas sudah benar.
|
||||
@error('check')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="row no-gutters">
|
||||
<div class="col-md-12 ml-auto text-right">
|
||||
<button id="js-login-btn" type="submit" class="btn btn-block btn-primary btn-lg mt-3">Registrasi</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group text-center mt-3">
|
||||
<span class="">
|
||||
Sudah punya akun? <a href="{{url('login')}}">Login</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -176,8 +224,10 @@
|
|||
</div>
|
||||
<script src="{{asset('assets/js/vendors.bundle.js')}}"></script>
|
||||
<script src="{{asset('assets/js/app.bundle.js')}}"></script>
|
||||
<script src="{{asset('assets/js/formplugins/select2/select2.bundle.js')}}"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('.select2').select2();
|
||||
$('.numberInput').on('input', function() {
|
||||
this.value = this.value.replace(/[^0-9]/g, ''); // Hanya angka 0-9
|
||||
});
|
||||
|
@ -211,6 +261,139 @@
|
|||
// Perform ajax submit here...
|
||||
});
|
||||
|
||||
function clear(elementId) {
|
||||
$('#' + elementId).empty();
|
||||
$('#' + elementId).select2();
|
||||
}
|
||||
|
||||
$('#sekolah').on('select2:select', function(e) {
|
||||
let npsn = $(this).find(':selected').attr('data-npsn');
|
||||
$('.npsn').val(npsn);
|
||||
});
|
||||
|
||||
|
||||
$('select').on("select2:selecting", function(e) {
|
||||
var selectorOrigin = this.id;
|
||||
var id = e.params.args.data.id;
|
||||
|
||||
|
||||
if(selectorOrigin=='provinsi'){
|
||||
$('#loading-spinner').show();
|
||||
clear('kabupaten');
|
||||
selector = 'kabupaten';
|
||||
url_to = 'kabupaten';
|
||||
getSelect(id, selector, url_to);
|
||||
}
|
||||
|
||||
if(selectorOrigin=='kabupaten'){
|
||||
$('#loading-spinner').show();
|
||||
clear('kecamatan');
|
||||
selector = 'kecamatan';
|
||||
url_to = 'kecamatan';
|
||||
getSelect(id, selector, url_to);
|
||||
}
|
||||
if(selectorOrigin=='kecamatan'){
|
||||
$('#loading-spinner').show();
|
||||
clear('sekolah');
|
||||
selector = 'sekolah';
|
||||
url_to = 'sekolah';
|
||||
getSelect(id, selector, url_to);
|
||||
}
|
||||
});
|
||||
|
||||
function getSelect(id, selectTo, urlTo, selected = "") {
|
||||
id = id;
|
||||
var base_url = "{{url('/')}}";
|
||||
//alert(id);
|
||||
destino = "#" + selectTo;
|
||||
valor = $('#' + id).find(":selected").val();
|
||||
|
||||
$.ajax({
|
||||
method: "POST",
|
||||
url: base_url + "/get/" + urlTo,
|
||||
data: {
|
||||
_token: '{{csrf_token()}}',
|
||||
id: id
|
||||
}
|
||||
})
|
||||
.done(function(msg) {
|
||||
obj = msg.data;
|
||||
|
||||
if (obj.length > 0) {
|
||||
//Clear the current options
|
||||
$(destino).empty();
|
||||
|
||||
if(selectTo=='kabupaten'){
|
||||
$(destino).append('<option value="">-PILIH KABUPATEN/KOTA-</option>').select2("val", "0");
|
||||
|
||||
|
||||
|
||||
$.each(obj, function(index) {
|
||||
value = obj[index].id;
|
||||
text = obj[index].name;
|
||||
$(destino).append('<option value=' + value + '>' + text + '</option>');
|
||||
});
|
||||
console.log(selected)
|
||||
if (selected) {
|
||||
$(destino).val(selected).trigger('change');
|
||||
selected = "";
|
||||
}
|
||||
}
|
||||
|
||||
if(selectTo=='kecamatan'){
|
||||
$(destino).append('<option value="">-PILIH KECAMATAN-</option>').select2("val", "0");
|
||||
|
||||
$.each(obj, function(index) {
|
||||
value = obj[index].id;
|
||||
text = obj[index].name;
|
||||
$(destino).append('<option value=' + value + '>' + text + '</option>');
|
||||
});
|
||||
console.log(selected)
|
||||
if (selected) {
|
||||
$(destino).val(selected).trigger('change');
|
||||
selected = "";
|
||||
}
|
||||
}
|
||||
|
||||
if(selectTo=='sekolah'){
|
||||
$(destino).append('<option value="">-PILIH SEKOLAH-</option>').select2("val", "0");
|
||||
|
||||
$.each(obj, function(index) {
|
||||
value = obj[index].id;
|
||||
text = obj[index].name;
|
||||
npsn = obj[index].npsn;
|
||||
$(destino).append('<option data-npsn="'+npsn+'" value=' + value + '>' + text + '</option>');
|
||||
});
|
||||
console.log(selected)
|
||||
if (selected) {
|
||||
$(destino).val(selected).trigger('change');
|
||||
selected = "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
if(selectTo=='provinsi'){
|
||||
$(destino).empty().append('<option value="0">-PILIH PROVINSI-</option>').select2("val", "0");
|
||||
}
|
||||
if(selectTo=='kabupaten'){
|
||||
$(destino).empty().append('<option value="0">-PILIH KABUPATEN/KOTA-</option>').select2("val", "0");
|
||||
}
|
||||
if(selectTo=='kecamatan'){
|
||||
$(destino).empty().append('<option value="0">-PILIH KECAMATAN-</option>').select2("val", "0");
|
||||
}
|
||||
if(selectTo=='sekolah'){
|
||||
$(destino).empty().append('<option value="0">-PILIH SEKOLAH-</option>').select2("val", "0");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
$('#loading-spinner').hide();
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
<link rel="stylesheet" type="text/css" href="{{asset('assets/css/bootstrap-table.min.css')}}">
|
||||
<link rel="stylesheet" href="{{asset('assets/css/sweetalert.min.css')}}">
|
||||
<link rel="stylesheet" href="{{asset('assets/css/toast.min.css')}}">
|
||||
<link rel="stylesheet" href="{{asset('assets/css/formplugins/select2/select2.bundle.css')}}">
|
||||
<style type="text/css">
|
||||
.info-card .info-card-text{
|
||||
text-shadow:none;
|
||||
|
@ -114,8 +115,10 @@
|
|||
<script type="text/javascript" src="{{asset('assets/js/bootstrap-table.min.js')}}"></script>
|
||||
<script src="{{ asset('assets/js/sweetalert.min.js') }}"></script>
|
||||
<script src="{{asset('assets/js/toast.min.js')}}"></script>
|
||||
<script src="{{asset('assets/js/formplugins/select2/select2.bundle.js')}}"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('.select2').select2();
|
||||
$('.numberInput').on('input', function() {
|
||||
this.value = this.value.replace(/[^0-9]/g, ''); // Hanya angka 0-9
|
||||
});
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
</div>
|
||||
<div class="col-9 col-md-9">
|
||||
<div class="level rounded-plus bg-fusion-50 width-1 height-1 d-inline-block bg-success">
|
||||
<h4>Level 4</h4>
|
||||
<h4>Level {{levelAdiwiyata(session('npsn'))}}</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -56,17 +56,17 @@
|
|||
<div class="col-12 pr-1">
|
||||
<select name="tingkat_sekolah" class="form-control @error('tingkat_sekolah') is-invalid @enderror">
|
||||
<option value="" data-select2-id="3">-Pilih Tingkat Sekolah-</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 1 ? 'selected' : ''}} value="1" data-select2-id="11">SD</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 2 ? 'selected' : ''}} value="2" data-select2-id="12">SMP</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 3 ? 'selected' : ''}} value="3" data-select2-id="13">SMA</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 4 ? 'selected' : ''}} value="4" data-select2-id="14">SMK</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 5 ? 'selected' : ''}} value="5" data-select2-id="15">MI</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 6 ? 'selected' : ''}} value="6" data-select2-id="16">MTs</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 7 ? 'selected' : ''}} value="7" data-select2-id="17">MA</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 8 ? 'selected' : ''}} value="8" data-select2-id="18">SD LB</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 9 ? 'selected' : ''}} value="9" data-select2-id="19">SMP LB</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 10 ? 'selected' : ''}} value="10" data-select2-id="20">SMA LM</option>
|
||||
<option {{@$item->sekolah->ms_tingkat_sekolah_id == 11 ? 'selected' : ''}} value="11" data-select2-id="21">SLB Khusus</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 1 ? 'selected' : ''}} value="1" data-select2-id="11">SD</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 2 ? 'selected' : ''}} value="2" data-select2-id="12">SMP</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 3 ? 'selected' : ''}} value="3" data-select2-id="13">SMA</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 4 ? 'selected' : ''}} value="4" data-select2-id="14">SMK</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 5 ? 'selected' : ''}} value="5" data-select2-id="15">MI</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 6 ? 'selected' : ''}} value="6" data-select2-id="16">MTs</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 7 ? 'selected' : ''}} value="7" data-select2-id="17">MA</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 8 ? 'selected' : ''}} value="8" data-select2-id="18">SD LB</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 9 ? 'selected' : ''}} value="9" data-select2-id="19">SMP LB</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 10 ? 'selected' : ''}} value="10" data-select2-id="20">SMA LM</option>
|
||||
<option {{@$item->profile->ms_tingkat_sekolah_id == 11 ? 'selected' : ''}} value="11" data-select2-id="21">SLB Khusus</option>
|
||||
</select>
|
||||
@error('tingkat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
|
@ -80,8 +80,8 @@
|
|||
<div class="col-12 pr-1">
|
||||
<select name="status_sekolah" class="form-control @error('status_sekolah') is-invalid @enderror" required>
|
||||
<option value="" data-select2-id="3">-Pilih Status Sekolah-</option>
|
||||
<option {{@$item->sekolah->status_sekolah == 'Negeri' ? 'selected' : ''}} value="Negeri">Negeri</option>
|
||||
<option {{@$item->sekolah->status_sekolah == 'Swasta' ? 'selected' : ''}} value="Swasta">Swasta</option>
|
||||
<option {{@$item->profile->status_sekolah == 'Negeri' ? 'selected' : ''}} value="Negeri">Negeri</option>
|
||||
<option {{@$item->profile->status_sekolah == 'Swasta' ? 'selected' : ''}} value="Swasta">Swasta</option>
|
||||
</select>
|
||||
@error('status_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
|
@ -93,7 +93,7 @@
|
|||
<div class="form-group">
|
||||
<label class="col-xl-12 form-label" for="emailverify">Alamat Sekolah</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input type="text" value="{{@$item->sekolah->alamat_sekolah ? @$item->sekolah->alamat_sekolah : old('alamat_sekolah')}}" name="alamat_sekolah" class="form-control @error('alamat_sekolah') is-invalid @enderror" placeholder="Masukan Alamat Sekolah, Nama Jalan / Dusun / RT-RW" required>
|
||||
<input type="text" value="{{@$item->profile->alamat_sekolah ? @$item->profile->alamat_sekolah : old('alamat_sekolah')}}" name="alamat_sekolah" class="form-control @error('alamat_sekolah') is-invalid @enderror" placeholder="Masukan Alamat Sekolah, Nama Jalan / Dusun / RT-RW" required>
|
||||
@error('alamat_sekolah')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
|
@ -104,7 +104,7 @@
|
|||
<div class="form-group">
|
||||
<label class="col-xl-12 form-label" for="emailverify">Kontak Person</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input type="text" value="{{@$item->sekolah->kontak_person ? @$item->sekolah->kontak_person : old('kontak_person')}}" name="kontak_person" class="form-control @error('kontak_person') is-invalid @enderror" placeholder="Masukan Kontak Person" required>
|
||||
<input type="text" value="{{@$item->profile->kontak_person ? @$item->profile->kontak_person : old('kontak_person')}}" name="kontak_person" class="form-control @error('kontak_person') is-invalid @enderror" placeholder="Masukan Kontak Person" required>
|
||||
@error('kontak_person')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
|
@ -115,7 +115,7 @@
|
|||
<div class="form-group">
|
||||
<label class="col-xl-12 form-label" for="emailverify">Telp/WA</label>
|
||||
<div class="col-12 pr-1">
|
||||
<input type="text" value="{{@$item->sekolah->telp ? @$item->sekolah->telp : old('telp')}}" name="telp" class="form-control @error('telp') is-invalid @enderror numberInput" maxlength="16" placeholder="Masukan Telp/WA" required>
|
||||
<input type="text" value="{{@$item->profile->telp ? @$item->profile->telp : old('telp')}}" name="telp" class="form-control @error('telp') is-invalid @enderror numberInput" maxlength="16" placeholder="Masukan Telp/WA" required>
|
||||
@error('telp')
|
||||
<span class="invalid-feedback" style="display: block!important;"><strong>{{$message}}</strong></span>
|
||||
@enderror
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
</div>
|
||||
<div class="col-9 col-md-9">
|
||||
<div class="level rounded-plus bg-fusion-50 width-1 height-1 d-inline-block bg-success">
|
||||
<h4>Level 4</h4>
|
||||
<h4>Level {{levelAdiwiyata(session('npsn'))}}</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
<form method="POST" action="{{route($route.'.store')}}" id="form">
|
||||
<form method="POST" id="form">
|
||||
{{csrf_field()}}
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
|
@ -84,6 +84,12 @@
|
|||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="alert alert-warning">
|
||||
<p class="mb-0"><i class="fal fa-info-circle"></i> Anda Belum Melakukan Finalisasi Proses Data Kriteria</p>
|
||||
<p class="mb-0"><i class="fal fa-info-circle"></i> Klik <b class="text-danger">Resume</b> untuk melakukan Finalisasi Proses Data Kriteria</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12" style="background: rgba(23, 162, 184, 0.2) !important;">
|
||||
<ul class="pageNumber">
|
||||
@foreach($page as $hal)
|
||||
|
@ -98,28 +104,19 @@
|
|||
<h6 class="mb-0"><b class="changeTitle">I. Perencanaan Gerakan PBLHS</b></h6>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="col-md-12 bodyInput">
|
||||
<div id="loading-spinner" style="display: none; text-align: center;">
|
||||
<img src="{{ asset('assets/spinner.gif') }}" alt="Loading..." width="20">
|
||||
</div>
|
||||
<div class="changeForm">
|
||||
{!! formKriteria(1) !!}
|
||||
</div>
|
||||
<div class="card mb-2">
|
||||
<div class="card-body">
|
||||
<h6><b>Link Google Drive (folder/File penyimpanan bukti)</b></h6>
|
||||
<div class="form-group">
|
||||
<input type="text" class="form-control" name="link_grdive" placeholder="Link Google Drive (folder penyimpanan bukti)">
|
||||
<small><i>Contoh link : https://example.com</i></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<button class="btn btn-success"><i class="fal fa-save"></i> Simpan Data</button>
|
||||
<button id="btnSave" class="btn btn-success"><i class="fal fa-save"></i> Simpan Data</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -167,5 +164,83 @@
|
|||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#btnSave').on('click',function(e){
|
||||
e.preventDefault();
|
||||
let currentForm = $("#form").serializeArray();
|
||||
console.log(currentForm);
|
||||
|
||||
let formData = {};
|
||||
let allData = {};
|
||||
let isValid = true; // Flag validasi
|
||||
|
||||
currentForm.forEach(field => {
|
||||
let name = field.name.replace(/\[\]$/, ''); // Hapus "[]" di akhir nama input
|
||||
|
||||
if (allData[name]) {
|
||||
if (!Array.isArray(allData[name])) {
|
||||
allData[name] = [allData[name]];
|
||||
}
|
||||
allData[name].push(field.value);
|
||||
} else {
|
||||
allData[name] = field.value;
|
||||
}
|
||||
});
|
||||
|
||||
$('.is-required').each(function () {
|
||||
let type = $(this).attr('type');
|
||||
let name = $(this).attr('name');
|
||||
let value = $(this).val()?.trim(); // Pastikan nilai di-trim untuk menghindari spasi kosong
|
||||
|
||||
if (type === 'radio' || type === 'checkbox') {
|
||||
// Validasi radio: setidaknya satu opsi harus dipilih
|
||||
if ($(`input[name="${name}"]:checked`).length === 0) {
|
||||
isValid = false;
|
||||
$(`input[name="${name}"]`).closest('.custom-control-input').addClass("is-invalid");
|
||||
} else {
|
||||
$(`input[name="${name}"]`).closest('.custom-control-input').removeClass("is-invalid");
|
||||
}
|
||||
} else {
|
||||
// Validasi input teks atau lainnya
|
||||
if (!value) {
|
||||
isValid = false;
|
||||
$(this).addClass("is-invalid");
|
||||
} else {
|
||||
$(this).removeClass("is-invalid");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Jika validasi gagal, hentikan submit
|
||||
if (!isValid) {
|
||||
toastr.error("Harap isi semua field yang wajib diisi", 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'});
|
||||
// alert(".");
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "{{route($route.'.store')}}", // Ganti dengan URL API-mu
|
||||
type: 'POST', // Bisa juga 'POST' kalau perlu
|
||||
data: {
|
||||
_token:'{{csrf_token()}}',
|
||||
data: allData
|
||||
}, // Kirim number sebagai parameter
|
||||
dataType: 'json', // Format respons JSON
|
||||
beforeSend: function () {
|
||||
$('#loading-spinner').show(); // Menampilkan spinner
|
||||
},
|
||||
success: function (response) {
|
||||
console.log('Response:', response);
|
||||
},
|
||||
error: function (xhr, status, error) {
|
||||
console.error('AJAX Error:', status, error);
|
||||
alert('Failed to fetch data!');
|
||||
},
|
||||
complete: function () {
|
||||
$('#loading-spinner').hide(); // Sembunyikan spinner setelah request selesai
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
@endsection
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use App\Http\Controllers\Api\ApiController;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -17,3 +18,10 @@ use Illuminate\Support\Facades\Route;
|
|||
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
|
||||
return $request->user();
|
||||
});
|
||||
|
||||
|
||||
Route::get('getProvince',[ApiController::class,'getProvince']);
|
||||
Route::get('getKabupaten',[ApiController::class,'getKabupaten']);
|
||||
Route::get('getKecamatan',[ApiController::class,'getKecamatan']);
|
||||
Route::get('getSekolah',[ApiController::class,'getSekolah']);
|
||||
// Route::get('getKabupaten',[ApiController::class,'getKabupaten']);
|
|
@ -32,6 +32,7 @@ Route::name('master.')->prefix('master')->group(function () {
|
|||
Route::get('/update/{id?}',[FormKriteriaController::class,'update'])->name('update');
|
||||
Route::post('/store',[FormKriteriaController::class,'store'])->name('store');
|
||||
Route::get('/grid',[FormKriteriaController::class,'grid'])->name('grid');
|
||||
Route::get('delete/{id?}',[FormKriteriaController::class,'delete'])->name('delete');
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@ use App\Http\Middleware\Session;
|
|||
use App\Http\Controllers\Auth\CustomLoginController;
|
||||
use App\Http\Controllers\Auth\CustomRegisterController;
|
||||
use App\Http\Controllers\HomeController;
|
||||
use App\Http\Controllers\AjaxController;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -21,6 +22,9 @@ Route::post('login',[CustomLoginController::class,'post_login'])->name('post_log
|
|||
|
||||
Route::get('register',[CustomRegisterController::class,'index'])->name('register');
|
||||
Route::post('register',[CustomRegisterController::class,'post_register'])->name('post_register');
|
||||
Route::post('get/kabupaten',[AjaxController::class,'getKabupaten'])->name('getKabupaten');
|
||||
Route::post('get/kecamatan',[AjaxController::class,'getKecamatan'])->name('getKecamatan');
|
||||
Route::post('get/sekolah',[AjaxController::class,'getSekolah'])->name('getSekolah');
|
||||
|
||||
Route::middleware(Session::class)->name('modules.')->group(function () {
|
||||
|
||||
|
|
Loading…
Reference in New Issue