Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1...

21
1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework Laravel (Studi Kasus: Perpustakaan dan Arsip Daerah Kota Salatiga) Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi untuk Memperoleh Gelar Sarjana Komputer Oleh: Henny Febrianita Lagarinda NIM : 672012132 Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga 2017

Transcript of Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1...

Page 1: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

1

Perancangan dan Implementasi Aplikasi Pengaduan, Kritik,

dan Saran Menggunakan Framework Laravel

(Studi Kasus: Perpustakaan dan Arsip Daerah Kota Salatiga)

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk Memperoleh Gelar Sarjana Komputer

Oleh:

Henny Febrianita Lagarinda

NIM : 672012132

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

2017

Page 2: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

2

Page 3: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

3

Page 4: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

4

Page 5: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

5

Page 6: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

6

1. Pendahuluan

Teknologi informasi berkembang sangat pesat. Banyak instansi yang ingin

menggunakan teknologi yang ada secara optimal sesuai kebutuhan demi mencapai

hasil kerja yang baik, salah satu instasi yang menempatkan teknologi informasi adalah

perpustakaan. Perpustakaan dan Arsip Daerah Kota Salatiga (PERSIPDA) merupakan

perpustakaan umum yang ada di kota Salatiga dan mempunyai tugas melayani

masyarakat umum yang memerlukan jasa perpustakaan serta informasi. PERSIPDA

telah melakukan banyak hal untuk menyediakan sumber informasi bagi

pengunjungnya. Pengunjung dapat mengunjungi PERSIPDA mulai dari hari senin

sampai jumat pukul 08.00-20.00 dan hari sabtu sampai minggu pukul 08.00-16.00.

Layanan yang tersedia di PERSIPDA meliputi layanan sirkulasi, layanan perpustakaan

keliling, story telling, referensi dll [1]. Masyarakat sebagai pusat dalam pelayanan

merupakan salah satu syarat untuk menghasilkan kualitas pelayanan publik. Hal ini

berarti PERSIPDA membutuhkan kritik dan saran dari masyarakat sebagai bentuk

partisipasi dari masyarakat dalam peningkatan dan perbaikan pelayanan publik.

Berdasarkan hal tersebut, PERSIPDA menyediakan sebuah kotak saran sebagai

media yang dioperasikan dalam pelayanan pengaduan, kritik, dan saran dari

masyarakat. Masyarakat yang akan memberikan pengaduan, kritik, dan saran mengisi

formulir dan dimasukkan ke kotak yang telah disediakan oleh pihak PERSIPDA.

Kotak saran yang dikelola oleh Perpustakaan dan Arsip Daerah Kota Salatiga, berletak

di gedung perpustakaan lantai dua, yang tersedia dari pukul 08.00 – 20.00, setiap hari

kerja (Senin - Jumat) dan pukul 08.00 – 16.00 (Sabtu - Minggu). Berdasarkan hasil

wawancara yang dilakukan dengan seksi bina perpustakaan dan kearsipan, pihak

PERSIPDA melihat masih kurangnya minat masyarakat dalam memberikan

pengaduan, kritik, dan saran karena masih dilakukan secara manual, serta terbatasnya

waktu, dan jarak yang perlu ditempuh untuk melakukan pengaduan, kritik, dan saran.

Oleh karena itu diperlukan sebuah aplikasi pengaduan, kritik, dan saran digital yang

dapat mengatasi masalah tersebut. Hal ini akan memudahkan PERSIPDA dalam

mengelola data informasi yang masuk guna mengetahui apa yang harus ditingkatkan

atau diperbaiki dalam pelayanan serta mengetahui usulan kebutuhan bahan pustaka

yang diajukan oleh masyarakat.

Aplikasi web adalah suatu aplikasi yang diakses menggunakan penjelajah web

melalui suatu jaringan seperti internet atau intranet [2]. Aplikasi web dapat dijalankan

dimanapun dan kapanpun tanpa harus melakukan penginstalan seperti dilakukan oleh

aplikasi desktop, serta dapat diakses lewat media komputer dan handphone. Oleh

