import m from "mithril" import _isEmpty from "lodash.isempty" import _map from "lodash.map" import Siswa from "../models/Siswa" var component = { oninit: () => { // document.title = 'Surat Keterangan Hasil Belajar Siswa - SMK Bhakti Anindya'; document.title = 'Surat Keterangan Lulus - SMK Bhakti Anindya'; Siswa.current = {}; }, namaMapel: { // 'agama': 'Pendidikan Agama', // 'pkn': 'Pendidikan Kewarganegaraan', // 'indo': 'Bahasa Indonesia', // 'penjas': 'Pendidikan Jasmani dan Kesehatan', // 'senbud': 'Seni Budaya', // 'mtk': 'Matematika', // 'inggris': 'Bahasa Inggris', // 'ipa': 'Ilmu Pengetahuan Alam', // 'ips': 'Ilmu Pengetahuan Sosial', // 'fisika': 'Fisika', // 'kimia': 'Kimia', // 'kwh': 'Kewirausahaan', // 'kkpi': 'Keterampilan Komputer dan Pengelolaan Informasi', // 'dkk': 'Dasar Kompetensi Keahlian', // 'kk': 'Kompetensi Keahlian', // 'mandarin': 'Bahasa Mandarin', // 'kbi': 'Korespondensi Bahasa Inggris', // 'pap': 'Praktek Administrasi Perkantoran', // 'myob': 'MYOB', 'agama': 'Pendidikan Agama dan Budi Pekerti', 'pkn': 'Pendidikan Pancasila dan Kewarganegaraan', 'indo': 'Bahasa Indonesia', 'penjas': 'Pendidikan Jasmani, Olahraga dan Kesehatan', 'senbud': 'Seni Budaya', 'mtk': 'Matematika', 'inggris': 'Bahasa Inggris dan Bahasa Asing Lainnya', 'ipa': 'Ilmu Pengetahuan Alam', 'sejarah': 'Sejarah Indonesia', 'fisika': 'Fisika', 'kimia': 'Kimia', 'simdig': 'Simulasi dan Komunikasi Digital', 'dpk': 'Dasar Program Keahlian', 'kk': 'Kompetensi Keahlian', 'mandarin': 'Bahasa Mandarin', 'kbi': 'Korespondensi Bahasa Inggris', 'pap': 'Praktek Administrasi Perkantoran', 'myob': 'MYOB', 'eb': 'Ekonomi Bisnis', 'au': 'Administrasi Umum', 'ipat': 'IPA Terapan', 'wisata': 'Kepariwisataan', }, rataRata: { raport: [], usbn: [], unbk: [], }, namaMuatan: { 'munas': 'MUATAN NASIONAL', 'muwil': 'MUATAN KEWILAYAHAN', 'mujur': 'MUATAN PEMINATAN KEJURUAN', }, view: () => { // component.rataRata = { // raport: [], // usbn: [], // unbk: [], // }; component.rataRata = []; return [ m('.header', [ m('h1.title', 'Surat Keterangan Hasil Belajar Siswa SMK Bhakti Anindya'), m('span', 'Silahkan masukkan Nama Lengkap dan NISN kamu di bawah ini.'), ]), m('form.form', { onsubmit: e => { e.preventDefault(); Siswa.cariData({ nisn: e.target.elements.nisn.value, tanggalLahir: e.target.elements.tanggalLahir.value, src: 'sk-hasil-belajar', // with: 'hasilBelajar', with: ['k13HasilBelajar'], }); } }, m('.form-grid', [ m('.form-group', [ m('label.form-label[for=input-nisn]', 'NISN'), m('input.form-input.input-text#input-nisn[name=nisn][type=text][autocomplete=off][required]'), m('p.input-helper', [ 'Nomor Induk Siswa Nasional. ', !_isEmpty(Siswa.error) ? Siswa.error.errors.siswa != undefined ? m('span.error', Siswa.error.errors.siswa[0] + ' ') : Siswa.error.errors.nisn != undefined ? m('span.error', Siswa.error.errors.nisn[0] + ' ') : '' : '', ]), ]), m('.form-group', [ m('label.form-label[for=input-tanggalLahir]', 'Tanggal Lahir'), m('input.form-input.input-text#input-tanggalLahir[name=tanggalLahir][type=text][autocomplete=off][required]'), m('p.input-helper', [ 'Tanggal lahir dengan format YYYYMMDD. Contoh: untuk tanggal 29 Mei 2000 ditulis 20000529. ', !_isEmpty(Siswa.error) && Siswa.error.errors.tanggalLahir != undefined ? m('span.error', Siswa.error.errors.tanggalLahir[0] + ' ') : '', ]), ]), m('button.form-submit#input-submit[type=submit]', 'Lihat'), ])), _isEmpty(Siswa.current) ? null : m('.letter', [ m('span.mobile-info', 'Untuk mencetak surat ini, harap gunakan browser di desktop PC.'), !_isEmpty(Siswa.current.access_log) ? null : m('button.print-button', { onclick: () => { window.print(); } }, [ m.trust('⎙'), ' Print', ]), m('.letter__header', [ m('img[src=img/letter-head.jpg]'), ]), m('', { style: { height: '1px', width: '100%', backgroundColor: '#000', marginTop: '.5rem', }}), m('', { style: { height: '3px', width: '100%', }}), m('', { style: { height: '3px', width: '100%', backgroundColor: '#000', marginBottom: '1rem', }}), m('.letter__body', [ m('strong.letter__body-header', [ // m('p', m('span.border-b.border-black', 'SURAT KETERANGAN')), // m('p.font-normal.mt-1', 'Nomor: 077/SMK-BA/V/2019'), m('p', m('span.border-b.border-black', 'SURAT KETERANGAN LULUS')), m('p.mt-1', 'Nomor: 106/SMK-BA/VI/2022'), ]), m('br'), m('table', [ m('tr', // m('td[colspan=6]', 'Yang bertanda tangan di bawah ini :')), m('td[colspan=6]', 'Kepala SMK Bhakti Anindya selaku Ketua Penyelenggara Ujian Sekolah Tahun Pelajaran 2021/2022 berdasarkan:')), m('tr', [ m('td'), m('td[colspan=5]', '1. Menyelesaikan program pembelajaran di masa COVID-19 yang dibuktikan dengan rapor tiap semester;'), ]), m('tr', [ m('td'), m('td[colspan=5]', '2. Memperoleh nilai sikap/prilaku minimal baik;'), ]), m('tr', [ m('td'), m('td[colspan=5]', '3. Mengikuti Ujian yang diselenggarakan oleh satuan pendidikan;'), ]), m('tr', [ m('td'), m('td[colspan=5]', '4. Rapat Pleno Dewan Pendidik tentang kelulusan pada tanggal 31 Mei 2022.'), ]), m('tr', m('td', m.trust(' '))), m('tr', m('td[colspan=6]', 'Menerangkan bahwa:')), m('tr', m('td', m.trust(' '))), // m('tr', [ // m('td'), // m('td', 'Nama'), // m('td', ':'), // m('td[colspan=3]', 'Drs. Engkos Kosasih, M.M.'), // ]), // m('tr', [ // m('td'), // m('td', 'Jabatan'), // m('td', ':'), // m('td[colspan=3]', 'Kepala Sekolah'), // ]), // m('tr', [ // m('td'), // m('td', 'Asal Sekolah'), // m('td', ':'), // m('td[colspan=3]', 'SMK Bhakti Anindya'), // ]), // m('tr', // m('td', // m.trust(' '))), // m('tr', // m('td[colspan=6]', 'Menerangkan bahwa')), // m('tr', // m('td', // m.trust(' '))), m('tr', [ m('td'), // m('td', 'Nama'), m('td', 'Nama Peserta'), m('td', ':'), m('td[colspan=3]', Siswa.current.nama), ]), m('tr', [ m('td'), // m('td', 'Tempat / Tanggal Lahir'), m('td', 'Tempat & Tanggal Lahir'), m('td', ':'), m('td', Siswa.current.tempat_lahir + ' , ' + Siswa.current.tanggal_lahir), ]), m('tr', [ m('td'), m('td', 'NIS / NISN'), m('td', ':'), m('td', Siswa.current.nis + ' / ' + Siswa.current.nisn), ]), // m('tr', [ // m('td'), // m('td', 'Nomor Peserta'), // m('td', ':'), // m('td[colspan=3]', Siswa.current.nopes), // ]), m('tr', [ m('td'), m('td', 'Kelas'), m('td', ':'), m('td[colspan=3]', Siswa.current.kelas), ]), // m('tr', [ // m('td'), // m('td', 'Bidang Studi Keahlian'), // m('td', ':'), // m('td[colspan=3]', Siswa.current.bsk), // ]), // m('tr', [ // m('td'), // m('td', 'Program Studi Keahlian'), // m('td', ':'), // m('td[colspan=3]', Siswa.current.psk), // ]), m('tr', [ m('td'), m('td', 'Kompetensi Keahlian'), m('td', ':'), m('td[colspan=3]', Siswa.current.kk), ]), // m('tr', // m('td', // m.trust(' '))), // m('tr', // m('td[colspan=6]', 'Adalah benar siswa SMK Bhakti Anindya, Kota Tangerang dan pada tanggal 13 Mei 2019 telah dinyatakan lulus')), // m('tr', // m('td[colspan=6]', 'Berikut hasil belajar siswa tersebut :')), m('tr', [ m('td'), m('td', 'Dinyatakan'), m('td', ':'), // m('td.align-center[colspan=6]', [m('strong.special', 'LULUS')]), m('td', [m('strong.special', 'LULUS')]), ]), m('tr', // m('td[colspan=6]', 'Dengan hasil penilaian sebagai berikut:')), m('td[colspan=6]', 'Dengan hasil Nilai sebagai berikut:')), m('tr', m('td', m.trust(' '))), m('tr', m('td[colspan=6]', m('table.nilai', [ m('tr', [ m('th', { style: { width: '5%' } }, 'No.'), m('th[colspan=2]', 'Mata Pelajaran'), // m('th.long.md:w-1/5', 'Rata-rata Raport Semester 1-6'), // m('th.short.md:w-1/5', 'Raport'), // m('th.long.md:w-1/5', 'Ujian Sekolah Berstandar Nasional'), // m('th.short.md:w-1/5', 'USBN'), // m('th.long.md:w-1/5', 'Ujian Nasional Berbasis Komputer'), // m('th.short.md:w-1/5', 'UNBK'), m('th.long.md:w-1/5', 'Nilai Ujian Sekolah'), m('th.short.md:w-1/5', 'US'), ]), // m('tr', [ // m('th', 'A.'), // m('th[colspan=5].text-left', 'Normatif'), // ]), // m('tbody.counter', // _map(Siswa.current.hasil_belajar.meta.normatif, (nilai, mapel) => { // if (nilai.raport != 0) component.rataRata.raport.push(nilai.raport); // if (nilai.usbn != 0) component.rataRata.usbn.push(nilai.usbn); // if (nilai.unbk != 0) component.rataRata.unbk.push(nilai.unbk); // return nilai.raport == 0 && nilai.usbn == 0 && nilai.unbk == 0 ? null : m('tr', [ // m('td.text-right'), // m('td[colspan=2]', component.namaMapel[mapel]), // m('td.text-center', nilai.raport !== 0 ? nilai.raport.toFixed(2) : null), // m('td.text-center', nilai.usbn !== 0 ? nilai.usbn.toFixed(2) : null), // m('td.text-center', nilai.unbk !== 0 ? nilai.unbk.toFixed(2) : null), // ]); // })), // m('tr', [ // m('th', 'B.'), // m('th[colspan=5].text-left', 'Adaptif'), // ]), // m('tbody.counter', // _map(Siswa.current.hasil_belajar.meta.adaptif, (nilai, mapel) => { // if (nilai.raport != 0) component.rataRata.raport.push(nilai.raport); // if (nilai.usbn != 0) component.rataRata.usbn.push(nilai.usbn); // if (nilai.unbk != 0) component.rataRata.unbk.push(nilai.unbk); // return nilai.raport == 0 && nilai.usbn == 0 && nilai.unbk == 0 ? null : m('tr', [ // m('td.text-right'), // m('td[colspan=2]', component.namaMapel[mapel]), // m('td.text-center', nilai.raport !== 0 ? nilai.raport.toFixed(2) : null), // m('td.text-center', nilai.usbn !== 0 ? nilai.usbn.toFixed(2) : null), // m('td.text-center', nilai.unbk !== 0 ? nilai.unbk.toFixed(2) : null), // ]); // }), // m('tr', [ // m('th', 'C.'), // m('th[colspan=5].text-left', 'Produktif'), // ])), // m('tbody.counter', // _map(Siswa.current.hasil_belajar.meta.produktif, (nilai, mapel) => { // if (nilai.raport != 0) component.rataRata.raport.push(nilai.raport); // if (nilai.usbn != 0) component.rataRata.usbn.push(nilai.usbn); // if (nilai.unbk != 0) component.rataRata.unbk.push(nilai.unbk); // return nilai.raport == 0 && nilai.usbn == 0 && nilai.unbk == 0 ? null : m('tr', [ // m('td.text-right'), // m('td[colspan=2]', component.namaMapel[mapel]), // m('td.text-center', nilai.raport !== 0 ? nilai.raport.toFixed(2) : null), // m('td.text-center', nilai.usbn !== 0 ? nilai.usbn.toFixed(2) : null), // m('td.text-center', nilai.unbk !== 0 ? nilai.unbk.toFixed(2) : null), // ]); // })), // m('tr', [ // m('th', 'D.'), // m('th[colspan=5].text-left', 'Mulok'), // ]), // m('tbody.counter', // _map(Siswa.current.hasil_belajar.meta.mulok, (nilai, mapel) => { // if (nilai.raport != 0) component.rataRata.raport.push(nilai.raport); // if (nilai.usbn != 0) component.rataRata.usbn.push(nilai.usbn); // if (nilai.unbk != 0) component.rataRata.unbk.push(nilai.unbk); // return nilai.raport == 0 && nilai.usbn == 0 && nilai.unbk == 0 ? null : m('tr', [ // m('td.text-right'), // m('td[colspan=2]', component.namaMapel[mapel]), // m('td.text-center', nilai.raport !== 0 ? nilai.raport.toFixed(2) : null), // m('td.text-center', nilai.usbn !== 0 ? nilai.usbn.toFixed(2) : null), // m('td.text-center', nilai.unbk !== 0 ? nilai.unbk.toFixed(2) : null), // ]); // })), _map(Siswa.current.k13_hasil_belajar.meta.nilai, (mapel, muatan) => { return [ m('tr', [ m('th', muatan == 'munas' ? 'A.' : muatan == 'muwil' ? 'B.' : muatan == 'mujur' ? 'C.' : null), m('th.text-left[colspan=3]', component.namaMuatan[muatan]) ]), m('tbody.counter', _map(mapel, (nilai, nama) => { if (nama == 'mulok') { return [ m('tr', [ m('td.text-right'), m('th.text-left[colspan=2]', 'Mulok'), m('td.text-center') ]), _map(nilai, (nl, mp) => { if (nl != 0) component.rataRata.push(nl); return nilai == 0 ? null : m('tr', [ m('td.text-right.no-num'), m('td[colspan=2]', component.namaMapel[mp]), m('td.text-center.font-bold', nl) ]); }) ]; } else { return nilai == 0 ? null : m('tr', [ m('td.text-right'), m('td[colspan=2]', component.namaMapel[nama]), m('td.text-center.font-bold', nilai) ]); } })) ]; }), m('tr', [ m('th[colspan=3]', 'Rata-rata'), m('td.text-center.font-bold', (component.rataRata.reduce((total, num) => total + num) / component.rataRata.length).toFixed(2)), // m('td.text-center', (component.rataRata.raport.reduce((total, num) => total + num) / component.rataRata.raport.length).toFixed(2)), // m('td.text-center', (component.rataRata.usbn.reduce((total, num) => total + num) / component.rataRata.usbn.length).toFixed(2)), // m('td.text-center', (component.rataRata.unbk.reduce((total, num) => total + num) / component.rataRata.unbk.length).toFixed(2)), ]), ]))), // m('tr', // m('td', // m.trust(' '))), // m('tr', // m('td[colspan=6]', 'Demikian Surat Keterangan ini dibuat untuk siswa yang bersangkutan melanjutkan ke jenjang yang lebih tinggi.')), ]), m('table.signature', [ m('tr', // m('td', 'Tangerang, 13 Mei 2019')), m('td', 'Tangerang, 03 Juni 2022')), m('tr', m('td', 'Kepala Sekolah,')), m('tr', m('td', m('.letter__sign', { style: { height: '3rem' } }, m('img[src=img/letter-sign.png]', {style: { maxHeight: '100%' }})))), // ))), m('tr', // m('td', 'Drs. Engkos Kosasih, M.M.')), m('td', 'Sari Tyas Utami Kristantini, S.Si., M.M.')), ]), ]), ]), ]; }, }; export default component;