TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

156
TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN MENGGUNAKAN SMART CARD UNTUK MENDUKUNG PERAN SMART CAMPUS TUGAS AKHIR Sebagai Salah Satu Persyaratan untuk Menyelesaikan Program Strata-1 Prodi Teknik Elektro Departemen Elektro Fakultas Teknik Universitas Hasanuddin Makassar DISUSUN OLEH : MISA AMIRA AZWAR SITTI WAHYUNI ARTINI D411 13 310 D411 13 019 DEPARTEMEN ELEKTO FAKULTAS TEKNIK UNIVERSITAS HASANUDDIN MAKASSAR 2017

Transcript of TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

Page 1: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN

MENGGUNAKAN SMART CARD UNTUK MENDUKUNG

PERAN SMART CAMPUS

TUGAS AKHIR

Sebagai Salah Satu Persyaratan

untuk Menyelesaikan Program Strata-1 Prodi Teknik Elektro Departemen Elektro Fakultas

Teknik Universitas Hasanuddin

Makassar

DISUSUN OLEH :

MISA AMIRA AZWAR SITTI WAHYUNI ARTINI

D411 13 310 D411 13 019

DEPARTEMEN ELEKTO

FAKULTAS TEKNIK UNIVERSITAS

HASANUDDIN MAKASSAR

2017

Page 2: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

i

LEMBAR PENGESAHAN

TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN

MENGGUNAKAN SMART CARD UNTUK MENDUKUNG PERAN

SMART CAMPUS

Sebagai Salah Satu Persyaratan

untuk Menyelesaikan Program Strata-1 Prodi Teknik Elektro Departemen Elektro

Fakultas Teknik Universitas Hasanuddin

Makassar

disusun dan diajukan oleh :

MISA AMIRA AZWAR

D411 13 310

SITTI WAHYUNI ARTINI

D411 13 319

Telah diperiksa dan disetujui untuk diuji

Makassar, 2017

Pembimbing 1,

Dr. Eng. Ir. Hj. Dewiani, M.T.

NIP. 196910261994122001

Pembimbing 2,

Dr. Eng. Elyas Palantei, S.T., M.Eng.

NIP. 19690201 199412 1 001

Ketua Departemen Teknik Elektro

Fakultas Teknik

Universitas Hasanuddin

Prof. Dr. Ir. H. Salama Manjang, M.T., IPM.

NIP. 19621231 199003 1 024

Page 3: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

ii

KATA PENGANTAR

Alhamdulillah, tiada kata yang lebih pantas terucap selain Puji syukur

Kehadirat Allah SWT, yang telah meridhai , memberi jalan dan memberi

kesehatan sehingga penyususunan Tugas Akhir dengan judul “Transaksi

Layanan Medis Real-Time dengan Menggunakan Smart card untuk

Mendukung Peran Smart Campus” dapat diselesaikan.

Laporan Tugas Akhir ini disusun oleh peneliti untuk memenuhi

persyaratan kelulusan jenjang Sarjana Strata 1 (S-1) pada Program Studi Teknik

Elektro Fakultas Teknik Universitas Hasanuddin, Gowa.

Peneliti menyadari bahwa tugas akhir ini masih memiliki kekurangan dan

belum dapat dikatakan sempurna, tetapi sebagai manusia biasa yang penuh dengan

keterbatasan, inilah yang terbaik yang dapat peneliti persembahkan. Oleh karena

itu, saran dan kritik yang bersifat membangun akan peneliti pertimbangkan untuk

penyempurnaanya.

Dalam penyusunan Tugas Akhir ini, dapat terselesaikan berkat bantuan,

motivasi, serta bimbingan dari berbagai pihak. Untuk itu, penulis ingin

mengucapkan terima kasih kepada:

Kedua orang tua dan seluruh keluarga yang selama ini senantiasa

memberikan doa, dorongan, perhatian dan dukungan bagi peneliti.

Dr. Eng. Ir. Hj. Dewiani, M.T. selaku Pembimbing 1 dan Dr. Eng.

Elyas Palantei, S.T, M.Eng selaku Pembimbing 2 yang telah

membimbing, memberikan saran, dan perbaikan dalam penyusunan

Tugas Akhir ini.

Teruntuk staf Departemen Teknik Elektro yang selalu membantu

dalam hal persuratan dan selalu memberikan motivasi agar peneliti

cepat menyelesaikan Tugas Akhir ini.

Page 4: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

iii

Teman-teman Teknik Elektro angkatan 2013 khususnya konsentrasi

Teknik Telekomunikasi dan Informasi yang selalu mendukung dan

memberikan saran serta kritik dalam penyusunan Tugas Akhir ini.

Harapan peneliti semoga Tugas Akhir ini berguna dan memberikan hal

yang bermanfaat bagi siapa saja yang membacanya. Demikian Tugas Akhir ini

disusun oleh peneliti, apabila ada kata-kata yang kurang berkenan dan banyak

terdapat kekurangan, peneliti memohon maaf.

Makassar , November 2017

Peneliti

Page 5: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

iv

ABSTRAK

TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN

MENGGUNAKAN SMART CARD UNTUK MENDUKUNG PERAN

SMART CAMPUS

Misa Amira Azwar1

Sitti Wahyuni Artini2

Kemajuan teknologi informasi dewasa ini, telah dilakukan berbagai pendekatan

salah satunya di bidang kesehatan. Untuk melakukan peningkatan pelayanan

kesehatan, maka akan dirancang sistem pengobatan jarak jauh (telemedis) dengan

mengintegrasikan pengelolaan data pasien serta pembayaran pemeriksaan secara

elektronik. Untuk memaksimalkan sistem pelayanan kesehatan ini secara merata,

maka pada Tugas Akhir ini dibuatlah sistem menggunakan smart card yang

terintegrasi dengan web site Klinik Unhas.

Smart card yang digunakan berbasis sesuai dengan Konsorsium Smart Card

Indonesia iRFC v 1.0. Sedangkan perancangan web site dengan menggunakan

bahasa pemograman PHP, pembuatan database MySQL dan Apache web server

yang bertanggung jawab pada request-response HTTP dimana telah digabung

dalam sebuah aplikasi yang bernama XAMPP. Sehingga terbentuklah sebuah

sistem dengan menggunakan smart card yang dapat menyimpan rekam medis

pasien maupun dapat melakukan transaksi pembayaran secara elektronik (e-

payment).

Sebanyak 10 orang telah didaftarkan sebagai pasien dalam Sistem Web Site Klinik

Unhas dimana 2 orang diantaranya merupakan pasien asuransi dan telah berhasil

melakukan pemeriksaan hingga selesai. Selain itu, pada proses pemeriksaan di

Web Site Klinik Unhas dapat dilakukan pada jarak dekat (0 Km) maupun jauh

(20,3 Km) dengan menggunakan sistem operasi jaringan Wireless Fidelity (Wi-fi)

(uplink: 2,94 Mbps; downlink: 20,37 Mbps) dan jaringan seluler seperti Simpati

(uplink: 6,14 Mbps; downlink: 8,01 Mbps) dan XL (uplink: 8,06 Mbps;

downlink: 2,29 Mbps) yang berkonektivitas cepat.

Kata Kunci : Smart card, Web Site, Rekam Medis, e-Payment

Page 6: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

v

ABSTRACT

TRANSACTIONS OF REAL-TIME MEDICAL SERVICES USING SMART

CARD TO SUPPORT THE ROLE OF SMART CAMPUS

Misa Amira Azwar1

Sitti Wahyuni Artini2

Advances in information technology today, has made various approaches and one

of them is in the field of health. To improve health services, telemedicine systems

will be designed to integrate patient data management and electronic check

payments. To maximize this health service system evenly, then in this Final

Project a system is made by using smart card which is integrated with Unhas

Clinic web site.

Smart cards that researchers used are based on the Consortium Smart Card

Indonesia iRFC v 1.0. While to design the web site researchers used PHP

programming language, the creation of MySQL database and Apache web server

that responsible for the request-response HTTP which has been combined in an

application called XAMPP. So it formed a system by using smart card which can

save patients medical record and can perform electronic payment transaction (e-

payment).

There are 10 people have been registered as patients in the Web Site System of

Unhas Clinic where 2 of them are insurance patients and have successfully

completed the examination. In addition, on the examination process at the Web

Site of Unhas Clinic can be done at short distance (0 Km) and long distance (20,3

Km) by using Wireless Fidelity (Wi-fi) network operating system (uplink: 2,94

Mbps; downlink: 20.37 Mbps) and cellular networks such as Simpati (uplink: 6.14

Mbps; downlink: 8.01 Mbps) and XL (uplink: 8.06 Mbps; downlink: 2.29 Mbps)

with fast connectivity.

Key Words : Smart card, Web Site, Medical Record, e-Payment

Page 7: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

vi

DAFTAR ISI

HALAMAN JUDUL ..................................................................................................

LEMBAR PENGESAHAN ........................................................................................ i

KATA PENGANTAR ................................................................................................ ii

ABSTRAK .................................................................................................................. iv

DAFTAR ISI ............................................................................................................... v

DAFTAR GAMBAR .................................................................................................. vii

DAFTAR TABEL........................................................................................... ............ viii

BAB I PENDAHULUAN ................................................................................... I-1

I.1 Latar Belakang .................................................................................... I-1

I.2 Identifikasi Masalah… ........................................................................ I-3

I.3 Rumusan Masalah................................................................................ I-3

I.4 Tujuan Penelitian…………………………….. ................................... I-4

I.5 Manfaat Penelitian .......................................................................... I-4

I.6 Batasan Masalah…………………………………………………… . I-4

I.7 Metode Penelitian ............................................................................... I-5

I.8 Sitematika Penulisan .......................................................................... I-6

BAB II TINJAUAN PUSTAKA .......................................................................... II-1

II.1 Elemen-Elemen Sistem Telemedis Berbasis Smart Card………………… ... II-1

II.1.1 Telemedicine .................................................................................. II-1

II.1.2 Wireless network ............................................................................ II-2

II.1.3 Web Server ..................................................................................... II-2

II.1.4 Web Browser .................................................................................. II-3

II.1.5 PHP………………………. ............................................................ II-3

II.1.6 My SQL…………….. ..................................................................... II-3

II.1.7 Transaksi Elektronik (E-Payment) ................................................. II-4

II.1.8 Spesifikasi Smart card.. ................................................................ II-5

II.2 Penelitian Transaksi Layanan Kesehatan Berbasis Smart Card……….. .... II-16

BAB III METODOLOGI PENELITIAN .............................................................. III-1

III.1 Kerangka Pikir …………………………………………………………….. III-1

III.2 Perancangan Sistem Layanan Medis Kampus .............................................. III-3

Page 8: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

vii

III.3 Perancangan Perangkat Keras. ....................................................................... III-7

III.4 Perancangan Perangkat Lunak dan Penginstallasian XAMPP ................... III-8

III.5 Perancangan Basis Data……. ......................................................................... III-14

BAB IV HASIL DAN PEMBAHASAN…………………………………………... IV-1

IV.1 Halaman Web Site Klinik Unhas……………...…………………………….. IV-1

IV.2 Alur Sistem Transaksi Di Web Site Klinik Unhas……………………… .....IV-18

IV.3 Operasi Pengujian Sistem……………………………………………………IV-21

IV.4 Perbandingan Kelebihan Sistem Web Site Klinik Unhas dengan Aplikasi

Kesehtan Lainnya…………………………………………………………………...IV-25

BAB V PENUTUP………………………………………………………………….. V-1

V.1 Kesimpulan ………………………………………………………………….. V-1

V.2 Saran …………………………………………………………………………. V-2

DAFTAR PUSTAKA ………………………. ........................................................ ix

LAMPIRAN

Page 9: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

viii

DAFTAR GAMBAR

Gambar 3.1 Flow Chart Perancangan Sistem ............................................................ III-3

Gambar 3.2 Deskripsi Visual Sistem Telemedis Berbasis Smart Card…….............. III-4

Gambar 3.3 Flow Chart Alur Sistem Pemeriksaan ................................................... III-6

Gambar 3.4 Perancangan Perangkat Keras ................................................................ III-7

Gambar 3.5 Installasi XAMPP................................................................................... III-9

Gambar 4.1 Halaman Utama Klinik Unhas ............................................................... IV-2

Gambar 4.2 Menu Utama tanpa Reader ..................................................................... IV-2

Gambar 4.3 Menu Utama tanpa Smart Card ............................................................. IV-3

Gambar 4.4 Menu Utama Ada Smart Card ............................................................... IV-3

Gambar 4.5 Rekam Medis ......................................................................................... IV-4

Gambar 4.6 Jenis-Jenis Pemeriksaan ......................................................................... IV-5

Gambar 4.7 Parameter dan Hasil Pemeriksaan .......................................................... IV-5

Gambar 4.8 Top-Up ................................................................................................... IV-6

Gambar 4.9 Invoice .................................................................................................... IV-7

Gambar 4.10 Tampilan Chatting pada Halaman Web Admin..................................... IV-7

Gambar 4.11 Admin Baru…………………………………………………………… IV-8

Gambar 4.12 Data Admin ........................................................................................... IV-9

Gambar 4.13 Pasien Baru…………………………………………………………… IV-10

Gambar 4.14 Data Pasien ............................................................................................ IV-11

Gambar 4.15 Rekam Medis pada Halaman Web Pasien ………………………….... IV-12

Gambar 4.16 Hasil Pemeriksaan dan Resep Dokter pada Halaman Web Pasien…… IV-12

Gambar 4.17 Tampilan Ubah Password pada Halaman Web Pasien…………. ….. IV-13

Gambar 4.18 Tampilan Konsultasi Web Pasien .......................................................... IV-14

Gambar 4.19 Dokter Baru…………………………………………………………... IV-14

Gambar 4.20 Data Dokter ........................................................................................... IV-15

Gambar 4.21 Tampilan Data Pasien pada Web Dokter……………..……………… IV-16

Gambar 4.22 Tampilan Rekam Medis Pasien pada Halaman Web Dokter ................ IV-16

Gambar 4.23 Tampilan Halaman Pemeriksaan Petugas Medis di Klinik Unhas........ IV-17

Gambar 4.24 Tampilan Halaman Diagnosa Dokter………………………………... IV-17

Gambar 4.25 Tampilan Catatan Dokter pada Halaman Web Dokter………………. IV-18

Gambar 4.26 Tampilan Halaman Ubah Password Dokter……………….................. IV-18

Gambar 4.27 Comment Sukses Tulis Kartu………………………………...………. IV-21

Gambar 4.28 Comment Pasien Berhasil Diregister…………………………………. IV-21

Page 10: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

ix

DAFTAR TABEL

Tabel 2.1 Spesifikasi Data Identitas ........................................................................... II-7

Tabel 2.2 Spesifikasi Akses Data Identitas ................................................................ II-11

Tabel 2.3 Perbandingan Lingkup Pengkajian Dari Sejumlah Penelitian Terkait ....... II-16

Tabel 3.1 Basis Data untuk Admin ............................................................................ III-15

Tabel 3.2 Basis Data untuk Parameter Pemeriksaan Darah ....................................... III-16

Tabel 3.3 Basis Data untuk Dokter ............................................................................ III-16

Tabel 3.4 Basis Data untuk Pasien…………………………………………………..III-17

Tabel 3.5 Basis Data untuk Riwayat Pasien…………………….…………………...III-17

Tabel 3.6 Basis Data untuk Pemeriksaan Suhu Tubuh………................................... III-18

Tabel 3.7 Basis Data untuk Tarif ............................................................................... III-18

Tabel 3.8 Basis Data untuk Pemeriksaan Tensi ......................................................... III-18

Tabel 3.9 Basis Data untuk Pemeriksaan Urine ......................................................... III-19

Tabel 4.1 Pengujian Sistem……………….……………………………………….. IV-22

Tabel 4.2 Pengujian Sistem Web Site Klinik Unhas Selain Peneliti……………….. IV-22

Tabel 4.3 Pengujian Kecepatan Internet…………………………………………… IV-23

Tabel 4.4 Pengujian Jarak Dokter dengan Pasien………………………………….. IV-24

Tabel 4.5 Perbandingan Kelebihan Sistem Web Site Klinik Unhas dengan

Aplikasi Kesehatan Lainnya………………………………………………….....….. IV-25

Page 11: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-1

BAB I

PENDAHULUAN

I.1 LATAR BELAKANG

Menurut World Health Organization (WHO) kesehatan adalah suatu

keadaan fisik, mental, dan sosial kesejahteraan dan bukan hanya ketiadaan

penyakit atau kelemahan. Kesehatan yang prima dapat mendukung manusia untuk

melakukan kegiatan yang produktif. Akan tetapi, manusia tidak luput dari

penyakit sehingga banyak masyarakat yang mengunjungi rumah sakit untuk

memeriksakan kesehatannya. Namun adapun kendala yang dialami oleh beberapa

pasien yaitu jarak rumah sakit yang cukup jauh dari tempat tinggal mereka.

Kerterbatasan pelayanan kesehatan tersebut dapat diatasi dengan

teknologi, salah satunya Information and Communication Technology (ICT) yang

berbasis wireless benar-benar sudah menjadi suatu keharusan dalam berbagai

aspek kehidupan. Dengan ICT ini, informasi dapat disajikan secara real time,

cepat dan tentunya sangat mudah diakses oleh pihak-pihak yang berkepentingan

[1]. Dalam bidang kesehatan, ICT sangat diperlukan untuk melakukan monitoring

terhadap kondisi kesehatan pasien sehingga perpaduan ICT dan kesehatan inilah

yang telah melahirkan biomedical engineering atau teknik biomedis.

Teknik biomedis atau biomedical engineering (BME) adalah penerapan

prinsip-prinsip teknik dan konsep desain untuk kedokteran dan biologi untuk

tujuan kesehatan (misalnya diagnostik atau terapeutik). Bidang ini berusaha untuk

menutup kesenjangan antara teknik dan kedokteran , menggabungkan desain dan

pemecahan masalah keterampilan teknik dengan ilmu-ilmu kedokteran dan

biologi untuk memajukan perawatan kesehatan. Dengan berkembangnya teknik

biomedis ini, banyak penelitian yang merancang pengobatan jarak jauh contohnya

tenaga medis dapat melakukan pemantauan (monitoring) tanda-tanda vital

kesehatan pasien tanpa memerlukan interaksi secara langsung dalam satu ruang

yang sama sehingga permasalahan tenaga medis dapat terminimalisir. Interaksi

Page 12: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-2

dalam ruang berbeda antara tenaga medis dan pasien dikenal dengan istilah

telemedis (telemedicine).

Dalam menghadapi perkembangan ilmu pengetahuan dan teknologi,

khususnya di bidang Teknologi Informasi dan Elektronika, dan juga dalam

kaitannya untuk memberikan image terhadap pelayanan kesehatan yang bervisi

maju serta mengedepankan kenyamanan, dilakukan pengembangan “Aplikasi

Pelayanan Kesehatan" dengan berbasis pada smart card [2]. Di tengah-tengah

kemajuan teknologi informasi dewasa ini, telah dilakukan berbagai pendekatan

untuk melakukan peningkatan pelayanan kesehatan dengan mengintegrasikan baik

sistem pengobatan jarak jauh (telemedicine) maupun pengelolaan data pasien

secara elektronik. Studi yang dilakukan kali ini merupakan upaya untuk

mengembangkan pendayagunaan salah satu aplikasi teknologi informasi,

khususnya smart card ke dalam sistem pelayanan kesehatan yang ada di

Indonesia.

Berdasarkan penelitian Implementasi Aplikasi Smart Health Pada Smart

card UI Berbasis Java Card [3]; Health Care Recording System Using Smart card

Technology [4]; Patient Healthcare Smart card System : A Unified Medical

Record For Access And Analytics [5], ketiga penelitian tersebut mengembangkan

proses perekaman data medis dengan menggunakan smart card berjenis Java

Card dan Unified Medical Record Access and Analytics (UMRAA) sehingga

klinik atau rumah sakit tidak perlu lagi menyimpan data pasien dalam bentuk

kertas. Metode yang digunakan pun berbeda-beda, ada yang menggunakan sistem

Integrated Electronics Health Record System (IEHRS) sebagai database tempat

penyimpanan rekam medis pasien dan ada yang menggunakan database US

Health Care System yang dihubungkan dengan UMRAA card. Berkaitan dengan

hal tersebut, alangkah baiknya smart card berisi data atau informasi pasien yang

terinput langsung secara online juga dapat melakukan transaksi pembayaran

secara elektronik sehingga lebih memudahkan pengelola rumah sakit maupun

klinik dalam memberikan pelayanan kepada pasien. Oleh karena itu, pada tugas

akhir kali ini penulis akan merancang suatu sistem pembayaran berbasis web

Page 13: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-3

service yang terintegrasi dengan smart card guna memperkuat peran smart

campus dalam hal memudahkan mahasiswa Fakultas Teknik Gowa Universitas

Hasanuddin memeriksakan kesehatan mereka tanpa harus mengunjungi Rumah

Sakit Umum Pendidikan Universitas Hasanuddin yang berada di Tamalanrea

Makassar. Adapun judul dari tugas akhir kali ini adalah Transaksi Layanan

Medis Real-Time dengan Menggunakan Smart card untuk Mendukung Peran

Smart Campus.

I.2 IDENTIFIKASI MASALAH

Berdasarkan uraian latar belakang diatas, maka identifikasi masalah dari

tugas akhir ini adalah :

1. Jarak rumah sakit yang terlalu jauh.

2. Minimnya akses transportasi dari daerah Gowa ke Tamalanrea Makassar.

3. Banyaknya antrian di rumah sakit membuat waktu menjadi tidak efisien

baik bagi dokter maupun pasien.

4. Ketidakpastian jadwal dokter berada di rumah sakit.

5. Riwayat kesehatan pasien cenderung masih menerapkan sistem

pengarsipan paper based.

6. Kalkulasi biaya pemeriksaan terkadang masih manual

I.3 RUMUSAN MASALAH

Berdasarkan uraian pada latar belakang maka rumusan masalah pada

penelitian ini adalah :

1. Bagaimana membuat sistem manajemen database pasien dan dokter yang

dilakukan oleh administrator?

2. Bagaimana cara pembayaran konsultasi pemeriksaan kesehatan secara

online?

I.4 TUJUAN PENELITIAN

Adapun tujuan yang akan dicapai dari penelitian ini adalah :

Page 14: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-4

1. Merancang sistem monitoring kesehatan jarak jauh berbasis web service

yang terintegrasi dengan smart card dengan manajemen database yang