karena itu aplikasi ini dibangun berbasis web.

Aplikasi ini dibangun dengan menggunakan Framework Laravel.

Berdasarkan informasi yang dihimpun dari berbagai media online dan statistik

menunjukkan bahwa Laravel menduduki peringkat paling banyak dari sisi pengguna.

Laravel juga menawarkan kemudahan lain, seperti syntax yang sudah disederhanakan

dan bahkan diklaim sebagai code clean and classy dan ekspresif. Oleh sebab itu

aplikasi ini di bangun menggunakan Framework Laravel.

Berdasarkan permasalahan yang ada, akan dirancang sebuah aplikasi berbasis

web untuk menampung pengaduan, kritik, dan saran dari masyarakat.

Page 7: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

7

2. Kajian Pustaka

Penelitian dengan judul “Pembangunan Aplikasi Informasi, Pengaduan, Kritik,

dan Saran Seputar Kota Cimahi pada Platform Android” membahas tentang PESDUK

yaitu sebuah aplikasi berkonsep jurnalisme warga dengan sistem operasi android yang

dibangun untuk jembatan penghubung antara masyarakat kota Cimahi dan pemerintah

kota Cimahi dalam memberikan pengaduan, informasi, kritik, dan saran. PESDUK ini

digunakan oleh masyarakat kota Cimahi, dan juga Pemerintah Kota Cimahi,

khususnya departemen NOC (Network Operating Center) Kota Cimahi yang bertugas

mengelola data elektronik, dengan berbasis web [3].

Persamaan dengan penelitian yang dilakukan saat ini adalah aplikasi yang

dikembangkan bertujuan untuk menampilkan informasi, pengaduan, kritik dan saran.

Perbedaannya adalah metode dan bahasa pemrograman yang digunakan. Pada

penelitian sebelumnya dijalankan pada platform android dan menggunakan JSON

(web service) yang berfungsi untuk menghubungkan aplikasi mobile dan aplikasi web

dengan database pada server sementara penelitian saat ini menggunakan bahasa

pemrograman PHP dengan menggunakan framework laravel berbasis web.

Penelitian lain yang berjudul “Aplikasi Manajemen Perpustakaan Berbasis Web

Menggunakan Framework Laravel pada Yayasan HOME (House of Mercy)”

membahas aplikasi manajemen perpustakaan berbasis web yang dirancang untuk

membantu yayasan HOME mengatur sistem transaksi yang ada di perpustakaan seperti

peminjaman, pengembalian, serta penghitungan denda dan meminimalisir kelemahan-

kelemahan sistem. Hasil yang dicapai dengan adanya aplikasi manajemen

perpustakaan berbasis web ini pengelolah perpustakaan pada yayasan HOME dapat

bekerja secara self service dalam mendapatkan informasi peminjaman, pengembalian,

serta penghitungan denda secara lebih akurat [4].

Persamaan dengan penelitian saat ini adalah keduanya menggunakan framework

laravel dan studi kasus di perpustakaan. Perbedaannya, penelitian sebelumnya

membangun aplikasi manajemen perpustakaan seperti peminjaman, pengembalian,

serta penghitungan denda, sedangkan penelitian ini membangun aplikasi pengaduan,

kritik dan saran.

Framework Laravel adalah sebuah framework PHP yang dirilis dibawah lisensi

MIT (Massachusetts Institute of Technology), dibangun dengan konsep MVC (model

view controller) [5]. Laravel menjadi salah satu PHP framework yang sedang popular

pada saat ini. Menurut survey yang dilakukan oleh sitepoint menyatakan bahwa

framework PHP yang terbaik di tahun 2015 adalah Laravel [6]. Laravel merupakan

web application framework berbasis PHP yang open source, didesain khusus dengan

maksud untuk membantu developer terutama dalam membuat web dengan sintaks

sederhana dan ekspresif bahkan untuk pemula yang belum paham tentang

pemrograman, dapat dengan mudah memahami alur dan pengkodean Laravel.

