· 7 years ago · Feb 27, 2018, 06:40 AM
1 <?php
2
3 function WebServiceBPJS($urlService,$requestService,$method){
4 $data = "23824"; //Ganti dengan consumerID dari BPJS
5 $secretKey = "9tF661A725"; //Ganti dengan consumerSecret dari BPJS
6
7 // $url = "http://api.bpjs-kesehatan.go.id:8080/SepLokalRest/".$urlService; // real
8 $url = "http://dvlp.bpjs-kesehatan.go.id:8081/devWsLokalRest/".$urlService; // dummy
9
10 date_default_timezone_set('UTC');
11 $tStamp = strval(time()-strtotime('1970-01-01 00:00:00'));
12 $signature = hash_hmac('sha256', $data."&".$tStamp, $secretKey, true);
13 $encodedSignature = base64_encode($signature);
14
15 $headers = array(
16 "Accept: application/json",
17 "X-cons-id:".$data,
18 "X-timestamp: ".$tStamp,
19 "X-signature: ".$encodedSignature,
20 "Content-Type: application/x-www-form-urlencoded"
21 );
22
23
24 $request = curl_init($url);
25 curl_setopt($request, CURLOPT_TIMEOUT, 10);
26 curl_setopt($request, CURLOPT_CONNECTTIMEOUT, 10);
27 curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
28 curl_setopt($request, CURLOPT_CUSTOMREQUEST, $method);
29 if($requestService ==""){
30 curl_setopt($request, CURLOPT_POSTFIELDS,$requestService);
31 }
32 curl_setopt($request, CURLOPT_HTTPHEADER, $headers);
33
34 $result = curl_exec($request);
35 curl_close($request);
36 if($result === false){
37 $result = "";
38 }else{
39 $result = $result;
40 }
41
42 return $result;
43
44 }
45
46
47 function insertSEPBPJS(){
48 $urlService = "SEP/insert";
49 $id_faskes = "0205R010"; // ganti dengan ID Faskes RS
50
51 /*PARAMATER INSERT SEP*/
52 /* $rm = $this->input->post("no_rm");
53 $no_asuransi = $this->input->post("no_asuransi");
54 $no_rujukan = $this->input->post("no_rujukan");
55 $ppk_rujukan = $this->input->post("ppk_rujukan");
56 $ppk_pelayanan = $id_faskes["kd_faskes"];
57 $nm_ppk_pelayanan = $id_faskes["nm_faskes"];
58 $jenis_pelayanan = 2; // rawat jalan 2 // rawat inap 1;
59 $catatan = $this->input->post("catatan");
60 $diagnosa = $this->input->post("diagnosa");
61 $poliTujuan = $this->input->post("poli_tujuan");
62 $poli = $this->input->post("poli");
63 $lakaLantas = $this->input->post("laka_lantas");
64 $nama_peserta = $this->input->post("nama_pasien");
65 $nm_ppk_rujukan = $this->input->post("nm_ppk_rujukan");
66 $nm_diagnosa = $this->input->post("nm_diagnosa");
67 $lokasiLaka = $this->input->post("lokasi_laka");
68 $tgl_rujukan = $this->input->post("tgl_rujukan");
69 $tgl_lahir = $this->input->post("tgl_lahir");
70 $jk = $this->input->post("jk");
71 $tgl_rujukan = substr($tgl_rujukan,6,4)."-".substr($tgl_rujukan,3,2)."-".substr($tgl_rujukan,0,2);
72 $kelas_rawat = 3;
73
74 */
75
76
77 $rm = "180768";
78 $no_asuransi = "0000758882338";
79 $no_rujukan = "000001";
80 $ppk_rujukan = "000100002";
81 $ppk_pelayanan = "0301R001";
82 $nm_ppk_pelayanan = "0205R009";
83 $jenis_pelayanan = 2; // rawat jalan 2 // rawat inap 1;
84 $catatan = "SEMBUH";
85 $diagnosa = "A00.1";
86 $poliTujuan = "INT";
87 $poli = "UMUM";
88 $lakaLantas = 2;
89 $nama_peserta = "UDIN";
90 $nm_ppk_rujukan = "RS IBNU SINA";
91 $nm_diagnosa = "SAKIT KEPALA";
92 $lokasiLaka = "GRESIK";
93 $tgl_rujukan = "2016-15-09";
94 $tgl_lahir = "1994-09-14";
95 $jk = "LAKI-LAKI";
96 //$tgl_rujukan = substr($tgl_rujukan,6,4)."-".substr($tgl_rujukan,3,2)."-".substr($tgl_rujukan,0,2);
97 $tgl_rujukan = "2016-09-14";
98
99 $kelas_rawat = 3;
100
101
102
103
104
105
106 $request = '
107 {
108 "request":
109 {
110 "t_sep":
111 {
112 "noKartu" :"'.$no_asuransi.'",
113 "tglSep" :"'.date("Y-m-d H:i:s").'",
114 "tglRujukan" :"'.$tgl_rujukan.'",
115 "noRujukan" :"'.$no_rujukan.'",
116 "ppkRujukan" :"'.$ppk_rujukan.'",
117 "ppkPelayanan" :"'.$ppk_pelayanan.'",
118 "jnsPelayanan" :"'.$jenis_pelayanan.'",
119 "catatan" :"'.$catatan.'",
120 "diagAwal" :"'.$diagnosa.'",
121 "poliTujuan" :"'.$poliTujuan.'",
122 "klsRawat" :"'.$kelas_rawat.'",
123 "lakaLantas" :"'.$lakaLantas.'",
124 "lokasiLaka" :"'.$lokasiLaka.'",
125 "user" :"RSU DENISA",
126 "noMr" :"'.$rm.'"
127 }
128 }
129 }';
130
131 $hasilCekPeserta = json_decode($this->WebServiceBPJS($urlService,$request,"POST"));
132 date_default_timezone_set('Asia/Jakarta');
133 if($hasilCekPeserta->metadata->code == "200" ){
134 $dataSEP = array(
135 "SEP" => $hasilCekPeserta->response,
136 "TGL_SEP" => date("Y-m-d H:i:s"),
137 "TGL_RUJUKAN" => date("Y-m-d H:i:s",strtotime($tgl_rujukan)),
138 "NOMOR_RUJUKAN" => $no_rujukan,
139 "PPK_RUJUKAN" => $nm_ppk_rujukan,
140 "ID_PPK_RUJUKAN" => $ppk_rujukan,
141 "ID_PPK_TUJUAN" => $ppk_pelayanan,
142 "PPK_TUJUAN" => $nm_ppk_pelayanan,
143 "DIAGNOSA_AWAL" => $nm_diagnosa,
144 "KODE_DIAGNOSA_AWAL" => $diagnosa,
145 "NAMA_PESERTA" => $nama_peserta,
146 "TGL_LHR" => $tgl_lahir,
147 "SEX" => $jk,
148 "NO_KARTU" => $no_asuransi,
149 "POLITUJUAN" => $poliTujuan,
150 "POLI" => $poli,
151 "MR" => $rm,
152 "LAKALANTAS" => $lakaLantas,
153 "LOKASILAKA" => $lokasiLaka,
154 "CRTDT" => date("Y-m-d H:i:s"),
155 "CATATAN" => $catatan
156 );
157
158 }
159
160 }
161
162 $out = array(
163 "sukses" => $lengkap,
164 "result" => $hasilCekPeserta,
165 );
166
167 echo json_encode($out);
168
169
170 ?>