baik.

2. Merancang sistem pembayaran pemeriksaan dengan menggunakan e-

payment yang berbasis smart card.

I.5 MANFAAT PENELITIAN

Penelitian ini memiliki beberapa manfaat seperti yang diuraikan berikut

ini.

1. Bagi masyarakat atau mahasiswa, penelitian ini bermanfaat dalam

memberikan kemudahan untuk melakukan transaksi layanan medis tanpa

harus berada di Rumah Sakit Umum Universitas Hasanuddin.

2. Bagi tenaga medis, mengakses riwayat kesehatan pasien maupun kalkulasi

biaya pemeriksaan menjadi lebih mudah, jelas, dan lengkap.

3. Bagi peneliti, penelitian ini berguna untuk menambah wawasan dan

kemampuan dalam merancang dan membuat sistem web service yang

terintegrasi dengan masyarakat yang berguna untuk masyarakat.

4. Bagi institusi pendidikan Departemen Teknik Elektro & pada bidang

Teknologi Telekomunikasi Informasi, penelitian ini dapat digunakan

sebagai referensi ilmiah dalam pengembangan sistem transaksi layanan

kesehatan telemedis dengan menggunakan smart card.

I.6 BATASAN MASALAH

Berdasarkan tujuan penelitian yang telah diuraikan di atas, maka batasan

masalah dari tugas akhir ini adalah :

1. Pemeriksaan kesehatan yang di lakukan hanya sebatas pemeriksaan suhu

tubuh, tekanan darah, fisik (sakit kepala, sakit perut/lambung, asma,

batuk/tenggorokan, muntah berak, diare, nyeri dada, alergi), cek

laboratorium darah dan urine.

Page 15: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-5

2. Proses pembayaran e-payment hanya menggunakan smart card dan

transaksi top-up saldonya menggunakan uang tunai.

3. Perancangan sistem ini menggunakan smart card dengan spesifikasi iRFC

1.0 yang terhubung dengan Web Site Klinik Unhas.

4. Sistem operasi jaringan yang digunakan untuk mengakses Web Site Klinik

Unhas adalah jaringan seluler yaitu Simpati dan XL serta Wireless Fidelity

(Wi-fi)

I.7 METODE PENELITIAN

Dalam mengerjakan tugas skhir ini diperlukan prosedur berupa langkah-

langkah pengerjaan sebagai berikut :

1. Studi Literatur

Pengambilan dasar teori untuk dijadikan sebagai acuan dalam

penyelesaian tugas akhir dimana merujuk pada referensi berupa buku-

buku, jurnal-jurnal nasional maupun internasional seperti yang tertera pada

daftar tinjauan pustaka dan referensi dari berbagai tugas akhir yang

berhubungan dalam penyelesaian tugas akhir ini.

2. Pembuatan Sistem

Pembuatan sistem web site dengan menggunakan bahasa

pemograman PHP , database MySQL dan Apache sebagai web server

yang bertanggung jawab pada request-response HTTP.

3. Pengujian sistem

Tahap akhir dari penelitian ini adalah menguji coba sistem untuk

mengetahui kesalahan dan kekurangan pada sistem agar dapat dilakukan

perbaikan dan penyempurnaan sistem.

I.8 SISTEMATIKA PENULISAN

Adapun sistematika penulisan yang digunakan dalam penulisan dan

penyusunan tugas akhir ini adalah sebagai berikut :

Page 16: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

I-6

BAB I PENDAHULUAN

Pada bab ini berisikan gambaran umum penelitian yang dilakuakan

meliputi latar belakang, identifikasi masalah, rumusan masalah, tujuan penelitian,

manfaat penelitian, batasan masalah penelitian dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini membahas tentang teori serta fakta-fakta yang diambil seabgai

bahan referensi terkait dengan penelitian yang dilakukan yang berguna dalam

pembangunan system nantinya.

BAB III PERANCANGAN DAN PEMBUATAN SISTEM

Pada bab ini menjelaskan mengenai tahap-tahap perancangan dan

pembuatan sistem website yang menggunakan bahasa pemograman PHP dan

MySQL

BAB IV HASIL DAN PEMBAHASAN

Dalam bab ini akan dijelaskan mengenai hasil penelitian, masalah, dan

pemecahannya.

BAB V PENUTUP

Pada bab ini berisi tentang kesimpulan dari hasil penelitian yang diperoleh

pada bab sebelumnya dan saran-saran yang dapat berguna dalam pengembangan

dari sistem pada tugas akhir ini di masa akan datang.

Page 17: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-1

BAB II

TINJAUAN PUSTAKA

II.1 Elemen-Elemen Sistem Telemedis Berbasis Smart Card

II.1.1. Telemedicine

Ide tentang pemeriksaan dan evaluasi kesehatan dengan menggunakan

perangkat jaringan telekomunikasi atau jaringan internet bukanlah hal yang baru.

Setelah diperkenalkan internet oleh dunia, percobaan telemedicine telah dilakukan

pertama kali dengan mentransmisikan rekaman melalui jaringan internet via

satelit. Walaupun jarak tempuh transmisi hanya beberapa kilometer, namun nilai

klinisnya tidak begitu bermakna. Setelah itu, telah beberapa kali dilakukan

percobaan untuk melakukan transmisi suara jantung dan napas antar dokter dan

pasien. Hal tersebut adalah merupakan praktek dari telematika dalam bidang

kedokteran atau yang biasa disebut dengan telemedicine.

Jadi Telemedicine merupakan suatu layanan kesehatan antara dokter

dengan pasien jarak jauh guna mengirimkan data medik pasien menggunakan

infrastruktur telekomunikasi yang sudah ada misalnya menggunakan internet,

satelit dan lain sebagainya. Telemedicine bukanlah teknologi yang benar-benar

baru, telemedicine modern bahkan sudah ada sejak telepon digunakan.

Telemedicine masa kini akan lebih mengacu pada pemanfaatan Teknologi

Informasi Komputer yang lebih canggih. Antara pasien dengan praktisi kesehatan

harus memiliki jaringan internet yang terhubung secara global sehingga pasien

bisa menggunakan jasa telemedicine. Sejalan dengan kemajuan teknologi

komputer dan sistem digital saat ini, perkembangan telemedicine semakin

berkembang. Peralatan kedokteran dapat menghasilkan gambar digital secara

langsung, selain itu juga dapat mengubah citra video menjadi citra digital [6].

Kini, penggunaan telemedicine sangat luas sampai sekarang berlaku di

berbagai negara. Di Indonesia sendiri teknologi telemedicine telah berkembang

Page 18: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-2

walaupun masih dalam tingkat yang terbatas. Sehingga sangat perlu untuk

mengembangkan teknologi telemedicine ini untuk keperluan dan kepentingan

pasien itu sendiri. Karena Indonesia adalah negara kepulauan maka teknologi

telemedicine sangat diperlukan sekali.

II.1.2. Wireless network

Wireless network atau jaringan nirkabel adalah bidang yang berkaitan

dengan komunikasi antar sistem komputer dan beberapa macam peralatan

telekomunikasi tanpa menggunakan kabel. Jaringan nirkabel ini sering dikenal

sebagai jaringan telekomunikasi, dan banyak dipakai untuk jaringan komputer

baik pada jarak yang dekat (beberapa meter, memakai alat/pemancar bluetooth)

maupun pada jarak jauh (lewat satelit). Jaringan nirkabel biasanya

menghubungkan satu sistem komputer dengan sistem telekomunikasi yang lain

dengan menggunakan beberapa macam media transmisi tanpa kabel, seperti:

gelombang elektromagnetik, gelombang radio, gelombang mikro, gelombang

satelit, maupun gelombang inframerah [7] .

II.1.3. Web Server

Web server adalah software yang menjadi tulang belakang dari world wide

web (www) yang pertama kali tercipta sekitar tahun 1980an. Web server

menunggu permintaan dari client yang menggunakan browser seperti Netscape

Navigator, Internet Explorer, Mozilla Firefox, dan program browser lainnya. Jika

ada permintaan dari browser, maka web server akan memproses permintaan itu

kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke

browser.

Data ini mempunyai format yang standar, disebut dengan format SGML

(Standar General Markup Language). Data yang berupa format ini kemudian

akan ditampilkan oleh browser sesuai dengan kemampuan browser tersebut.

Contohnya, bila data yang dikirim berupa gambar, browser yang hanya mampu

menampilkan teks (misalnya Links) tidak akan mampu menampilkan gambar

tersebut, dan jika ada akan menampilkan alternatifnya saja.

Page 19: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-3

Web server untuk berkomunikasi dengan client-nya (web browser)

mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol). Dengan

protokol ini, komunikasi antar web server dengan client-nya dapat saling

dimengerti dan lebih mudah. Seperti telah dijelaskan diatas, format data pada

world wide web adalah SGML. Tapi para pengguna internet saat ini lebih banyak

menggunakan format HTML (hypertext markup language) karena penggunaannya

lebih sederhana dan mudah dipelajari [8] .

II.1.4. Web Browser

Web browser adalah program aplikasi yang menterjemahkan kode HTML

dan merepresentasikan halaman web site. Aplikasi inilah yang paling sering

digunakan setiap hari untuk melakukan browsing di dunia maya. Jenis browser

saat ini semakin banyak dan berkembang dengan pesat diantaranya adalah Internet

Explorer, Mozilla Firefox, Opera, Google Chrome, Safari, Netscape, Flock, Avant

Browser, dll [9].

II.1.5. PHP

PHP adalah singkatan dari Personal Home Page yang merupakan bahasa

standar yang digunakan dalam dunia website. PHP adalah bahasa pemrograman

yang berbentuk script yang diletakkan didalam web server. PHP dapat diartikan

sebagai Hypertext Preeprocessor. Ini merupakan bahasa yang hanya dapat

berjalan pada server yang hasilnya dapat ditampilkan pada klien. Interpreter PHP

dalam mengeksekusi kode PHP pada sisi server disebut serverside, berbeda

dengan mesin maya Java yang mengeksekusi program pada sisi klien (client-

server) [10].

II.1.6. MySQL

Database secara sederhana dapat disebut sebagai gudang data. Secara

teori, database adalah kumpulan data atau informasi yang kompleks, data-data

tersebut disusun menjadi beberapa kelompok dengan tipe data yang sejenis

disebut table atau entity, di mana setiap datanya dapat saling berhubungan satu

Page 20: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-4

sama lain atau dapat berdiri sendiri, sehingga mudah diakses. MySQL merupakan

database yang awalnya hanya berjalan pada sistem Unix dan Linux. Seiring

berjalannya waktu dan banyaknya peminat yang menggunakan database ini,

MySQL merilis versi yang dapat diinstal pada hampir semua platform, termasuk

Windows. Lisensi dari MySQL adalah freeware yang artinya pengguna dapat

mendownload dan menggunakannya tanpa harus membayar [10].

Terdapat perbedaan antara SQL dan MySQL. SQL merupakan

kependekan dari kata "Structured Query Language" yaitu suatu bahasa

permintaan yang terstruktur yang melekat pada satu database atau SMBD

tertentu, sedangkan MySQL merupakan databasenya. Dengan kata lain, MySQL

merupakan SMBD-nya dan SQL adalah perintah atau bahasa yang melekat di

dalam SMBD tersebut. Struktur dasar dari ekspresi SQL terdiri dari tiga klausa,

yaitu :

a. Select

Operasi ini digunakan untuk mendaftar semua atribut yang diinginkan sebagai

hasil suatu query.

b. From

Operasi ini mencatat semua relasi yang di”scan” dalam evaluasi suatu query.

c. Where

Operasi ini terdiri dari sebuah predikat yang menyangkut atribut-atribut dari relasi

yang muncul dalam klausa from [11].

II.1.7. Transaksi Elektronik atau E-payment

Di zaman perkembangan arus teknologi informasi yang sangat pesat

seperti saat ini, Indonesia sebagai negara berkembang harus selalu mengikuti tren

pemanfaatan teknologi yang ada. Selain untuk mengejar ketertinggalan dalam

bidang teknologi dengan negara-negara maju, juga untuk bertahan dalam

persaingan bisnis dalam skala yang lebih luas atau global. Internet sebagai salah

Page 21: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-5

satu media teknologi informasi yang modern, telah menyebar dan berkembang

pesat dalam segala aspek kehidupan masyarakat di Indonesia dan seluruh dunia.

Tak terkecuali dalam bidang perekonomian. Dengan adanya transaksi elektronik

atau e-payment memudahkan dalam hal transaksi secara cepat dan tepat [12].

Transaksi elektronik adalah transaksi yang melibatkan pertukaran nilai keuangan.

Ada nilai uang yang berkurang dan bertambah pada pihak tertentu. Pertukaran

nilai keuangan berarti ada kegiatan pembayaran di dalamnya. Ada banyak cara

pembayaran yang mendukung transaksi elektronik dan e-commerce, di antaranya

adalah kartu pembayaran elektronik (baik debit maupun kredit), e-wallets/e-

purses (dompet elektronik), smart cards, pembayaran nirkabel (wireless

payments), Stored-value card payments, Loyalty cards, Person-to-person payment

methods, dan pembayaran elektronik pada kios – kios khusus.

II.1.8. Spesifikasi Smart card Konsorsium Smart card Indonesia

Smart card sering disebut sebagai chip card atau integrated circuit (IC)

card . Definisi chip card sendiri yaitu kategori umum yang mencakup smart card

dan memory card. Smart card adalah plastic card yang mengandung memory chip

dan microprocessor.

Kartu ini bisa menambah, menghapus, mengubah informasi yang

terkandung. Keunggulannya adalah smart card tidak perlu mengakses database di

server karena sudah ada sebagian terkandung di kartu. Sedangkan memory card

dipasangi memory silicon tanpa microprocessor.

Fungsi dasar suatu smart card adalah untuk mengidentifikasi card holder ke

sistem komputer. Cardholder disini adalah pemilik asli kartu tersebut. Identifikasi

ini menyangkut otentifikasi organisasi yang membuat kartu tersebut dan

cardholder dan hak aksesnya.

Beberapa hal yang harus dipertimbangkan dalam metode identifikasi kartu

adalah apakah kartu dapat :

Mengkonfirmasi identitas cardholder sebelum mengakses data

Page 22: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-6

Memberikan data untuk konfirmasi ke alat eksternal, sistem atau

perorangan.

Menyediakan data ke sistem tanpa pengecekan orang yang

menggunakan.

Untuk itu harus didefinisikan tingkat keamanan yang diperlukan. Tingkat

keamanan paling tinggi, sedang, atau hanya cukup untuk mengatasi pencuri amatir

saja.

Berdasarkan kategorinya smart card dapat dibagi menjadi 2 jenis, yaitu

contact dan contactless

1. Contact Smart card

Pada jenis contact membutuhkan sentuhan fisik antara kartu dengan

reader agar dapat terhubung. Dimana kartu dimasukkan ke dalam

reader agar reader bersentuhan dengan conductive contact plate

pada permukaan kartu.

2. Contactless Smart card

Pada jenis contactless tidak dibutuhkan sentuhan fisik agar kartu

dengan reader dapat terhubung. Hal ini karena komunikasi yang

terjadi antara kartu dengan reader menggunakan frekuensi radio.

Pada konsorsium smart card Indonesia telah ditentukan spesifikasi smart

card yang akan digunakan. Dimensi smart card pada spesifikasi ini mengikuti

standard ISO 7810 seukuran kartu kredit/kartu ATM diharapkan dapat menjadi

media pembawa informasi yang muda dibawa oleh penggunanya. Idealnya,

interoperabilitas dapat diwujudkan secara offline dengan memanfaatkan data yang

tersimpan di dalam smart card, sedangkan untuk data-data yang tidak dapat

diakomodasi secara offline harus dapat dilayani secara terbatas menggunakan

metode online yang dilakukan antar lembaga . Berikut spesifikasi data identitas

yang telah disepakati oleh Konsorsium Smart card Indonesia :

Page 23: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-7

Tabel 2.1 Spesifikasi Data Identitas

No Item Keterangan Format Contoh

0 Field Map + Length

Map

Bagian Existensi Data

1010 0000 0000 0000

0000 0000 (3 Bytes)

Bagian Length Data

0000 0000 0000 1000 =

f1

0000 0000 0000 0000 =

f2

0000 0000 0111 1011 =

f3

.

.

.

.

0000 0000 0000 0000 =

f23

0000 0000 0000 0000 =

f24

(48 Bytes)

Field Map

merepresentasika

n keberadaan

data. Pada

spesifikasi ini

terdapat 17 field

(2 byte + 1 bit).

Adapun 7 bit

terakhir adalah

reserved untuk

ekspansi data (7

field tambahan)

Binary(51

Byte) (M)

Binary = 1111

1101 1110 1111

1000 0000

0xFD 0xEF

0x80

Menandakan

bahwa data yang

tersedia adalah

field 1 s/d 6, 8

s/d 11, 13 s/d 17.

Dengan

demikian Host

tidak perlu

mengambil data

untuk field-field

yang dinyatakan

tidak ada

datanya.(Lihat

Bagian 3.1 -

Akses Data

Identitas)

1 Local Card ID Kode Card ID

yang tersimpan di

dalam Card

Management

institusi (Max 32

Byte)

LLLLVA

R (M)

1234567890123

45678

2 Kode Institusi Kode PT / NISN

(Max 32). Harus

mengacu ke Kode

PDDikti

(http://forlap.dikti

.go.id)

LLLLVA

R (M)

380044

Page 24: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-8

No Item Keterangan Format Contoh

3 Nomor Identitas Nomor Identitas

Siswa / Staf /

Dosen (NPM /

NIP / NPSN / dll)

(Max 32)

LLLLVA

R (M)

0806444524

4 Nama Lengkap Nama Lengkap

(Max 64)

LLLLVA

R (M)

AHMAD

SUPENDI

UTAMA

5 Kode Organisasi Kode Internal

Lembaga

Pendidikan.

(Max 32)

LLLLVA

R (M)

135 =>

Informatika ITB,

atau

03.00.12.01 =>

Magister Ilmu

Komputer UI,

dll

6 Nama Sekolah /

Universitas / Lembaga

Pendidikan

Nama institusi

(Max 64)

LLLLVA

R (M)

TELKOM

UNIVERSITY

7 Nama Fakultas / Kelas Nama Sub-

Institus

(Max 48)i

LLLLVA

R (M)

FILKOM atau

cth lain:

FAKULTAS

ILMU SOSIAL

DAN ILMU

POLITIK

8 Nama Program Studi /

Peminatan

Informasi sub-

institusi tambahan

(Max 48)

LLLLVA

R (O)

IPA atau cth

lain:

MANAJEMEN

INFORMASI

9 Peran Peran card holder

(Max 1)

CHAR(1)

(M)

0: Mahasiswa

1: Dosen

2: Staff

Page 25: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-9

No Item Keterangan Format Contoh

10 Atribut Primer sesuai

standard ICAO 9303-4

(Kode Dokumen,

Issuer, Nama)

Field sesuai

standard ICAO

9303-4 (4.2.2.1

Data structure of

the upper

machine readable

line)

(Max 44)

CHAR(44)

(O)

Lihat bagian

2.1.1 - ICAO

compliance

upper machine

readable data

11 Atribut Sekunder sesuai

standard ICAO 9303-4

(ID Dokumen/Passport

Number, Nationality,

Date of Birth, Sex,

Expiration Date,

Optional Data Element)

Field sesuai

standard ICAO

9303-4 (4.2.2.2

Data structure of

the lower machine

readable line)

(Max 44)

CHAR(44)

(O)

Lihat bagian

2.1.2 - ICAO

compliance

lower machine

readable data

12 Foto Foto binary

Maksimum 4096

byte

LLLLVA

R (O)

13 Sidik Jari Template binary

Maksimum 4096

byte

LLLLVA

R (O)

14 Alamat Alamat

(Max 200)

LLLLVA

R (O)

JL Majalah B28,

Komp. PWI

Cipinang Muara,

Jakarta Timur

15 Nomor Telpon Nomor telpon

(Max 32)

LLLLVA

R (O)

16 Issue Date (Max 6) CHAR (6)

(M)

YYMMD

D

Cth: 160118

Page 26: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-10

No Item Keterangan Format Contoh

17 Status Status kartu

(Max 1)

CHAR(1)

(M)

0: Aktif

1: Expired

2: Blokir

18 Email Alamat Email

(Max 32)

LLVAR(

M)

Cth:

[email protected]

19

s/d

24

Reserved Informasi bebas

(Max 100)

LLLLVA

R (O)

Spesifikasi data ini disusun dari hasil penggabungan konsep, model dan

pemetaan yang diambil dari protokol transaksi perbankan ISO8583 dan data

identitas standar ICAO 9303-4. Definisi yang dipergunakan terdiri dari 2 (dua)

model yaitu Fix-Length dan Header-Length. Fix-Length menyimpan data dengan

panjang yang sudah ditentukan. Apabila data lebih pendek dari panjang field akan

diisi dengan karakter spasi. Header-Length menyimpan data sejumlah Header-

nya. Di dalam spesifikasi ini, Header-Length yang digunakann adalah

menggunakan 2 (LLVAR) s/d 4 (LLLLVAR) digit numerik yang

merepresentasikan panjang data pada field tersebut. Walaupun Header-Length

memungkinkan untuk mendefinisikan panjang data yang sangat banyak, tetap

dilakukan pembatasan panjang data khususnya untuk foto dan sidik jari .

Selain spesifikasi data identitas, dibutuhkan akses untuk membaca dan

menulis kartu yang bergantung terhadap profile kartu. Profile kartu merupakan

informasi yang terdefinisi di dalam Konsorsium Smart card Indonesia sebagai

kartu yang dikenal dan dapat digunakan. Tujuannya adalah untuk menjelaskan

kepada Aplikasi dalam memilih strategi akses penulisan data [5]. Berikut

Page 27: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-11

spesifikasi akses data identitas yang telah disepakati oleh Konsorsium Smart card

Indonesia [13] :

Tabel 2.2 Spesifikasi Akses Data Identitas

No Item APDU (READ) APDU (WRITE) Contoh

0 Field Map + Length

Map

Akses ke MF (3F

00), DF (10 01),

dan EF (01 00).

(Max 51 Bytes)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 00).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

1 Local Card ID Akses ke MF (3F

00), DF (10 01),

dan EF (01 01).

Max (353 Bytes)

Pembacaan

membutuhkan

SAM (Acquirer)

untuk melakukan

otentikasi

sebelum

pembacaan data

dari dalam kartu