Kelebihan Framework Laravel berbasis PHP ini adalah membuat aplikasi-aplikasi

yang lebih elegan dan dinamis karena framework ini menekankan kesederhanaan dan

fleksibilitas pada desainnya. Laravel dilengkapi command line tool yang bernama

artisan yang dapat digunakan untuk packaging bundle dan instalasi bundle melalui

command prompt [7].

MVC (model view controller) memisahkan aplikasi berdasarkan komponen-

komponen aplikasi, seperti : manipulasi data, controller, dan user interface.

Page 8: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

8

a) View, bagian yang menangani presentation logic. Pada aplikasi web bagian ini

biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi

untuk menerima dan merepresentasikan data kepadauser. Bagian ini tidak memiliki

akses langsung terhadap bagian model.

b) Model, bagian yang berhubungan langsung dengan database untuk memanipulasi

data (insert, update, delete, search) serta menangani validasi dari bagian controller.

Namun tidak dapat berhubungan langsung dengan bagian view.

c) Controller, bagian yang mengatur hubungan antara bagian model dan view.

Controller berfungsi untuk menerima request dan data dari user kemudian

menentukan apa yang akan diproses oleh aplikasi [8].

3. Metode dan Perancangan Sistem

Gambar 1 Tahapan Penelitian

Gambar 1 menampilkan tahapan – tahapan yang dilakukan dalam penelitian ini.

Tahapan analisis kebutuhan dilakukan pengumpulan data menyangkut pengisian data

pengaduan, kritik, dan saran di PERSIPDA Salatiga. Pengumpulan informasi

kebutuhan data diperoleh dengan wawancara kepada bapak Rinaldi Anggoro Shakti,

selaku Seksi Bina Perpustakaan dan Kearsipan di PERSIPDA. Tahapan perancangan

sistem meliputi perancangan proses menggunakan UML (Unified Modelling

Language) yang terdiri dari use case diagram, activity diagram, class diagram dan

sequence diagram, serta membuat tampilan (interface) aplikasi dan perancangan

aplikasi/ program sesuai analisis kebutuhan berdasarkan perancangan sistem yang

telah dikerjakan. Tahapan ketiga adalah implementasi sistem, fungsi – fungsi yang ada

dalam aplikasi dibuat sesuai hasil analisis kebutuhan dan perancangan sistem. Tahapan

keempat adalah penulisan laporan hasil penelitian. Tahap ini dilakukan dokumentasi

proses dari tahap awal sampai tahap akhir dalam bentuk jurnal.

Analisis kebutuhan dan Pengumpulan Data

Perancangan Sistem meliputi Perancangan Proses (UML),

Perancangan Antarmuka, Perancangan Aplikasi/Program

Implementasi Sistem

Penulisan Laporan Hasil Penelitian

Page 9: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

9

Gambar 2 Use Case Diagram Aplikasi

Gambar 2 merupakan desain use case diagram aplikasi pengaduan, kritik dan

saran di PERSIPDA. Terdapat dua pengguna yang memiliki akses berbeda-beda yaitu

guest/pengunjung dan admin. Pengguna sebagai admin memiliki hak akses untuk

mengelolah data pengaduan, mengelolah data usulan buku, melihat statistik jumlah

pengaduan yang masuk perperiode. Pengguna sebagai guest merupakan semua orang

yang mengunjungi aplikasi pengaduan, kritik dan saran, guest hanya dapat mengisi

form pengaduan, mengisi form data pengaduan, melihat data tanggapan pengaduan

dan melihat data tanggapan usulan buku.

Guest

Halaman Utama

pengaduan

usulan buku

data tanggapan pengaduan

data tanggapan usulan

insert pengaduan insert usulan

lihat tanggapan

lihat_tanggapan

admin

Kelola data pengaduan

kelola usulan buku

kelola statitistika data pengaduan

login

lihat pengaduan

Tanggapi pengaduan

lihat usulan

tanggapi usulan

Lihat statistika per hari

Lihat statistika per bulan

Lihat statistika per tahun

logout

search data

search_data

