import json
import pandas as pd
from django.test import TestCase
import urllib.parse
from bpjs.bpjs import AntrianBPJS, Vclaim, Aplicare
from django.utils import timezone

from pelayanan.models import CaraBayar
from pemeriksaan.models import Pendaftaran


class BpjsTestCase(TestCase):

    def test_get_data_dokter(self):
        waktusekarang = timezone.now()
        formatted_date = waktusekarang.strftime("%A %d %m %Y")
        print(formatted_date)
        # pass
        # route = 'rest/ref/kelas'
        # req = Aplicare(route=route)
        # req.get()
        # print(req.response.text)


        # route = 'ref/poli'
        # req = AntrianBPJS(route=route)
        # req.get()
        # print(req.data)
        # data = req.data
        # df = pd.DataFrame(data)
        #
        # # Menyimpan DataFrame ke file Excel
        # df.to_excel('poli_data.xlsx', index=False)

        # route = 'Peserta/nik/3277030806970008/tglSEP/2023-06-8'
        # data = {
        #     "request": {
        #         "t_sep": {
        #             "noSep": "1002R0020523V012848",
        #             "user": "DT1002R002"
        #         }
        #     }
        # }
        # req = Vclaim(route=route, json=data)
        # route = 'Peserta/nik/3277030806970008/tglSEP/2023-06-8'
        # req = Vclaim(route=route)
        # req.get()
        # print('Tes Koneksi BPJS')
        # print(req.response)
        # if req.response.status_code == 200:
        #     print('HYAAAAA KONEK HYAAAA')
        #     print('HYAAAAA KONEK HYAAAA')
        #     print('HYAAAAA KONEK HYAAAA')
        #     print('HYAAAAA KONEK HYAAAA')
        #     print('HYAAAAA KONEK HYAAAA')
        # else:
        #     print('TIDAK TERDETEKSIIIII')
        #     print('TIDAK TERDETEKSIIIII')
        #     print('TIDAK TERDETEKSIIIII')
        #     print('TIDAK TERDETEKSIIIII')
        #     print('TIDAK TERDETEKSIIIII')

        # print(req.data)
        # data = req.data
        # print(data["peserta"]["noKartu"])
        # print(data["peserta"]["noKartu"])
        # print(data["peserta"]["noKartu"])
        # print(data["peserta"]["noKartu"])
        # print(data["peserta"]["noKartu"])


        # current_date = timezone.now()
        # formatted_date = current_date.strftime('%Y-%m-%d')
        # route = 'Monitoring/Kunjungan/Tanggal/{0}/JnsPelayanan/{1}'.format(formatted_date, '2')
        # req = Vclaim(route=route)
        # req.get()
        # print(req.data)


        # pencarian diagnosa
        # route = 'referensi/diagnosa/E10'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response)


        # catatbro untuk cari pasienx
        # route = 'Peserta/nik/3204330812880004/tglSEP/2023-05-28'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response)
        # print(req.data)
        # datahakkelas = req.data.get('peserta').get('hakKelas').get('kode')
        # datamr = req.data.get('peserta').get('mr').get('noMR')
        # datatelp = req.data.get('peserta').get('mr').get('noTelepon')
        # print(datahakkelas)
        # print(datamr)
        # print(datatelp)
        # print(datahakkelas)
        # print(datahakkelas)
        # print(datahakkelas)
        # print(datahakkelas)
        # print(datahakkelas)

        # catatbro untuk cari list kode poli spesialistik pada tanggal itu
        # route = 'RencanaKontrol/ListSpesialistik/JnsKontrol/1/nomor/0001141325109/TglRencanaKontrol/2023-05-28'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response.text)
        # print(req.data)
        # print(req.data.get('kodePoli'))

        # catatbro untuk cari list kode poli spesialistik pada tanggal itu
        # route = 'RencanaKontrol/ListRencanaKontrol/tglAwal/2023-05-28/tglAkhir/2023-05-28/filter/1'
        # req = Vclaim(route=route)
        # req.get()
        # # print(req.response.text)
        # print(req.data)
        # print(req.data.get('kodePoli'))

        # catatbro untuk cari list kode data dokter untuk nanti dimasukan ke rawat inap
        # route = 'RencanaKontrol/JadwalPraktekDokter/JnsKontrol/1/KdPoli/INT/TglRencanaKontrol/2023-05-28'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response.text)
        # print(req.data)

        # route = 'referensi/dokter/1615'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response.text)
        # print(req.data)

        # route = 'referensi/dokter/pelayanan/1/tglPelayanan/2023-05-28/Spesialis/143'
        # req = Vclaim(route=route)
        # req.get()
        # print(req.response.text)
        # print(req.data)

        # req = Vclaim(route=route)
        # req.get()
        # print(req.response.text)
        # print(req.data)

        # route = 'RencanaKontrol/InsertSPRI'
        # data = {
        #     "request":
        #         {
        #             "noKartu": "0001141325109",
        #             "kodeDokter": "1615",
        #             "poliKontrol": "INT",
        #             "tglRencanaKontrol": "2023-05-28",
        #             "user": "DT1002R002"
        #         }
        # }
        # req = Vclaim(route=route, json=data)
        # req.post()
        # print(req.response.text)
        # print(req.data)


        # formulasi rawat inap
        # route = 'SEP/2.0/insert'
        # data = {
        #     "request": {
        #         "t_sep": {
        #             "noKartu": "0001141325109",
        #             "tglSep": "2023-05-28",
        #             "ppkPelayanan": "1002R002",
        #             "jnsPelayanan": "1", #aware of it
        #             "klsRawat": {
        #                 "klsRawatHak": "2",
        #                 "klsRawatNaik": "",
        #                 "pembiayaan": "",
        #                 "penanggungJawab": ""
        #             },
        #             "noMR": "273698",
        #             "rujukan": {
        #                 "asalRujukan": "2",
        #                 "tglRujukan": "2023-05-28",
        #                 "noRujukan": "1002R0020523K007802", # perlu ada
        #                 "ppkRujukan": "1002R002" # perlu ada
        #             },
        #             "catatan": "test insert IGD RI",
        #             "diagAwal": "I10",
        #             "poli": {
        #                 "tujuan": "",
        #                 "eksekutif": "0"
        #             },
        #             "cob": {
        #                 "cob": "0"
        #             },
        #             "katarak": {
        #                 "katarak": "0"
        #             },
        #             "jaminan": {
        #                 "lakaLantas": "0",
        #                 "noLP": "",
        #                 "penjamin": {
        #                     "tglKejadian": "",
        #                     "keterangan": "",
        #                     "suplesi": {
        #                         "suplesi": "0",
        #                         "noSepSuplesi": "",
        #                         "lokasiLaka": {
        #                             "kdPropinsi": "",
        #                             "kdKabupaten": "",
        #                             "kdKecamatan": ""
        #                         }
        #                     }
        #                 }
        #             },
        #             "tujuanKunj": "0",
        #             "flagProcedure": "",
        #             "kdPenunjang": "",
        #             "assesmentPel": "",
        #             "skdp": {
        #                 "noSurat": "1002R0020523K007802", # perlu ada ya
        #                 "kodeDPJP": "1615" # perlu ada
        #             },
        #             "dpjpLayan": "", #dpjp dikosongkan kalo rawat inap
        #             "noTelp": "085295025645", #nomor pasien
        #             "user": "DT1002R002"
        #         }
        #     }
        # }
        # req = Vclaim(route=route, json=data)
        # req.post()
        # print(req.response.text)
        # print(req.data)



        # IGD
        # route = 'SEP/2.0/insert'
        # data = {
        #     "request": {
        #         "t_sep": {
        #             "noKartu": "0001141325109",
        #             "tglSep": "2023-05-28",
        #             "ppkPelayanan": "1002R002",
        #             "jnsPelayanan": "2",
        #             "klsRawat": {
        #                 "klsRawatHak": "2",
        #                 "klsRawatNaik": "",
        #                 "pembiayaan": "",
        #                 "penanggungJawab": ""
        #             },
        #             "noMR": "273698",
        #             "rujukan": {
        #                 "asalRujukan": "2",
        #                 "tglRujukan": "2023-05-28",
        #                 "noRujukan": "",
        #                 "ppkRujukan": ""
        #             },
        #             "catatan": "test insert IGD",
        #             "diagAwal": "I10",
        #             "poli": {
        #                 "tujuan": "IGD",
        #                 "eksekutif": "0"
        #             },
        #             "cob": {
        #                 "cob": "0"
        #             },
        #             "katarak": {
        #                 "katarak": "0"
        #             },
        #             "jaminan": {
        #                 "lakaLantas": "0",
        #                 "noLP": "",
        #                 "penjamin": {
        #                     "tglKejadian": "",
        #                     "keterangan": "",
        #                     "suplesi": {
        #                         "suplesi": "0",
        #                         "noSepSuplesi": "",
        #                         "lokasiLaka": {
        #                             "kdPropinsi": "",
        #                             "kdKabupaten": "",
        #                             "kdKecamatan": ""
        #                         }
        #                     }
        #                 }
        #             },
        #             "tujuanKunj": "0",
        #             "flagProcedure": "",
        #             "kdPenunjang": "",
        #             "assesmentPel": "",
        #             "skdp": {
        #                 "noSurat": "",
        #                 "kodeDPJP": ""
        #             },
        #             "dpjpLayan": "24328",
        #             "noTelp": "085295025645", #nomor pasien
        #             "user": "DT1002R002"
        #         }
        #     }
        # }
        # req = Vclaim(route=route, json=data)
        # req.post()
        # print(req.response.text)
        # print(req.data)

    # formulasi delete SEP
    # def deleteSEP(self):