Akses ke MF (3F

00), DF (10 01),

dan EF (01 01).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

2 Kode Institusi

3 Nomor Identitas

4 Nama Lengkap

5 Kode Organisasi

6 Nama Sekolah /

Universitas / Lembaga

Pendidikan

7 Nama Fakultas / Kelas

8 Nama Program Studi /

Peminatan

9 Peran

Page 28: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-12

No Item APDU (READ) APDU (WRITE) Contoh

10 Atribut Primer sesuai

standard ICAO 9303-4

(Kode Dokumen, Issuer,

Nama)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 02)

(Max 44 Bytes)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 02).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

11 Atribut Sekunder sesuai

standard ICAO 9303-4

(ID Dokumen/Passport

Number, Nationality,

Date of Birth, Sex,

Expiration Date,

Optional Data Element)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 03)

(Max 44 Bytes)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 03).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

12 Foto Akses ke MF (3F

00), DF (10 01),

dan EF (01 04)

(Max 4096 Bytes)

Pembacaan

membutuhkan

SAM (Acquirer)

untuk melakukan

otentikasi

sebelum

pembacaan data

dari dalam kartu

Akses ke MF (3F

00), DF (10 01),

dan EF (01 04).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

Page 29: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-13

No Item APDU (READ) APDU (WRITE) Contoh

13 Sidik Jari Akses ke MF (3F

00), DF (10 01),

dan EF (01 05)

(Max 4096 Bytes)

Pembacaan

membutuhkan

SAM (Acquirer)

untuk melakukan

otentikasi

sebelum

pembacaan data

dari dalam kartu

Akses ke MF (3F

00), DF (10 01),

dan EF (01 05).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

14 Alamat Akses ke MF (3F

00), DF (10 01),

dan EF (01 06)

(Max 238 Bytes)

Pembacaan

membutuhkan

SAM (Acquirer)

untuk melakukan

otentikasi

sebelum

pembacaan data

dari dalam kartu

Akses ke MF (3F

00), DF (10 01),

dan EF (01 06).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

15 Nomor Telpon

16 Issue Date

Page 30: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-14

No Item APDU (READ) APDU (WRITE) Contoh

17 Status Akses ke MF (3F

00), DF (10 01),

dan EF (01 07)

(Max 1 Byte)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 07).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

MF ini sengaja

dipisah dengan

data lainnya untuk

membatasi

perubahan data

yang dapat

dilakukan oleh

Acquirer (dengan

pengiriman

APDU secara

online dari Issuer

ke Acquirer, Lihat

Bagian 5.3)

18 Email Akses ke MF (3F

00), DF (10 01),

dan EF (01 08)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 08).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

Page 31: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-15

No Item APDU (READ) APDU (WRITE) Contoh

19

s/d

24

Reserved Akses ke MF (3F

00), DF (10 01),

dan EF (01 08)

Akses ke MF (3F

00), DF (10 01),

dan EF (01 08).

Penulisan

membutuhkan

SAM (Issuer)

untuk melakukan

otentikasi

sebelum menulis

data ke dalam

kartu

Page 32: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-16

II.2 Penelitian Transaksi Layanan Kesehatan Berbasis Smart Card

Perbandingan beberapa penelitian terkait dengan tugas akhir yang akan

peneliti lakukan dapat dilihat pada tabel di bawah ini:

Tabel 2.3 Perbandingan Lingkup Pengkajian dari Sejumlah

Penelitian Terkait

Res

earc

h y

an

g s

ud

ah

dil

ak

uk

an

PENELITI JUDUL

PENELITIAN TAHUN HASIL PENELITIAN

Donny (Skripsi Tugas Akhir Departemen

Teknik Elektro Universitas Indonesia)

Implementasi Aplikasi Smart Health Pada Smart card UI Berbasis Java Card

2008 Menyimpan dan membaca catatan medis dengan

menggunakan smart card berbasis java card

Aryanti Zainuddin ; Tri Supriady Amir (Skripsi Tugas Akhir Jurusan Elektro Universitas

Hasanuddin)

Sistem Informasi Laboratorium Uji

Kesehatan Pada Balai Besar Laboratorium

Kesehatan (BBLK) Makassar

2015 Membuat aplikasi sistem informasi laboratorium uji

kesehatan yang dapat diimplementasikan di BBLK

Makassar

V. Ramesh Kumar; S. Dayanidhi; K.Vignesh

Health Care Recording System Using Smart card

Technology

2016 Membantu mengakses dan menyimpan data tentang

proses diagnosis serta membantu dalam perekaman

parameter seperti tekanan darah, analisa klinis, dan detak jantung dengan menggunakan

smart card

Sadath Hussain; Thilini Ariyachandra; Mark

Frolick (Management

Information System Xavier University)

Patient Healthcare Smart card System : A Unified Medical Record for Access

and Analytics

2016 Membuat database sistem informasi kesehatan yang menyinkronkan informasi untuk semua pasien yang

menelusuri berbagai layanan di sistem perawatan kesehatan

AS menggunakan kartu Unified Medical Record Access and

Analysis (UMRAA).

MUZHIR SHABBAN AL-ANI ; RABAH NOORY ; DUA'A YASEEN AL-ANI

Billing System Design Based On Internet

Environment

2012 Mengimplementasikan Sistem Billing dengan mengkonstruksi

sistem virtual bank untuk meproses pembayaran

Page 33: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

II-17

Berdsarkan tabel perbandingan beberapa penelitian di atas, maka peneliti

akan membuat suatu perancangan web site untuk memudahkan pengiriman data

pasien dari klinik Fakultas Teknik Gowa ke Rumah Sakit Umum Pendidikan

Universitas Hasanuddin yang berada di Tamalanrea Makassar yang juga

dilengkapi dengan sistem billing dengan memanfaatkan smart card sebagai alat

pembayaran layanan kesehatan.

Page 34: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-1

BAB III

METODE PENELITIAN

III.1 Kerangka Pikir

Jauhnya jarak antara kampus Fakultas Teknik Unhas yang berlokasi di

Jalan Poros Malino Km. 6, Bontomarannu Kabupaten Gowa dengan Rumah Sakit

Umum Pendidikan Unhas yang berlokasi di Jalan Perintis Kemerdekaan Km. 10,

Tamalanrea Makasssar, membuat mahasiswa yang ingin memeriksa kesehatannya

mengalami kendala karena minimnya akses transportasi. Untuk mempermudah

pelayanan kesehatan para mahasiswa. Untuk itu dapat dilakukan pemeriksaan

pada klinik di Kampus Teknik Gowa Unhas dimana pada klinik tersebut data

pemeriksaan dapat dikirim ke web site rumah sakit dimana sebelumnya pasien

melakukan pembayaran administrasi biaya pemeriksaan di Klinik Kampus dengan

menggunakan smart card yang terintegrasi dengan web site sehingga pasien tidak

perlu lagi datang ke rumah sakit untuk memeriksakan kesehatannya dan

membayar biaya pengobatannya. Adapun untuk kerangka pikir penelitian ini

ditunjukkan pada blok diagram sebagai berikut :

Page 35: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-2

MASALAH

DI SISI RUMAH SAKIT

1. Terdapat banyak antrian pasien sehingga membuat waktu pemeriksaan menjadi

tidak efisien.

2. Antrian yang panjang biasanya disebabkan karena ketidakpastian jadwal dokter

berada di Rumah Sakit.

3. Transaksi biaya pemeriksaan terkadang juga menimbulkan antrian dan

menimbulkan ketidaktepatan admin dalam menghitung biaya pemeriksaan yang

terkadang kalkulasi biaya pemeriksaan masih bersifat manual.

4. Data riwayat pasien terkadang masih ada yang berbentuk kertas.

DI SISI PASIEN

1. Pasien yang berada diluar daerah sehingga jarak Rumah Sakit yang cukup jauh

dari tempat tinggal pasien.

2. Biaya transportasi yang cukup mahal khususnya masyarakat yang berada

didaerah.

SOLUSI

Merealisasikan sebuah web site yang didalamnya sudah terdapat data pasien, data dokter

maupun data poli. Web site tersebut juga terintegrasi dengan smart card guna sebagai alat

transaksi pembayaran layanan kesehatan agar pasien dapat berkonsultasi dan memeriksa

kesehatan dengan dokter walaupun tidak berada dalam suatu ruangan yang sama.

PROSES

Perancangan web site dengan menggunakan bahasa pemograman PHP, pembuatan

database MySQL dan Apache web server yang bertanggung jawab pada request-response

HTTP.

HASIL

Pengujian sistem, analisa dan kesimpulan

Page 36: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-3

III.2 Perancangan Sistem Layanan Medis Kampus

Mulai

Perancangan website

Konfigurasi website dengan smart card

Membuat database untuk website

Apakah data pada smart card dapat

terbaca pada website?

TidakPerbaikan

konfigurasi smart card pada website

Ya

Uji coba penelitian

Pembuatan laporan

Selesai

Page 37: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-4

Gambar 3.1 Flowchart Perancangan Sistem

Gambar 3.2 Gambaran Sistem Secara Umum

Sistem pemeriksaan di Klinik Unhas yang terdapat di Kampus Teknik

Gowa dapat dilihat pada gambar diatas dimana ketika pasien datang untuk

memeriksakan kesehatannya harus membawa smart card ke klinik. Sesampainnya

Page 38: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-5

pasien di klinik, pertugas medis dalam hal ini berlaku juga sebagai admin

melayani pasien dengan cara meminta smart card dan memasukkannya pada

reader untuk mengakses data pasien pada website Klinik Unhas.

Apabila pasien adalah pasien baru atau belum pernah melakukan

pemeriksaan di klinik maka admin akan mendaftarkan pasien terlebih dahulu ke

dalam sistem dengan cara mengisi form data pasien baru. Namun jika pasien

adalah pasien lama atau sudah pernah melakukan pemeriksaan di klinik

sebelumnya maka ketika petugas medis atau admin memasukkan smart card pada

reader, informasi mengenai pasien tersebut akan langsung muncul pada sistem

website Klinik Unhas.

Setelah informasi mengenai pasien telah terbaca, barulah pasien dibantu

oleh petugas medis untuk mencentang atau memilih pemeriksaan apa yang

diinginkan, lalu pasien membayar pemeriksaan tersebut dengan menggunakan

smart cardnya. Jika pasien tidak mempunyai saldo yang cukup untuk melakukan

transaksi pembayaran, maka pasien harus mentop up saldo smart cardnya terlebih

dahulu dengan cara membayar tunai pada petugas , lalu petugas akan mentop up

melalui sistem.

Ketika proses pembayaran selesai, barulah pasien akan diperiksa oleh

petugas medis yang berjaga di klinik sesuai dengan pemeriksaan yang telah dipilih

sebelumnya. Lalu petugas medis tersebut akan mengisi parameter pemeriksaan

dan kesimpulan pemeriksaan yang diinput melalui sistem web site Klinik Unhas

agar dokter yang menangani penyakit tersebut dapat melihat hasil pemeriksaan

dari petugas dan memberikan diagnosanya walaupun dokter tersebut sedang tidak

berada di Klinik Unhas.

Petugas kesehatan atau admin dapat mencetak seluruh hasil pemeriksaan

pasien dan struk pembayaran setelah menerima hasil diagnosa dari dokter ahli.

Dan pemeriksaan telah selesai. Berikut di bawah ini, flowchart alur sistem

pemeriksaan pasien di Klinik Unhas Gowa.

Page 39: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-6

Mulai

Pasien datang ke klinik

Pasien memberikan smart card ke petugas medis

untuk di scan di smart card reader

Apakah pasien pernah melakukan pemeriksaan di

klin ik?

Ya

Validasi kartu pasien dengan RFID reader

TidakMengisi form pasien baru di website RSUP

Pasien telah memiliki akun

Data valid?

Ya

Pasien memilih jenis

pemeriksaan di website RSUP

Tidak

Apakah saldo pasien mencukupi untuk

melakukan pemeriksaan?Tidak

Pasien melakukan top up saldo

Pasien melakukan pembayaran tagihan

pemeriksaan di website RSUP

Tindakan pemeriksaan dan pengobatan oleh petugas

medis di klinik

Petugas medis di klinik menginput parameter hasil

pemeriksaan pasien di website

RSUP

Dokter di RSUP menerima dan

memeriksa hasil pemeriksaan di klinik melalui website RSUP

Dokter menginput hasil diagnosa pasien klinik di website

RSUP

Pasien menerima hasil diagnosa

dari dokter melalui website

RSUP

selesai

A

Ya

A

Gambar 3.3 Flowchart Alur Sistem

Page 40: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-7

III.3 Perancangan Perangkat Keras

Secara garis besar, perancangan perangkat keras yang kami lakukan

meliputi rangkaian perangkat keras dalam hal ini Laptop atau Personal Computer

(PC) , Contact Smart card Reader, dan Smart card itu sendiri. Sistem yang akan

dirancang seperti gambar dibawah ini.

Gambar 3.4 Perancangan Perangkat Keras

1. Laptop atau Personal Computer (PC)

Laptop atau Personal Computer (PC) berguna untuk sebagai

tempat pengolahan data yang terbaca dari smart card. Personal Computer

(PC) juga berfungsi untuk mengirimkan setiap data dari pasien yang

melakukan pemeriksaan di klinik Fakultas Teknik Gowa Universitas

Hasanuddin. Untuk laptop atau PC dapat menggunakan spesifikasi yang

paling terendah.

2. Smart card Reader

Card reader yang akan kami gunakan pada penelitian kali ini

adalah jenis ACR1281 1S Dual Reader ICC 0. Card reader ini akan

berfungsi sebagai alat pembaca kartu smart card.

3. Smart card

Smart card yang akan diterapkan pada Fakultas Teknik Gowa

Universitas Hasanuddin akan berupa kartu identitas, baik itu kartu

mahasiswa maupun kartu pegawai yang mana di dalamnya terdapat

LAPTOP/PC SMART CARD

READER

SMART CARD

Page 41: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-8

informasi tentang identitas pemegang kartu baik secara fisik yang tercetak

pada kartu maupun yang tersimpan di dalam chip yang berfungsi sebagai

tempat penyimpanan dan pengolahan data spesifik pemilik kartu tersebut

dan memiliki sifat sangat rahasia. Smart card yang kami rancang akan

berisi data-data pemegang kartu seperti identitas, rekam medis, serta saldo

kartu. Smart card yang digunakan pada penelitian ini adalah smart card

yang berstandar pada konsorsium smart card v. 1.0

III.4 Perancangan Perangkat Lunak dan Penginstallasian XAMPP

Software yang dibutuhkan selama tahap pengembangan sistem ini antara lain:

XAMPP Control Panel v. 3.2.2

Kami menggunakan perangkat lunak bebas XAMPP. Karena XAMPP

mendukung banyak sistem informasi yaitu Apache, MySQL, PHP, dan

Perl. Sehingga lebih memudahkan peneliti dalam pembuatan system.

Apache

Dalam perancangan penelitian ini, peneliti menggunakan apache sebagai

web server yang bertanggung jawab pada request-response HTTP .

MySQL

Peneliti menggunakan MySQL sebagai database manajemen sistem

(DBMS) dan dapat digunakan untuk mendemonstrasikan proses replikasi

basis data.

PHP 5.6

PHP atau Hypertext Preprocessor adalah bahasa pemrograman script

server-side yang didesain untuk pengembangan web.

Adob e Dreamweaver CS6

Peneliti menggunakan Adobe dreamweaver untuk mendesain web dan

membuat template.

Page 42: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-9

Dalam memudahkan peneliti untuk merancang dan membuat sistem, maka

digunakan software XAMPP. XAMPP adalah perangkat lunnak bebas yang

mendukung banyak sistem operasi dan mempunyai fungsi sebagai server yang

berdiri sendiri (localhost). XAMPP terdiri dari program MySQL database,

Apache HTTP Server, dan penerjemah ditulis dalam bahasa pemograman PHP

dan Perl. Untuk menginstall perangkat lunak XAMPP, terlebih dahulu buka

halaman website https://www.apachefriends.org/index.html pada browser. Setelah

itu pilih XAMPP for Windows untuk memulai proses download.

1. Setelah proses download selesai, langkah selanjutnya adalah menginstall

aplikasi XAMPP dengan cara membuka file yang telah didownload

sebelumnya. Setelah itu Non-aktifkan anti-virus karena dapat menyebabkan

beberapa komponen XAMPP tidak dapat diinstall. Klik “Yes” untuk

melanjutkan proses penginstallan.

Page 43: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-10

2. Untuk pengguna Windows, akan muncul jendela pop up sebagai peringatan

tentang User Account Control (UAC) yang aktif pada sistem. Klik “OK”

untuk melanjutkan proses instalasi.

4. Setelah itu klik “Next” pada jendela Setup

5. Memilih komponen yang ingin diinstall. Pilih pilihan default dan klik “Next”.

Page 44: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-11

6. Pilih folder untuk menyimpan file XAMPP dalam PC. Klik “Next” untuk

melanjutkan.

7. Setelah itu akan muncul jendela seperti di bawah ini. Klik “Next” untuk

melanjutkan.

Page 45: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-12

8. Klik “Next” untuk memulai proses penginstallan XAMPP pada PC.

9. Setelah itu tunggu beberapa saat sampai proses instalasi selesai. Klik “Next”

untuk melanjutkan.

Page 46: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-13

10. Ketika proses instalasi selesai maka akan muncul jendela seperti di bawah ini.

Klik “Finish”.

11. Pilih bahasa yang akan digunakan.

Page 47: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-14

12. Klik kanan pada ikon XAMPP dan pilih “Run as Administrator” untuk

menjalankan aplikasi XAMPP, setelah itu akan muncul jendela seperti di

bawah ini.

Gambar 3.5 Installasi XAMPP

III.5 Perancangan Basis Data

Rancangan basis data dibuat dalam beberapa tabel dengan fieldnya

masing-masing serta menentukan tipe data dan ukuran karakter setiap fieldnya. Ini

dimaksudkan agar dapat memberikan gambaran secara jelas mengenai apa-apa

saja yang muncul dalam halaman web site klinik. Masing-masing tabel tersebut

terdiri dari :

Nomor;

Page 48: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-15

Field Name; berisi nama-nama field apa saja yang ada pada setiap halaman

web site. Contoh tabel untuk halaman Admin, terdapat id admin, nama,

alamat, date of birth, sex, telp, email, status, password, dan foto.

Tipe data; berisi tipe data masing-masing field. Tipe data yang dipakai

pada penelitian kali ini adalah sebagai berikut.

- Varchar adalah tipe data untuk menampung data yang bertipe karakter

atau alphabetic (a-z).

- Integer atau sering di singkat Int adalah tipe data yang digunakan untuk

menampung data yang bertipe angka atau numeric (0-9).

- Date adalah tipe data yang digunakan untuk menampung data yang

bertipe tanggal, bulan, dan tahun.

- Text adalah tipe data yang bisa diisi dengan kombinasi nilai antara

alphabetic dan numeric.

Range; berisi panjang karakter masing-masing field. Contoh untuk field

nama terdapat 50 karakter yang dapat diisi.

Untuk lebih jelasnya dapat dilihat pada tabel di bawah ini.

Tabel 3.1 Basis Data untuk Admin

field dari basis data untuk admin dapat dilihat seperti gambar di atas yang mana

nantinya field tersebut akan dipakai untuk meregister atau mendaftar admin baru

pada sistem web site Klinik Unhas.

NO NAMA FIELD TIPE DATA RANGE

1 Admin_id int 11

2 Card_id varchar 20

3 Nama varchar 50

4 Alamat varchar 200

5 dob date

6 sex varchar 20

7 telp Varchar 12

8 email varchar 50

9 status varchar 6

10 password varchar 100

11 foto text

Page 49: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-16

Tabel 3.2 Basis Data untuk Parameter Pemeriksaan Darah

NO NAMA FIELD TIPE DATA RANGE

1 id int 11

2 status varchar 10

3 Kode pemeriksaan varchar 10

4 Hemoglobin varchar 10

5 Hematocrit varchar 10

6 Entrosit varchar 10

7 MCV varchar 10

8 MCH varchar 10

9 MCHC varchar 10

10 RDW_CV varchar 10

11 Trombosit varchar 10

12 Leukosit varchar 10

13 Basofil varchar 10

14 Eosinofil varchar 10

15 Neutrofil varchar 10

16 Limfosit varchar 10

17 Monosit varchar 10

18 LED varchar 10

19 ketHemoglobin text

20 ketHematokrit text

21 ketEntrosit text

22 ketMCV text

23 ketMCH text

24 ketMCHC text

25 ketRDW_CV text

26 ketTrombosit text

27 ketLeukosit text

28 ketBasofil text

29 ketEosinofil text

30 ketNeutrofil text

31 ketLimfosit text

32 ketMonosit text

33 ketLED text

Tabel basis untuk darah digunakan untuk mengisi parameter pemeriksaan darah

yang nantinya akan diinput oleh petugas di klinik.

Tabel 3.3 Basis Data untuk Dokter

NO NAMA FIELD TIPE DATA RANGE

1 dokter_id Int

2 Card_id varchar 20

3 Nama varchar 50

Page 50: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-17

4 Divisi varchar 50

5 alamat varchar 200

6 Dob Date

7 Sex varchar 20

8 Telp varchar 12

9 Email varchar 50

10 Status varchar 6

11 Password varchar 100

12 foto text

Ketika admin ingin mendaftarkan dokter baru ke dalam sistem maka admin akan

mengisi informasi-informasi dokter tersebut seperti yang ada pada tabel basis

dokter di atas.

Tabel 3.4 Basis Data untuk Pasien

NO NAMA FIELD TIPE DATA RANGE

1 Pasien_id int 11

2 Card_id Varchar 20

3 regdate Date

4 nama varchar 50

5 alamat varchar 200

6 dob Date

7 sex varchar 20

8 ktp varchar 30

9 tinggi varchar 6

10 berat varchar 6

11 telp varchar 13

12 email varchar 50

13 status varchar 6

14 password varchar 100

15 foto Text

16 Dokter_id int 11

17 odontogram varchar 96

18 saldo varchar 100

Ketika admin ingin mendaftarkan pasien baru ke dalam sistem maka admin akan

mengisi informasi-informasi pasien tersebut seperti yang ada pada tabel basis data

pasien di atas.

Tabel 3.5 Basis Data untuk Riwayat Pasien

NO NAMA FIELD TIPE DATA RANGE

1 Id int 11

2 Kode_pemeriksaan varchar 10

Page 51: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-18

3 Id_pasien varchar 11

4 Nama varchar 50

