Implementasi Basis Data Implementasi Sistem

3. Tabel Pemesanan Tabel pemesanan ini digunakan untuk menyimpan data pemesanan. Tabel pemesanan dapat dilihat pada tabel 4.5. Tabel 4. 5 Tabel Pemesanan No SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 CREATE TABLE IF NOT EXISTS `pemesanan` `id_pesan` int5 NOT NULL AUTO_INCREMENT, `tgl_pesan` date NOT NULL, `tgl_kirim` date NOT NULL, `estimasi_pengiriman` datetime NOT NULL, `verifikasi_1` enum„belum‟,‟sudah‟ NOT NULL, `verifikasi_2` enum„belum‟,‟sudah‟ NOT NULL, `verifikasi_3` enum„belum‟,‟sudah‟ NOT NULL, `verifikasi_puskes` enum„belum‟,‟sudah‟ NOT NULL, `max` int5 NOT NULL, `status` enum„menunggu persetujuan‟,‟telah disetujui‟,‟dalam pengiriman‟,‟sudah diterima‟,‟belum dikirim‟,‟ditolak‟ NOT NULL, `id_puskesmas` int5 NOT NULL, `ket` text NOT NULL, PRIMARY KEY `id_pesan`, KEY `id_cabang` `id_puskesmas` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=50 ; ALTER TABLE `pemesanan` ADD CONSTRAINT `pemesanan_ibfk_1` FOREIGN KEY `id_puskesmas` REFERENCES `puskesmas` `id_puskesmas`; 4. Tabel pengadaan Tabel pengadaan ini digunakan untuk menyimpan data dari pengadaan. Tabel pengadaan dapat dilihat pada tabel 4.6. Tabel 4. 6 Tabel Pengadaan No SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 CREATE TABLE IF NOT EXISTS `pengadaan` `id_pengadaan` int5 NOT NULL AUTO_INCREMENT, `tgl_pengadaan` date NOT NULL, `tgl_kirim` datetime NOT NULL, `estimasi_pengiriman` date NOT NULL, `ver_kabid` enum„belum‟,‟sudah‟ NOT NULL, `ver_subag` enum„belum‟,‟sudah‟,‟‟,‟‟ NOT NULL, `ver_kepgud` enum„belum‟,‟sudah‟ NOT NULL, `ver_kepupt` enum„belum‟,‟sudah‟ NOT NULL, `ver_bkbpp` enum„belum‟,‟sudah‟ NOT NULL, `ver_bkkbn` enum„belum‟,‟sudah‟ NOT NULL, `ket` text NOT NULL, `id_uptkb` int5 DEFAULT NULL, `bkbpp` enum„n‟,‟y‟ NOT NULL DEFAULT „n‟, `status` enum„menunggu persetujuan‟,‟telah disetujui‟,‟dalam pengiriman‟,‟sudah 16 17 18 19 20 21 22 23 diterima‟,‟belum dikirim‟,‟ditolak‟ NOT NULL DEFAULT „belum dikirim‟, `tgl_terima` datetime NOT NULL, UNIQUE KEY `id_pesan` `id_pengadaan`, KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ; ALTER TABLE `pengadaan` ADD CONSTRAINT `pengadaan_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`; 5. Tabel Pengiriman Tabel pengiriman ini digunakan untuk menyimpan data dari pengiriman. Tabel pengiriman dapat dilihat pada tabel 4.7. Tabel 4. 7 Tabel Pengiriman No SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 CREATE TABLE IF NOT EXISTS `pengiriman` `id_kirim` int5 NOT NULL AUTO_INCREMENT, `id_pesan` int5 DEFAULT NULL, `tgl_pengiriman` datetime NOT NULL, `no_polisi` varchar10 NOT NULL, `id_user` int5 NOT NULL, `tgl_diterima` datetime NOT NULL, `id_pengadaan` int11 DEFAULT NULL, PRIMARY KEY `id_kirim`, KEY `no_polisi` `no_polisi`, KEY `id_pesan` `id_pesan`, KEY `id_user` `id_user`, KEY `id_pengadaan` `id_pengadaan` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=19 ; ALTER TABLE `pengiriman` ADD CONSTRAINT `pengiriman_ibfk_1` FOREIGN KEY `id_pesan` REFERENCES `pemesanan` `id_pesan`, ADD CONSTRAINT `pengiriman_ibfk_2` FOREIGN KEY `no_polisi` REFERENCES `t_transportasi` `no_polisi`, ADD CONSTRAINT `pengiriman_ibfk_3` FOREIGN KEY `id_user` REFERENCES `user` `id_user`; 6. Tabel Puskesmas Tabel puskesmas ini digunakan untuk menyimpan data dari puskesmas. Tabel puskesmas dapat dilihat pada tabel 4.8 Tabel 4. 8 Tabel Puskesmas No SQL 1 2 3 4 CREATE TABLE IF NOT EXISTS `puskesmas` `id_puskesmas` int11 NOT NULL AUTO_INCREMENT, `nama_puskesmas` varchar20 NOT NULL, `alamat_puskesmas` text NOT NULL, 5 6 7 8 9 10 11 12 13 `jarak_puskesmas` int11 NOT NULL, `id_uptkb` int5 NOT NULL, PRIMARY KEY `id_puskesmas`, UNIQUE KEY `nama_puskesmas` `nama_puskesmas`, KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; ALTER TABLE `puskesmas` ADD CONSTRAINT `puskesmas_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`; 7. Tabel Ramal Tabel ramal ini digunakan untuk menyimpan data dari peramalan barang. Tabel ramal dapat dilihat pada tabel 4.9. Tabel 4. 9 Tabel Peramalan No SQL 1 2 3 4 5 6 7 8 9 10 11 12 CREATE TABLE IF NOT EXISTS `ramal` `id_ramal` int5 NOT NULL AUTO_INCREMENT, `tgl_ramal` date NOT NULL, `qty_ramal` int11 NOT NULL, `id_barang` varchar10 NOT NULL, `id_uptkb` int5 DEFAULT NULL, `bkbpp` enum„n‟,‟y‟ NOT NULL, `keterangan` text NOT NULL, PRIMARY KEY `id_ramal`, KEY `id_barang` `id_barang`, KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=35 ; 8. Tabel T_barang Tabel t_barang ini digunakan untuk menyimpan data dari barang. Tabel barang dapat dilihat pada tabel 4.10. Tabel 4. 10 Tabel Barang No SQL 1 2 3 4 5 6 7 8 9 10 11 12 CREATE TABLE IF NOT EXISTS `t_barang` `id_barang` varchar10 NOT NULL, `tgl_masuk` date NOT NULL, `tgl_kadaluarsa` date NOT NULL, `nama_barang` varchar50 NOT NULL, `jenis` varchar10 NOT NULL, `satuan` varchar11 NOT NULL, `qty` int11 NOT NULL, `safetyStock` int11 NOT NULL DEFAULT „0‟, `status` enum„Ada‟,‟Kosong‟ NOT NULL DEFAULT „Kosong‟, `id_uptkb` int5 DEFAULT NULL, `id_puskesmas` int5 DEFAULT NULL, 13 14 15 16 17 18 19 20 21 `bkbpp` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, `bkkbn` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, PRIMARY KEY `id_barang`, KEY `id_uptkb` `id_uptkb`, KEY `id_puskesmas` `id_puskesmas` ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `t_barang` ADD CONSTRAINT `t_barang_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`; 9. Tabel t_transportasi Tabel t_transportasi ini digunakan untuk menyimpan data transportasi. Tabel t_transportasi dapat dilihat pada tabel 4.11. Tabel 4. 11 Tabel Transportasi No SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 CREATE TABLE IF NOT EXISTS `t_transportasi` `no_polisi` varchar10 NOT NULL, `jenis_kendaraan` varchar20 NOT NULL, `pengemudi` varchar30 NOT NULL, `badan` enum„UPTKB‟,‟BKBPP‟ NOT NULL, `id_uptkb` int5 DEFAULT NULL, `bkbpp` enum„n‟,‟y‟ NOT NULL, `bkkbn` enum„n‟,‟y‟ NOT NULL, PRIMARY KEY `no_polisi`, KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `t_transportasi` ADD CONSTRAINT `t_transportasi_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`; 10. Tabel uptkb Tabel uptkb ini digunakan untuk menyimpan data uptkb. Tabel uptkb dapat dilihat pada tabel 4.12. Tabel 4. 12 Tabel UPTKB No SQL 1 2 3 4 5 6 7 CREATE TABLE IF NOT EXISTS `uptkb` `id_uptkb` int5 NOT NULL AUTO_INCREMENT, `nama_uptkb` varchar25 NOT NULL, `alamat_uptkb` text NOT NULL, `jarak_uptkb` int5 NOT NULL, PRIMARY KEY `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; 11. Tabel user Tabel user ini digunakan untuk menyimpan data user. Tabel user dapat dilihat pada tabel 4.13. Tabel 4. 13 Tabel User No SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 CREATE TABLE IF NOT EXISTS `user` `id_user` int5 NOT NULL AUTO_INCREMENT, `nip` varchar18 NOT NULL, `password` varchar100 NOT NULL, `nama` varchar50 NOT NULL, `email` varchar55 NOT NULL, `jabatan` varchar60 NOT NULL, `id_uptkb` int5 DEFAULT NULL, `id_puskesmas` int5 DEFAULT NULL, `bkbpp` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, `bkkbn` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, `reset_token` text NOT NULL, PRIMARY KEY `id_user`, UNIQUE KEY `nip` `nip`, KEY `id_puskesmas` `id_puskesmas`, KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=65 ; ALTER TABLE `user` ADD CONSTRAINT `user_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`, ADD CONSTRAINT `user_ibfk_2` FOREIGN KEY `id_puskesmas` REFERENCES `puskesmas` `id_puskesmas`;

4.1.4. Implementasi Antarmuka

Implementasi antarmuka dilakukan dengan setiap halaman program yang dibangun dan pengkodeannya dalam bentuk file program. Berikut ini adalah implementasi antarmuka yang dibangun dan dibedakan antara antarmuka untuk admin, kepala gudang, kepala bidang keluarga berencana, dan kepala BKBPP. 1. Implementasi Antarmuka Admin Implementasi antarmuka yang terdapat pada perangkat lunak yang ditujukan untuk admin dapat dilihat pada tabel 4.14. Tabel 4. 14 Implementasi Antarmuka Admin Menu Deskripsi Nama File Halaman Login Digunakan sebagai halaman login admin index.php uptkb Halaman yang digunakan untuk mengolah data uptkb uptkb.php transportasi Halaman yang digunakan untuk mengolah data transportasi transportasi.php Keluar logout.php 2. Implementasi Antarmuka Kepala Gudang Implementasi antarmuka yang terdapat pada perangkat lunak yang ditujukan