search dataa

<<include>>

<<include>>

<<include>>

<<include>>

<<extend>>

<<extend>> <<extend>>

<<extend>> <<extend>>

<<extend>>

<<extend>>

<<extend>>

<<extend>>

<<include>>

<<include>>

<<include>> <<include>>

<<extend>> <<extend>>

<<extend>>

<<extend>> <<extend>>

<<extend>> <<extend>>

Page 10: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

10

Gambar 3 Activity Diagram Guest

Gambar 3 merupakan activity diagram aktor guest. Guest ke lantai dua

PERSIPDA, mengambil form pengaduan. Guest mengisi form yang disediakan

PERSIPDA dan dimasukkan ke dalam kotak saran.

Gambar 4 Activity Diagram Admin

Gambar 4 merupakan activity diagram aktor admin. Admin melakukan

pengecekan kotak saran, mengambil form, melakukan rekap data dan menanggapi

pengaduan dan usulan buku. Admin mencetak hasil rekapan dan ditempel di dinding

pengunguman.

Pengunjung ke Lantai 2 Mengambil Form

Mengisi Form

Masukkan Ke kotak Saran

Mulai

selesai

Cek Kotak Saran Mengambil Form

Rekap data

Menanggapi Pengaduan

Cetak Hasil Rekapan

tempel di dinding pengunguman

Mulai

Selesai

Page 11: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

11

Gambar 5 Class Diagram

Gambar 5 merupakan class diagram dari aplikasi pengaduan, kritik dan saran di

PERSIPDA. Gambar tersebut menunjukkan relasi yang terjadi antara kelas view,

controller, dan model. View merupakan user interface, model merupakan kelas yang

menangani semua proses yang berkaitan dengan database, tiap-tiap model berhubung

dengan controller, sedangkan controller merupakan kelas perantara yang menangani

pertukaran data antara view dan model. Pada controller terdapat fungsi-fungsi yang

digunakan untuk mengakses entity.

Gambar 6 Sequence Diagram Admin

Gambar 6 merupakan sequence diagram aktor admin dari aplikasi pengaduan,

kritik, dan saran di PERSIPDA. Admin melakukan proses login terlebih dahulu untuk

DataUsulanBuku_entity

+no_usul+no_anggota+nama+alamat+no_tlp+jenis_koleksi+judul+pengarang+penerbit+tahun_terbit+tanggapan

+insertDataUsulan()+viewDataUsulan()+searchDataUsulan()+editDataUsulan()

DataPengaduan_entity

+no_peng+tanggal+Nama+no_anggota+alamat+no_tlp+pengaduan_saran_kritik+tanggapan

+insertDataPengaduan()+viewDataPengaduan()+searchDataPengaduan()+editDataPengaduan()+statistikPerHari()+statistikPerBulan()+statistikPerTahun()

kelolaDataPengaduanControllerGuest

+viewDataPengaduan()

UI_DataPengaduan_guest

+insertDataPengaduan()+searchDataPengaduan()

KelolaDataPengaduanControllerAdmin

+viewDataPengaduan()

UI_DataPengaduan_Admin

+searchDataPengaduan+editDataPengaduan

StatistikControllerAdmin

+statistikPerHari()+StatistikPerBulan()+StatistikPerTahun()

UI_Statistik_Admin

+viewDataStatistik

UI_DataUsulan_Admin

+searchDataUsulan()+editDataUsulan()

kelolaDataUsulanControllerAdmin

+viewDataUsulan()

KelolaDataUsulanControllerGuest

+ViewDataUsulan()

UI_DataUsulan_guest

+insertDataUsulan()+searchDataUsulan()

InsertUsulanController

SearchUsulanController

insertPengaduanController

searchPengaduanContoller

searchUsulanController editUsulanController searchPengaduanController editPengaduanController

: Admin

Form Admin Controller DatabaseHalaman web

1 : Menampilkan form login()

2 : mengisis username dan password()

3 : Validasi data()

4 : pesan keslahan()

5 : ambil data()

6 : cek data login()