5 Tanggal Date

6 Bayar Date

7 Pemeriksaan Varchar 50

8 Kesimpulan Text

9 Total Varchar 20

10 status varchar 10

Ketika pasien telah selesai melakukan pemeriksaan maka data-data pemeriksaan

pasien tersebut akan tersimpan di halaman riwayat pasien yang mana di dalamnya

tertera jelas kode pemeriksaan, id pasien, nama pasien, tanggal pemeriksaan, total

bayar, kesimpulan dokter, nama pemeriksaan, hingga status.

Tabel 3.6 Basis Data untuk Pemeriksaan Suhu Tubuh

NO NAMA FIELD TIPE DATA RANGE

1 Id Int 11

2 Status Varchar 10

3 Kode_pemeriksaan Varchar 10

4 Hasil Decimal 10,0

5 keterangan text

Tabel basis pemeriksaan suhu tubuh digunakan untuk mengisi parameter suhu

tubuh pasien jika pasien memilih pemeriksaan tersebut.

Tabel 3.7 Basis Data untuk Tarif

NO NAMA FIELD TIPE DATA RANGE

1 Id Int 11

2 Nama Varchar 50

3 tarif decimal 10,0

Tabel basis data untuk tarif menujukkan kepada pasien berapa biaya pemeriksaan

yang akan dibayar oleh pasien.

Tabel 3.8 Basis Data untuk Pemeriksaan Tensi

NO NAMA FIELD TIPE DATA RANGE

1 Id Int 11

2 Status Varchar 10

3 Kode_pemeriksaan Varchar 10

4 Hasil Varchar 10

5 keterangan text

Page 52: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-19

Tabel basis data untuk pemeriksaan tensi digunakan untuk mengisi parameter

pemeriksaan tensi jika pasien memilih pemeriksaan tersebut.

Tabel 3.9 Tabel Basis Data untuk Pemeriksaan Urine

NO NAMA FIELD TIPE DATA RANGE

1 Id Int 11

2 Status varchar 10

3 Kode_pemeriksaan varchar 10

4 Warna varchar 20

5 Kerjernihan varchar 20

6 Berat_jenis varchar 20

7 pH varchar 20

8 Leukosit Esterase varchar 20

9 Nitrit varchar 20

10 Albumin varchar 20

11 Glukosa varchar 20

12 Keton varchar 20

13 Urobilinogen varchar 20

14 Bilirubin varchar 20

15 Darah_blood varchar 20

16 Eritrosit varchar 20

17 Leukosit varchar 20

18 Silinder_Hyalin varchar 20

19 Silinder_lain_lain varchar 20

20 Epithel_Gepeng varchar 20

21 Ephitel_Transitional varchar 20

22 Ephitel_Tubulus_Ginjal varchar 20

23 Bakteri varchar 20

24 Kristal_Normal varchar 20

25 Kristal_Abnormal varchar 20

26 Lain_lain varchar 20

27 ketWarna text

28 ketKejernihan text

29 ketBerat_Jenis text

30 ketpH text

31 ketLeukosit_Esterase text

32 ketNitrit text

33 ketAlbumin text

34 ketGlukosa text

35 ketKeton text

36 ketUrobilinogen text

37 ketBilirubin text

38 ketDarah_Blood text

39 ketEritrosit text

Page 53: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

III-20

40 ketLeukosit text

41 ketSilinder_Hyalin text

42 ketSilinder_Lain_lain text

43 ketEphitel_Gepeng text

44 ketEphitel _Transitional text

45 ketEphitel_Tubulus_Ginjal text

46 ketBakteri text

47 ketKristal_Normal text

48 ketKristal_Abnormal text

49 ketLain_Lain text

Tabel basis data untuk pemeriksaan urine digunakan untuk mengisi parameter

pemeriksaan urine jika pasien memilih pemeriksaan tersebut.

Page 54: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-1

BAB IV

HASIL DAN PEMBAHASAN

IV.1 Halaman Web Site Klinik Unhas

Untuk membuat sebuah sistem Web Site Klinik Unhas terlebih dahulu

dibuatlah source code yaitu util.php dan spesifikasi konsorsium.php (lihat pada

lampiran halaman 54-63) yang memiliki tujuan dalam hal pembacaan smart card.

Setelah kedua source code utama yaitu util.php dan spesifikasi konsorsium.php

dibuat, maka dilakukanlah pembuatan source code lainnya yang bertujuan untuk

menampilkan halaman-halaman Web Site Klinik Unhas. Berikut adalah gambaran

halaman Web Site Klinik Unhas setelah sebelumnya dilakukan perancangan

sistem dan untuk source codenya dapat dilihat pada bagian lampiran halaman 1-

53:

Halaman Utama Web Site Klinik Unhas

Untuk mengakses Web Site Klinik Unhas, ketik www.klinik-

unhas.com pada web browser. Lalu akan muncul seperti gambar 4.1.

Setelah mengakses www.klinik-unhas,com , akan muncul kolom ID,

Password dan Peran pada halaman utama.

Page 55: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-2

Gambar 4.1 Halaman Utama Klinik Unhas

Menu Utama Tanpa Ada Reader atau Smart Card

Beginilah tampak halaman Menu Utama Web Site Klinik Unhas,

selama beberapa detik akan loading untuk mengkoneksikan reader dan

smart card. Namun apabila setelah beberapa detik tidak terhubung dengan

reader akan ada keterangan bahwa “tidak ada reader” seperti gambar 4.2.

Dan jika tidak ada smart card pada reader akan muncul keterangan “tidak

ada kartu” seperti gambar 4.3.

Gambar 4.2 Menu Utama Tanpa Ada Reader

Page 56: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-3

Gambar 4.3 Menu Utama Tanpa Ada Smart Card

Menu Utama Ada Smart Card

Gambar 4.4 merupakan tampilan halaman menu utama apabila web

site terhubung dengan reader dan juga smart card pasien. Dalam halaman

menu utama ini, muncul profil dan riwayat medis pasien.

Gambar 4.4 Menu Utama Ada Smart Card

Page 57: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-4

Rekam Medis

Tampilan halaman web site rekam medis ditujukan untuk melihat

pemeriksaan-pemeriksaan yang telah dilakukan pasien. Di tampilan

halaman tersebut berisikan kode pemeriksaan, nama, tanggal check up,

status, dan detail. Kolom status berfungsi untuk melihat status

pemeriksaan pasien apakah sudah lunas, belum lunas ataukah sudah

selesai. Sedangkan kolom detail untuk melanjutkan pemeriksaan.

Gambar 4.5 Rekam Medis

Jenis-Jenis Pemeriksaan

Dalam halaman ini, terdapat jenis-jenis pemeriksaan yang pasien

dapat pilih seperti suhu tubuh, tensi, darah, urine, sakit kepala, sakit

perut/lambung, asma, batuk/tenggorokan, muntah/berak, diare, nyeri dada,

alergi, dan jenis pemeriksaan emergency. Pada jenis pemeriksaan

emergency ini, dapat dipilih jika pasien memang dalam keadaan darurat

yang membutuhkan petolongan segera. Dan pasien dapat membayar biaya

pengobatannya setelah dilakukan penanganan oleh petugas medis atau

dokter.

Page 58: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-5

Gambar 4.6 Jenis-Jenis Pemeriksaan

Parameter dan Hasil Pemeriksaan

Tampilan parameter dan hasil pemeriksaan menampilkan beberapa

kolom seperti suhu dan tensi, darah, urine, fisik, kesimpulan dokter dan

resep dokter yang bertujuan untuk mengisi hasil pemeriksaan beserta

parameter-parameternya.

Gambar 4.7 Parameter dan Hasil Pemeriksaan

Page 59: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-6

Top Up

Di halaman Menu Utama Web Site Klinik, terdapat Rekam Medis

pasien dengan berbagai menu tambahan seperti Riwayat, Tindakan dan

Top Up. Menu Top Up itu sendiri bertujuan untuk menambah saldo pada

kartu sesuai keinginan pemegang smart card. Untuk saat ini, jika pasien

ingin menambahkan saldo smart card maka harus menggunakan uang

tunai yang dibayar pada petugas administrasi di Klinik Unhas Gowa.

Gambar 4.8 Top Up

Invoice

Halaman Invoice merupakan Struk Pembayaran dari jenis

pemeriksaan yang telah dilakukan. Invoice ini dapat dicetak maupun tidak,

tergantung kebutuhan pasien.

Page 60: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-7

Gambar 4.9 Invoice

Tampilan Chatting pada Halaman Web Admin

Halaman ini berfungsi untuk melakukan konsultasi antara pasien

dengan petugas medis yang sedang berada di Klinik Unhas Gowa. Selain

itu, juga berfungsi jika pasien dalam keadaan darurat dalam hal ini pasien

tidak dapat melakukan pemeriksaan kesehatan di klinik, maka dapat

mengirim pesan darurat ke halaman chatting ini.

Gambar 4.10 Tampilan Halaman Chatting

Page 61: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-8

Admin Baru

Gambar 4.11 merupakan halaman untuk pendaftaran petugas

administrasi baru. Di halaman ini, admin akan mengisi nama petugas

administrasi baru, alamat, tanggal lahir, jenis kelamin, nomor telepon atau

handphone, email dan foto. Sedangkan untuk penomoran ID akan terisi

secara otomatis dari sistem.

Gambar 4.11 Admin Baru

Data Admin

Pada halaman Data Admin akan muncul data-data petugas

administrasi Klinik Unhas yang akan bertanggung jawab dalam

mengoperasikan Web Site Klinik Unhas. Di halaman ini hanya akan

muncul kolom nama, alamat, tanggal lahir, nomor telepon, dan detail.

Page 62: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-9

Gambar 4.12 Data Admin

Pasien Baru

Untuk mendaftarkan pasien baru, akan muncul halaman seperti ini.

Di dalam halaman pasien baru, data-data yang diperlukan seperti kode

institusi, NIM/NIK/NIDN/NO.Passport, asuransi, peran, nama, kode

organisasi, nama universitas, nama fakultas, nama program studi, foto,

alamat, tanggal lahir, jenis kelamin, email, tinggi, berat, nomor telepon,

dan email. Sebelum mengklik tombol register, pastikan reader dan smart

card sudah tersambung. Sementara untuk pilihan SAM Card Reader dan

USER Card Reader diubah menjadi ACS ACR1281 1S Dual Reader ICC

0. Jika pasien baru yang memiliki NIM/NIK/NIDN/NO.Passport yang

sama dengan pasien yang telah terdaftar maka pasien baru tersebut tidak

dapat melanjutkan pendaftaran.

Page 63: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-10

Gambar 4.13 Pasien Baru

Data Pasien

Pada halaman Data Pasien akan muncul data-data pasien Klinik

Unhas. Di halaman ini hanya akan muncul kolom id, nama pasien, alamat,

tanggal lahir, jenis kelamin, nomor telepon, tanggal registrasi, dan detail.

Kolom detail ini berfungsi untuk melihat riwayat rekam medis pasien.

Gambar 4.14 Data Pasie

Page 64: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-11

Tampilan Rekam Medis pada Halaman Web Pasien

Pada saat pasien telah login di halaman web site www.klinik-

unhas.com, tampilan Rekam Medis adalah yang paling utama ditampilkan.

Halaman ini berisiskan profile pasien dan rekam medis pasien. Dimana

pada rekam medis terdapat kolom kode pemeriksaan, nama, tanggal check

up, status, dan action. Kolom status berfungsi untuk mengetahui status

pemeriksaan pasien dan status yang terlihat hanya pemeriksaan yang telah

selesai. Sedangkan kolom action terdapat detail yang berfungsi untuk

melihat hasil pemeriksaan, hasil diagnosa pasien dari petugas medis dan

dokter, serta resep dokter.

Gambar 4.15 Rekam Medis pada Halaman Web Pasien

Tampilan Hasil Pemeriksaan dan Resep Dokter pada Halaman Web Pasien

Di halaman ini, pasien akan melihat seluruh hasil pemeriksaan baik yang

dilakukan di dalam klinik dan juga hasil diagnosa dari dokter serta resep

dokter. Pasien tidak memiliki akses untuk mengubah apapun hasil

pemeriksaan dan resep dokter.

Page 65: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-12

Gambar 4.16 Tampilan Hasil Pemeriksaan dan Resep Dokter pada

Halaman Web Pasien

Tampilan Ubah Password pada Halaman Web Pasien

Pada halaman ini pasien dapat mengganti password yang terdiri

atas kolom sandi lama, sandi baru, dan ulangi sandi baru.

Gambar 4.17 Halaman Ubah Password Pasien

Page 66: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-13

Tampilan Konsultasi Dokter pada Halaman Web Pasien

Di halaman konsultasi dokter, pasien dapat berkonsultasi dengan

admin atau petugas medis yang sedang berada di klinik. Selain itu halaman

ini juga berfungsi jika pasien membutuhkan pertolongan cepat oleh

petugas medis atau dalam kondisi darurat pasien tidak dapat melakukan

pemeriksaan ke klinik, pasien cukup mengetik pesan dan admin beserta

petugas medis lainnya akan segera menuju lokasi pasien.

Gambar 4.18 Konsultasi Dokter pada Halaman Web Pasien

Dokter Baru

Gambar 4.19 merupakan halaman untuk Pendaftaran Dokter Baru.

Di halaman ini, admin akan mengisi nama dokter baru, alamat, tanggal

lahir, jenis kelamin, nomor telepon atau no. hp, email dan foto. Sedangkan

untuk penomoran ID akan terisi secara otomatis oleh sistem.

Page 67: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-14

Gambar 4.19 Dokter Baru

Data Dokter

Pada halaman Data Dokter akan muncul data-data dokter yang

akan bertugas memeriksa pasien-pasien di Klinik Unhas. Di halaman ini

hanya akan muncul kolom id, nama dokter, alamat, tanggal lahir dan

nomor telepon.

Gambar 4.20 Data Dokter

Page 68: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-15

Tampilan Data Pasien pada Halaman Web Dokter

Gambar 4.21 Merupakan tampilan halaman utama web klinik

setelah dokter melakukan login. Di halaman web ini yang pertama terlihat

ialah data pasien yang telah terdaftar pada Web Site Klinik Unhas sehingga

memudahkan dokter memilih pasien mana yang akan diperiksa

kesehatannya. Dokter hanya perlu mengklik tombol detail pada nama

pasien yang ingin diperiksa.

Gambar 4.21 Tampilan Data Pasien pada Halaman Web Dokter

Tampilan Rekam Medis Pasien pada Halaman Web Dokter

Rekam medis pasien pada halaman web dokter akan terlihat jika

dokter telah mengklik detail. Halaman ini berfungsi untuk melihat riwayat-

riwayat pasien yang telah diperiksa di klinik. Di halaman ini terdapat

kolom status untuk melihat status pasien apakah pasien tersebut sudah

diperiksa atau belum. Dan untuk melanjutkan pemeriksaan, dokter

mengklik action.

Page 69: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-16

Gambar 4.22 Tampilan Riwayat Medis Pasien pada Halaman Web Dokter

Tampilan Hasil Diagnosa pada Halaman Web Dokter

Di tampilan hasil diagnosa akan muncul hasil pemeriksaan

petugas medis yang berada di Klinik Unhas pada kolom suhu/tensi dan

fisik seperti Gambar 4.23. Sedangkan gambar 4.24 berisikan kolom

kesimpulan dimana dokter akan mengisi hasil diagnosanya setelah

membaca hasil pemeriksaan dari Klinik Unhas, serta mengisi kolom resep

dokter jika pasien membutuhkan obat untuk penyakitnya. Pada pengisian

ini , dokter harus berhati-hati karena hasil pemeriksaan dan resep dokter

yang telah di ketik dan disimpan tidak dapat diubah lagi.

Page 70: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-17

Gambar 4.23 Tampilan halaman pemeriksaan petugas medis di klinik unhas

Gambar 4.24 Tampilan halaman diagnosa dokter

Tampilan Catatan Dokter Pada Halaman Web Dokter

Catatan dokter ini bersifat rahasia sebab hanya dokter yang

menangani pasien tersebut yang dapat membuat catatan rahasia ini. Tidak

ada yang dapat melihat atau membaca catatan ini sekalipun pasien tersebut

hanya dokter yang membuat catatan rahasia dapat melihatnya.

Page 71: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-18

Gambar 4.25 Tampilan Catatan Dokter Pada Halaman Web Dokter

Tampilan Menu Ubah Password Pada halaman Web Dokter

Pada halaman ini dokter dapat mengganti password yang terdiri

atas kolom sandi lama, sandi baru, dan ulangi sandi baru.

Gambar 4.26 Tampilan Halaman Ubah Password Dokter

Page 72: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-19

IV.2 Alur Sistem Transaksi Di Web Site Klinik Unhas

Gambaran alur sistem transaksi layanan medis di Klinik Unhas yang bertempat di

Gowa adalah sebagai berikut :

Sisi Admin

1. Klik kanan pada ikon XAMPP, lalu pilih Run As Administrator. Setelah

itu pilih Start pada Apache dan MySQL. Lihat pada Gambar 3.5 Installasi

XAMPP.

2. Admin mengakses web site Klinik Unhas yaitu www.klinik-unhas.com

yang tampilan halaman utamanya dapat dilihat pada Gambar 4.1 halaman

IV-2. Admin mengisi kolom ID dan password serta bagian perannya

memilih “administrasi” untuk sign in. Lihat pada Gambar 4.1 Halaman

Utama Klinik Unhas.

3. Pasien menyerahkan smart card pada Admin, lalu admin akan menscan

smart card tersebut dengan menggunakan reader ACS Unified MSI 4060.

Setelah itu data pasien akan terbaca pada menu utama web site seperti

pada Gambar 4.4 halaman IV-3. Pasien akan dibantu admin memilih jenis

pemeriksaan pada bagian tindakan, lalu mengklik Periksa pada bagian

bawah halaman web. Lihat pada Gambar 4.11 halaman IV-8.

4. Setelah itu akan muncul halaman invoice seperti Gambar 4.12. Invoice ini

merupakan rincian biaya pemeriksaan yang telah dipilih oleh pasien. Lalu

klik Bayar untuk melanjutkan pemeriksaan.

5. Setelah melakukan proses pembayaran, klik rekam medis di bagian kiri

pada halaman menu, lalu akan muncul tampilan seperti Gambar 4.5

halaman IV-4. Klik detail pada bagian action untuk melanjutkan proses

pemeriksaan.

6. Setelah dilakukan pemeriksaan, petugas medis akan mengisi kolom

parameter pemeriksaan dan kesimpulan hasil yang dapat dilihat pada

Gambar 4.6 halaman IV-5. Lalu klik Simpan dan pemeriksaan telah

selesai. Jika pasien ingin mencetak hasil pemeriksaannya dapat mengklik

print all.

Page 73: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-20

7. Apabila pasien belum pernah melakukan pemeriksaan di Klinik Unhas

sebelumnya, maka admin akan mendaftarkan pasien tersebut terlebih

dahulu sebelum melakukan pemeriksaan dengan cara klik bagian Pasien

Baru lalu mengisi form seperti pada Gambar 4.13 halaman IV-10. Untuk

melanjutkan pemeriksaan, maka melakukan kembali step nomor 3-6.

8. Jika pasien yang bersangkutan tidak memiliki saldo yang cukup untuk

melakukan pemeriksaan, maka dapat mentop-up saldo kartunya pada

bagian Rekam Medis dan memilih Top Up seperti Gambar 4.14 Top Up.

Sisi Dokter

1. Saat dokter ingin melihat hasil pemeriksaan pasien di Klinik Unhas yang

berada di Gowa, dokter mengakses web site www.klinik-unhas.com , lalu

log in dengan ID dan password serta memilih bagian peran dengan

“Dokter” . Lihat pada Gambar 4.1 Halaman Utama Klinik Unhas.

2. Setelah log in akan mucul tampilan Data Pasien seperti Gambar 4.21 yang

telah diperiksa oleh petugas medis di Klinik Unhas Gowa. Dokter

kemudian memilih pasien mana yang akan diperiksa lalu klik detail.

3. Rekam Medis pasien yang telah dipilih akan muncul setelah dokter

mengklik detail. Lalu memilih kode pemeriksaan apa yang akan diperiksa

dengan cara mengklik detail.

4. Setelah itu akan muncul parameter hasil pemeriksaan dan kesimpulan

awal dari petugas medis yang bertugas di Klinik Unhas Gowa yang dapat

dilihat pada Gambar 4.23 halaman IV-17.

5. Untuk memberikan diagnosa, dokter mengisi kolom kesimpulan dokter

dan resep dokter. Lalu klik simpan, dan pemeriksaan dokter telah selesai.

Perlu diketahui jika kolom kesimpulan dokter dan resep dokter telah

disimpan maka tidak dapat diubah lagi.

6. Jika dokter mempunyai catatan yang bersifat rahasia mengenai pasien

tersebut, dokter dapat mengisinya di kolom catatan dokter. Catatan rahasia

ini tidak dapat diubah lagi. Diharapkan kepada dokter yang ingin mengisi

catatan dokter tersebut berhati-hati dalam mengisi diagnosanya.

Page 74: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-21

7. Gambar 4.25 halaman IV-18 adalah tampilan halaman profil dokter. Pada

halaman ini dokter dapat mengganti password jika diperlukan.

Sisi Pasien

1. Saat Pasien ingin melihat hasil pemeriksaannya kembali (sedang tidak

berada di klinik), pasien dapat mengakses web site www.klinik-unhas.com

, lalu log in dengan ID dan password serta memilih bagian peran dengan

“Pasien” . Lihat pada Gambar 4.1 Halaman Utama Klinik Unhas.

2. Setelah log in maka akan muncul tampilan Rekam Medis pasien seperti

pada Gambar 4.15. Klik Detail pada kolom action untuk melihat hasil

pemeriksaan dan resep dokter yang dapat dilihat pada Gambar 4.16

halaman IV-12.

3. Apabila pasien ingin berkonsultasi dengan dokter yang sedang berada di

klinik ataupun di luar klinik, maka pasien dapat mengklik menu konsultasi

dokter seperti Gambar 4.18.

IV.3 Operasi Pengujian Sistem

Pada sistem web www.klinik-unhas.com hingga saat ini telah dilakukan

pengujian dengan mendaftar pasien baru sebanyak 10 orang dan telah berhasil

terdaftar sebagai pasien. Ketika admin berhasil mendaftarkan pasien pada sistem

maka akan muncul dua comments seperti gambar di bawah ini.

Gambar 4.27 Comment Sukses Tulis Kartu

