86
BAB IV IMPLEMENTASI SISTEM
4. 1. Spesifikasi Perangkat Keras dan Perangkat Lunak
Perangkat keras yang digunakan untuk membangun sistem adalah sebagai berikut : Processor
: Intel Core i5 Harddisk
: 750 GB Memory
: 4 GB Modem
: ZTE MF180 Webcam
: ASUS USB2.0 Webcam Perangkat lunak yang digunakan untuk membangun sistem adalah sebagai berikut :
Sistem Operasi : Windows 7 64 bit
Bahasa Pemrograman : Java
DBMS : MySQL
Tools SMS : SMSLib
Tools QR Code : BarcodeLib
4. 2. Implementasi Basis Data
Pada tahap ini dilakukan pembangunan basis data menggunakan MySQL untuk menunjang sistem yang dibangun. Basis data yang dibangun terdiri dari tabel-tabel
yang telah dirancang pada bab sebelumnya.
87
Berikut query yang digunakan untuk membuat database dengan nama perpus beserta tabel-tabel di dalamnya :
CREATE DATABASE IF NOT EXISTS `perpus`; CREATE TABLE `buku`
`kodebuku` varchar100, `judul` varchar200,
`keterangan` varchar3000, `isbn` varchar50,
`jenisPenerimaan` varchar50, `penerbit` varchar100,
`kategori` varchar100, `tglMasuk` date DEFAULT NULL,
PRIMARY KEY `kodebuku`, KEY `FK_buku_kategori` `kategori`,
KEY `FK_buku_penerbit` `penerbit`, CONSTRAINT `FK_buku_kategori` FOREIGN KEY `kategori` REFERENCES
`kategori` `idkategori`, CONSTRAINT `FK_buku_penerbit` FOREIGN KEY `penerbit` REFERENCES
`penerbit` `kodepenerbit` ;
CREATE TABLE `copy` `kodecopy` varchar100,
`kondisi` varchar100, `kodebuku` varchar100,
PRIMARY KEY `kodecopy`, KEY `FK_copy_kdbuku` `kodebuku`,
CONSTRAINT `FK_copy_kdbuku` FOREIGN KEY `kodebuku` REFERENCES `buku` `kodebuku`
; CREATE TABLE `kategori`
`idkategori` varchar100, `namakategori` varchar100,
PRIMARY KEY `idkategori` ;
88
CREATE TABLE `peminjaman` `tglPinjam` date DEFAULT NULL,
`tglKembali` date DEFAULT NULL, `tglHarusKembali` date DEFAULT NULL,
`nisnip` varchar100, `kodeBuku` varchar100,
`denda` int11 DEFAULT NULL, `kodepemesanan` varchar100,
`statuspeminjaman` varchar50, `kodecopy` varchar100,
`tglpesan` date DEFAULT NULL, KEY `FK_peminjaman_buku` `kodeBuku`,
KEY `FK_peminjaman_user` `nisnip`, KEY `FK_peminjaman_copybuku` `kodecopy`,
CONSTRAINT `FK_peminjaman_buku` FOREIGN KEY `kodeBuku` REFERENCES `buku` `kodebuku`,
CONSTRAINT `FK_peminjaman_copybuku` FOREIGN KEY `kodecopy` REFERENCES `copy` `kodecopy`,
CONSTRAINT `FK_peminjaman_user` FOREIGN KEY `nisnip` REFERENCES `pengunjung` `nisnip`
; CREATE TABLE `penerbit`
`kodepenerbit` varchar100, `namapenerbit` varchar100,
`alamatpenerbit` varchar200, `emailpenerbit` varchar40,
`fax` varchar40, `notelp` varchar40,
PRIMARY KEY `kodepenerbit` ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
CREATE TABLE `sms` `nohp` varchar30,
`pesan` varchar400 ;
89
CREATE TABLE `pengarang` `kodepengarang` varchar100,
`namapengarang` varchar100, `tempatLahir` varchar100,
`notelp` varchar50, `alamat` varchar100,
`emailpengarang` varchar50, `tglLahir` date DEFAULT NULL,
PRIMARY KEY `kodepengarang` ;
CREATE TABLE `pengarangbuku` `kodepengarang` varchar100,
`kodebuku` varchar100, KEY `FK_pengarangbuku_kBuku` `kodebuku`,
KEY `FK_pengarangbuku_pengarang` `kodepengarang`, CONSTRAINT `FK_pengarangbuku_kBuku` FOREIGN KEY `kodebuku`
REFERENCES `buku` `kodebuku`, CONSTRAINT `FK_pengarangbuku_pengarang` FOREIGN KEY `kodepengarang`
REFERENCES `pengarang` `kodepengarang` ;
CREATE TABLE `pengunjung` `nisnip` varchar50,
`nama` varchar100, `kelas` varchar20,
`alamat` varchar200, `nohp` varchar20,
`status` varchar20 PRIMARY KEY `nisnip` ;
90
4. 3. Implementasi Kelas Model
4.3.1 Kelas Kategori
4.3.2 Kelas PengarangBuku
Kategori - idkategori
: String - namakategori
: String + setIdkategoriString : void
+ getIdkategori : String
+ setNamaKategoriString : void + getNamaKategori
: String
PengarangBuku - kodebuku
: Buku - kodepengarang
: Pengarang + setKodebukuBuku
: void + getKodebuku
: Buku + setKodePengarangPengarang : void
+ getKodePengarang : Pengarang
Pengunjung Buku
Pengarang
Copy Kategori
Penerbit
Peminjaman PengarangBuku
Gambar 4. 1 Diagram Kelas
91
4.3.3 Kelas Penerbit
4.3.4 Kelas Pengarang
Penerbit - kodepenerbit : String
- namapenerbit : String
- alamatpenerbit : String - emailpenerbit
: String - fax
: String - notelp
: String + setKodepenerbitString : void
+ getKodePenerbit : String + setNamapenerbitString : void
+ getNamapenerbit
: String + setAlamatpenerbitString : void
+ getAlamatpenerbit : String
+ setFaxString : void
+ getFax : String
+ setNotelpString : void
+ getNotelp : String
Pengarang - kodepengarang : String
- namapengarang : String - tempatlahir
: String - alamat
: String - emailpengarang : String
- notelp : String
- tglLahir : Date
+ setKodepengarangString : void + getKodePengarang : String
+ setNamapengarangString : void + getNamapengarang
: String + setTempatlahirString
: void + getTempatlahir
: String + setAlamatString
: void + getAlamat
: String + setEmailpengarangString : void
+ getEmailpengarang : String
+ setNotelpString : void
+ getNotelp : String
+ setTglLahirDate : void
+ getTglLahir : Date
92
4.3.5 Kelas Pengunjung
4.3.6 Kelas Buku
Pengunjung - nisnip
: String - nama
: String - kelas
: String - alamat
: String - nohp
: String - status
: String + setNisnipString : void
+ getNisnip : String + setNama String : void
+ getNama
: String + setKelasString
: void + getKelas
: String + setAlamatString : void
+ getAlamat : String
+ setNohpString : void
+ getNohp : String
+ setStatusString : void + getStatus
: String
Buku - kodebuku
: String - judul
: String - keterangan
: String - isbn
: String - jenispenerimaan : String
- Penerbit : Penerbit
- Kategori : Kategori
- tglMasuk : Date
+ setKodebukuString : void + getKodebuku
: String + setJudul String
: void + getJudul
: String + setKeteranganString
: void + getKeterangan
: String + setIsbnString
: void + getIsbn
: String + setJenispenerimaanString : void
+ getJenispenerimaan : String
+ setPenerbitPenerbit : void
+ getPenerbit : Penerbit
+ setKategoriKategori : void
+ getKategori : Kategori
+ setTglmasukDate : void
+ getTglmasuk : Date
93
4.3.7 Kelas Copy
4.3.8 Kelas Peminjaman
Copy - kodecopy
: String - kondisi
: String - kodebuku
: Buku + setKodecopyString : void
+ getKodecopy : String
+ setKondisiString : void
+ getKondisi : String
+ setKodebukuBuku : void
+ getKodebuku : Buku
Peminjaman - tglPinjam
: Date - tglKembali
: Date - tglHarusKembali : Date
- tglPesan : Date
- nisnip : Pengunjung
- kodebuku : Buku
- denda : int
- kodepemesanan : String
- statuspeminjaman : String
- kodecopy : Copy
+ setTglpinjam Date : void
+ getTglpinjam : Date
+ setTglkembali Date : void
+ getTglkembali : Date
+ setTglHaruskembali Date : void + getTglHaruskembali
: Date + setTglPesanDate
: void + getTglPesan
: Date + setNisnipPengunjung
: void + getNisnip
: Pengunjung + setKodebuku Buku
: void + getKodebuku
: Buku + setDendaint
: void + getDenda
: int + setKodepemesananString : void
+ getKodepemesanan : String
+ setStatuspeminjamanString : void + getStatuspeminjaman
: String + setKodecopyCopy
: void + getKodecopy
: Copy
94
4. 4. Implementasi Sistem 4. 4. 1. Menu Utama
Tampilan Menu utama ini akan tampil pertama kali saat user Admin dan Staff mengakses program desktop. Pada halaman ini terdapat pilihan login, yaitu sebagai Admin atau
sebagai Staff.
Gambar 4. 2.Menu Utama
4. 4. 2. Admin
4. 4. 2. 1. Tampilan Frame Tambah Buku
Tampilan frame Tambah Buku akan tampil setelah Admin login dari menu utama atau memilih submenu Buku, lalu submenu Tambah.
Di frame ini, terdapat field-field untuk mengisikan data buku, seperti kode buku, judul buku, dan lain-lain. Setelah menambah data buku,
95
admin dapat menambahkan data pengarang seperti kode pengarang, nama pengarang, alamat, dan lain-lain.
Gambar 4. 3. Tambah Buku
4. 4. 2. 2. Tampilan Frame Edit Hapus Buku
Tampilan frame Edit Hapus Buku akan tampil setelah Admin memilih menu Buku, lalu submenu Edit Hapus. Di frame ini, terdapat
field-field untuk edit data buku, seperti kode buku, judul buku, dan lain- lain. Admin juga dapat edit data pengarang dan data kondisi buku.
Sebelum data-data tersebut tampil, admin diharuskan memasukkan kode buku pada field pencarian.
96
Gambar 4. 4. Edit Hapus Buku
4. 4. 2. 3. Tampilan Frame Lihat Buku
Tampilan frame Lihat Buku akan tampil setelah Admin memilih menu Buku, lalu submenu Lihat. Di frame ini, terdapat field-field untuk
melihat data-data buku. Sebelum data-data tersebut tampil, admin diharuskan memasukkan kode buku pada field pencarian atau
melakukan scanning kode buku menggunakan webcam.
97
Gambar 4. 5. Lihat Buku
4. 4. 2. 4. Tampilan Frame Cetak QR Kode buku
Tampilan frame Cetak QR Kode buku akan tampil setelah Admin memilih menu Buku, lalu submenu Cetak QR kode buku atau
memilih button Print QRCode pada frame Tambah Buku. Di frame ini, terdapat data-data buku yang dapat dipilih admin dengan klik kanan lalu
pilih Tambah. Setelah data ditambahkan pada tabel di sebelah kanan, admin dapat memilih button Print untuk mencetak QR kode buku. QR
Code yang dapat dicetak maksimal 12 buah.
98
Gambar 4. 6. Cetak QR Kode Buku
4. 4. 2. 5. Tampilan Frame Tambah data pengunjung
Tampilan frame Tambah Data Pengunjung akan tampil setelah Admin memilih menu Pengunjung, lalu submenu Tambah. Di frame ini,
terdapat data-data pengunjung, seperti nomor induk, nama, alamat, nomor handphone, dan lain-lain. Admin dapat menggunakan frame ini
untuk menambahkan data pengunjung.
99
Gambar 4. 7. Tambah Pengunjung
4. 4. 2. 6. Tampilan Frame Edit Hapus data pengunjung
Tampilan frame Edit Hapus Pengunjung akan tampil setelah Admin memilih menu Pengunjung, lalu submenu Edit Hapus. Di frame
ini, terdapat field-field untuk edit data pengunjung. Admin dapat mencari data pengunjung dengan memasukkan nomor induk pada field
pencarian. Setelah menemukan data pengunjung yang akan diedit datanya atau dihapus, admin dapat memilih data di tabel, klik kanan lalu
pilih Edit untuk edit, sedangkan Hapus untuk hapus data.
100
Gambar 4. 8. Edit Hapus Pengunjung
4. 4. 2. 7. Tampilan Frame Lihat data pengunjung
Tampilan frame Lihat Pengunjung akan tampil setelah Admin memilih menu Pengunjung, lalu submenu Lihat. Di frame ini, terdapat
field-field untuk melihat data pengunjung.
101
Gambar 4. 9. Lihat Data Pengunjung
4. 4. 2. 8. Tampilan Frame Cetak Kartu Anggota
Tampilan frame Cetak Kartu Anggota akan tampil setelah Admin memilih menu Pengunjung, lalu submenu Cetak Kartu Anggota
atau di frame Lihat Pengunjung dengan memilih button Cetak Kartu Anggota. Di frame ini, admin dapat memilih pengunjung yang sudah
menjadi anggota untuk dicetak kartu anggotanya. Kartu anggota yang dapat dicetak maksimal 9 kartu. Admin dapat memilih dengan klik
kanan lalu pilih Tambah, setelah data ditambahkan pada tabel sebelah kanan, klik button Print.
102
Gambar 4. 10. Cetak Kartu Anggota
4. 4. 2. 9. Tampilan Frame Tambah data penerbit
Tampilan frame Tambah data penerbit akan tampil setelah Admin memilih menu Penerbit, lalu submenu Tambah. Di frame ini,
admin dapat menambah data penerbit, seperti kode penerbit, nama penerbit, alamat, dan lain sebagainya.
103
Gambar 4. 11. Tambah Data Penerbit
4. 4. 2. 10. Tampilan Frame Edit Hapus data penerbit
Tampilan frame Edit Hapus Penerbit akan tampil setelah Admin memilih menu Penerbit, lalu submenu Edit Hapus. Di frame ini,
admin dapat mengedit atau menghapus data penerbit. Caranya, admin dapat klik kanan pada tabel sebelah kiri, lalu pilih Edit untuk edit data,
sedangkan Hapus untuk hapus data.
104
Gambar 4. 12. Edit Hapus Data Penerbit
4. 4. 2. 11. Tampilan Frame Lihat data penerbit
Tampilan frame Lihat data penerbit akan tampil setelah Admin memilih menu Penerbit, lalu submenu Lihat. Di frame ini, admin dapat
melihat data semua penerbit.
105
Gambar 4. 13. Lihat Data Penerbit
4. 4. 2. 12. Tampilan Frame Tambah data kategori
Tampilan frame Tambah data kategori akan tampil setelah Admin memilih menu Kategori, lalu submenu Tambah. Di frame ini,
admin dapat menambah data kategori buku, yaitu id kategori dan nama kategori.
106
Gambar 4. 14. Tambah Kategori Buku
4. 4. 2. 13. Tampilan Frame Edit Hapus data kategori
Tampilan frame Edit Hapus Kategori akan tampil setelah Admin memilih menu Kategori, lalu submenu Edit Hapus. Di frame
ini, admin dapat mengedit atau menghapus data kategori. Caranya, admin dapat klik kanan pada tabel sebelah kiri, lalu pilih Edit untuk edit
data, sedangkan Hapus untuk hapus data.
107
Gambar 4. 15. Edit Hapus Kategori
4. 4. 2. 14. Tampilan Frame Lihat data kategori
Tampilan frame Lihat data kategori akan tampil setelah Admin memilih menu Kategori, lalu submenu Lihat. Di frame ini, admin dapat
melihat semua data kategori.
108
Gambar 4. 16. Lihat Kategori Buku
4. 4. 3. Staff 4. 4. 3. 1. Home Staff
Tampilan frame Home Staff akan tampil setelah Staff login dari menu utama. Di frame ini, terdapat menu-menu yang hanya dapat
diakses oleh staff perpustakaan, seperti tambah peminjaman, tambah pengembalian dan mencetak laporan-laporan yang dibutuhkan.
109
Gambar 4. 17. Home Staff
4. 4. 3. 2. Tampilan Frame Tambah Peminjaman
Tampilan frame Tambah Peminjaman akan tampil setelah Staff memilih button Tambah pada panel Peminjaman. Di frame ini, staff
dapat menambahkan data peminjaman. Data buku dapat diambil dari database
dengan melakukan scanning terhadap kode buku dalam bentuk QR Code menggunakan webcam, sedangkan data peminjam
dengan scanning kartu anggota.
110
Gambar 4. 18. Tambah Peminjaman
4. 4. 3. 3. Tampilan Frame Lihat Peminjaman
Tampilan frame Lihat Peminjaman akan tampil setelah Staff memilih button Lihat pada panel Peminjaman. Di frame ini, staff dapat
melihat data peminjaman berdasarkan periode untuk tanggal pinjam.
111
Gambar 4. 19. Lihat Data Peminjaman
4. 4. 3. 4. Tampilan Frame Edit Hapus Peminjaman
Tampilan frame Edit Hapus Peminjaman akan tampil setelah Staff memilih button Edit Hapus pada panel Peminjaman. Di frame ini,
staff dapat mengedit atau menghapus data peminjaman. Klik kanan lalu pilih Edit untuk edit data, Hapus untuk hapus data. Staff juga dapat
melakukan pencarian data peminjaman berdasarkan kode buku atau nomor induk peminjam.
112
Gambar 4. 20. Edit Hapus Peminjaman
4. 4. 3. 5. Tampilan Frame Tambah Peminjaman Buku Cetak
Tampilan frame Tambah Peminjaman Buku Cetak akan tampil setelah Staff memilih button Buku Cetak pada panel Peminjaman. Di
frame ini, staff dapat menambahkan data peminjaman khusus untuk buku cetak dengan memilih kelas, lalu buku yang dipinjam.
113
Gambar 4. 21. Tambah Peminjaman Buku Cetak
4. 4. 3. 6. Tampilan Frame Tambah Pengembalian
Tampilan frame Tambah Pengembalian akan tampil setelah Staff memilih button Tambah pada panel Pengembalian. Di frame ini, staff
dapat menambahkan data pengembalian dengan memasukkan kode copy yang dipinjam atau melakukan scanning terhadap QR kode buku
yang bersangkutan. Setelah data diambil dari database, staff dapat menghitung denda jika buku terlambat dikembalikan. Nominal denda
yang ditetapkan adalah Rp 500,00 per hari. Staff dapat mengubah nominal tersebut dengan klik button Hitung Denda lalu masukkan
nominal denda yang diinginkan.
114
Gambar 4. 22. Tambah Pengembalian
4. 4. 3. 7. Tampilan Frame Lihat Pengembalian
Tampilan frame Tambah Pengembalian akan tampil setelah Staff memilih button Lihat pada panel Pengembalian. Di frame ini, staff dapat
melihat data pengembalian berdasarkan tanggal kembali pada periode tertentu.
115
Gambar 4. 23. Lihat Pengembalian
4. 4. 3. 8. Tampilan Frame Edit Hapus Pengembalian
Tampilan frame Edit Hapus Pengembalian akan tampil setelah Staff memilih button Edit Hapus pada panel Pengembalian. Di frame
ini, staff dapat mengedit atau menghapus data pengembalian. Caranya, klik kanan pada tabel, lalu pilih Edit untuk edit data, Hapus untuk hapus
data. Staff juga dapat melakukan pencarian data pengembalian berdasarkan kode buku dan nomor induk.
116
Gambar 4. 24. Edit Hapus Pengembalian
4. 4. 3. 9. Tampilan Frame Tambah Pengembalian Buku Cetak
Tampilan frame Tambah Pengembalian Buku Cetak akan tampil setelah Staff memilih button Buku Cetak pada panel Pengembalian. Di
frame ini, staff dapat menambahkan data pengembalian khusus untuk buku cetak dengan memilih kelas, lalu buku yang dipinjam.
117
Gambar 4. 25. Tambah Pengembalian Buku Cetak
4. 4. 3. 10. Tampilan Frame SMS
Tampilan frame SMS akan tampil setelah Staff memilih button SMS pada panel Pemesanan Buku. Di frame ini, staff dapat
mengirimkan SMS ke pengunjung yang sudah memesan buku lewat web.
118
Gambar 4. 26. Kirim SMS
4. 4. 3. 11. Tampilan Frame Tambah Peminjaman berdasarkan pemesanan
Tampilan frame Tambah Peminjaman untuk data pemesanan akan tampil setelah Staff memilih button Tambah Peminjaman pada
panel Pemesanan Buku. Di frame ini, staff dapat menambah data peminjaman berdasarkan data pemesanan. Pada tabel, klik kanan lalu
pilih Peminjaman. Staff juga dapat melakukan pencarian data pemesanan berdasarkan kode buku atau nomor induk.
119
Gambar 4. 27. Tambah Peminjaman berdasarkan pemesanan
4. 4. 3. 12. Tampilan Frame Laporan Penambahan Buku
Tampilan frame Penambahan Buku akan tampil setelah Staff memilih button Penambahan Buku pada panel Print. Di frame ini, staff
dapat mencetak atau sekedar melihat data penambahan buku. Data penambahan dapat dicari berdasarkan kategori buku atau tanggal masuk
buku.
120
Gambar 4. 28. Laporan Penambahan Buku
4. 4. 3. 13. Tampilan Frame Laporan Peminjaman Buku Cetak
Tampilan frame Peminjaman Buku Cetak akan tampil setelah Staff memilih button Peminjaman Buku Cetak pada panel Print. Di
frame ini, staff dapat mencetak atau sekedar melihat data peminjaman buku cetak dengan memilih buku yang sedang dipinjam.
121
Gambar 4. 29. Laporan Peminjaman Buku Cetak
4. 4. 3. 14. Tampilan Frame Laporan Peminjaman yang harus dikembalikan pada tanggal tertentu
Tampilan frame Peminjaman berdasarkan tanggal harus kembali pada tanggal tertentu akan tampil setelah Staff memilih button Kembali
Hari Ini pada panel Print. Di frame ini, staff dapat melihat data peminjaman yang harus dikembalikan pada tanggal yang dipilih.
122
Gambar 4. 30. Laporan Peminjaman yang harus dikembalikan pada tanggal tertentu
4. 4. 3. 15. Tampilan Frame Laporan Kondisi Buku
Tampilan frame Kondisi Buku akan tampil setelah Staff memilih button Kondisi Buku pada panel Print. Di frame ini, staff dapat melihat
data buku yang hilang atau rusak. Data ditampilkan berdasarkan data yang memiliki kode copy dan non copy.
123
Gambar 4. 31. Kondisi Buku
4. 4. 4. Pengunjung 4. 4. 4. 1. Tampilan Halaman Utama
Halaman utama akan tampil pertama kali saat pengunjung mengakses web.
124
Gambar 4. 32. Halaman Utama untuk user Pengunjung
4. 4. 4. 2. Tampilan Halaman Pencarian data buku
Halaman pencarian data buku akan tampil setelah pengunjung memilih menu Search. Pada halaman ini, pengunjung dapat melakukan
pencarian data buku bedasarkan kode buku, judul buku, penerbit, pengarang, atau kategori.
125
Gambar 4. 33. Pencarian Data Buku
Pada halaman ini, akan dilakukan validasi input. Jika tidak ada keyword yang dimasukkan lalu klik Submit, maka akan muncul pesan “Keyword harap diisi”. Berikut kode
pemrograman yang digunakan :
function validasi_inputform{ if form.cari.value == {
alertKeyword harap diisi; form.cari.focus;
return false; }
return true; }
126
4. 4. 4. 3. Tampilan Halaman Daftar Peminjaman
Halaman daftar peminjaman akan tampil setelah pengunjung memilih menu Account. Pada halaman ini, pengunjung dapat melihat
daftar peminjaman untuk buku-buku yang sedang dipinjam. Pengunjung diharuskan memasukkan nomor induk terlebih dahulu.
Gambar 4. 34. Daftar Peminjaman 1
Pada halaman ini, akan dilakukan validasi input. Nomor induk harus diisikan untuk meneruskan ke halaman berikutnya. Berikut kode
pemrograman yang digunakan :
127
Setelah memasukkan nomor induk, maka akan muncul daftar peminjaman
Gambar 4. 35. Daftar Peminjaman 2
function validasi_inputform{ if form.cari.value == {
alertField nomor induk harap diisi;
form.cari.focus; return false;
} return true;
}
128
Berikut query yang digunakan untuk melihat daftar peminjaman :
4. 4. 4. 4. Tampilan Halaman Tentang Perpustakaan
Halaman tentang perpustakaan akan tampil setelah pengunjung memilih menu About Us. Pada halaman ini ditampilkan mengenai
penjelasan tentang perpustakaan SMA Pangudi Luhur Sedayu.
Gambar 4. 36. Halaman About Us
public String dataAccountString nisnip { return SELECT p.kodeBuku, b.judul, COALESCEp.tglpesan, - AS tgl,
COALESCEp.tglharuskembali, - AS tgl2 + FROM peminjaman p, buku b +
WHERE p.kodeBuku = b.kodebuku + AND p.nisnip = +nisnip+ AND p.statuspeminjaman =
Dipinjam ; }
129
4. 4. 4. 5. Tampilan Halaman Tentang Lokasi Sekolah
Halaman tentang lokasi sekolah akan tampil setelah pengunjung memilih menu Our Location. Pada halaman ini ditampilkan mengenai
lokasi SMA Pangudi Luhur dengan koordinat yang dapat dicari di Google Maps
dan alamat lengkap SMA Pangudi Luhur Sedayu. Tersedia juga website dan facebook untuk SMA Pangudi Luhur Sedayu.
Gambar 4. 37. Halaman Our Location
4. 4. 4. 6. Tampilan Halaman Rinci Buku
Halaman tentang data rinci buku didapat setelah user melakukan pencarian buku lihat gambar 4.32. Pada halaman ini ditampilkan data-
data lengkap dari buku. Pengunjung juga dapat melihat preview buku dalam bentuk PDF Protable Document Format.
130
Gambar 4. 38. Halaman Rinci Buku
131
Berikut query yang digunakan untuk mendapatkan data buku :
4. 4. 4. 7. Tampilan Halaman Pemesanan Buku
Halaman pemesanan buku akan tampil setelah pengunjung klik button Order Now pada halaman rinci buku lihat gambar 4.38. pada
halaman ini akan diperiksa apakah buku sedang dipinjam atau tidak. Berikut query yang digunakan :
Jika buku tidak sedang dipinjam, user akan dialihkan ke halaman pemesanan, user akan diminta untuk memasukkan nomor induk. Pada
halaman ini ditampilkan kode buku beserta judulnya untuk buku yang sudah dipilih untuk dipesan.
public String cariDataBukuString kodebuku { return SELECT b.judul, b.keterangan, k.namakategori, pn.namapenerbit
+ FROM buku b, penerbit pn, kategori k + WHERE pn.kodepenerbit = b.penerbit
+ AND k.idkategori = b.kategori + AND b.kodebuku LIKE + kodebuku + ;
}
public String cekDataPinjamKCopyString kodebuku { return SELECT kodecopy, kondisi
+ FROM copy WHERE kodebuku LIKE + kodebuku + + AND kodecopy NOT IN SELECT kodecopy FROM peminjaman WHERE
statuspeminjaman = Dipinjam + AND kodebuku LIKE + kodebuku + AND tglpinjam IS NOT
NULL ; }
132
Gambar 4. 39. Halaman Pemesanan Buku
Berikut query yang digunakan untuk menyimpan data pemesanan :
public String insertPeminjamanCopyString nisnip, String kodebuku, String status, String kodecopy, Date tgl {
return INSERT INTO peminjaman nisnip, kodeBuku, statuspeminjaman, kodecopy, tglpesan, kodepemesanan values
+ nisnip + , + kodebuku + , + status + , + kodecopy + , + tgl + , SUBSTRINGMD5RAND, -5 ;
}
133
Sebelum data pemesanan disimpan, diperiksa terlebih dahulu total pinjam buku dari pengunjung. Jika melebihi dari empat buku, maka pengunjung tidak dapat memesan buku.
Berikut query yang digunakan :
Setelah itu, akan diperiksa juga apakah buku dalam kondisi baik tidak rusak atau lainnya. Berikut query yang digunakan :
public String getTotPinjamString nisnip{ return SELECT COUNTb.kodebuku +
FROM peminjaman p, buku b, kategori k + WHERE nisnip = +nisnip+ +
AND statuspeminjaman = Dipinjam AND p.kodeBuku = b.kodebuku + AND b.kategori = k.idkategori AND k.idkategori NOT IN 002 ;}
public String cekKondisiCopyString kodebuku, String kodecopy { return SELECT kondisi FROM copy where kodebuku LIKE + kodebuku +
AND kodecopy + LIKE + kodebuku + ;
}
134
BAB V ANALISA HASIL