7 : login yes()

8 : tampil halaman utama()

9 : kelola data()

10 : kembali ke halaman utama()

11 : logout()

Page 12: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

12

masuk ke dalam sistem. Admin memasukkan username dan password. Sistem

mengecek validasi apakah proses login valid atau tidak, jika tidak valid akan

ditampilkan pesan kesalahan, jika login valid akan tampil halaman utama. Admin

melakukan proses pengelolahan data. Proses pengolahan data selesai admin

melakukan logout.

Gambar 7 Sequence Diagram Guest

Gambar 7 merupakan sequence diagram aktor guest. Guest mengakses website

dan menampilkan halaman utama. Guest melakukan penginputan data dan disimpan

ke dalam database dan kembali ke halaman utama.

: Guest

Internet halaman Utama Form input data database

1 : Akses website()

2 : halaman utama ditemukan()

3 : input data()

4 : simpan()

5 : menampilkan halaman utama()

Page 13: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

13

4. Hasil dan Pembahasan

Hasil implementasi sistem berdasarkan perancangan yang telah dibuat dijelaskan

sebagai berikut. Terdapat dua pengguna sistem yaitu admin dan user.

Gambar 8 Tampilan Menu Utama

Gambar 8 menampilkan menu utama yang berisi: pengaduan kritik dan saran,

usulan pustaka, tanggapan pengaduan dan tanggapan usulan pustaka.

Gambar 9 Tampilan form pengaduan kritik dan saran

Form pengaduan kritik dan saran merupakan form untuk menyampaikan

pengaduan kritik maupun saran. Ada beberapa kolom yang harus diisi seperti no

anggota, tanggal, nama, alamat, no telepon dan saran. Dapat dilihat pada Gambar 9.

Perintah untuk menambahkan data dapat dilihat pada Kode Program 1

Page 14: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

14

Kode Program 1 Perintah untuk Tambah Data pada PengaduanController

Kode program 1 merupakan perintah untuk menampilkan form dan menyimpan

data ke database pada PengaduanController. Fungsi create digunakan untuk

memanggil ke view dengan nama file create didalam folder pengaduan. Fungsi store

digunakan untuk proses memasukkan data ke database. Proses penyimpanan data

ditandai dengan pemanggilan file pengaduan yang terdapat di dalam model. Data yang

telah masuk akan disimpan ke database dan akan kembali diarahkan ke file index.

Kode Program 2 Routing untuk Memanggil Fungsi Create dan Fungsi Store

Kode program 2 merupakan kode routing untuk memanggil fungsi create,

dimana fungsi tersebut untuk menampilkan form inputan pengaduan kritik dan saran

dan kode routing untuk memanggil fungsi store yang berfungsi memasukkan data ke

database.