Page 75: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-22

Gambar 4.28 Comment Pasien Berhasil Diregister

Apabila ada salah satu comment tidak muncul artinya ada kesalahan saat proses

registrasi. Berikut tabel pengujian sistem pada 10 pasien hingga selesainya

pemeriksaan.

Tabel 4.1 Tabel Pengujian Sistem

NO ID NAMA PASIEN KETERANGAN

1 8691463827 Aisyah Nurjannah Suyuti Berhasil

2 8119499516 Rahmat Rizaldi Berhasil

3 2711542334 Andi Arung Berhasil

4 1323669199 Wardah Berhasil

5 6271528588 Henry Pasodung Berhasil

6 3943917936 Elyas Palantei, M.Eng, PhD Berhasil

7 4656358962 Dr.Eng.Ir.Dewiani, MT Berhasil

8 6287881533 Prof. Andani Ahmad, MT Berhasil

9 3851657666 Galang Ananta Putra Berhasil

10 1258354995 Misa Amira Azwar Berhasil

Sebanyak 10 pasien telah terdaftar sebagai pasien di Web Site Klinik

Unhas Gowa dan sudah berhasil melakukan transaksi pembayaran dan

Page 76: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-23

pemeriksaan hingga selesai. Pemeriksaan ini dilakukan oleh peneliti dan juga

sebanyak 5 orang mahasiswa dan pegawai Fakultas Teknik Gowa telah mencoba

melakukan pendaftaran pasien serta transaksi pemeriksaan sesuai Langkah-

Langkah Pengoperasian Sistem Web Site Klinik Unhas yang ada pada lampiran

halaman 69.

Tabel 4.2 Pengujian Sistem Web Site Klinik Unhas Selain Peneliti

NO NAMA STATUS KETERANGAN

1 Andi Muhammad Arung Mahasiswa Berhasil

2 Henry Pasodung Mahasiswa Berhasil

3 Aisyah Nurjannah Suyuti Mahasiswa Berhasil

4 Wardah Mahasiswa Berhasil

5 Zulkifli Sam Alumni Berhasil

6 Nompo Pegawai Berhasil

Selain itu, dibutuhkan jaringan internet berkonektivitas cepat agar

memudahkan mengakses Web Site Klinik Unhas. Koneksivitas internet yang cepat

berpengaruh terhadap waktu, provider yang digunakan, dan tempat saat

mengakses internet. Apabila waktu pemakaian internet tinggi dan tempat yang

tidak mendukung adanya jaringan provider yang baik maka untuk mengakses

Web Site Klinik Unhas terkadang lambat. Oleh karena itu, dilakukan pengujian

kecepatan jaringan uplink dan downlink pada provider Xl, Simpati, WiFi

Indihome dan WiFi Teknik Unhas Gowa di berbagai tempat untuk mengetahui

kecepatan setiap provider dalam mengakses Web Site Klinik Unhas. Berikut

adalah tabel pengujian kecepatan internet.

Page 77: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-24

Tabel 4.3 Pengujian Kecepatan Internet

NO. TEMPAT PROVIDER WAKTU DOWNLINK UPLINK

1

Fakultas Teknik

Gowa

Universitas

Hasanuddin

WiFi Teknik 14.40

Wita 0,71 Mbps 0,56 Mbps

XL 14.42

Wita 0,23 Mbps 0,69 Mbps

Simpati 14.50

Wita 0,02 Mbps 0,16 Mbps

2 Jalan Sunu

Kompleks Unhas

WiFi IndiHome 18.11

Wita 20,37 Mbps 2,94 Mbps

XL 17.56

Wita 1,40 Mbps 1,11 Mbps

Simpati 18.06

Wita 8,01 Mbps 6,14 Mbps

3

Jalan Kakatua

Asrama

Mattoangin

XL 09.28

Wita 2.29 Mbps 8.06 Mbps

Simpati 09.50

Wita 18.87 Mbps 4.89 Mbps

4

Dunkin Donuts,

Jalan Sultas

Hasanuddin

WiFi 19.15

Wita 2.39 Mbps 0.59 Mbps

Setelah diketahui kecepatan downlink dan uplink masing-masing provider

dalam mengakses Web Site Klinik Unhas, maka perlu juga diketahui apakah jarak

antara dokter dan pasien dalam mengakses Web Site Klinik Unhas mempengaruhi

berhasil tidaknya proses pemeriksaan di web site pada waktu yang sama. Berikut

tabel pengujian jarak antar dokter dengan pasien.

Page 78: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-25

Tabel 4.4 Pengujian Jarak Dokter dengan Pasien

NO.

NAMA

DOKTER

BESERTA

ID

LOKASI

DOKTER

NAMA

PASIEN

BESERTA

ID

LOKASI

PASIEN

JARAK

LOKASI

DOKTER

DAN

PASIEN

KETERANGAN

1.

dr. Idar

Mappangara,

Sp.PD, Sp.JP

(2135293622)

Jalan Sunu

Kompleks

Unhas

Misa Amira

Azwar

(1258354995)

Jalan Sunu

Kompleks

Unhas

0 Km Berhasil

2.

Dr. dr. Fardah

Akil, Sp.PD,

K-GEH

(2981376581)

Jalan Sunu

Kompleks

Unhas

Galang

Ananta Putra

(3851657666)

Jalan

Kakatua

Asrama

Mattoangin

6,7 Km Berhasil

3.

Dr. dr. Fardah

Akil, Sp.PD,

K-GEH

(2981376581)

Dunkin

Donuts,

Jalan Sultas

Hasanuddin

Aisyah

Nurjannah

Suyuti

(9153158336)

Jalan Sunu

Kompleks

Unhas

4,1 Km Berhasil

4.

dr. Idar

Mappangara,

Sp.PD, Sp.JP

(2135293622)

Fakultas

Teknik

Gowa

Universitas

Hasanuddin,

Jalan Poros

Malino

Rahmat

Rizaldi

(9219943269)

Jalan Sunu

Kompleks

Unhas

20,3 Km Berhasil

5.

Dr. dr. Harun

Iskandar,

Sp.P (K),.

Sp.PD, Sp.P

(K)

(1614964488)

Jalan

Kakatua

Asrama

Mattoangin

Andi

Muhammad

Arung

(8592884983)

Fakultas

Teknik

Gowa

Universitas

Hasanuddin,

Jalan Poros

Malino

14,1 Km Berhasil

Dari pengujian jarak yang telah dilakukan, semua pemeriksaan berhasil

dilakukan maka dapat disimpulkan bahwa pemeriksaan ini dapat dilakukan antara

pasien dan dokter baik dekat maupun jauh sehingga memudahkan pasien dalam

memeriksakan kesehatannya.

Page 79: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-26

IV.4 Perbandiangan Kelebihan Sistem Web Site Klinik Unhas dengan

Aplikasi Kesehatan Lainnya.

Terdapat berbagai macam aplikasi mengenai kesehatan, seperti halnya

aplikasi mengenai cara berkonsultasi dengan dokter, artikel-artikel tentang

kesehatan, dan apotek antar. Tetapi dengan banyaknya aplikasi seperti itu,

masyarakat juga ingin memeriksa kesehatannya secara langsung atau face-to-face

dengan petugas medis. Dengan adanya Klinik Unhas yang bertempat di Kampus

Fakultas Teknik Unhas Gowa ini maka akan menjadi sarana yang tepat untuk

memeriksa kesehatan apalagi untuk mahasiswa, dosen, dan staff Fakultas Teknik

yang memiliki kesulitan dalam hal mengakses rumah sakit. Berikut kelebihan

aplikasi-aplikasi kesehatan dan Web Site Klinik Unhas.

Tabel 4.5 Perbandiangan Kelebihan Sistem Web Site Klinik Unhas dengan

Aplikasi Kesehatan Lainnya.

NO. APLIKASI KESEHATAN LAINNYA WEBSITE KLINIK

UNHAS

1. GoDoc : Tanya Dokter Gratis

Menyediakan layanan kesehatan

profesional dengan membuka portal

Setiap dokter umum dan dokter spesialis

Go Dok yang berasal dari berbagai kota

besar di Indonesia yang teregristasi di IDI

dan memiliki pengalaman selama bertahun-

tahun sebagai dokter praktek baik di rumah

sakit maupun klinik kesehatan.

Layanan kesehatan yang ditawarkan Go

Doc bebas dari pungutan biaya apapun

Sistem Web Site Klinik

Unhas dapat

menyimpan rekam

medis pasien dalam

jangka waktu yang

lama.

Memiliki fitur Chatting

untuk memudahkan

pasien dalam

berkonsultasi dengan

pihak klinik dan

petugas medis. Dan

Page 80: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-27

2. Apa Sakitku?

Menyediakan informasi berbagai penyakit

yang ada di tubuh manusia dengan cara

memasukkan info keluhan kesehatan user.

Di Aplikasi ApaSakitKu, kita dapat

berkonsultasi dengan dokter untuk

menanyakan penyakit dan biayanya pun

gratis. Tapi kekurangannya adalah dokter

jarang online.

Terdapat juga fitur maps untuk

mengetahui sarana pelayanan kesehatan

yang ada di sekitar kita. Sarana pelayanan

kesehatan yang bisa dideteksi adalah lokasi

praktik dokter, klinik umum, klinik gigi,

rumah sakit dan apotek yang berada di

sekitar lokasi Anda.

Diaplikasi ApaSakitKu juga terdapat

artikel-artikel kesehatan.

jika terjadi hal-hal

darurat maka petugas

medis dapat segera

menuju ke lokasi

pasien.

Pasien dapat

memeriksakan

kesehatnnya di klinik

yang akan ditangani

langsung oleh petugas

medis dan dapat

melakukan

pemeriksaan

laboratorium seperti

Tes Urine Rutin dan

Darah.

Proses Pembayaran

juga sangat mudah

dengan menggunakan

smart card yang mana

smartcard tersebut

berupa Kartu

Mahasiswa, Kartu

Dosen, maupun Kartu

Pegawai yang

terintegrasi dengan

layanan yang ada

kantin, perpustakaan

dan Bus BRT.

3. Alodokter: Chat Bersama Dokter

Berbincang langsung bersama dokter

secara gratis melalui chat.

Aplikasi ini berisi informasi tentang

ratusan penyakit, obat, dan gejala berbagai

penyakit.

Aplikasi ini mempunyai majalah Alodokter

guna mendapatkan informasi tentang

kesehatan, kesejahteraan, dan keluarga.

Page 81: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

IV-28

4. Halo Doc

Aplikasi ini memudahkan pasien untuk

berkonsultasi dengan dokter melalui via

chatting, voice call, dan video call tetapi

pasien harus membayar biaya konsultasi.

HaloDoc juga menyediakan menu Apotek

Antar (Pharmacy Delivery) untuk memesan

kebutuhan obat atau vitamin dan diantar

langsung ke rumah dengan cepat, aman,

dan nyaman.

Mahasiswa yang

memiliki asuransi

kesehatan tidak perlu

membayar biaya

pemeriksaan di Klinik

Unhas (gratis).

Dokter Spesialis yang

mendiagnosa pasien

dapat memberikan

resep obat sesuai

dengan penyakit yang

diderita pasien dan

resep tersebut

tersimpan pada rekam

medis.

Berdasarkan tabel 4.4 dapat disimpulkan bahwa Web Site Klinik Unhas

yang peneliti rancang memiliki perbedaan dengan aplikasi-aplikasi kesehatan

yang saat ini sudah ada di Indonesia. Web Site ini peneliti rancang dengan tujuan

untuk mendukung peran smart campus Fakultas Teknik Gowa. Kedepannya, web

site yang terhubung dengan smart card ini akan menjadi kartu multifungsi dalam

artian tidak hanya dapat dipakai pada Klinik Unhas Gowa, melainkan dapat pula

digunakan pada sarana lain seperti kantin, perpustakaan, maupun pada bus BRT

yang ada pada Fakultas Teknik Gowa.

Page 82: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

V-1

BAB V

PENUTUP

V.1 Kesimpulan

Setelah penelitian dilakukan maka dapat disimpulkan sebagai berikut:

1. Monitoring kesehatan jarak jauh pada sistem Web Site Klinik Unhas

dengan cara melihat parameter hasil pemeriksaan pasien yang diinput

langsung oleh admin atau petugas medis klinik dan selanjutnya dokter

yang tidak berada di klinik dapat memberikan diagnosa dan resep obat

sesuai dengan parameter hasil pemeriksaan pasien tersebut.

2. Konsultasi antara petugas medis atau admin di klinik dengan pasien dapat

dilakukan melalui fitur chatting pada Web Site Klinik Unhas sehingga

memudahkan dalam berkonsultas jikalau pasien mengalami keadaan

darurat yang tidak memungkinkan untuk mengunjungi klinik.

3. Pengelolaan dan penyimpanan database PHPmyAdmin dilakukan oleh

admin secara online.

4. Web Site Klinik Unhas dapat diakses oleh admin, pasien, dan dokter di

mana saja selama masih terhubung dengan internet sehingga pemantauan

dan konsultasi dapat dilakukan di manapun.

5. Sistem pembayaran, top up saldo kartu, dan penyimpanan data medis

pasien di Web Site Klinik Unhas dengan cara menggunakan smart card.

6. Pasien yang memiliki asuransi kesehatan tidak perlu membayar biaya

pemeriksaan di klinik.

7. Pasien yang mengalami keadaan darurat seperti halnya kecelakan dapat

dilakukan pemeriksaan terlebih dahulu tanpa melalui proses administrasi.

Page 83: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

V-2

V.2 Saran

Untuk pengembangan lebih lanjut dari skripsi ini diberikan beberapa saran

sebagai berikut :

1. Sistem pembayaran pada Web Site Klinik Unhas kedepannya dapat diganti

dengan mengintegrasikan akun bank dan sistem yang telah ada sehingga

tidak perlu lagi menggunakan uang tunai.

2. Untuk menghasilkan sistem telemedis interaktif yang lebih berkualitas,

maka penelitian selanjutnya harus memperhatikan aspek penting seperti

keamanan data rekam medik pasien dan juga hal-hal penting lainnya yang

berhubungan dengan rumah sakit maupun klinik.

Page 84: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

DAFTAR PUSTAKA

[1] Amil A. Ilham, Elyas Palantei, Santi, “Optimasi Sistem Basis Data Pada

Komputasi Mobile Dalam Jaringan Telemedis Interaktif,” Universitas

Hasanuddin Makassar, 2014.

[2] V. Mustafa Sarinanto, Afrias Sarotama, “Pengembangan program smart

card pada rumah sakit.”

[3] Donny, “IMPLEMENTASI APLIKASI SMART HEALTH PADA

SMART CARD UI BERBASIS JAVACARD,” pp. 19–24, 2008.

[4] V. R. Kumar, S. Dayanidhi, and K. Vignesh, “Health Care Recording

System Using Smart Card Technology,” vol. 3, no. 3, pp. 1697–1699,

2016.

[5] S. Hussain, T. Ariyachandra, and M. Frolick, “Patient Healthcare Smart

Card System : A Unified Medical Record for Access and Analytics,” 2016

Proc. Conf. Inf. Syst. Appl. Res., pp. 1–14, 2016.

[6] B. T. Joko, “Manfaat Telemedicine bagi Masyarakat,” 2016.

[7] A. Pusparini, “PERBANDINGAN MEDIA TRANSMISI WIRELESS

DAN SATELITE,” no. 9061002004, 2009.

[8] E. Nurmiati, U. Islam, N. Syarif, and H. Jakarta, “Analisis Dan

Perancangan Web Server Pada,” vol. 5, no. 2, pp. 1–17, 2012.

[9] D. Setiawan, R. Setiawan, R. Karunia, and I. W. S. Wicaksana,

“Membandingkan Kinerja Web Browser,” Web Brows., pp. 1–6, 2009.

[10] A. Solichin, “Pemrograman Web dengan PHP dan MySQL,” Jakarta, 2005.

[11] R. Sovia and J. Febio, “Membangun Aplikasi E-Library Menggunakan

Html, Php Script, Dan Mysql Database,” J. Teknol. Inf. Pendidik., vol. 3,

Page 85: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

x

no. 1, pp. 86–101, 2011.

[12] M. S. Al-ani, “Billing System Design Based on Internet Environment,” vol.

3, no. 9, pp. 224–230, 2012.

[13] “iRFC1-

SpesifikasiDataMappingInteroperabilitasBerbasisSmartCardUntukFungsiN

on-FinansialAntarLembagaPendidikanDiIndonesia.” Konsorsium Smart

Card Indonesia.

[14] Amil A. Ilham, Elyas Palantei, dan Santi. Pengembangan Tampilan Visual

Data Medis Pada Jaringan Telemedis Interaktif. Program Studi Teknik

Elektro Konsentasi Teknik Informatika, Fakultas Teknik Universitas

Hasanuddin. Makassar, 2014.

Page 86: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

LAMPIRAN

Page 87: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

1 | L a m p i r a n

1. Source Code Halaman Utama Web Site Klinik Unhas

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<title>Klinik | Universitas Hasanuddin</title>

<!-- Tell the browser to be responsive to screen width -->

<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-

scalable=no" name="viewport">

<!-- Bootstrap 3.3.7 -->

<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">

<!-- Font Awesome -->

<link rel="stylesheet" href="bower_components/font-awesome/css/font-

awesome.min.css">

<!-- Ionicons -->

<link rel="stylesheet" href="bower_components/Ionicons/css/ionicons.min.css">

<!-- Theme style -->

<link rel="stylesheet" href="dist/css/AdminLTE.min.css">

<!-- iCheck -->

<link rel="stylesheet" href="plugins/iCheck/square/blue.css">

<link rel="icon" type="image/png" href="dist/img/favicon.png">

<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -

->

<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->

<!--[if lt IE 9]>

<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>

<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>

<![endif]-->

<!-- Google Font -->

<link rel="stylesheet"

href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300ita

lic,400italic,600italic">

</head>

<body class="hold-transition" background='dist/img/photo1.jpg'>

<div class="login-box">

<div class="login-logo">

<a href="index.php"><b>Rekam</b> Medis</a>

</div>

<!-- /.login-logo -->

<div class="login-box-body" style="opacity:0.9">

Page 88: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

2 | L a m p i r a n

<?php include 'db_access/login.php';?>

<p class="login-box-msg">Silakan Login</p>

<form action="#" method="post">

<div class="form-group has-feedback">

<input type="text" class="form-control" placeholder="Masukkan ID Anda"

name="id" onkeypress="return isNumber(event)" required>

<span class="glyphicon glyphicon glyphicon-user form-control-feedback"></span>

</div>

<div class="form-group has-feedback">

<input type="password" class="form-control" name = "pass"

placeholder="Masukkan Password" required>

<span class="glyphicon glyphicon-lock form-control-feedback"></span>

</div>

<div class="row">

<div class="col-xs-8">

<div class="form-group has-feedback">

<select class="form-control" name="role" id="role" onChange="btn()">

<option disabled selected>Peran</option>

<option value="dokter">Dokter</option>

<option value="admin">Administrasi</option>

<option value="pasien">Pasien</option>

</select>

<span class="glyphicon form-control-feedback"></span>

</div>

</div>

<div class="col-xs-4">

<button type="submit" name="login" id="login" class="btn btn-primary btn-block

btn-flat" disabled>Sign In</button>

</div>

<!-- /.col -->

</div>

</form>

</div>

<!-- /.login-box-body -->

</div>

<!-- /.login-box -->

<!-- jQuery 3 -->

<script src="bower_components/jquery/dist/jquery.min.js"></script>

<!-- Bootstrap 3.3.7 -->

<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>

Page 89: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

3 | L a m p i r a n

<!-- iCheck -->

<script src="plugins/iCheck/icheck.min.js"></script>

<script>

$(function () {

$('input').iCheck({

checkboxClass: 'icheckbox_square-blue',

radioClass: 'iradio_square-blue',

increaseArea: '20%' // optional

});

});

function isNumber(evt) {

evt = (evt) ? evt : window.event;

var charCode = (evt.which) ? evt.which : evt.keyCode;

if (charCode > 31 && (charCode < 48 || charCode > 57)) {

return false;

}

return true;

}

function btn()

{

if(document.getElementById("role").value!="")

document.getElementById("login").disabled=false;

else

document.getElementById("login").disabled=true;

}

</script>

</body>

</html>

2. Source Code Write Card

<?php

require_once('util.php');

require_once('spesifikasi_konsorsium.php');

if (!extension_loaded('pcsc')) {

//dl('pcsc.so');

}

if ($_SERVER["REQUEST_METHOD"] == "POST") {

Page 90: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

4 | L a m p i r a n

$nama_card_reader = $_POST['card_reader'];

//$nama_sam_reader = $_POST["sam_reader"];

$context_card = scard_establish_context();

//$context_sam = scard_establish_context();

$conn_card = scard_connect($context_card, $nama_card_reader,

SCARD_PROTOCOL_T0);

//$conn_sam = scard_connect($context_sam, $nama_sam_reader,

SCARD_PROTOCOL_T0);

// Select MF

$apdu = "00 A4 00 00 02 3F 00";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

if($resp['sw1'] == NULL && $resp['sw2'] == NULL){

scard_disconnect($conn_card);

$output = array("status" => "error", "reason" => "Kartu Tidak Terpasang");

echo array2json($output);

die;

}

// Select DF

$apdu = "00 A4 00 00 02 10 01";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

$field_map = "";

$length_map = "";

$data1 = "";

if(isset($_POST["local_card_id"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["local_card_id"]));

$data1 .= $_POST["local_card_id"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["kode_institusi"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["kode_institusi"]));

$data1 .= $_POST["kode_institusi"];

} else {

Page 91: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

5 | L a m p i r a n

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["nomor_identitas"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["nomor_identitas"]));

$data1 .= $_POST["nomor_identitas"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["nama_lengkap"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["nama_lengkap"]));

$data1 .= $_POST["nama_lengkap"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["kode_organisasi"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["kode_organisasi"]));

$data1 .= $_POST["kode_organisasi"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["nama_universitas"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["nama_universitas"]));

$data1 .= $_POST["nama_universitas"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["nama_fakultas"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["nama_fakultas"]));

$data1 .= $_POST["nama_fakultas"];

Page 92: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

6 | L a m p i r a n

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["nama_prodi"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["nama_prodi"]));

$data1 .= $_POST["nama_prodi"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["peran"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["peran"]));

$data1 .= $_POST["peran"];

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["icao_primer"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["icao_primer"]));

$icao1 = $_POST["icao_primer"];

// Select EF

$apdu = "00 A4 00 00 02 01 02";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write ICAO Primer

$apdu = "00 D0 00 00 " . dec2hex(strlen($icao1)) . " " . asc2hex($icao1);

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

} else {

$field_map .= "0";

$length_map .= "0000";

}

if(isset($_POST["icao_sekunder"])){

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($_POST["icao_sekunder"]));

$icao2 = $_POST["icao_sekunder"];

// Select EF

$apdu = "00 A4 00 00 02 01 03";

Page 93: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

7 | L a m p i r a n

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write ICAO Sekunder

$apdu = "00 D0 00 00 " . dec2hex(strlen($icao2)) . " " . asc2hex($icao2);

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

} else {

$field_map .= "0";

$length_map .= "0000";

}

// Foto

$filename = 'dist/img/foto.jpg';

if(!file_exists($filename)){

$filename = 'dist/img/person.jpg';

}

$fp = fopen($filename, 'r');

$i = 0;

while (!feof($fp)) {

$foto_arr[$i] = bin2hex(fread($fp,1));

$i++;

}

fclose($fp);

array_pop($foto_arr);

// unlink('/home/smartcard/apps/uploads/foto.jpg');

$totalLen = count($foto_arr);

$field_map .= "1";

$length_map .= lengthMapGenerator($totalLen);

// Foto

$loop = intval($totalLen / 51);

$remainder = dec2hex($totalLen % 51);

$offset = "0000";

$strOffset = 0;

$str = "";

// Select EF

$apdu = "00 A4 00 00 02 01 04";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

while($loop != 0){

$part = implode("", array_slice($foto_arr, $strOffset, 51));

Page 94: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

8 | L a m p i r a n

$str .= $part;

$getDataApdu = "00 D0 " . $offset . " 33 " . $part;

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

$offset = changeOffset($offset, "33");

$strOffset += 51;

$loop -= 1;

}

$part = implode("", array_slice($foto_arr, $strOffset, $totalLen % 51));

$str .= $part;

$getDataApdu = "00 D0 " . $offset . " " . $remainder . $part;

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

$odontogram =

"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

aaaaaaaaaaaaaaaa";

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($odontogram));

// Select EF

$apdu = "00 A4 00 00 02 01 05";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write Odontogram

$apdu = "00 D0 00 00 " . dec2hex(strlen($odontogram)) . " " .

asc2hex($odontogram);

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

$saldo = "0000000000";

$field_map .= "1";

$length_map .= lengthMapGenerator(strlen($saldo));

// Select EF

$apdu = "00 A4 00 00 02 01 06";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write Odontogram

$apdu = "00 D0 00 00 " . dec2hex(strlen($saldo)) . " " . asc2hex($saldo);

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write Data1

$totalLen = strlen($data1);

$loop = intval($totalLen / 51);

$remainder = dec2hex($totalLen % 51);

$offset = "0000";

$strOffset = 0;

// Select EF

Page 95: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

9 | L a m p i r a n

$apdu = "00 A4 00 00 02 01 01";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

while($loop != 0){

$part = substr($data1, $strOffset, 51);

$getDataApdu = "00 D0 " . $offset . " 33 " . asc2hex($part);

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

$offset = changeOffset($offset, "33");

$strOffset += 51;

$loop -= 1;

}

$part = substr($data1, $strOffset, $totalLen % 51);

$getDataApdu = "00 D0 " . $offset . " " . $remainder . asc2hex($part);

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

// update field map & length map

$field_map .= "0000000000";

$length_map .= "0000000000000000000000000000000000000000";

$fm_lm = fieldMapGenerator($field_map) . $length_map;

// Select EF

$apdu = "00 A4 00 00 02 01 00";

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

// Write Field Map + Length Map

$apdu = "00 D0 00 00 33 " . $fm_lm;

$resp = parseAPDU(scard_transmit2($conn_card, $apdu), $apdu);

scard_disconnect($conn_card);

$output = array("status" => "ok");

echo array2json($output);

}

?>

3. Source Code Pasien

<?php include 'header.php';

include 'db_access/pasien.php';?>

<?php

$sesiumum = "disabled";

Page 96: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

10 | L a m p i r a n

$sql="SELECT * FROM riwayat WHERE id_pasien = '$local_card_id'

ORDER BY id DESC";

if ($_SESSION['role'] == "Pasien") {

$sesiumum = "disabled";

}

if ($_SESSION['role'] != "Admin") {

$sql="SELECT * FROM riwayat WHERE id_pasien =

'$local_card_id' AND status='selesai' ORDER BY id DESC";

$sesiumum = "disabled";

}

?>

<!-- Sidebar Menu -->

<ul class="sidebar-menu" data-widget="tree">

<!-- Optionally, you can add icons to the links -->

<?php

if ($_SESSION['role'] != "Pasien") {

echo "<li><a href='home.php'><i class='fa fa-home'></i> <span>Menu

Utama</span></a></li>";

}?>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li class='treeview'>

<a href='#'><i class='fa fa-user'></i> <span>Admin</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<li><a href='admin_baru.php'><i class='fa fa-user-plus'></i> Admin

Baru</a></li>

<li><a href='data_admin.php'><i class='fa fa-users'></i> Data Admin</a></li>

</ul>

</li>"; }

?>

<li class="treeview active">

<a href="#"><i class="fa fa-user"></i> <span>Pasien</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

Page 97: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

11 | L a m p i r a n

</a>

<ul class="treeview-menu">

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li><a href='pasien_baru.php'><i class='fa fa-user-plus'></i> Pasien

Baru</a></li>";}?>

<?php if ($_SESSION['role'] != "Pasien") {

echo "<li class='treeview active'>

<a href='data_pasien.php'><i class='fa fa-user'></i> Data Pasien

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<li class='active'><a href='detail_pasien.php'><i class='fa fa-medkit'></i>

Rekam Medis</a></li>

</ul>

</li>

";}?>

</ul>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li class='treeview'>

<a href='#'><i class='fa fa-user-md'></i> <span>Dokter</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<li><a href='dokter_baru.php'><i class='fa fa-user-plus'></i> Dokter

Baru</a></li>

<li><a href='data_dokter.php'><i class='fa fa-users'></i> Data

Dokter</a></li>

</ul>

</li>

</ul>";

}?>

<!-- /.sidebar-menu -->

</section>

<!-- /.sidebar -->

</aside>

Page 98: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

12 | L a m p i r a n

<!-- Content Wrapper. Contains page content -->

<div class="content-wrapper" id="loading">

<!-- Content Header (Page header) -->

<section class="content-header">

<h1>

Rekam Medis

<small>Rekam medis smartcard.</small>

</h1>

<ol class="breadcrumb">

<li class="active"><a href="home.php"><i class="fa fa-user"></i> Pasien</a></li>

<li><a href="data_pasien.php"><i class="fa fa-user"></i> Data Pasien</a></li>

<li class="active"> <i class="fa fa-medkit"></i> Rekam Medis</li>

</ol>

</section>

<!-- Main content -->

<section class="content">

<div class="row">

<div class="col-md-3">

<!-- Profile Image -->

<div class="box box-primary">

<div class="box-body box-profile">

<img class="profile-user-img img-responsive img-circle" src="<?php echo $foto

?>" alt="User profile picture">

<h3 class="profile-username text-center"><?php echo $nama_lengkap?></h3>

<p class="text-muted text-center"><?php echo $local_card_id?></p>

<ul class="list-group list-group-unbordered">

<li class="list-group-item">

<i class="fa fa-birthday-cake"></i><b> Usia</b> <a class="pull-

right"><?php echo $dob?></a>

</li>

<li class="list-group-item">

<i class="fa fa-venus-mars"></i><b> Sex</b> <a class="pull-right"><?php

echo $sex?></a>

</li>

<li class="list-group-item">

<i class="fa fa-male"></i><b> Tinggi</b> <a class="pull-right"><?php echo

$tinggi?></a>

Page 99: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

13 | L a m p i r a n

</li>

<li class="list-group-item">

<i class="fa fa-tachometer"></i><b> Berat</b> <a class="pull-right"><?php

echo $berat?></a>

</li>

<li class="list-group-item">

<i class="fa fa-calendar-check-o"></i><b> Member Sejak</b> <a

class="pull-right"><?php echo $regdate?></a>

</li>

<li class="list-group-item">

<i class="fa fa-history"></i><b> Status</b> <a class="pull-right"><?php

echo $status?></a>

</li>

</ul>

</div>

<!-- /.box-body -->

</div>

<!-- /.box -->

<!-- About Me Box -->

<div class="box box-primary">

<div class="box-header with-border">

<h3 class="box-title">About Me</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<strong><i class="fa fa-map-marker margin-r-5"></i> Alamat</strong>

<p class="text-muted"><?php echo $alamat ?></p>

<hr>

<strong><i class="fa fa-phone margin-r-5"></i> Telp</strong>

<p class="tect-muted">

<?php echo $telp ?>

</p>

<hr>

<strong><i class="fa fa-envelope margin-r-5"></i> eMail</strong>

Page 100: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

14 | L a m p i r a n

<p class="tect-muted">

<?php echo $email ?>

</p>

</div>

<!-- /.box-body -->

</div>

<!-- /.box -->

</div>

<!-- /.col -->

<div class="col-md-9">

<div class="nav-tabs-custom">

<ul class="nav nav-tabs">

<li class="active"><a href="#riwayat" data-toggle="tab">Riwayat</a></li>

<?php if ($_SESSION['role'] == "Admin") {

echo "<li><a href='#tindakan' data-

toggle='tab'>Tindakan</a></li>";}?>

<?php if ($_SESSION['role'] == "Pasien") {

echo "<li><a href='#password' data-toggle='tab'>Update

Password</a></li>";}?>

</ul>

<div class="tab-content">

<div class="tab-pane" id="tindakan">

<style>

.example-modal .modal {

position: relative;

top: auto;

bottom: auto;

right: auto;

left: auto;

display: block;

z-index: 1;

}

.example-modal .modal {

background: transparent !important;

}

</style>

<div class="row">

<div class="col-xs-12">

<div class="box box-default">

<div class="box-header with-border">

Page 101: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

15 | L a m p i r a n

<h3 class="box-title">Pilih Pemeriksaan</h3>

<span class="box-title pull-right" id="sumcekup"> 0</span>

<span class="box-title pull-right">Total = Rp. </span>

</div>

<div class="box-body">

<form action="#" method="post" name="cekup" id="formcekup">

<div class="modal-body col-xs-12">

<div class="col-xs-4">

<ul class="modal-ul">

<?php

include 'koneksi.php';

$sqltarif = "SELECT * FROM tarif";

$querytarif = mysqli_query($conn, $sqltarif);

while ($row = mysqli_fetch_assoc($querytarif)) {

$id = $row['id'];

$nama = $row['nama'];

$tarif = $row['tarif'];

echo "<li class='modal-li'>

<input type='checkbox' id='tarif$id' name='cekup[]' value='$id|$tarif|$nama'

class='$id'/>

<label for='$nama' class='modal-label'>$nama</label></li>

<script>

$('#tarif$id').change(function() {

if($(this).prop('checked') == true) {

document.getElementById('bt_cekup').disabled = false;

var table = document.getElementById('total');

var nam1 = document.getElementById('tarif$id');

var row = table.insertRow(-1);

var nama = row.insertCell(0);

var tarif = row.insertCell(1);

row.id = 'row$id';

nama.innerHTML = $('.$id:checked').val().split('|')[2]

tarif.innerHTML = $('.$id:checked').val().split('|')[1];

} else if($(this).prop('checked') == false){

var tr$id = document.getElementById('row$id');

tr$id.parentNode.removeChild(tr$id);

}

if($('#formcekup input:checkbox:checked').length == 0 ){

document.getElementById('bt_cekup').disabled = true;

Page 102: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

16 | L a m p i r a n

}

});

var inputs = document.getElementsByClassName('$id');

tot = document.getElementById('sumcekup');

for (var i=0; i < inputs.length; i++) {

inputs[i].onchange = function() {

var add = this.value.split('|')[1] * (this.checked ? 1 : -1);

tot.innerHTML = parseFloat(tot.innerHTML) + add;

}

}

</script>";

}

?></ul>

</div>

<div class="col-xs-8">

<div class="box">

<!-- /.box-header -->

<div class="box-body no-padding">

<table class="table table-condensed" id="total">

<tr>

<th>Nama Pemeriksaan</th>

<th>Tarif</th>

</tr>

</table>

</div>

<!-- /.box-body -->

</div>

<!-- /.box -->

</div>

</div>

</div>

</div>

Page 103: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

17 | L a m p i r a n

</div>

</div>

<div class="box-footer">

<button type="submit" class="btn btn-primary pull-right" name="bt_cekup"

id="bt_cekup" disabled> Periksa</button>

</form></div>

<!-- END odntogram item -->

</div>

<!-- /.tab-pane -->

<div class="active tab-pane" id="riwayat">

<!--/.anamnesa-->

<div class="row">

<div class="col-md-12">

<!-- Horizontal Form -->

<div class="box box-info">

<div class="box-header with-border">

<h3 class="box-title">Riwayat Medis</h3>

</div>

<!-- /.box-header -->

<!-- form start -->

<form class="form-horizontal" action="#" target="_blank" method="POST"

enctype="multipart/form-data">

<div class="box-body">

<div class="form-group col-sm-12">

<?php

include 'koneksi.php';

$query = mysqli_query($conn, $sql);?>

<table id="example1" class="table table-bordered table-striped">

<thead>

<tr>

<th>Kode Pemeriksaan</th>

<th>Nama</th>

<th>Tanggal Cek-Up</th>

<th>Status</th>

<th>Action</th>

</tr>

</thead>

<tbody>

Page 104: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

18 | L a m p i r a n

<?php while ($row=mysqli_fetch_assoc($query)):?>

<tr>

<form id="detaildokter" action="#" method="post" target="_blank">

<td><?php echo $row['kode_pemeriksaan']; ?></td>

<td><?php echo $row['nama']; ?></td>

<td><?php echo $row['tanggal']; ?></td>

<td><?php if ($row['status']=="belum") {

echo "Belum Lunas";

} else { echo $row['status'];

}?></td>

<td><input type="hidden" name="card_id" value="<?php echo

$row['id_pasien']?>">

<input type="hidden" name="inv_id" value="<?php echo

$row['kode_pemeriksaan']?>">

<?php if ($row['status']=="Lunas") {

echo "<button type='submit' name='update' id='update' class='btn btn-info'

data-toggle='update' title='Detail'><i class='fa fa-indent'></i></button>";

echo "<button type='submit' name='print' id='print'

class='btn btn-info' data-toggle='print' title='Print Invoice'><i class='fa fa-

print'></i></button>";

}?>

<?php if ($row['status']=="Selesai") {

echo "<button type='submit' name='update' id='update' class='btn btn-info'

data-toggle='update' title='Detail'><i class='fa fa-indent'></i></button>";

echo "<button type='submit' name='print' id='print'

class='btn btn-info' data-toggle='print' title='Print Invoice' $sesiumum><i class='fa fa-

print'></i></button>";

}?>

<?php if ($row['status']=="belum") {

echo "<button type='submit' name='bayar'

id='bayar' class='btn btn-info' data-toggle='bayar' title='Bayar Pemeriksaan'><i class='fa

fa-money'></i></button>";

}?>

</td></form>

<?php endwhile;?>

</tr>

</tbody>

<tfoot>

<tr>

<th>Kode Pemeriksaan</th>

<th>Nama</th>

<th>Tanggal Cek-Up</th>

<th>Status</th>

<th>Action</th>

Page 105: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

19 | L a m p i r a n

</tr>

</tfoot>

</table>

</div>

</div>

<!-- /.box-body -->

<!-- /.<div class="box-footer">

<button type="submit" name="bt_anamnesa" id="bt_anamnesa" class="btn

btn-info pull-right">Perbarui</button>

</div>-->

<!-- /.box-footer -->

</form>

<!-- END anamnesa item -->

</div>

</div></div>

<!-- /.tab-pane -->

</div>

<div class="tab-pane" id="password">

<!--/.anamnesa-->

<div class="row">

<div class="col-md-12">

<!-- Horizontal Form -->

<div class="box box-info">

<div class="box-header with-border">

<h3 class="box-title">Perbarui Sandi</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<div class="col-xs-12">

<form class="form-horizontal" action="#" method="post">

<div class="form-group">

<label for="password1" class="col-sm-4 control-label">Sandi Lama</label>

<div class="col-sm-8">

<input type="password" class="form-control" id="password1"

name="password1" placeholder="Password lama" required>

Page 106: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

20 | L a m p i r a n

</div>

</div>

<div class="form-group">

<label for="password2" class="col-sm-4 control-label">Sandi Baru</label>

<div class="col-sm-8">

<input type="password" class="form-control" id="password2"

name="password2" placeholder="Password baru" required>

</div>

</div>

<div class="form-group">

<label for="password3" class="col-sm-4 control-label">Ulangi</label>

<div class="col-sm-8">

<input type="password" class="form-control" id="password3"

name="password3" placeholder="Ulangi password baru"required>

</div>

</div>

<!-- /.box-body -->

<div class="box-footer">

<button type="submit" name="updatepsw" id="updatepsw" class="btn btn-

info">Perbarui</button>

</div>

<!-- /.box-footer -->

</form>

</div>

</div>

</div> <!-- /.tab-content -->

</div>

<!-- /.nav-tabs-custom -->

</div>

<!-- /.col -->

</div>

</section>

<!-- /.content -->

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php' ?>

<script src="dist/js/myscript.js"></script>

<script>

$(document).ready(function(){

$('[data-toggle="print"]').tooltip();

Page 107: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

21 | L a m p i r a n

});

$(document).ready(function(){

$('[data-toggle="detail"]').tooltip();

});

$(document).ready(function(){

$('[data-toggle="update"]').tooltip();

});

$(document).ready(function(){

$('[data-toggle="bayar"]').tooltip();

});

</script>

</body>

</html>

4. Source Code Dokter

<?php include 'header.php';

include 'koneksi.php';

$id = $_GET['card_id'];

$sql = "SELECT * FROM dokter WHERE card_id = '$id'";

$query = mysqli_query ($conn, $sql);

$row = mysqli_fetch_assoc($query);

$nama = $row['nama'];

$sex = $row['sex'];

$alamat = $row['alamat'];

$telp = $row['telp'];

$email = $row['email'];

$status = $row['status'];

$foto = $row['foto'];

$birthDate = $row['dob'];

//$hashpsw = $row['password'];

$birthDate = explode("-", $birthDate);

$dob = (date("md", date("U", mktime(0, 0, 0, $birthDate[2], $birthDate[1],

$birthDate[0]))) > date("md") ? ((date("Y")-$birthDate[0])-1):(date("Y")-

$birthDate[0]));?>

Page 108: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

22 | L a m p i r a n

<?php if ($_SESSION['role'] == "Pasien") {

echo "<script type='text/javascript'>alert('Anda tidak memiliki

akses ke-halaman ini');window.location.href='home.php';</script>";

}?>

<!-- Sidebar Menu -->

<ul class="sidebar-menu" data-widget="tree">

<!-- Optionally, you can add icons to the links -->

<li><a href="home.php"><i class="fa fa-home"></i> <span>Menu

Utama</span></a></li>

<li class='treeview'>

<a href='#'><i class='fa fa-user'></i> <span>Admin</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li><a href='admin_baru.php'><i class='fa fa-user-plus'></i> Admin

Baru</a></li>";

}?>

<li><a href='data_admin.php'><i class='fa fa-users'></i> Data Admin</a></li>

</ul>

</li>

<li class="treeview">

<a href="#"><i class="fa fa-user"></i> <span>Pasien</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<li><a href="pasien_baru.php"><i class="fa fa-user-plus"></i> Pasien

Baru</a></li>

<li><a href="data_pasien.php"><i class="fa fa-users"></i> Data Pasien</a></li>

</ul>

</li>

<li class="treeview">

Page 109: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

23 | L a m p i r a n

<a href="#"><i class="fa fa-user-md"></i> <span>Dokter</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<?php if ($_SESSION['role'] == "Admin") {

echo "<li><a href='dokter_baru.php'><i class='fa fa-user-

plus'></i> Dokter Baru</a></li>";

}?>

<li><a href="data_dokter.php"><i class="fa fa-users"></i> Data Dokter</a></li>

</ul>

</li>

</ul>

<!-- /.sidebar-menu -->

</section>

<!-- /.sidebar -->

</aside>

<!-- Content Wrapper. Contains page content -->

<div class="content-wrapper">

<!-- Content Header (Page header) -->

<section class="content-header">

<h1>

Profil

<small>Apa mo ditulis disini?.</small>

</h1>

<ol class="breadcrumb">

<li class="active"><a href="profil.php"><i class="fa fa-user"></i> Profil</a></li>

</ol>

</section>

<!-- Main content -->

<section class="content container-fluid">

<div class="row">

<div class="col-md-12">

<!-- Profile Image -->

<div class="box box-info">

<div class="box-body box-profile">

<div class="form-group col-sm-3">

<img class="profile-user-img img-responsive img-circle" src="<?php echo

$foto?>" alt="User profile picture">

<h3 class="profile-username text-center"><?php echo $nama?></h3>

Page 110: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

24 | L a m p i r a n

<p class="text-muted text-center"><?php echo $id?></p>

<ul class="list-group list-group-unbordered">

<li class="list-group-item">

<i class="fa fa-user"></i><b> Peran</b> <a class="pull-right"> Dokter</a>

</li>

<li class="list-group-item">

<i class="fa fa-birthday-cake"></i><b> Usia</b> <a class="pull-

right"><?php echo $dob?></a>

</li>

<li class="list-group-item">

<i class="fa fa-venus-mars"></i><b> Sex</b> <a class="pull-right"><?php

echo $sex?></a>

</li>

</ul>

</div>

<!-- /.box-body -->

<!-- /.box -->

<!-- About Me Box -->

<div class="form-group col-sm-4">

<div class="box-header with-border">

<h3 class="box-title">Tentang Saya</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<div class="col-xs-12">

<strong><i class="fa fa-map-marker margin-r-5"></i> Alamat</strong>

<p class="text-muted"><?php echo $alamat?></p>

<hr>

<strong><i class="fa fa-phone margin-r-5"></i> No Telp</strong>

<p class="text-muted">

<?php echo $telp?>

</p>

<hr>

<strong><i class="fa fa-envelope margin-r-5"></i> Email</strong>

Page 111: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

25 | L a m p i r a n

<p>

<?php echo $email?>

</p>

<hr>

<strong><i class="fa fa-history margin-r-5"></i> Status</strong>

<p><?php echo $status?></p>

</div></div></div>

<!-- /.box-body -->

<!-- /.box -->

<!-- Horizontal Form -->

</section>

<!-- /.content -->

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php' ?>

</body>

</html>

5. Source Code Admin

<?php include 'header.php';

include 'koneksi.php';

$id = $_GET['card_id'];

$sql = "SELECT * FROM admin WHERE card_id = '$id'";

$query = mysqli_query ($conn, $sql);

$row = mysqli_fetch_assoc($query);

$nama = $row['nama'];

$sex = $row['sex'];

$alamat = $row['alamat'];

$telp = $row['telp'];

$email = $row['email'];

$status = $row['status'];

$foto = $row['foto'];

Page 112: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

26 | L a m p i r a n

$birthDate = $row['dob'];

//$hashpsw = $row['password'];

$birthDate = explode("-", $birthDate);

$dob = (date("md", date("U", mktime(0, 0, 0, $birthDate[2], $birthDate[1],

$birthDate[0]))) > date("md") ? ((date("Y")-$birthDate[0])-1):(date("Y")-

$birthDate[0]));?>

<?php if ($_SESSION['role'] == "Pasien") {

echo "<script type='text/javascript'>alert('Anda tidak

memiliki akses ke-halaman ini');window.location.href='home.php';</script>";

}?>

<!-- Sidebar Menu -->

<ul class="sidebar-menu" data-widget="tree">

<!-- Optionally, you can add icons to the links -->

<li><a href="home.php"><i class="fa fa-home"></i> <span>Menu

Utama</span></a></li>

<li class='treeview'>

<a href='#'><i class='fa fa-user'></i> <span>Admin</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li><a href='admin_baru.php'><i class='fa fa-user-plus'></i> Admin

Baru</a></li>";

}?>