Route::get('pengaduan/create',['as'=>'pengaduan.create','uses'=>'PengaduanC

ontroller@create']);

Route::post('pengaduan/store',['as'=>'pengaduan.store','uses'=>'PengaduanCo

ntroller@store']);

public function create()

{

return view('pengaduan.create');

}

public function store(Request $request)

{

$this->validate($request, [

'no_anggota' => 'required',

'tanggal' => 'required',

'nama' => 'required',

'alamat' => 'required',

'notlp' => 'required',

'saran' => 'required',

'tanggapan' => '',

]);

pengaduan::create($request->all());

return redirect()->route('pengaduan.index')

->with('Sukses!!!');

}

Page 15: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

15

Gambar 10 Halaman Tanggapan Pengaduan

Gambar 10 merupakan tampilan untuk data pengaduan yang masuk dan yang

telah ditanggapi. Perintah untuk menampilkan data dapat dilihat pada Kode Program

3.

Kode Program 3 Perintah untuk Tampil Data pada PengaduanController

Kode program 3 merupakan perintah untuk menampilkan data pada

pengaduanController. Semua data diambil dari tabel pengaduan dengan menggunakan

model bernama pengaduan. Data yang tampil diurutkan berdasarkan id yang paling

terakhir (desc), artinya data yang paling akhir diinputkan akan tampil pada halaman

pertama. Fungsi paginate(5) untuk menampilkan data yang banyak ke dalam beberapa

halaman, angka 5 merupakan jumlah data yang akan ditampilkan. Memanggil view

pengaduan.index dan mengirimkan variabel pengaduan ke view tersebut.

public function index(Request $request)

{

$pengaduan=pengaduan::orderBy('id','DESC')->paginate(5);

return view('pengaduan.index',compact('pengaduan'));

}

Page 16: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

16

Kode program 4 Perintah untuk Menampilkan Data pada view

Kode program 4 merupakan view bernama index.blade.php. Fungsi @foreach

merupakan perulangan untuk menampilkan semua data yang ada didalam tabel

pengaduan. Kode <?php echo str_replace('/?', '?', $pengaduan -

>render());?> untuk menampilkan link pagination. Routing digunakan untuk

mengarahkan ke halaman menampilkan data pengaduan dan untuk mengarahkan dan

memanggil fungsi index yang ada di dalam PengaduanContoller, berikut routingnya

pada Kode Program 5.

Kode Program 5 Routing untuk Memanggil Fungsi Index

Route::get('pengaduan',['as'=>'pengaduan.index','uses'=>'PengaduanController@in

dex']);

<?php $no=$pengaduan->firstItem() - 1;?>

<div class="panel-body">

<table class="table table-striped table-bordered table-hover">

{!! Form::open(['method'=>'GET','url'=>'caribuku','role'=>'search']) !!}

<div class="input-group custom-search-form">

<input type="text" class="form-control" name="search" placeholder="cari..."

>

<input class="btn btn-sm btn-primary" type="submit" value="Cari" />

</div> {!! Form::close() !!} <br>

<thead>

<tr class="bg-info">

<th>No Anggota</th>

<th>Tanggal</th>

<th>Nama</th>

<th>Alamat</th>

<th>No Telepon</th>

<th>Saran</th>

<th>Tanggapan</th>

</tr>

</thead>

@foreach ($pengaduan as $key => $pengaduans)

<?php $no++ ;?>

<tr>

<td>{{ $pengaduans->no_anggota }}</td>

<td>{{ $pengaduans->tanggal }}</td>

<td>{{ $pengaduans->nama }}</td>

<td>{{ $pengaduans->alamat }}</td>

<td>{{ $pengaduans->notlp }}</td>

<td>{{ $pengaduans->saran }}</td>

<td>{{ $pengaduans->tanggapan }}</td>

</tr>

{!! Form::close() !!}

@endforeach

</table>

<?php echo str_replace('/?', '?', $pengaduan->render());?>

<div class="col-xs-12 col-sm-12 col-md-12 text-center">

<a class="btn btn-danger" href="{{ route('books.index') }}">

Back</a></div>

Page 17: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

17

Gambar 11 Tampilan Data Pengaduan di Admin

Gambar 11 merupakan halaman data pengaduan yang terdapat di admin.

Halaman ini berfungsi untuk melakukan tanggapan dari admin dengan menggunakan

fungsi update dan menghapus data menggunakan fungsi delete.

Gambar 12 Tampilan Form Tanggapan di admin

Gambar 12 merupakan form tanggapan yang disediakan untuk admin yang

berfungsi untuk menanggapi pengaduan yang masuk. Admin menanggapi pengaduan

dengan mengisi form tanggapan. Perintah untuk update data dapat dilihat pada Kode

Program 6.

Page 18: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

18

Kode Program 6 Perintah untuk Update pada PengaduanController

Kode program 6 merupakan perintah untuk menampilkan form dan menyimpan

data ke database pada PengaduanContoller. Fungsi edit berfungsi untuk menampilkan

form dan data yang masuk. Semua data diambil dari tabel pengaduan dengan

menggunakan model dengan nama pengaduan data yang diambil berdasarkan id.

Pemanggilan view dengan nama file edit dalam folder pengaduan untuk menampilkan

form dan mengirimkan variable pengaduan ke view tersebut. Proses penyimpanan data

ditandai dengan pemanggilan file pengaduan yang terdapat didalam model berdasarkan

id, data yang telah diinputkan akan disimpan ke database dan kembali diarahkan ke

file index. Kode program 7 merupakan routing untuk mengarahkan dan memanggil

halaman edit.

Kode Program 7 Routing untuk Mengarahkan dan Memanggil Halaman Edit

Gambar 13 Tampilan Statistik Data Pengaduan PerHari

Route::get('pengaduan/{id}/edit',['as'=>'pengaduan.edit','uses'=>'PengaduanCont

roller@edit']);

Route::patch('pengaduan/update/{id}',['as'=>'pengaduan.update','uses'=>'Pengadu

anController@update']);

public function edit($id)

{

$pengaduan=pengaduan::find($id);

return view('pengaduan.edit',compact('pengaduan'));

}

public function update(Request $request, $id)

{

$this->validate($request, [

'no_anggota' => 'required',

'tanggal' => 'required',

'nama' => 'required',

'alamat' => 'required',

'notlp' => 'required',

'saran' => 'required',

'tanggapan' => 'required',

]);

pengaduan::find($id)->update($request->all());

return redirect()->route('pengaduan.index')

->with('suksess!!');

}

Page 19: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

19

Gambar 13 merupakan halaman laporan pengaduan. Halaman ini berfungsi

untuk menampilkan statistik data pengaduan perhari. Perintah untuk menampilkan

statistik data dapat dilihat pada Kode Program 8.

Kode Program 8 Perintah untuk Statistik Data PerHari

Kode program 8 merupakan perintah untuk tampil statistik data terdapat pada

controller dengan nama ChartsController. Data diambil berdasarkan variabel tanggal

pada tabel pengaduan. Data pengaduan yang masuk dijumlahkan berdasarkan tanggal.

Pemanggilan view bar pada folder pages dilakukan untuk menampilkan BarChart.

Gambar 14 Tampilan Statistik Data Pengaduan PerBulan

Gambar 14 merupakan tampilan statistik data pengaduan berdasarkan bulan.

Perintah untuk menampilkan statistik data pengaduan berdasarkan bulan dapat dilihat

pada Kode Program 9.

function bar(){

$votes = \Lava::DataTable();

$datapengaduan = DB::table('pengaduan')->groupBy('tanggal')->get();

$votes->addStringColumn('Jumlah')

->addNumberColumn('Jumlah');

foreach($datapengaduan as $pengaduan){

$votes->addRow(array($pengaduan->tanggal,

DB::table('pengaduan')-

>where('tanggal',$pengaduan>tanggal)>count()));

}

\Lava::BarChart('Jumlah')

->setOptions(array(

'datatable' => $votes,

'orientation' => 'horizontal', ));

return view('pages.bar');

}

public function tahunchart()

{

$visitor = DB::table('pengaduan')

->select(

DB::raw("year(tanggal) as year"),

DB::raw("count(*) as count","tanggal"))

->orderBy("tanggal")

->groupBy(DB::raw("year(tanggal)"))

->get();

$result[] = ['Year','Jumlah'];

foreach ($visitor as $key => $value) {

$result[++$key] = [$value->year, (int)$value->count];

}

return view('pages.tahunchart')

->with('visitor',json_encode($result));

}

public function bulanchart()

{

$visitor = DB::table('pengaduan')

->select(

DB::raw("month (tanggal) as month"),

DB::raw("count(*) as count","tanggal"))

->orderBy("tanggal")

->groupBy(DB::raw("month(tanggal)"))

->get();

$result[] = ['Month','Jumlah'];

Page 20: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

20

Kode Program 9 Perintah untuk Statistik Data PerBulan

Kode Program 9 merupakan perintah untuk statistik data pengaduan perbulan

pada controller dengan nama ChartsController. Data diambil berdasarkan variabel

tanggal pada tabel pengaduan. Data pengaduan yang masuk dijumlahkan berdasarkan

bulan. Statistik data pengaduan ditampilkan dengan memanggil file bulancharts pada

folder pages.

5. Simpulan

Aplikasi pengaduan, kritik, dan saran merupakan aplikasi berbasis web yang

dibangun dengan menggunakan framework Laravel. Aplikasi ini dipakai sebagai

penghubung antara masyarakat kota Salatiga dan pihak PERSIPDA dalam

memberikan informasi, pengaduan, kritik, dan saran. Terdapat dua pengguna yang

berinteraksi dengan aplikasi ini yaitu user dan admin. User berperan dalam pengisian

data ke dalam aplikasi, sedangkan admin berperan dalam mengelola data. Aplikasi ini

membantu meningkatkan kualitas pelayanan perpustakaan yang ada di PERSIPDA

dengan mempermudah pihak user dalam memberikan pengaduan, kritik, dan saran

yang sebelumnya dilakukan secara manual sekarang dilakukan secara digital dan juga

mempermudah pihak PERSIPDA selaku admin dalam mengelola data informasi yang

masuk guna mengetahui apa yang harus ditingkatkan atau diperbaiki dalam pelayanan

serta mengetahui usulan kebutuhan bahan pustaka yang diajukan oleh masyarakat.

Saran untuk penelitian selanjutnya adalah mengembangkan website yang telah

dirancang dengan menambahkan fitur-fitur lainnya seperti laporan jumlah data

pengaduan berupa file berekstensi PDF atau Excel dan mengembangkan aplikasi ini

hingga dapat digunakan bukan hanya pada aplikasi web.

public function bulanchart(){

$visitor = DB::table('pengaduan')

->select(

DB::raw("month (tanggal) as month"),

DB::raw("count(*) as count","tanggal"))

->orderBy("tanggal")

->groupBy(DB::raw("month(tanggal)"))

->get();

$result[] = ['Month','Jumlah'];

foreach ($visitor as $key => $value) {

$result[++$key] = [$value->month, (int)$value->count]; }

return view('pages.bulanchart')

->with('visitor',json_encode($result)); }

Page 21: Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran … · 2018. 1. 17. · 1 Perancangan dan Implementasi Aplikasi Pengaduan, Kritik, dan Saran Menggunakan Framework

21

6. Pustaka

[1] Dinas Perpustakaan dan Kearsipan Kota Salatiga 2013, Layanan

Perpustakaan, Kantor Perpustakaan dan Arsip Daerah Kota Salatiga, dilihat

21 Oktober 2016,

http://persipda.salatigakota.go.id/layanan/layanan-perpus/.

[2] Wikipedia Bahasa Indonesia 2016, Aplikasi Web, Wikipedia, dilihat 21

Oktober 2016, https://id.wikipedia.org/wiki/Aplikasi_web/.

[3] Ramadhani, M, Fajar 2015, „Pembangunan Aplikasi Informasi, Pengaduan,

Kritik, dan Saran Seputar Kota Cimahi pada Platform Android‟, Jurnal

Ilmiah Komputer dan Informatika,hh. 2089-9033.

[4] Simanuntak, D, Novianto 2015, „Aplikasi Manajemen Perpustakaan Berbasis

Web Menggunakan Framework Laravel Pada Yayasan HOME (House of

Mercy)‟,

[5] Wikipedia Bahasa Indonesia 2016, Laravel, Wikipedia, dilihat tanggal 06

Oktober 2016, https://id.wikipedia.org/wiki/Laravel/.

[6] Bruno Skvorc 2015, The Best PHP Framework for 2015: SitePoint Survey

Results, Sitepoint, dilihat tanggal 06 Oktober 2016,

https://www.sitepoint.com/best-php-framework-2015-sitepoint-survey-

results/.

[7] Aminudin 2015, Cara Efektif Belajar Framework Laravel, Yogyakarta,

Lokomedia.

[8] Ali 2014, Konsep Dasar MVC (Model-View_Controller) dari PHP, Situsali,

dilihat tanggal 06 Oktober 2016, https://situsali.com/konsep-dasar-mvc-

model-view-controller-dari-php/.