<li><a href='data_admin.php'><i class='fa fa-users'></i> Data

Admin</a></li>

</ul>

</li>

<li class="treeview">

<a href="#"><i class="fa fa-user"></i> <span>Pasien</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

Page 113: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

27 | L a m p i r a n

<ul class="treeview-menu">

<li><a href="pasien_baru.php"><i class="fa fa-user-plus"></i> Pasien

Baru</a></li>

<li><a href="data_pasien.php"><i class="fa fa-users"></i> Data

Pasien</a></li>

</ul>

</li>

<li class="treeview">

<a href="#"><i class="fa fa-user-md"></i> <span>Dokter</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<?php if ($_SESSION['role'] == "Admin") {

echo "<li><a href='dokter_baru.php'><i class='fa fa-

user-plus'></i> Dokter Baru</a></li>";

}?>

<li><a href="data_dokter.php"><i class="fa fa-users"></i> Data

Dokter</a></li>

</ul>

</li>

</ul>

<!-- /.sidebar-menu -->

</section>

<!-- /.sidebar -->

</aside>

<!-- Content Wrapper. Contains page content -->

<div class="content-wrapper">

<!-- Content Header (Page header) -->

<section class="content-header">

<h1>

Profil

<small>Apa mo ditulis disini?.</small>

</h1>

<ol class="breadcrumb">

<li class="active"><a href="profil.php"><i class="fa fa-user"></i>

Profil</a></li>

</ol>

</section>

<!-- Main content -->

Page 114: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

28 | L a m p i r a n

<section class="content container-fluid">

<div class="row">

<div class="col-md-12">

<!-- Profile Image -->

<div class="box box-info">

<div class="box-body box-profile">

<div class="form-group col-sm-3">

<img class="profile-user-img img-responsive img-circle" src="<?php

echo $foto?>" alt="User profile picture">

<h3 class="profile-username text-center"><?php echo $nama?></h3>

<p class="text-muted text-center"><?php echo $id?></p>

<ul class="list-group list-group-unbordered">

<li class="list-group-item">

<i class="fa fa-user"></i><b> Peran</b> <a class="pull-right">

Dokter</a>

</li>

<li class="list-group-item">

<i class="fa fa-birthday-cake"></i><b> Usia</b> <a class="pull-

right"><?php echo $dob?></a>

</li>

<li class="list-group-item">

<i class="fa fa-venus-mars"></i><b> Sex</b> <a class="pull-

right"><?php echo $sex?></a>

</li>

</ul>

</div>

<!-- /.box-body -->

<!-- /.box -->

<!-- About Me Box -->

<div class="form-group col-sm-4">

<div class="box-header with-border">

<h3 class="box-title">Tentang Saya</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<div class="col-xs-12">

<strong><i class="fa fa-map-marker margin-r-5"></i> Alamat</strong>

Page 115: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

29 | L a m p i r a n

<p class="text-muted"><?php echo $alamat?></p>

<hr>

<strong><i class="fa fa-phone margin-r-5"></i> No Telp</strong>

<p class="text-muted">

<?php echo $telp?>

</p>

<hr>

<strong><i class="fa fa-envelope margin-r-5"></i> Email</strong>

<p>

<?php echo $email?>

</p>

<hr>

<strong><i class="fa fa-history margin-r-5"></i> Status</strong>

<p><?php echo $status?></p>

</div></div></div>

<!-- /.box-body -->

<!-- /.box -->

<!-- Horizontal Form -->

</section>

<!-- /.content -->

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php' ?>

</body>

</html>

6. Source Code Tindakan

<?php include 'header.php';

include 'db_access/tindakan.php';?>

<!-- Sidebar Menu -->

Page 116: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

30 | L a m p i r a n

<ul class="sidebar-menu" data-widget="tree">

<!-- Optionally, you can add icons to the links -->

<?php

if ($_SESSION['role'] == "Admin") {

echo "<li><a href='home.php'><i class='fa fa-home'></i> <span>Menu

Utama</span></a></li>";

}?>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li class='treeview'>

<a href='#'><i class='fa fa-user'></i> <span>Admin</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<li><a href='admin_baru.php'><i class='fa fa-user-plus'></i> Admin

Baru</a></li>

<li><a href='data_admin.php'><i class='fa fa-users'></i> Data Admin</a></li>

</ul>

</li>"; }

?>

<li class="treeview active">

<a href="#"><i class="fa fa-user"></i> <span>Pasien</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li><a href='pasien_baru.php'><i class='fa fa-user-plus'></i> Pasien

Baru</a></li>";}?>

<?php if ($_SESSION['role'] != "Pasien") {

echo "<li class='treeview active'>

<a href='data_pasien.php'><i class='fa fa-user'></i> Data Pasien

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

Page 117: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

31 | L a m p i r a n

<li class='active'><a href='detail_pasien.php'><i class='fa fa-medkit'></i>

Rekam Medis</a></li>

</ul>

</li>

";}?>

</li></ul>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li class='treeview'>

<a href='#'><i class='fa fa-user-md'></i> <span>Dokter</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<li><a href='dokter_baru.php'><i class='fa fa-user-plus'></i> Dokter

Baru</a></li>

<li><a href='data_dokter.php'><i class='fa fa-users'></i> Data

Dokter</a></li>

</ul>

</li>

</ul>";

}?>

<!-- /.sidebar-menu -->

</section>

<!-- /.sidebar -->

</aside>

<!-- Content Wrapper. Contains page content -->

<div class="content-wrapper" id="loading">

<!-- Content Header (Page header) -->

<section class="content-header">

<h1>

Rekam Medis

<small>No Pemeriksaan : <?php echo $invoice_id?></small>

</h1>

<ol class="breadcrumb">

<a href="print_data.php?inv_id=<?php echo $invoice_id?>&card_id=<?php echo

$local_card_id?>" class="btn btn-primary btn-xs" target="_blank" > <i class="fa fa-

print"></i> Print All</a>

Page 118: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

32 | L a m p i r a n

</ol>

</section>

<!-- Main content -->

<section class="content">

<div class="row">

<div class="col-md-3">

<!-- Profile Image -->

<div class="box box-primary">

<div class="box-body box-profile">

<img class="profile-user-img img-responsive img-circle" src="<?php echo $foto

?>" alt="User profile picture">

<h3 class="profile-username text-center"><?php echo $nama_lengkap?></h3>

<p class="text-muted text-center"><?php echo $local_card_id?></p>

<ul class="list-group list-group-unbordered">

<li class="list-group-item">

<i class="fa fa-birthday-cake"></i><b> Usia</b> <a class="pull-

right"><?php echo $dob?></a>

</li>

<li class="list-group-item">

<i class="fa fa-venus-mars"></i><b> Sex</b> <a class="pull-right"><?php

echo $sex?></a>

</li>

<li class="list-group-item">

<i class="fa fa-male"></i><b> Tinggi</b> <a class="pull-right"><?php echo

$tinggi?></a>

</li>

<li class="list-group-item">

<i class="fa fa-tachometer"></i><b> Berat</b> <a class="pull-right"><?php

echo $berat?></a>

</li>

<li class="list-group-item">

<i class="fa fa-calendar-check-o"></i><b> Member Sejak</b> <a

class="pull-right"><?php echo $regdate?></a>

</li>

<li class="list-group-item">

<i class="fa fa-history"></i><b> Status</b> <a class="pull-right"><?php

echo $status?></a>

</li>

Page 119: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

33 | L a m p i r a n

</ul>

</div>

<!-- /.box-body -->

</div>

<!-- /.box -->

<!-- About Me Box -->

<div class="box box-primary">

<div class="box-header with-border">

<h3 class="box-title">About Me</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<strong><i class="fa fa-map-marker margin-r-5"></i> Alamat</strong>

<p class="text-muted"><?php echo $alamat ?></p>

<hr>

<strong><i class="fa fa-phone margin-r-5"></i> Telp</strong>

<p class="tect-muted">

<?php echo $telp ?>

</p>

<hr>

<strong><i class="fa fa-envelope margin-r-5"></i> eMail</strong>

<p class="tect-muted">

<?php echo $email ?>

</p>

</div>

<!-- /.box-body -->

</div>

<!-- /.box -->

</div>

<!-- /.col -->

<div class="col-md-9">

<div class="nav-tabs-custom">

<ul class="nav nav-tabs">

<li><a href="#tabsuhu" data-toggle="tab">Suhu & Tensi</a></li>

Page 120: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

34 | L a m p i r a n

<?php if ($tabdarah == "y") {

echo "<li><a href='#tabdarah' data-

toggle='tab'>Darah</a></li>";

}

?>

<?php if ($taburine == "y") {

echo "<li><a href='#taburine' data-

toggle='tab'>Urine</a></li>";

}

?>

<li><a href="#tabfisik" data-toggle="tab">Fisik</a></li>

<li><a href="#tabkesdok" data-toggle="tab">Kesimpulan Dokter</a></li>

</ul>

<div class="tab-content">

<div class="tab-pane" id="tabsuhu">

<div class="row">

<div class="col-xs-12">

<div class="box box-default">

<div class="box-header with-border">

<h3 class="box-title">Suhu Tubuh & Tensi Darah</h3>

</div>

<div class="box-body">

<div class="modal-body col-xs-12">

<!-- /.box-header -->

<div class="table-responsive">

<table class="table table-bordered">

<tr>

<th>Pemeriksaan</th>

<th>Hasil</th>

<th>Nilai Rujukan</th>

<th>Satuan</th>

<th>Keterangan</th>

<th>Action</th>

</tr>

<tr id='rowsuhu'><?php include 'tab_suhu.php';?></tr>

<tr id='rowtensi'><?php include 'tab_tensi.php';?></tr>

</table>

<!-- /.box-body -->

<!-- /.box -->

</div>

</div>

</div>

Page 121: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

35 | L a m p i r a n

</div>

</div>

</div>

</div>

<!--/.darah-->

<div class="tab-pane" id="tabdarah">

<div class="row">

<div class="col-md-12">

<div class="box box-default">

<div class="box-header with-border">

<h3 class="box-title">Darah Lengkap</h3>

</div>

<div class="box-body">

<div class="modal-body col-xs-12">

<!-- /.box-header -->

<div class="table-responsive">

<table class='table' id='rowdarah'>

<?php include 'tab_darah.php';?>

</table>

<!-- /.box-body -->

<!-- /.box -->

</div>

<div class='box-footer'>

<input type='submit' name='bt_darah' value='Simpan' id='bt_darah' class='btn btn-

primary pull-right' <?php echo $bt_darahdis?>>

</form>

</div>

</div>

</div>

<!-- /.tab-pane -->

<!-- /.tab-pane -->

</div>

<!-- /.tab-content -->

</div>

<!-- /.nav-tabs-custom -->

</div>

</div>

Page 122: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

36 | L a m p i r a n

<div class="tab-pane" id="taburine">

<div class="row">

<div class="col-md-12">

<div class="box box-default">

<div class="box-header with-border">

<h3 class="box-title">Urine Lengkap</h3>

</div>

<div class="box-body">

<div class="modal-body col-xs-12">

<!-- /.box-header -->

<div class="table-responsive">

<?php include 'tab_urine.php'?>

<!-- /.box-body -->

<!-- /.box -->

</div>

<div class="box-footer">

<input type="submit" name="bt_urine" value="Simpan" id="bt_urine" class="btn

btn-primary pull-right" <?php echo $bt_urinedis?>>

</form>

</div>

</div>

<!-- /.tab-pane -->

<!-- /.tab-pane -->

</div>

<!-- /.tab-content -->

</div>

<!-- /.nav-tabs-custom -->

</div>

</div>

</div>

<div class="tab-pane" id="tabfisik">

<div class="row">

<div class="col-xs-12">

<div class="box box-default">

<div class="box-header with-border">

<h3 class="box-title">Kesimpulan Hasil</h3>

</div>

<div class="box-body">

<div class="modal-body col-xs-12" id="fsk">

Page 123: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

37 | L a m p i r a n

<?php include "tab_fisik.php"?></div>

<div class="box-footer">

<button class="btn btn-primary pull-right" name="bt_fisik" id="bt_fisik" <?php

echo $bt_fisikdis?>>Simpan</button>

</form>

</div>

</div>

</div>

</div>

</div>

</div>

<div class="tab-pane" id="tabkesdok">

<div class="row">

<div class="col-xs-12">

<div class="box box-default">

<div class="box-header with-border">

<h3 class="box-title">Kesimpulan Dokter</h3>

</div>

<div class="box-body">

<div class="modal-body col-xs-12" id="ksd">

<?php include "tab_kesdok.php"?></div>

<div class="box-footer">

<button class="btn btn-primary pull-right" name="bt_kesdok" id="bt_kesdok"

disabled>Simpan</button>

</form>

</div>

</div>

</div>

</div>

</div>

</div>

</div>

<!-- /.col -->

<!-- /.row -->

<div id="loader" style="position: absolute; left: 25%; top: 35%;"><img

src="dist/img/loading.gif" /></div>

</section>

<!-- /.content -->

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php' ?>

Page 124: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

38 | L a m p i r a n

<script src="dist/js/myscript.js">

</script>

</body>

</html>

7. Source Code Top Up

<div class="tab-pane" id="topup">

<!--/.anamnesa-->

<div class="row">

<div class="col-md-12">

<!-- Horizontal Form -->

<div class="box box-info">

<div class="box-header with-border">

<h3 class="box-title">Topup Saldo</h3>

</div>

<!-- /.box-header -->

<div class="box-body">

<div class="col-xs-12">

<form class="form-horizontal" action="#" method="post">

<div class="form-group">

<label for="password1" class="col-sm-4 control-label">Nominal

Topup</label>

<div class="col-sm-8">

<input list="topuplist" class="form-control" id="nominal" name="nominal"

placeholder="Masukkan Nominal">

<datalist id="topuplist">

<option value="100000"/>

<option value="200000"/>

<option value="500000"/>

<option value="1000000"/>

</datalist>

</div>

</div>

<!-- /.box-body -->

<div class="box-footer">

<button type="submit" name="topup" id="topup" class="btn btn-

info">Topup</button>

</div>

<!-- /.box-footer -->

Page 125: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

39 | L a m p i r a n

</form>

</div>

</div>

</div> <!-- /.tab-content --></div></div></div>

</section>

<!-- /.content -->

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php';?>

<script src="dist/js/myscript.js"></script>

</body>

</html>

8. Source Code Invoice

<?php include 'header.php';

include 'db_access/invoice.php';?>

<?php if ($_SESSION['role'] == "Pasien") {

echo "<script type='text/javascript'>alert('Anda tidak memiliki

akses ke-halaman ini');window.location.href='home.php';</script>";

}?>

<!-- Sidebar Menu -->

<ul class="sidebar-menu" data-widget="tree">

<!-- Optionally, you can add icons to the links -->

<li><a href="home.php"><i class="fa fa-home"></i> <span>Menu

Utama</span></a></li>

<li class='treeview'>

<a href='#'><i class='fa fa-user'></i> <span>Admin</span>

<span class='pull-right-container'>

<i class='fa fa-angle-left pull-right'></i>

</span>

</a>

<ul class='treeview-menu'>

<?php if ($_SESSION['role'] == "Admin") {

echo "

<li><a href='admin_baru.php'><i class='fa fa-user-plus'></i> Admin

Baru</a></li>";

}?>

<li><a href='data_admin.php'><i class='fa fa-users'></i> Data Admin</a></li>

</ul>

Page 126: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

40 | L a m p i r a n

</li>

<li class="treeview active">

<a href="#"><i class="fa fa-user"></i> <span>Pasien</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<li><a href="pasien_baru.php"><i class="fa fa-user-plus"></i> Pasien

Baru</a></li>

<li class="treeview active">

<a href="data_pasien.php"><i class="fa fa-user"></i> Data Pasien

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<li class="active"><a href="detail_pasien.php"><i class="fa fa-medkit"></i>

Rekam Medis</a></li>

</ul>

</li></ul>

<li class="treeview">

<a href="#"><i class="fa fa-user-md"></i> <span>Dokter</span>

<span class="pull-right-container">

<i class="fa fa-angle-left pull-right"></i>

</span>

</a>

<ul class="treeview-menu">

<?php if ($_SESSION['role'] == "Admin") {

echo "<li><a href='dokter_baru.php'><i class='fa fa-user-

plus'></i> Dokter Baru</a></li>";

}?>

<li><a href="data_dokter.php"><i class="fa fa-users"></i> Data Dokter</a></li>

</ul>

</li>

</ul>

<!-- /.sidebar-menu -->

</section>

<!-- /.sidebar -->

</aside>

Page 127: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

41 | L a m p i r a n

<!-- Content Wrapper. Contains page content -->

<div class="content-wrapper" id="loading">

<!-- Content Header (Page header) -->

<section class="content-header">

<h1>

Invoice

<small>No. <?php echo $invoice_id?></small>

</h1>

<ol class="breadcrumb">

<li class="active"><a href="home.php"><i class="fa fa-user"></i> Pasien</a></li>

<li><a href="data_pasien.php"><i class="fa fa-user"></i> Data Pasien</a></li>

<li class="active"> <i class="fa fa-medkit"></i> Rekam Medis</li>

</ol>

</section>

<!-- Main content -->

<div class="pad margin no-print">

<div class="callout callout-<?php echo $banner?>" style="margin-bottom:

0!important;">

<h4><i class="fa fa-info"></i> Saldo anda : <?php echo "Rp

".number_format(intval($saldo),0,",",".");?></h4>

<small><?php echo $pesan?></small>

</div>

</div>

<section class="invoice">

<!-- title row -->

<div class="row">

<div class="col-xs-12">

<h2 class="page-header">

<i class="fa fa-stethoscope"></i> Klinik Universitas Hasanuddin.

<small class="pull-right">Date: <?php echo $tanggal_inv?></small>

</h2>

</div>

<!-- /.col -->

</div>

<!-- info row -->

<div class="row invoice-info">

<div class="col-sm-4 invoice-col">

Dari

<address>

<strong>Klinik Universitas Hasanuddin.</strong><br>

Jl. Poros Malino, Borongloe, Bontomarannu,<br>

Kabupaten Gowa, Sulawesi Selatan 92119<br>

Page 128: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

42 | L a m p i r a n

Telp: (0411) 586200<br>

Email: [email protected]

</address>

</div>

<!-- /.col -->

<div class="col-sm-4 invoice-col">

Kepada

<address>

<strong><?php echo $nama_lengkap?></strong><br>

<?php echo $alamat?>

Telp: <?php echo $telp ?><br>

Email: <?php echo $email?>

</address>

</div>

<!-- /.col -->

<div class="col-sm-4 invoice-col">

<b>Invoice No: <?php echo $invoice_id?></b><br>

<br>

<b>Status:</b> <?php echo $status ?><br>

<b>Tanggal Pembayaran:</b> <?php echo $tanggal_bayar?><br>

<b>ID Pasien:</b> <?php echo $local_card_id?>

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<!-- Table row -->

<div class="row">

<div class="col-xs-12 table-responsive">

<table class="table table-striped">

<thead>

<tr>

<th>No</th>

<th>Pemeriksaan</th>

<th>ID - Pemeriksaan</th>

<th>Harga</th>

</tr>

</thead>

<tbody>

<?php $i = 1;

foreach ($pemeriksaan as $pemeriksaan) {

$sqltarif = "SELECT * FROM tarif WHERE id =

'$pemeriksaan'";

Page 129: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

43 | L a m p i r a n

$querytarif = mysqli_query($conn,$sqltarif);

$rowtarif = mysqli_fetch_assoc($querytarif);

$num = $i;$i++;

$id_pemeriksaan = $rowtarif['id'];

$nama_pemeriksaan = $rowtarif['nama'];

$tarif_pemeriksaan = $rowtarif['tarif'];

echo "<tr>" ;

echo "<td>$num</td>";

echo "<td>$nama_pemeriksaan</td>";

echo "<td>$id_pemeriksaan</td>";

echo "<td>Rp. $tarif_pemeriksaan</td>";

echo "</tr>";

}

?>

</tbody>

</table>

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<div class="box-footer">

<!-- accepted payments column -->

<div class="col-xs-9">

<h3>Total Pembayaran:</h3>

</div>

<!-- /.col -->

<div class="col-xs-3">

<h3>Rp. <?php echo $total?></h3>

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<!-- this row will not appear when printing -->

<div class="row no-print">

<div class="col-xs-12">

<a href="invoice-print.php?inv_id=<?php echo $invoice_id?>&card_id=<?php

echo $local_card_id?>" target="_blank" class="btn btn-default <?php echo $print?>"><i

class="fa fa-print"></i> Print</a>

<form action="#" method="POST" target="_blank">

Page 130: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

44 | L a m p i r a n

<input type="hidden" name="total" value="<?php echo $total?>" />

<button type='submit' name='bayar' id='bayar' onclick="location.reload()"

class='btn btn-info pull-right' <?php echo $bayar?>><i class='fa fa-credit-card'></i>

Bayar</button></form>

</div>

</div>

</section>

<!-- /.content -->

<div class="clearfix"></div>

</div>

<!-- /.content-wrapper -->

<?php include 'footer.php' ?>

<script src="dist/js/myscript.js"></script>

</body>

</html>

9. Source Code Print Hasil Pemeriksaan

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<title>Klinik UNHAS | Rekam-Medis</title>

<!-- Tell the browser to be responsive to screen width -->

<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-

scalable=no" name="viewport">

<!-- Bootstrap 3.3.7 -->

<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">

<!-- Font Awesome -->

<link rel="stylesheet" href="bower_components/font-awesome/css/font-

awesome.min.css">

<!-- Ionicons -->

<link rel="stylesheet" href="bower_components/Ionicons/css/ionicons.min.css">

<!-- Theme style -->

<link rel="stylesheet" href="dist/css/AdminLTE.min.css">

<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -

->

<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->

<!--[if lt IE 9]>

Page 131: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

45 | L a m p i r a n

<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>

<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>

<![endif]-->

<?php include 'db_access/print_data.php';?>

<style>

@media print {

section {page-break-after:always;}

body, html, { margin-top:0%;

display:block;

height:100%;

}

}

</style>

<!-- Google Font -->

<link rel="stylesheet"

href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300ita

lic,400italic,600italic">

</head>

<body onload="window.print();">

<!-- Main content Suhu & Tensi-->

<?php include 'koneksi.php';

if (!isset($invoice_id)){

$invoice_id = $_GET['inv_id'];

}

$sqlpemeriksaansuhu = "SELECT * FROM suhu WHERE kode_pemeriksaan =

'$invoice_id'";

$querypemeriksaansuhu = mysqli_query($conn, $sqlpemeriksaansuhu);

$rowpemeriksaansuhu = mysqli_fetch_assoc($querypemeriksaansuhu);

$pemeriksaansuhu = $rowpemeriksaansuhu['status'];

$hasilsuhu = $rowpemeriksaansuhu['hasil'];

$ketsuhu = $rowpemeriksaansuhu['keterangan'];

$sqlpemeriksaantensi = "SELECT * FROM tensi WHERE kode_pemeriksaan =

'$invoice_id'";

$querypemeriksaantensi = mysqli_query($conn, $sqlpemeriksaantensi);

$rowpemeriksaantensi = mysqli_fetch_assoc($querypemeriksaantensi);

$pemeriksaantensi = $rowpemeriksaantensi['status'];

$hasiltensi = $rowpemeriksaantensi['hasil'];

$kettensi = $rowpemeriksaantensi['keterangan'];

if (($pemeriksaansuhu == 'selesai') || ($pemeriksaantensi == 'selesai' || (isset($kesklinik))

|| (isset($kesdokter)))){

Page 132: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

46 | L a m p i r a n

echo " <section class='invoice'>

<!-- title row -->

<div class='row'>

<div class='col-xs-12'>

<h2 class='page-header'>

<i class='fa fa-globe'></i> Klinik Universitas Hasanuddin.

<small class='pull-right'>Date: $tanggal_inv</small>

</h2>

</div>

<!-- /.col -->

</div>

<!-- info row -->

<div class='row invoice-info'>

<div class='col-sm-4 invoice-col'>

Dari

<address>

<strong>Klinik Universitas Hasanuddin.</strong><br>

Jl. Poros Malino, Borongloe, Bontomarannu,<br>

Kabupaten Gowa, Sulawesi Selatan 92119<br>

Telp: (0411) 586200<br>

Email: [email protected]

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

Kepada

<address>

<strong>$nama_lengkap</strong><br>

$alamat

Telp: $telp <br>

Email: $email

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

<b>Invoice $invoice_id</b><br>

<br>

<b>Status:</b> $status <br>

<b>Tanggal Pembayaran:</b> $tanggal_bayar<br>

<b>ID Pasien:</b> $local_card_id

</div>

<!-- /.col -->

</div>

Page 133: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

47 | L a m p i r a n

<!-- /.row -->

<!-- Table row -->

<div class='row'>

<div class='col-xs-12 table-responsive'>

<table class='table table-striped'>

<thead>

<tr>

<th>Pemeriksaan</th>

<th>Hasil</th>

<th>Nilai Rujukan</th>

<th>Satuan</th>

<th>Keterangan</th>

</tr>

</thead>";

}

if ($pemeriksaansuhu == 'selesai'){

echo "

<td>Suhu Tubuh</td>

<td>$hasilsuhu</td>

<td>-</td>

<td> &#8451 </td>

<td>$ketsuhu </td>

</tr>";}

?>

<?php

if (!isset($invoice_id)){

$invoice_id = $_GET['inv_id'];

}

if ($pemeriksaantensi == 'selesai'){

echo "

<tr>

<td>Tensi Darah</td>

<td>$hasiltensi</td>

<td>120/80</td>

<td> mmHg </td>

<td>$kettensi </td>

</tr>

";}?>

<?php

if (($pemeriksaansuhu == 'selesai') || ($pemeriksaantensi == 'selesai')){

echo "

Page 134: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

48 | L a m p i r a n

</table>

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<div class='box-footer'>

<!-- accepted payments column -->

<!-- /.col -->

</div>

<!-- /.row -->

";}

?>

<?php

if (isset($kesklinik)) {

echo "<div class='row'>

<div class='col-xs-12'>

<div class='box-header with-border'>

<h3 class='box-title'>Kesimpulan Hasil</h3>

</div>

<div class='box-body'>

<div class='modal-body col-xs-12' id='fsk'>";

include 'tab_fisik.php';

echo"</div>

</div>

</div>

</div>

</div>

";}

?>

<?php

if (isset($kesdokter)) {

echo "

<div class='row'>

<div class='col-xs-12'>

<div class='box-header with-border'>

<h3 class='box-title'>Kesimpulan Dokter</h3>

</div>

<div class='box-body'>

<div class='modal-body col-xs-12' id='ksd'>";

Page 135: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

49 | L a m p i r a n

include "tab_kesdok.php";

echo "</div>

</div>

</div>

</div>

</div>";}

?>

<?php if (($pemeriksaansuhu == 'selesai') || ($pemeriksaantensi == 'selesai' ||

(isset($kesklinik)) || (isset($kesdokter)))){

echo "</section>";

}

?>

<!-- /.content -->

<!-- ./darah -->

<?php

include 'db_access/koneksi.php';

if (!isset($invoice_id)){

$invoice_id = $_GET['inv_id'];

}

//darah

$sqldarah = "SHOW COLUMNS FROM darah";

$querydarah = mysqli_query($conn,$sqldarah);

$coldarah = array();

while ($row = mysqli_fetch_assoc($querydarah)){

$coldarah[] = $row['Field'];

}

$sqlpemeriksaandarah = "SELECT * FROM darah WHERE kode_pemeriksaan =

'$invoice_id'";

$querypemeriksaandarah = mysqli_query($conn, $sqlpemeriksaandarah);

$rowpemeriksaandarah = mysqli_fetch_assoc($querypemeriksaandarah);

$pemeriksaandarah = $rowpemeriksaandarah['status'];

if ($pemeriksaandarah == 'selesai'){

echo "

<section class='invoice'>

<!-- title row -->

<div class='row'>

<div class='col-xs-12'>

<h2 class='page-header'>

<i class='fa fa-globe'></i> Klinik Universitas Hasanuddin.

<small class='pull-right'>Date: $tanggal_inv</small>

</h2>

Page 136: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

50 | L a m p i r a n

</div>

<!-- /.col -->

</div>

<!-- info row -->

<div class='row invoice-info'>

<div class='col-sm-4 invoice-col'>

Dari

<address>

<strong>Klinik Universitas Hasanuddin.</strong><br>

Jl. Poros Malino, Borongloe, Bontomarannu,<br>

Kabupaten Gowa, Sulawesi Selatan 92119<br>

Telp: (0411) 586200<br>

Email: [email protected]

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

Kepada

<address>

<strong>$nama_lengkap</strong><br>

$alamat

Telp: $telp <br>

Email: $email

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

<b>Invoice $invoice_id</b><br>

<br>

<b>Status:</b> $status <br>

<b>Tanggal Pembayaran:</b> $tanggal_bayar<br>

<b>ID Pasien:</b> $local_card_id

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<!-- Table row -->

<div class='row'>

<div class='col-xs-12 table-responsive'>

<!-- disini -->

</div>

<!-- /.col -->

</div>

Page 137: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

51 | L a m p i r a n

<!-- /.row -->

<div class='box-footer'>

<!-- accepted payments column -->

<!-- /.col -->

</div>

<!-- /.row -->

<table class='table'>";

include 'tab_darah.php';

echo "</table></section>";

}

?>

<!-- ./Urine -->

<?php

include 'db_access/koneksi.php';

if (!isset($invoice_id)){

$invoice_id = $_GET['inv_id'];

}

//urine

$sqlurine = "SHOW COLUMNS FROM urine";

$queryurine = mysqli_query($conn,$sqlurine);

$colurine = array();

while ($row = mysqli_fetch_assoc($queryurine)){

$colurine[] = $row['Field'];

}

$sqlpemeriksaanurine = "SELECT * FROM urine WHERE kode_pemeriksaan =

'$invoice_id'";

$querypemeriksaanurine = mysqli_query($conn, $sqlpemeriksaanurine);

$rowpemeriksaanurine = mysqli_fetch_assoc($querypemeriksaanurine);

$pemeriksaanurine = $rowpemeriksaanurine['status'];

if ($pemeriksaanurine == 'selesai'){

echo "<section class='invoice'>

<!-- title row -->

<div class='row'>

<div class='col-xs-12'>

<h2 class='page-header'>

<i class='fa fa-globe'></i> Klinik Universitas Hasanuddin.

<small class='pull-right'>Date: $tanggal_inv</small>

Page 138: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

52 | L a m p i r a n

</h2>

</div>

<!-- /.col -->

</div>

<!-- info row -->

<div class='row invoice-info'>

<div class='col-sm-4 invoice-col'>

Dari

<address>

<strong>Klinik Universitas Hasanuddin.</strong><br>

Jl. Poros Malino, Borongloe, Bontomarannu,<br>

Kabupaten Gowa, Sulawesi Selatan 92119<br>

Telp: (0411) 586200<br>

Email: [email protected]

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

Kepada

<address>

<strong>$nama_lengkap</strong><br>

$alamat

Telp: $telp <br>

Email: $email

</address>

</div>

<!-- /.col -->

<div class='col-sm-4 invoice-col'>

<b>Invoice $invoice_id</b><br>

<br>

<b>Status:</b> $status <br>

<b>Tanggal Pembayaran:</b> $tanggal_bayar<br>

<b>ID Pasien:</b> $local_card_id

</div>

<!-- /.col -->

</div>

<!-- /.row -->

<!-- Table row -->

<div class='row'>

<div class='col-xs-12 table-responsive'>

<!-- disini -->

</div>

<!-- /.col -->

Page 139: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

53 | L a m p i r a n

</div>

<!-- /.row -->

<div class='box-footer'>

<!-- accepted payments column -->

<!-- /.col -->

</div>

<!-- /.row -->";

include 'tab_urine.php';

echo "</section>";

}

?>

<!-- ./wrapper -->

</body>

</html>

Page 140: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

54 | L a m p i r a n

10. Util.php

<?php

function scard_transmit2($context, $apdu) {

$apdu = preg_replace( '/\s+/', '', $apdu );

return scard_transmit($context, $apdu);

}

function parseAPDU($str, $apdu) {

$apdu = preg_replace( '/\s+/', '', $apdu );

$len = strlen($str);

$data = substr($str, 0, $len - 4);

$stat = substr($str, -4);

$sw1 = substr($stat, 0, 2);

$sw2 = substr($stat, -2);

return array (

'send' => implode(' ', str_split($apdu, 2)),

'recv' => implode(' ', str_split($str, 2)),

'data_easy_reading' => implode(' ', str_split($data, 2)),

'data' => $data, 'stat' => $stat, 'sw1' => $sw1, 'sw2' => $sw2);

}

function substrHex($str, $start, $len) {

return substr($str, $start * 2, $len * 2);

}

function asc2hex($s) {

$l = strlen($s);

Page 141: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

55 | L a m p i r a n

$l /= 2; $l *= 2;

$s = substr($s, 0, $l);

$r = strtoupper(bin2hex($s));

$r = substr($r, 0, 2*$l);

return $r;

}

function hex2asc($h) {

$l = strlen($h);

$r = '';

for ($i=0; $i<$l; $i+=2)

$r .= chr(hexdec(substr($h, $i, 2)));

return $r;

}

function changeOffset($before, $addition) {

$offset = dechex(hexdec($before) + hexdec($addition));

return str_pad($offset, 4, '0', STR_PAD_LEFT);

}

function fieldMapGenerator($field_map) {

$hex = base_convert($field_map, 2, 16);

return str_pad($hex, 6, "0", STR_PAD_LEFT);

}

function lengthMapGenerator($len) {

return str_pad(dechex($len), 4, "0", STR_PAD_LEFT);

}

Page 142: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

56 | L a m p i r a n

function dec2hex($num){

if(dechex($num) < 16){

return str_pad(dechex($num), 2, '0', STR_PAD_LEFT);

}

return dechex($num);

}

function toICAOFormat($text){

$text = preg_replace('/[^A-Z0-9]+/i', '<', $text);

return str_pad($text, 39, '<', STR_PAD_RIGHT);

}

function array2json($arr) {

if(function_exists('json_encode')) return json_encode($arr); //Lastest versions of PHP

already has this functionality.

$parts = array();

$is_list = false;

//Find out if the given array is a numerical array

$keys = array_keys($arr);

$max_length = count($arr)-1;

if(($keys[0] == 0) and ($keys[$max_length] == $max_length)) {//See if the first key is

0 and last key is length - 1

$is_list = true;

for($i=0; $i<count($keys); $i++) { //See if each key correspondes to its position

if($i != $keys[$i]) { //A key fails at position check.

$is_list = false; //It is an associative array.

break;

Page 143: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

57 | L a m p i r a n

}

}

}

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

if(is_array($value)) { //Custom handling for arrays

if($is_list) $parts[] = array2json($value); /* :RECURSION: */

else $parts[] = '"' . $key . '":' . array2json($value); /* :RECURSION: */

} else {

$str = '';

if(!$is_list) $str = '"' . $key . '":';

//Custom handling for multiple data types

if(is_numeric($value)) $str .= $value; //Numbers

elseif($value === false) $str .= 'false'; //The booleans

elseif($value === true) $str .= 'true';

else $str .= '"' . addslashes($value) . '"'; //All other things

// :TODO: Is there any more datatype we should be in the lookout for? (Object?)

$parts[] = $str;

}

}

$json = implode(',',$parts);

if($is_list) return '[' . $json . ']';//Return numerical JSON

return '{' . $json . '}';//Return associative JSON

}

Page 144: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

58 | L a m p i r a n

?>

11. Spesifikasi Konsorsium.php

<?php

function parse_standard_v1_1($apdu) {

$apdu = str_replace(' ', '', $apdu); // hapus spasi (kalau ada)

$tmp = substrHex($apdu, 0, 3);

$offsetData1 = "00";

$offsetData2 = "00";

$d['field_map'] = parse_field_map($tmp);

if($d['field_map'][0] == 1) {

$tmp = substrHex($apdu, 3, 2);

$len = substr($tmp, -2);

$d['local_card_id'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][1] == 1) {

$tmp = substrHex($apdu, 5, 2);

$len = substr($tmp, -2);

$d['kode_institusi'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][2] == 1) {

$tmp = substrHex($apdu, 7, 2);

$len = substr($tmp, -2);

$d['nomor_identitas'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

Page 145: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

59 | L a m p i r a n

if($d['field_map'][3] == 1) {

$tmp = substrHex($apdu, 9, 2);

$len = substr($tmp, -2);

$d['nama_lengkap'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][4] == 1) {

$tmp = substrHex($apdu, 11, 2);

$len = substr($tmp, -2);

$d['kode_organisasi'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][5] == 1) {

$tmp = substrHex($apdu, 13, 2);

$len = substr($tmp, -2);

$d['nama_sekolah_universitas'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][6] == 1) {

$tmp = substrHex($apdu, 15, 2);

$len = substr($tmp, -2);

$d['nama_fakultas_kelas'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][7] == 1) {

$tmp = substrHex($apdu, 17, 2);

$len = substr($tmp, -2);

$d['nama_prodi_peminatan'] = $offsetData1 . " " . $len;

Page 146: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

60 | L a m p i r a n

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][8] == 1) {

$tmp = substrHex($apdu, 19, 2);

$len = substr($tmp, -2);

$d['peran'] = $offsetData1 . " " . $len;

$offsetData1 = changeOffset($offsetData1, $len);

}

if($d['field_map'][9] == 1) {

$tmp = substrHex($apdu, 21, 2);

$len = substr($tmp, -2);

$d['atribut_icao_1'] = $len;

}

if($d['field_map'][10] == 1) {

$tmp = substrHex($apdu, 23, 2);

$len = substr($tmp, -2);

$d['atribut_icao_2'] = $len;

}

if($d['field_map'][11] == 1) {

$tmp = substrHex($apdu, 25, 2);

// Implement Foto

$d['foto'] = $tmp;

}

if($d['field_map'][12] == 1) {

$tmp = substrHex($apdu, 27, 2);

$len = substr($tmp, -2);

// Implement Sidik Jari

$d['odontogram'] = $len;

Page 147: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

61 | L a m p i r a n

}

if($d['field_map'][13] == 1) {

$tmp = substrHex($apdu, 29, 2);

$len = substr($tmp, -2);

$d['saldo'] = $len;

$offsetData2 = changeOffset($offsetData2, $len);

}

if($d['field_map'][14] == 1) {

$tmp = substrHex($apdu, 31, 2);

$len = substr($tmp, -2);

$d['nomor_telpon'] = $offsetData2 . " " . $len;

$offsetData2 = changeOffset($offsetData2, $len);

}

if($d['field_map'][15] == 1) {

$tmp = substrHex($apdu, 33, 2);

$len = substr($tmp, -2);

$d['issue_date'] = $offsetData2 . " " . $len;

}

if($d['field_map'][16] == 1) {

$tmp = substrHex($apdu, 35, 2);

$len = substr($tmp, -2);

// Implement Status

$d['status'] = $len;

}

return $d;

}

function parse_field_map($field_map) {

Page 148: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

62 | L a m p i r a n

$binary_of_field_map = base_convert($field_map, 16, 2);

$binary_string = str_pad($binary_of_field_map, strlen($field_map) * 4, '0',

STR_PAD_LEFT);

return $binary_string;

}

function parse_standard_v1_2($apdu, &$conn_card){

$apdu = str_replace(' ', '', $apdu); // hapus spasi (kalau ada)

$tmp = substrHex($apdu, 0, 3);

$d['field_map'] = parse_field_map($tmp);

// Data 1

$length_map = explode(' ',implode(' ', str_split(substrHex($apdu, 3, 18), 4)));

$totalLen = 0;

foreach($length_map as &$len){

$totalLen += hexdec($len);

}

//echo $totalLen;

$loop = intval(hexdec($totalLen) / 51);

$remainder = dechex(hexdec($totalLen) % 51);

$offset = "00";

$str = "";

while($loop != 0){

$getDataApdu = "00 B0 00 " . $offset . "33";

echo $getDataApdu;

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

$str = $str . hex2asc($resp['data']);

$offset = changeOffset($offset, "33");

$loop -= 1;

}

Page 149: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

63 | L a m p i r a n

$getDataApdu = "00 B0 00 " . $offset . $remainder;

$resp = parseAPDU(scard_transmit2($conn_card, $getDataApdu), $getDataApdu);

$str = $str . hex2asc($resp['data']);

echo $str;

//00 12 00 06 00 0A 00 13 00 0B 00 11 00 21 00 13 00 01

}

?>

Page 150: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

64 | L a m p i r a n

Page 151: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

65 | L a m p i r a n

Page 152: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

66 | L a m p i r a n

Page 153: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

67 | L a m p i r a n

Page 154: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

68 | L a m p i r a n

Page 155: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

69 | L a m p i r a n

Langkah-Langkah Mengoperasikan Sistem Web Site Klinik Unhas

1. Persiapkan reader, smart card, laptop, dan jaringan internet.

2. Sambungkan reader pada laptop admin yang telah terhubung dengan jaringan

internet.

3. Klik kanan pada ikon XAMPP pada laptop admin lalu pilih “Run As

Administrator”

4. Klik start pada Apache dan MySQL

5. Buka web site www.klinik-unhas.com pada web browser seperti Google

Chrome atau Mozilla Firefox dan pastikan web browser telah terupgrade versi

terbaru.

6. Masukkan ID admin dan password, lalu ganti peran menjadi administrasi.

Lalu klik Login.

7. Setelah Login masukkan smart card pasien untuk melalukan pembacaan kartu.

8. Selanjutnya ikuti petunjuk Alur Sistem Transaksi di Web Site Klinik Unhas

pada bab IV halaman 18-20.

9. Pada proses pendaftaran pasien, top up saldo, dan pembayaran pastikan smart

card pasien terpasang pada reader.

10. Pada proses pemeriksaan disarankan agar selalu mengecek status pembayaran

dan pemeriksaan pasien apakah “belum lunas”, “lunas”, atau “selesai”. Jika

status pasien dinyatakan “belum lunas”, maka pasien tersebut belum

melakukan pembayaran atas pemeriksaan yang sudah dipilih. Jika pasien

berstatus “lunas”, maka pasien bersangkutan telah melakukan pembayaran

namun belum melakukan pemeriksaan. Jika pasien berstatus “selesai”, maka

pasien bersangkutan telah melakukan pembayaran dan telah menyelesaikan

proses pemeriksaan. Status pemeriksaan dan pembayaran pasien dapat dilihat

pada halaman rekam medis.

Page 156: TRANSAKSI LAYANAN MEDIS REAL-TIME DENGAN …

70 | L a m p i r a n

Hal-Hal Yang Perlu Di Hindari Saat Melakukan Operasi Sistem

1. Pastikan kartu terpasang pada reader selama melakukan operasi sistem.

2. Pastikan jaringan internet selalu terhubung saat transaksi.

3. Pastikan perangkat seperti laptop, reader, dan smart card jauh dari api dan

air.