/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package khanzahmsservicesatusehat;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import fungsi.ApiSatuSehat;
import fungsi.SatuSehatCekNIK;
import fungsi.koneksiDB;
import fungsi.sekuel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.Timer;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;

/**
 *
 * @author windiartonugroho
 */
public class frmUtama extends javax.swing.JFrame {
    private Connection koneksi=koneksiDB.condb();
    private sekuel Sequel=new sekuel();
    private String json="",link="",nol_jam = "",nol_menit = "",nol_detik = "",jam="",menit="",detik="",iddokter="",idpasien="",sistole="0",diastole="0",signa1="1",signa2="1",idrequest="";
    private ApiSatuSehat api=new ApiSatuSehat();
    private HttpHeaders headers;
    private HttpEntity requestEntity;
    private ObjectMapper mapper= new ObjectMapper();
    private JsonNode root;
    private JsonNode response;
    private PreparedStatement ps;
    private ResultSet rs;
    private String[] arrSplit;
    private SimpleDateFormat tanggalFormat = new SimpleDateFormat("yyyy-MM-dd");
    private Date date = new Date();  
    private SatuSehatCekNIK cekViaSatuSehat=new SatuSehatCekNIK();  

    /**
     * Creates new form frmUtama
     */
    public frmUtama() {
        initComponents();
        try {
            link=koneksiDB.URLFHIRSATUSEHAT();
        } catch (Exception e) {
            System.out.println("Notif : "+e);
        }
        
        this.setSize(490,340);
        
        date = new Date();  
        Tanggal1.setText(tanggalFormat.format(date)); 
        Tanggal2.setText(tanggalFormat.format(date)); 
        
        jam();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        TeksArea = new javax.swing.JTextArea();
        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        Tanggal1 = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        Tanggal2 = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("SIMKES Khanza Service Satu Sehat");

        TeksArea.setColumns(20);
        TeksArea.setRows(5);
        jScrollPane1.setViewportView(TeksArea);

        getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);

        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        jLabel1.setText("Tanggal :");
        jLabel1.setPreferredSize(new java.awt.Dimension(70, 23));
        jPanel1.add(jLabel1);

        Tanggal1.setPreferredSize(new java.awt.Dimension(100, 23));
        jPanel1.add(Tanggal1);

        jLabel3.setText("s.d.");
        jLabel3.setPreferredSize(new java.awt.Dimension(28, 23));
        jPanel1.add(jLabel3);

        Tanggal2.setPreferredSize(new java.awt.Dimension(100, 23));
        jPanel1.add(Tanggal2);

        jLabel2.setPreferredSize(new java.awt.Dimension(30, 23));
        jPanel1.add(jLabel2);

        jButton1.setText("Keluar");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jPanel1.add(jButton1);

        getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_END);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        System.exit(0);
    }//GEN-LAST:event_jButton1ActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(frmUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(frmUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(frmUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(frmUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new frmUtama().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JTextField Tanggal1;
    private javax.swing.JTextField Tanggal2;
    private javax.swing.JTextArea TeksArea;
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane1;
    // End of variables declaration//GEN-END:variables
    private void jam(){
        ActionListener taskPerformer = new ActionListener(){
            private int nilai_jam;
            private int nilai_menit;
            private int nilai_detik;
            public void actionPerformed(ActionEvent e) {
                nol_jam = "";
                nol_menit = "";
                nol_detik = "";
                Date now = Calendar.getInstance().getTime();
                // Mengambil nilaj JAM, MENIT, dan DETIK Sekarang
                nilai_jam = now.getHours();
                nilai_menit = now.getMinutes();
                nilai_detik = now.getSeconds();
                // Jika nilai JAM lebih kecil dari 10 (hanya 1 digit)
                if (nilai_jam <= 9) {
                    // Tambahkan "0" didepannya
                    nol_jam = "0";
                }
                // Jika nilai MENIT lebih kecil dari 10 (hanya 1 digit)
                if (nilai_menit <= 9) {
                    // Tambahkan "0" didepannya
                    nol_menit = "0";
                }
                // Jika nilai DETIK lebih kecil dari 10 (hanya 1 digit)
                if (nilai_detik <= 9) {
                    // Tambahkan "0" didepannya
                    nol_detik = "0";
                }
                // Membuat String JAM, MENIT, DETIK
                jam = nol_jam + Integer.toString(nilai_jam);
                menit = nol_menit + Integer.toString(nilai_menit);
                detik = nol_detik + Integer.toString(nilai_detik);
                if(jam.equals("01")&&menit.equals("01")&&detik.equals("01")){
                    TeksArea.setText("");
                    date = new Date();  
                    Tanggal1.setText(tanggalFormat.format(date)); 
                    Tanggal2.setText(tanggalFormat.format(date)); 
                    medication();
                }
                
                if((nilai_jam%4==0)&&(detik.equals("01")&&menit.equals("01"))){
                    encounter();
                    observationTTV();
                    vaksin();
                    prosedur();
                    condition();
                    clinicalimpression();
                    dietgizi();
                    medicationrequest();
                    medicationdispense();
                    medicationstatement();
                    servicerequestradiologi();
                    specimenradiologi();
                    observationradiologi();
                    diagnosticreportradiologi();
                    servicerequestlabpk();
                    servicerequestlabmb();
                    specimenlabpk();
                    specimenlabmb();
                    observationlabpk();
                    observationlabmb();
                    diagnosticreportlabpk();
                    diagnosticreportlabmb();
                    careplan();
                }
            }
        };
        // Timer
        new Timer(1000, taskPerformer).start();
    }
    
    private void encounter() {
        //kirim encounter
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktpdokter,poliklinik.nm_poli,satu_sehat_mapping_lokasi_ralan.id_lokasi_satusehat,"+
                   "reg_periksa.status_lanjut,concat(reg_periksa.tgl_registrasi,'T',reg_periksa.jam_reg,'+07:00') as pulang,ifnull(satu_sehat_encounter.id_encounter,'') as id_encounter "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join poliklinik on reg_periksa.kd_poli=poliklinik.kd_poli inner join satu_sehat_mapping_lokasi_ralan on satu_sehat_mapping_lokasi_ralan.kd_poli=poliklinik.kd_poli "+
                   "left join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "where reg_periksa.status_bayar='Sudah Bayar' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_encounter").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Encounter\"," +
                                            "\"status\": \"arrived\"," +
                                            "\"class\": {" +
                                                "\"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"," +
                                                "\"code\": \""+(rs.getString("status_lanjut").equals("Ralan")?"AMB":"IMP")+"\"," +
                                                "\"display\": \""+(rs.getString("status_lanjut").equals("Ralan")?"ambulatory":"inpatient encounter")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"participant\": [" +
                                                "{" +
                                                    "\"type\": [" +
                                                        "{" +
                                                            "\"coding\": [" +
                                                                "{" +
                                                                    "\"system\": \"http://terminology.hl7.org/CodeSystem/v3-ParticipationType\"," +
                                                                    "\"code\": \"ATND\"," +
                                                                    "\"display\": \"attender\"" +
                                                                "}" +
                                                            "]" +
                                                        "}" +
                                                    "]," +
                                                    "\"individual\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                        "\"display\": \""+rs.getString("nama")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"period\": {" +
                                                "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\"" +
                                            "}," +
                                            "\"location\": [" +
                                                "{" +
                                                    "\"location\": {" +
                                                        "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                        "\"display\": \""+rs.getString("nm_poli")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"statusHistory\": [" +
                                                "{" +
                                                    "\"status\": \"arrived\"," +
                                                    "\"period\": {" +
                                                        "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\"," +
                                                        "\"end\": \""+rs.getString("pulang")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"serviceProvider\": {" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                            "}," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/encounter/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("no_rawat")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Encounter\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Encounter", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_encounter","?,?","No.Rawat",2,new String[]{
                                        rs.getString("no_rawat"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }else{
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Encounter\"," +
                                            "\"id\": \""+rs.getString("id_encounter")+"\"," +
                                            "\"status\": \"finished\"," +
                                            "\"class\": {" +
                                                "\"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"," +
                                                "\"code\": \""+(rs.getString("status_lanjut").equals("Ralan")?"AMB":"IMP")+"\"," +
                                                "\"display\": \""+(rs.getString("status_lanjut").equals("Ralan")?"ambulatory":"inpatient encounter")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"participant\": [" +
                                                "{" +
                                                    "\"type\": [" +
                                                        "{" +
                                                            "\"coding\": [" +
                                                                "{" +
                                                                    "\"system\": \"http://terminology.hl7.org/CodeSystem/v3-ParticipationType\"," +
                                                                    "\"code\": \"ATND\"," +
                                                                    "\"display\": \"attender\"" +
                                                                "}" +
                                                            "]" +
                                                        "}" +
                                                    "]," +
                                                    "\"individual\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                        "\"display\": \""+rs.getString("nama")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"period\": {" +
                                                "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\"" +
                                            "}," +
                                            "\"location\": [" +
                                                "{" +
                                                    "\"location\": {" +
                                                        "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                        "\"display\": \""+rs.getString("nm_poli")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"statusHistory\": [" +
                                                "{" +
                                                    "\"status\": \"arrived\"," +
                                                    "\"period\": {" +
                                                        "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\"," +
                                                        "\"end\": \""+rs.getString("pulang")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]," +
                                            "\"serviceProvider\": {" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                            "}," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/encounter/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("no_rawat")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Encounter/"+rs.getString("id_encounter")+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Encounter/"+rs.getString("id_encounter"), HttpMethod.PUT, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_encounter","?,?","No.Rawat",2,new String[]{
                                        rs.getString("no_rawat"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ex) {
                System.out.println("Notif : "+ex);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ez){
            System.out.println("Notifikasi : "+ez);
        }
    }
    
    private void observationTTV(){
        //kirim TTV Suhu
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.suhu_tubuh,ifnull(satu_sehat_observationttvsuhu.id_observation,'') as satu_sehat_observationttvsuhu "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvsuhu on satu_sehat_observationttvsuhu.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvsuhu.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvsuhu.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvsuhu.status='Ralan' where pemeriksaan_ralan.suhu_tubuh<>'' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvsuhu").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8310-5\"," +
                                                        "\"display\": \"Body temperature\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Suhu Badan di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("suhu_tubuh").replaceAll(",",".")+"," +
                                                "\"unit\": \"degree Celsius\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"Cel\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvsuhu","?,?,?,?,?","Observation Suhu",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ed) {
                            System.out.println("Notifikasi : "+ed);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.suhu_tubuh,ifnull(satu_sehat_observationttvsuhu.id_observation,'') as satu_sehat_observationttvsuhu "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvsuhu on satu_sehat_observationttvsuhu.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvsuhu.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvsuhu.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvsuhu.status='Ranap' where pemeriksaan_ranap.suhu_tubuh<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvsuhu").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8310-5\"," +
                                                        "\"display\": \"Body temperature\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Suhu Badan di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("suhu_tubuh").replaceAll(",",".")+"," +
                                                "\"unit\": \"degree Celsius\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"Cel\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvsuhu","?,?,?,?,?","Observation Suhu",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ed) {
                            System.out.println("Notifikasi : "+ed);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ef){
            System.out.println("Notifikasi : "+ef);
        }

        //kirim TTV respirasi
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.respirasi,ifnull(satu_sehat_observationttvrespirasi.id_observation,'') as satu_sehat_observationttvrespirasi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvrespirasi on satu_sehat_observationttvrespirasi.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvrespirasi.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvrespirasi.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvrespirasi.status='Ralan' where pemeriksaan_ralan.respirasi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvrespirasi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"9279-1\"," +
                                                        "\"display\": \"Respiratory rate\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Respirasi di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                             "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("respirasi")+"," +
                                                "\"unit\": \"breaths/minute\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"/min\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvrespirasi","?,?,?,?,?","Observation Respirasi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception ef){
                                TeksArea.append("Notifikasi Bridging : "+ef);
                            }
                        } catch (Exception eg) {
                            System.out.println("Notifikasi : "+eg);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.respirasi,ifnull(satu_sehat_observationttvrespirasi.id_observation,'') as satu_sehat_observationttvrespirasi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvrespirasi on satu_sehat_observationttvrespirasi.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvrespirasi.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvrespirasi.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvrespirasi.status='Ranap' where pemeriksaan_ranap.respirasi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvrespirasi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"9279-1\"," +
                                                        "\"display\": \"Respiratory rate\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Respirasi di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                             "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("respirasi")+"," +
                                                "\"unit\": \"breaths/minute\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"/min\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvrespirasi","?,?,?,?,?","Observation Respirasi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception ef){
                                TeksArea.append("Notifikasi Bridging : "+ef);
                            }
                        } catch (Exception eg) {
                            System.out.println("Notifikasi : "+eg);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV nadi
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.nadi,ifnull(satu_sehat_observationttvnadi.id_observation,'') as satu_sehat_observationttvnadi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvnadi on satu_sehat_observationttvnadi.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvnadi.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvnadi.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvnadi.status='Ralan' where pemeriksaan_ralan.nadi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvnadi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8867-4\"," +
                                                        "\"display\": \"Heart rate\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Nadi di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("nadi")+"," +
                                                "\"unit\": \"breaths/minute\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"/min\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvnadi","?,?,?,?,?","Observation Nadi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception es) {
                            System.out.println("Notifikasi : "+es);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.nadi,ifnull(satu_sehat_observationttvnadi.id_observation,'') as satu_sehat_observationttvnadi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvnadi on satu_sehat_observationttvnadi.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvnadi.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvnadi.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvnadi.status='Ranap' where pemeriksaan_ranap.nadi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvnadi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8867-4\"," +
                                                        "\"display\": \"Heart rate\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Nadi di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("nadi")+"," +
                                                "\"unit\": \"breaths/minute\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"/min\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvnadi","?,?,?,?,?","Observation Nadi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception es) {
                            System.out.println("Notifikasi : "+es);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV SPO2
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.spo2,ifnull(satu_sehat_observationttvspo2.id_observation,'') as satu_sehat_observationttvspo2 "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvspo2 on satu_sehat_observationttvspo2.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvspo2.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvspo2.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvspo2.status='Ralan' where pemeriksaan_ralan.spo2<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvspo2").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"59408-5\"," +
                                                        "\"display\": \"Oxygen saturation\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik SpO2  di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("spo2")+"," +
                                                "\"unit\": \"percent saturation\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"%\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvspo2","?,?,?,?,?","Observation SpO2",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception ef){
                                TeksArea.append("Notifikasi Bridging : "+ef);
                            }
                        } catch (Exception ex) {
                            System.out.println("Notifikasi : "+ex);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.spo2,ifnull(satu_sehat_observationttvspo2.id_observation,'') as satu_sehat_observationttvspo2 "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvspo2 on satu_sehat_observationttvspo2.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvspo2.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvspo2.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvspo2.status='Ranap' where pemeriksaan_ranap.spo2<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvspo2").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"59408-5\"," +
                                                        "\"display\": \"Oxygen saturation\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik SpO2  di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("spo2")+"," +
                                                "\"unit\": \"percent saturation\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"%\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvspo2","?,?,?,?,?","Observation SpO2",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception ef){
                                TeksArea.append("Notifikasi Bridging : "+ef);
                            }
                        } catch (Exception ex) {
                            System.out.println("Notifikasi : "+ex);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV GCS
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.gcs,ifnull(satu_sehat_observationttvgcs.id_observation,'') as satu_sehat_observationttvgcs "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvgcs on satu_sehat_observationttvgcs.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvgcs.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvgcs.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvgcs.status='Ralan' where pemeriksaan_ralan.gcs<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvgcs").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"9269-2\"," +
                                                        "\"display\": \"Glasgow coma score total\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik GCS di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("gcs")+"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"{score}\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvgcs","?,?,?,?,?","Observation GCS",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception es){
                                TeksArea.append("Notifikasi Bridging : "+es);
                            }
                        } catch (Exception ea) {
                            System.out.println("Notifikasi : "+ea);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.gcs,ifnull(satu_sehat_observationttvgcs.id_observation,'') as satu_sehat_observationttvgcs "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvgcs on satu_sehat_observationttvgcs.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvgcs.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvgcs.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvgcs.status='Ranap' where pemeriksaan_ranap.gcs<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvgcs").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"9269-2\"," +
                                                        "\"display\": \"Glasgow coma score total\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik GCS di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("gcs")+"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"{score}\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvgcs","?,?,?,?,?","Observation GCS",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception es){
                                TeksArea.append("Notifikasi Bridging : "+es);
                            }
                        } catch (Exception ea) {
                            System.out.println("Notifikasi : "+ea);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV Kesadaran
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.kesadaran,ifnull(satu_sehat_observationttvkesadaran.id_observation,'') as satu_sehat_observationttvkesadaran "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvkesadaran on satu_sehat_observationttvkesadaran.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvkesadaran.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvkesadaran.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvkesadaran.status='Ralan' where pemeriksaan_ralan.kesadaran<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvkesadaran").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"exam\"," +
                                                            "\"display\": \"Exam\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://snomed.info/sct\"," +
                                                        "\"code\": \"1104441000000107\"," +
                                                        "\"display\": \"ACVPU (Alert Confusion Voice Pain Unresponsive) scale score\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Kesadaran di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueCodeableConcept\": {" +
                                                "\"text\": \""+rs.getString("kesadaran").replaceAll("Compos Mentis","Alert").replaceAll("Somnolence","Voice").replaceAll("Sopor","Pain").replaceAll("Coma","Unresponsive")+"\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvkesadaran","?,?,?,?,?","Observation Kesadaran",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.kesadaran,ifnull(satu_sehat_observationttvkesadaran.id_observation,'') as satu_sehat_observationttvkesadaran "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvkesadaran on satu_sehat_observationttvkesadaran.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvkesadaran.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvkesadaran.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvkesadaran.status='Ranap' where pemeriksaan_ranap.kesadaran<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvkesadaran").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"exam\"," +
                                                            "\"display\": \"Exam\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://snomed.info/sct\"," +
                                                        "\"code\": \"1104441000000107\"," +
                                                        "\"display\": \"ACVPU (Alert Confusion Voice Pain Unresponsive) scale score\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Kesadaran di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueCodeableConcept\": {" +
                                                "\"text\": \""+rs.getString("kesadaran").replaceAll("Compos Mentis","Alert").replaceAll("Somnolence","Voice").replaceAll("Sopor","Pain").replaceAll("Coma","Unresponsive")+"\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvkesadaran","?,?,?,?,?","Observation Kesadaran",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV Tensi
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.tensi,ifnull(satu_sehat_observationttvtensi.id_observation,'') as satu_sehat_observationttvtensi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvtensi on satu_sehat_observationttvtensi.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvtensi.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvtensi.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvtensi.status='Ralan' where pemeriksaan_ralan.tensi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvtensi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("tensi").split("/");
                            sistole="0";
                            try {
                                if(!arrSplit[0].equals("")){
                                    sistole=arrSplit[0];
                                }
                            } catch (Exception ef) {
                                sistole="0";
                            }
                            diastole="0";
                            try {
                                if(!arrSplit[1].equals("")){
                                    diastole=arrSplit[1];
                                }
                            } catch (Exception eg) {
                                diastole="0";
                            }
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"35094-2\"," +
                                                        "\"display\": \"Blood pressure panel\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \"Blood pressure systolic & diastolic\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Tensi di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"component\" : ["+
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : ["+
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"8480-6\"," +
                                                                "\"display\" : \"Systolic blood pressure\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"valueQuantity\" : {" +
                                                        "\"value\" : "+sistole+"," +
                                                        "\"unit\" : \"mmHg\"," +
                                                        "\"system\" : \"http://unitsofmeasure.org\"," +
                                                        "\"code\" : \"mm[Hg]\"" +
                                                    "}" +
                                                "}," +
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : ["+
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"8462-4\"," +
                                                                "\"display\" : \"Diastolic blood pressure\"" +
                                                            "}"+
                                                        "]" +
                                                    "}," +
                                                    "\"valueQuantity\" : {" +
                                                        "\"value\" : "+diastole+"," +
                                                        "\"unit\" : \"mmHg\"," +
                                                        "\"system\" : \"http://unitsofmeasure.org\"," +
                                                        "\"code\" : \"mm[Hg]\"" +
                                                    "}" +
                                                "}"+
                                            "]" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvtensi","?,?,?,?,?","Observation Tensi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.tensi,ifnull(satu_sehat_observationttvtensi.id_observation,'') as satu_sehat_observationttvtensi "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvtensi on satu_sehat_observationttvtensi.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvtensi.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvtensi.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvtensi.status='Ranap' where pemeriksaan_ranap.tensi<>'' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvtensi").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("tensi").split("/");
                            sistole="0";
                            try {
                                if(!arrSplit[0].equals("")){
                                    sistole=arrSplit[0];
                                }
                            } catch (Exception ef) {
                                sistole="0";
                            }
                            diastole="0";
                            try {
                                if(!arrSplit[1].equals("")){
                                    diastole=arrSplit[1];
                                }
                            } catch (Exception eg) {
                                diastole="0";
                            }
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"35094-2\"," +
                                                        "\"display\": \"Blood pressure panel\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \"Blood pressure systolic & diastolic\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Tensi di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"component\" : ["+
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : ["+
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"8480-6\"," +
                                                                "\"display\" : \"Systolic blood pressure\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"valueQuantity\" : {" +
                                                        "\"value\" : "+sistole+"," +
                                                        "\"unit\" : \"mmHg\"," +
                                                        "\"system\" : \"http://unitsofmeasure.org\"," +
                                                        "\"code\" : \"mm[Hg]\"" +
                                                    "}" +
                                                "}," +
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : ["+
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"8462-4\"," +
                                                                "\"display\" : \"Diastolic blood pressure\"" +
                                                            "}"+
                                                        "]" +
                                                    "}," +
                                                    "\"valueQuantity\" : {" +
                                                        "\"value\" : "+diastole+"," +
                                                        "\"unit\" : \"mmHg\"," +
                                                        "\"system\" : \"http://unitsofmeasure.org\"," +
                                                        "\"code\" : \"mm[Hg]\"" +
                                                    "}" +
                                                "}"+
                                            "]" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvtensi","?,?,?,?,?","Observation Tensi",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ez) {
                System.out.println("Notif : "+ez);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV Tinggi Badan
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.tinggi,ifnull(satu_sehat_observationttvtb.id_observation,'') as satu_sehat_observationttvtb "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvtb on satu_sehat_observationttvtb.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvtb.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvtb.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvtb.status='Ralan' where pemeriksaan_ralan.tinggi<>'' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvtb").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8302-2\"," +
                                                        "\"display\": \"Body height\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Tinggi Badan di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("tinggi").replaceAll(",",".")+"," +
                                                "\"unit\": \"centimeter\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"cm\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvtb","?,?,?,?,?","Observation TB",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ef) {
                System.out.println("Notif : "+ef);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }

            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.tinggi,ifnull(satu_sehat_observationttvtb.id_observation,'') as satu_sehat_observationttvtb "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvtb on satu_sehat_observationttvtb.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvtb.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvtb.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvtb.status='Ranap' where pemeriksaan_ranap.tinggi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvtb").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8302-2\"," +
                                                        "\"display\": \"Body height\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Tinggi Badan di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("tinggi").replaceAll(",",".")+"," +
                                                "\"unit\": \"centimeter\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"cm\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvtb","?,?,?,?,?","Observation TB",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception eg){
                                TeksArea.append("Notifikasi Bridging : "+eg);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception ef) {
                System.out.println("Notif : "+ef);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception ex){
            System.out.println("Notifikasi : "+ex);
        }

        //kirim TTV Berat Badan
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.berat,ifnull(satu_sehat_observationttvbb.id_observation,'') as satu_sehat_observationttvbb "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvbb on satu_sehat_observationttvbb.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvbb.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvbb.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvbb.status='Ralan' where pemeriksaan_ralan.berat<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvbb").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"29463-7\"," +
                                                        "\"display\": \"Body Weight\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Berat Badan di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("berat").replaceAll(",",".")+"," +
                                                "\"unit\": \"kilogram\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"kg\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvbb","?,?,?,?,?","Observation BB",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,"+
                   "pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.berat,ifnull(satu_sehat_observationttvbb.id_observation,'') as satu_sehat_observationttvbb "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik left join satu_sehat_observationttvbb on satu_sehat_observationttvbb.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_observationttvbb.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_observationttvbb.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_observationttvbb.status='Ranap' where pemeriksaan_ranap.berat<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvbb").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"29463-7\"," +
                                                        "\"display\": \"Body Weight\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Berat Badan di Rawat Inap, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("berat").replaceAll(",",".")+"," +
                                                "\"unit\": \"kilogram\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"kg\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvbb","?,?,?,?,?","Observation BB",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        //kirim TTV Lingkar Perut
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,"+
                   "pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.lingkar_perut,ifnull(satu_sehat_observationttvlp.id_observation,'') as satu_sehat_observationttvlp "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik left join satu_sehat_observationttvlp on satu_sehat_observationttvlp.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_observationttvlp.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_observationttvlp.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_observationttvlp.status='Ralan' where pemeriksaan_ralan.lingkar_perut<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_observationttvlp").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"vital-signs\"," +
                                                            "\"display\": \"Vital Signs\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://loinc.org\"," +
                                                        "\"code\": \"8280-0\"," +
                                                        "\"display\": \"Waist Circumference at umbilicus by Tape measure\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Pemeriksaan Fisik Lingkar Perut di Rawat Jalan/IGD, Pasien "+rs.getString("nm_pasien")+" Pada Tanggal "+rs.getString("tgl_perawatan")+" Jam "+rs.getString("jam_rawat")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"valueQuantity\": {" +
                                                "\"value\": "+rs.getString("lingkar_perut").replaceAll(",",".")+"," +
                                                "\"unit\": \"centimeter\"," +
                                                "\"system\": \"http://unitsofmeasure.org\"," +
                                                "\"code\": \"cm\"" +
                                            "}" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observationttvlp","?,?,?,?,?","Observation LP",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    public void clinicalimpression(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,"+
                   "pemeriksaan_ralan.tgl_perawatan,pemeriksaan_ralan.jam_rawat,pemeriksaan_ralan.penilaian,"+
                   "pemeriksaan_ralan.keluhan,pemeriksaan_ralan.pemeriksaan,satu_sehat_condition.kd_penyakit,"+
                   "penyakit.nm_penyakit,satu_sehat_condition.id_condition,"+
                   "ifnull(satu_sehat_clinicalimpression.id_clinicalimpression,'') as satu_sehat_clinicalimpression "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join satu_sehat_condition on satu_sehat_condition.no_rawat=reg_periksa.no_rawat and satu_sehat_condition.status='Ralan' "+
                   "inner join penyakit on penyakit.kd_penyakit=satu_sehat_condition.kd_penyakit "+
                   "inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik "+
                   "left join satu_sehat_clinicalimpression on satu_sehat_clinicalimpression.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_clinicalimpression.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan "+
                   "and satu_sehat_clinicalimpression.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "and satu_sehat_clinicalimpression.status='Ralan' where pemeriksaan_ralan.penilaian<>'' "+
                   "and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_clinicalimpression").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ClinicalImpression\"," +
                                            "\"status\": \"completed\"," +
                                            "\"description\" : \""+rs.getString("keluhan")+", "+rs.getString("pemeriksaan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"," +
                                            "\"subject\" : {"+
                                                "\"reference\" : \"Patient/"+idpasien+"\""+
                                            "},"+
                                            "\"encounter\" : { " +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\""+
                                            "},"+
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"date\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"assessor\" : {"+
                                                "\"reference\" : \"Practitioner/"+iddokter+"\""+
                                            "},"+
                                            "\"summary\" : \""+rs.getString("penilaian").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\","+
                                            "\"finding\": [" +
                                                "{" +
                                                    "\"itemCodeableConcept\": {"+
                                                        "\"coding\": ["+
                                                            "{"+
                                                                "\"system\": \"http://hl7.org/fhir/sid/icd-10\","+
                                                                "\"code\": \""+rs.getString("kd_penyakit")+"\","+
                                                                "\"display\": \""+rs.getString("nm_penyakit")+"\""+
                                                            "}"+
                                                        "]"+
                                                    "},"+
                                                    "\"itemReference\": {"+
                                                        "\"reference\": \"Condition/"+rs.getString("id_condition")+"\""+
                                                    "}"+
                                                "}"+
                                            "],"+
                                            "\"prognosisCodeableConcept\": ["+
                                                "{"+
                                                    "\"coding\": ["+
                                                        "{"+
                                                            "\"system\": \"http://terminology.kemkes.go.id/CodeSystem/clinical-term\","+
                                                            "\"code\": \"PR000001\","+
                                                            "\"display\": \"Prognosis\""+
                                                        "}"+
                                                    "]"+
                                                "}"+
                                            "]"+
                                       "}";
                                TeksArea.append("URL : "+link+"/ClinicalImpression"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ClinicalImpression", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_clinicalimpression","?,?,?,?,?","Clinical Impression",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.no_ktp,satu_sehat_encounter.id_encounter,pegawai.no_ktp as ktppraktisi,"+
                   "pemeriksaan_ranap.tgl_perawatan,pemeriksaan_ranap.jam_rawat,pemeriksaan_ranap.penilaian,"+
                   "pemeriksaan_ranap.keluhan,pemeriksaan_ranap.pemeriksaan,satu_sehat_condition.kd_penyakit,"+
                   "penyakit.nm_penyakit,satu_sehat_condition.id_condition,"+
                   "ifnull(satu_sehat_clinicalimpression.id_clinicalimpression,'') as satu_sehat_clinicalimpression "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join satu_sehat_condition on satu_sehat_condition.no_rawat=reg_periksa.no_rawat and satu_sehat_condition.status='Ranap' "+
                   "inner join penyakit on penyakit.kd_penyakit=satu_sehat_condition.kd_penyakit "+
                   "inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik "+
                   "left join satu_sehat_clinicalimpression on satu_sehat_clinicalimpression.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_clinicalimpression.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_clinicalimpression.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "and satu_sehat_clinicalimpression.status='Ranap' where pemeriksaan_ranap.penilaian<>'' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_clinicalimpression").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ClinicalImpression\"," +
                                            "\"status\": \"completed\"," +
                                            "\"description\" : \""+rs.getString("keluhan")+", "+rs.getString("pemeriksaan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"," +
                                            "\"subject\" : {"+
                                                "\"reference\" : \"Patient/"+idpasien+"\""+
                                            "},"+
                                            "\"encounter\" : { " +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\""+
                                            "},"+
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"date\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam_rawat")+"+07:00\"," +
                                            "\"assessor\" : {"+
                                                "\"reference\" : \"Practitioner/"+iddokter+"\""+
                                            "},"+
                                            "\"summary\" : \""+rs.getString("penilaian").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\","+
                                            "\"finding\": [" +
                                                "{" +
                                                    "\"itemCodeableConcept\": {"+
                                                        "\"coding\": ["+
                                                            "{"+
                                                                "\"system\": \"http://hl7.org/fhir/sid/icd-10\","+
                                                                "\"code\": \""+rs.getString("kd_penyakit")+"\","+
                                                                "\"display\": \""+rs.getString("nm_penyakit")+"\""+
                                                            "}"+
                                                        "]"+
                                                    "},"+
                                                    "\"itemReference\": {"+
                                                        "\"reference\": \"Condition/"+rs.getString("id_condition")+"\""+
                                                    "}"+
                                                "}"+
                                            "],"+
                                            "\"prognosisCodeableConcept\": ["+
                                                "{"+
                                                    "\"coding\": ["+
                                                        "{"+
                                                            "\"system\": \"http://terminology.kemkes.go.id/CodeSystem/clinical-term\","+
                                                            "\"code\": \"PR000001\","+
                                                            "\"display\": \"Prognosis\""+
                                                        "}"+
                                                    "]"+
                                                "}"+
                                            "]"+
                                       "}";
                                TeksArea.append("URL : "+link+"/ClinicalImpression"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ClinicalImpression", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_clinicalimpression","?,?,?,?,?","Clinical Impression",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void vaksin(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.no_ktp,satu_sehat_encounter.id_encounter,satu_sehat_mapping_vaksin.vaksin_code,satu_sehat_mapping_vaksin.vaksin_system,"+
                   "satu_sehat_mapping_vaksin.kode_brng,satu_sehat_mapping_vaksin.vaksin_display,satu_sehat_mapping_vaksin.route_code,satu_sehat_mapping_vaksin.route_system,"+
                   "satu_sehat_mapping_vaksin.route_display,satu_sehat_mapping_vaksin.dose_quantity_code,satu_sehat_mapping_vaksin.dose_quantity_system,"+
                   "satu_sehat_mapping_vaksin.dose_quantity_unit,detail_pemberian_obat.no_batch,detail_pemberian_obat.tgl_perawatan,detail_pemberian_obat.jam,"+
                   "detail_pemberian_obat.jml,aturan_pakai.aturan,satu_sehat_mapping_lokasi_ralan.id_lokasi_satusehat,poliklinik.nm_poli,pegawai.no_ktp as ktppraktisi,"+
                   "ifnull(satu_sehat_immunization.id_immunization,'') as id_immunization,detail_pemberian_obat.no_faktur from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join detail_pemberian_obat on detail_pemberian_obat.no_rawat=reg_periksa.no_rawat "+
                   "inner join satu_sehat_mapping_vaksin on satu_sehat_mapping_vaksin.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join aturan_pakai on aturan_pakai.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and aturan_pakai.jam=detail_pemberian_obat.jam and "+
                   "aturan_pakai.no_rawat=detail_pemberian_obat.no_rawat and aturan_pakai.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join satu_sehat_mapping_lokasi_ralan on satu_sehat_mapping_lokasi_ralan.kd_poli=reg_periksa.kd_poli "+
                   "inner join poliklinik on poliklinik.kd_poli=satu_sehat_mapping_lokasi_ralan.kd_poli "+
                   "inner join pegawai on reg_periksa.kd_dokter=pegawai.nik "+
                   ""+
                   "left join satu_sehat_immunization on satu_sehat_immunization.no_rawat=detail_pemberian_obat.no_rawat and satu_sehat_immunization.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and "+
                   "satu_sehat_immunization.jam=detail_pemberian_obat.jam and satu_sehat_immunization.kode_brng=detail_pemberian_obat.kode_brng and "+
                   "satu_sehat_immunization.no_batch=detail_pemberian_obat.no_batch and satu_sehat_immunization.no_faktur=detail_pemberian_obat.no_faktur "+
                   "where detail_pemberian_obat.no_batch<>'' and reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_immunization").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Immunization\"," +
                                            "\"status\": \"completed\"," +
                                            "\"vaccineCode\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("vaksin_system")+"\"," +
                                                        "\"code\": \""+rs.getString("vaksin_code")+"\"," +
                                                        "\"display\": \""+rs.getString("vaksin_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"patient\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"occurrenceDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"+07:00"+"\"," +
                                            "\"expirationDate\": \""+Sequel.cariIsi("SELECT data_batch.tgl_kadaluarsa FROM data_batch WHERE data_batch.no_batch='"+rs.getString("no_batch")+"' and data_batch.kode_brng='"+rs.getString("kode_brng")+"' and data_batch.no_faktur='"+rs.getString("no_faktur")+"'")+"\"," +
                                            "\"recorded\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"+07:00"+"\"," +
                                            "\"primarySource\": true," +
                                            "\"location\": {" +
                                                "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                "\"display\": \""+rs.getString("nm_poli")+"\"" +
                                            "}," +
                                            "\"lotNumber\": \""+rs.getString("no_batch")+"\"," +
                                            "\"route\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("route_system")+"\"," +
                                                        "\"code\": \""+rs.getString("route_code")+"\"," +
                                                        "\"display\": \""+rs.getString("route_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"doseQuantity\": {" +
                                                "\"value\": "+rs.getString("jml")+"," +
                                                "\"unit\": \""+rs.getString("dose_quantity_unit")+"\"," +
                                                "\"system\": \""+rs.getString("dose_quantity_system")+"\"," +
                                                "\"code\": \""+rs.getString("dose_quantity_code")+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"function\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0443\"," +
                                                                "\"code\": \"AP\"," +
                                                                "\"display\": \"Administering Provider\"" +
                                                            "}" +
                                                        "]" +
                                                    "},"+
                                                    "\"actor\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                    "}" +
                                                "}" +
                                            "],"+
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"https://terminology.kemkes.go.id/CodeSystem/immunization-reason\"," +
                                                            "\"code\": \"IM-Program\"," +
                                                            "\"display\" : \"Imunisasi Program\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"protocolApplied\" : ["+
                                                "{"+
                                                    "\"doseNumberPositiveInt\" : "+rs.getString("aturan").replaceAll("[^0-9.]", "")+
                                                "}"+
                                            "]"+
                                        "}";
                                TeksArea.append("URL : "+link+"/Immunization"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Immunization", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_immunization","?,?,?,?,?,?,?","Imunisasi/Vaksin",7,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam"),rs.getString("kode_brng"),rs.getString("no_batch"),rs.getString("no_faktur"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,pasien.no_ktp,satu_sehat_encounter.id_encounter,satu_sehat_mapping_vaksin.vaksin_code,satu_sehat_mapping_vaksin.vaksin_system,"+
                   "satu_sehat_mapping_vaksin.kode_brng,satu_sehat_mapping_vaksin.vaksin_display,satu_sehat_mapping_vaksin.route_code,satu_sehat_mapping_vaksin.route_system,"+
                   "satu_sehat_mapping_vaksin.route_display,satu_sehat_mapping_vaksin.dose_quantity_code,satu_sehat_mapping_vaksin.dose_quantity_system,"+
                   "satu_sehat_mapping_vaksin.dose_quantity_unit,detail_pemberian_obat.no_batch,detail_pemberian_obat.tgl_perawatan,detail_pemberian_obat.jam,"+
                   "detail_pemberian_obat.jml,aturan_pakai.aturan,satu_sehat_mapping_lokasi_ralan.id_lokasi_satusehat,poliklinik.nm_poli,pegawai.no_ktp as ktppraktisi,"+
                   "ifnull(satu_sehat_immunization.id_immunization,'') as id_immunization,detail_pemberian_obat.no_faktur from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join detail_pemberian_obat on detail_pemberian_obat.no_rawat=reg_periksa.no_rawat "+
                   "inner join satu_sehat_mapping_vaksin on satu_sehat_mapping_vaksin.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join aturan_pakai on aturan_pakai.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and aturan_pakai.jam=detail_pemberian_obat.jam and "+
                   "aturan_pakai.no_rawat=detail_pemberian_obat.no_rawat and aturan_pakai.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join satu_sehat_mapping_lokasi_ralan on satu_sehat_mapping_lokasi_ralan.kd_poli=reg_periksa.kd_poli "+
                   "inner join poliklinik on poliklinik.kd_poli=satu_sehat_mapping_lokasi_ralan.kd_poli "+
                   "inner join pegawai on reg_periksa.kd_dokter=pegawai.nik "+
                   ""+
                   "left join satu_sehat_immunization on satu_sehat_immunization.no_rawat=detail_pemberian_obat.no_rawat and satu_sehat_immunization.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and "+
                   "satu_sehat_immunization.jam=detail_pemberian_obat.jam and satu_sehat_immunization.kode_brng=detail_pemberian_obat.kode_brng and "+
                   "satu_sehat_immunization.no_batch=detail_pemberian_obat.no_batch and satu_sehat_immunization.no_faktur=detail_pemberian_obat.no_faktur "+
                   "where detail_pemberian_obat.no_batch<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_immunization").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Immunization\"," +
                                            "\"status\": \"completed\"," +
                                            "\"vaccineCode\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("vaksin_system")+"\"," +
                                                        "\"code\": \""+rs.getString("vaksin_code")+"\"," +
                                                        "\"display\": \""+rs.getString("vaksin_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"patient\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"occurrenceDateTime\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"+07:00"+"\"," +
                                            "\"expirationDate\": \""+Sequel.cariIsi("SELECT data_batch.tgl_kadaluarsa FROM data_batch WHERE data_batch.no_batch='"+rs.getString("no_batch")+"' and data_batch.kode_brng='"+rs.getString("kode_brng")+"' and data_batch.no_faktur='"+rs.getString("no_faktur")+"'")+"\"," +
                                            "\"recorded\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"+07:00"+"\"," +
                                            "\"primarySource\": true," +
                                            "\"location\": {" +
                                                "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                "\"display\": \""+rs.getString("nm_poli")+"\"" +
                                            "}," +
                                            "\"lotNumber\": \""+rs.getString("no_batch")+"\"," +
                                            "\"route\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("route_system")+"\"," +
                                                        "\"code\": \""+rs.getString("route_code")+"\"," +
                                                        "\"display\": \""+rs.getString("route_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"doseQuantity\": {" +
                                                "\"value\": "+rs.getString("jml")+"," +
                                                "\"unit\": \""+rs.getString("dose_quantity_unit")+"\"," +
                                                "\"system\": \""+rs.getString("dose_quantity_system")+"\"," +
                                                "\"code\": \""+rs.getString("dose_quantity_code")+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"function\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0443\"," +
                                                                "\"code\": \"AP\"," +
                                                                "\"display\": \"Administering Provider\"" +
                                                            "}" +
                                                        "]" +
                                                    "},"+
                                                    "\"actor\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                    "}" +
                                                "}" +
                                            "],"+
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"https://terminology.kemkes.go.id/CodeSystem/immunization-reason\"," +
                                                            "\"code\": \"IM-Program\"," +
                                                            "\"display\" : \"Imunisasi Program\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"protocolApplied\" : ["+
                                                "{"+
                                                    "\"doseNumberPositiveInt\" : "+rs.getString("aturan").replaceAll("[^0-9.]", "")+
                                                "}"+
                                            "]"+
                                        "}";
                                TeksArea.append("URL : "+link+"/Immunization"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Immunization", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_immunization","?,?,?,?,?,?,?","Imunisasi/Vaksin",7,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam"),rs.getString("kode_brng"),rs.getString("no_batch"),rs.getString("no_faktur"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    public void prosedur(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,reg_periksa.status_lanjut,"+
                   "concat(reg_periksa.tgl_registrasi,'T',reg_periksa.jam_reg,'+07:00') as pulang,satu_sehat_encounter.id_encounter,prosedur_pasien.kode,icd9.deskripsi_panjang,"+
                   "ifnull(satu_sehat_procedure.id_procedure,'') as id_procedure from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join prosedur_pasien on prosedur_pasien.no_rawat=reg_periksa.no_rawat inner join icd9 on prosedur_pasien.kode=icd9.kode "+
                   "left join satu_sehat_procedure on satu_sehat_procedure.no_rawat=prosedur_pasien.no_rawat and satu_sehat_procedure.kode=prosedur_pasien.kode "+
                   "and satu_sehat_procedure.status=prosedur_pasien.status where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_procedure").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Procedure\"," +
                                            "\"status\": \"completed\","+
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://snomed.info/sct\"," +
                                                        "\"code\": \"103693007\"," +
                                                        "\"display\": \"Diagnostic procedure\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\":\"Diagnostic procedure\""+
                                            "}," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://hl7.org/fhir/sid/icd-9-cm\"," +
                                                        "\"code\": \""+rs.getString("kode")+"\"," +
                                                        "\"display\": \""+rs.getString("deskripsi_panjang")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Prosedur kepada "+rs.getString("nm_pasien")+" selama kunjungan/dirawat dari tanggal "+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+" sampai "+rs.getString("pulang")+"\"" +
                                            "}," +
                                            "\"performedPeriod\": {" +
                                                "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\","+
                                                "\"end\": \""+rs.getString("pulang")+"\""+
                                            "}"+
                                        "}";
                                TeksArea.append("URL : "+link+"/Procedure"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Procedure", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_procedure","?,?,?,?","Prosedur",4,new String[]{
                                        rs.getString("no_rawat"),rs.getString("kode"),rs.getString("status_lanjut"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,reg_periksa.status_lanjut,"+
                   "concat(reg_periksa.tgl_registrasi,'T',reg_periksa.jam_reg,'+07:00') as pulang,satu_sehat_encounter.id_encounter,prosedur_pasien.kode,icd9.deskripsi_panjang,"+
                   "ifnull(satu_sehat_procedure.id_procedure,'') as id_procedure from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join prosedur_pasien on prosedur_pasien.no_rawat=reg_periksa.no_rawat inner join icd9 on prosedur_pasien.kode=icd9.kode "+
                   "left join satu_sehat_procedure on satu_sehat_procedure.no_rawat=prosedur_pasien.no_rawat and satu_sehat_procedure.kode=prosedur_pasien.kode "+
                   "and satu_sehat_procedure.status=prosedur_pasien.status where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_procedure").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Procedure\"," +
                                            "\"status\": \"completed\","+
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://snomed.info/sct\"," +
                                                        "\"code\": \"103693007\"," +
                                                        "\"display\": \"Diagnostic procedure\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\":\"Diagnostic procedure\""+
                                            "}," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://hl7.org/fhir/sid/icd-9-cm\"," +
                                                        "\"code\": \""+rs.getString("kode")+"\"," +
                                                        "\"display\": \""+rs.getString("deskripsi_panjang")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Prosedur kepada "+rs.getString("nm_pasien")+" selama kunjungan/dirawat dari tanggal "+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+" sampai "+rs.getString("pulang")+"\"" +
                                            "}," +
                                            "\"performedPeriod\": {" +
                                                "\"start\": \""+rs.getString("tgl_registrasi")+"T"+rs.getString("jam_reg")+"+07:00"+"\","+
                                                "\"end\": \""+rs.getString("pulang")+"\""+
                                            "}"+
                                        "}";
                                TeksArea.append("URL : "+link+"/Procedure"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Procedure", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_procedure","?,?,?,?","Prosedur",4,new String[]{
                                        rs.getString("no_rawat"),rs.getString("kode"),rs.getString("status_lanjut"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void condition(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,reg_periksa.status_lanjut,concat(reg_periksa.tgl_registrasi,' ',reg_periksa.jam_reg) as pulang,"+
                   "satu_sehat_encounter.id_encounter,diagnosa_pasien.kd_penyakit,penyakit.nm_penyakit,ifnull(satu_sehat_condition.id_condition,'') as id_condition "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join diagnosa_pasien on diagnosa_pasien.no_rawat=reg_periksa.no_rawat "+
                   "inner join penyakit on diagnosa_pasien.kd_penyakit=penyakit.kd_penyakit left join satu_sehat_condition on satu_sehat_condition.no_rawat=diagnosa_pasien.no_rawat "+
                   "and satu_sehat_condition.kd_penyakit=diagnosa_pasien.kd_penyakit and satu_sehat_condition.status=diagnosa_pasien.status "+
                   "where reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_condition").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Condition\"," +
                                            "\"clinicalStatus\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\"," +
                                                        "\"code\": \"active\"," +
                                                        "\"display\": \"Active\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\"," +
                                                            "\"code\": \"encounter-diagnosis\"," +
                                                            "\"display\": \"Encounter Diagnosis\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://hl7.org/fhir/sid/icd-10\"," +
                                                        "\"code\": \""+rs.getString("kd_penyakit")+"\"," +
                                                        "\"display\": \""+rs.getString("nm_penyakit")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Diagnosa pasien "+rs.getString("nm_pasien")+" selama kunjungan/dirawat dari tanggal "+rs.getString("tgl_registrasi")+" "+rs.getString("jam_reg")+" sampai "+rs.getString("pulang")+"\"" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Condition"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Condition", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_condition","?,?,?,?","Diagnosa",4,new String[]{
                                        rs.getString("no_rawat"),rs.getString("kd_penyakit"),rs.getString("status_lanjut"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,pasien.nm_pasien,pasien.no_ktp,reg_periksa.status_lanjut,concat(reg_periksa.tgl_registrasi,' ',reg_periksa.jam_reg) as pulang,"+
                   "satu_sehat_encounter.id_encounter,diagnosa_pasien.kd_penyakit,penyakit.nm_penyakit,ifnull(satu_sehat_condition.id_condition,'') as id_condition "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join diagnosa_pasien on diagnosa_pasien.no_rawat=reg_periksa.no_rawat "+
                   "inner join penyakit on diagnosa_pasien.kd_penyakit=penyakit.kd_penyakit left join satu_sehat_condition on satu_sehat_condition.no_rawat=diagnosa_pasien.no_rawat "+
                   "and satu_sehat_condition.kd_penyakit=diagnosa_pasien.kd_penyakit and satu_sehat_condition.status=diagnosa_pasien.status "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_condition").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Condition\"," +
                                            "\"clinicalStatus\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\"," +
                                                        "\"code\": \"active\"," +
                                                        "\"display\": \"Active\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\"," +
                                                            "\"code\": \"encounter-diagnosis\"," +
                                                            "\"display\": \"Encounter Diagnosis\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://hl7.org/fhir/sid/icd-10\"," +
                                                        "\"code\": \""+rs.getString("kd_penyakit")+"\"," +
                                                        "\"display\": \""+rs.getString("nm_penyakit")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Diagnosa pasien "+rs.getString("nm_pasien")+" selama kunjungan/dirawat dari tanggal "+rs.getString("tgl_registrasi")+" "+rs.getString("jam_reg")+" sampai "+rs.getString("pulang")+"\"" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Condition"+"\n");
                                TeksArea.append("Request JSON : "+json+"\n");
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Condition", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json+"\n");
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_condition","?,?,?,?","Diagnosa",4,new String[]{
                                        rs.getString("no_rawat"),rs.getString("kd_penyakit"),rs.getString("status_lanjut"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void dietgizi(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,"+
                   "pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,catatan_adime_gizi.instruksi,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,catatan_adime_gizi.tanggal,"+
                   "ifnull(satu_sehat_diet.id_diet,'') as satu_sehat_diet "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join catatan_adime_gizi on catatan_adime_gizi.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on catatan_adime_gizi.nip=pegawai.nik "+
                   "left join satu_sehat_diet on satu_sehat_diet.no_rawat=catatan_adime_gizi.no_rawat "+
                   "and satu_sehat_diet.tanggal=catatan_adime_gizi.tanggal "+
                   "where catatan_adime_gizi.instruksi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText()+" ");
                ps.setString(2,Tanggal2.getText()+" ");
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_diet").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\" : \"Composition\"," +
                                            "\"identifier\" : {" +
                                                "\"system\" : \"http://sys-ids.kemkes.go.id/composition/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"value\" : \""+rs.getString("no_rawat")+"\"" +
                                            "}," +
                                            "\"status\" : \"final\"," +
                                            "\"type\" : {" +
                                                "\"coding\" : [" +
                                                    "{" +
                                                        "\"system\" : \"http://loinc.org\"," +
                                                        "\"code\" : \"18842-5\"," +
                                                        "\"display\" : \"Discharge summary\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"category\" : [" +
                                                "{" +
                                                    "\"coding\" : [" +
                                                        "{" +
                                                            "\"system\" : \"http://loinc.org\"," +
                                                            "\"code\" : \"LP173421-1\"," +
                                                            "\"display\" : \"Report\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"subject\" : {" +
                                                "\"reference\" : \"Patient/"+idpasien+"\"," +
                                                "\"display\" : \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\" : {" +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\","+
                                                "\"display\" : \"Kunjungan "+rs.getString("nm_pasien")+" pada tanggal "+rs.getString("tgl_registrasi")+" dengan nomor kunjungan "+rs.getString("no_rawat")+"\""+
                                            "}," +
                                            "\"date\" : \""+rs.getString("tanggal").replaceAll(" ","T")+"01+07:00\" ," +
                                            "\"author\" : [" +
                                                "{" +
                                                    "\"reference\" : \"Practitioner/"+iddokter+"\"," +
                                                    "\"display\" : \""+rs.getString("nama")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"title\" : \"Modul Gizi\"," +
                                            "\"custodian\" : {" +
                                                "\"reference\" : \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                            "}," +
                                            "\"section\" : [" +
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : [" +
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"42344-2\" ," +
                                                                "\"display\" : \"Discharge diet (narrative)\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"text\" : {" +
                                                        "\"status\" : \"additional\"," +
                                                        "\"div\" : \""+rs.getString("instruksi").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Composition");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Composition", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diet","?,?,?","Diet/Gizi",3,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tanggal"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,"+
                   "pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,catatan_adime_gizi.instruksi,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,catatan_adime_gizi.tanggal,"+
                   "ifnull(satu_sehat_diet.id_diet,'') as satu_sehat_diet "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join catatan_adime_gizi on catatan_adime_gizi.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on catatan_adime_gizi.nip=pegawai.nik "+
                   "left join satu_sehat_diet on satu_sehat_diet.no_rawat=catatan_adime_gizi.no_rawat "+
                   "and satu_sehat_diet.tanggal=catatan_adime_gizi.tanggal "+
                   "where catatan_adime_gizi.instruksi<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText()+" ");
                ps.setString(2,Tanggal2.getText()+" ");
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_diet").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\" : \"Composition\" ," +
                                            "\"identifier\" : {" +
                                                "\"system\" : \"http://sys-ids.kemkes.go.id/composition/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"value\" : \""+rs.getString("no_rawat")+"\"" +
                                            "}," +
                                            "\"status\" : \"final\"," +
                                            "\"type\" : {" +
                                                "\"coding\" : [" +
                                                    "{" +
                                                        "\"system\" : \"http://loinc.org\" ," +
                                                        "\"code\" : \"18842-5\" ," +
                                                        "\"display\" : \"Discharge summary\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"category\" : [" +
                                                "{" +
                                                    "\"coding\" : [" +
                                                        "{" +
                                                            "\"system\" : \"http://loinc.org\" ," +
                                                            "\"code\" : \"LP173421-1\"," +
                                                            "\"display\" : \"Report\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"subject\" : {" +
                                                "\"reference\" : \"Patient/"+idpasien+"\" ," +
                                                "\"display\" : \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\" : {" +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\","+
                                                "\"display\" : \"Kunjungan "+rs.getString("nm_pasien")+" pada tanggal "+rs.getString("tgl_registrasi")+" dengan nomor kunjungan "+rs.getString("no_rawat")+"\""+
                                            "}," +
                                            "\"date\" : \""+rs.getString("tanggal").replaceAll(" ","T")+"01+07:00\"," +
                                            "\"author\" : [" +
                                                "{" +
                                                    "\"reference\" : \"Practitioner/"+iddokter+"\"," +
                                                    "\"display\" : \""+rs.getString("nama")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"title\" : \"Modul Gizi\"," +
                                            "\"custodian\" : {" +
                                                "\"reference\" : \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                            "}," +
                                            "\"section\" : [" +
                                                "{" +
                                                    "\"code\" : {" +
                                                        "\"coding\" : [" +
                                                            "{" +
                                                                "\"system\" : \"http://loinc.org\"," +
                                                                "\"code\" : \"42344-2\" ," +
                                                                "\"display\" : \"Discharge diet (narrative)\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"text\" : {" +
                                                        "\"status\" : \"additional\" ," +
                                                        "\"div\" : \""+rs.getString("instruksi").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                                    "}" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Composition");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Composition", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diet","?,?,?","Diet/Gizi",3,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tanggal"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void medication(){
        try{
            ps=koneksi.prepareStatement(
                   "select satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,databarang.status,"+
                   "satu_sehat_mapping_obat.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,"+
                   "satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,ifnull(satu_sehat_medication.id_medication,'') as id_medication "+
                   "from satu_sehat_mapping_obat inner join databarang on satu_sehat_mapping_obat.kode_brng=databarang.kode_brng "+
                   "left join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   "order by satu_sehat_mapping_obat.obat_display");
            try {
                rs=ps.executeQuery();
                while(rs.next()){
                    if(!rs.getString("id_medication").equals("")){
                        try{
                            headers = new HttpHeaders();
                            headers.setContentType(MediaType.APPLICATION_JSON);
                            headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                            json = "{" +
                                        "\"resourceType\": \"Medication\"," +
                                        "\"id\": \""+rs.getString("id_medication")+"\"," +
                                        "\"meta\": {" +
                                            "\"profile\": [" +
                                                "\"https://fhir.kemkes.go.id/r4/StructureDefinition/Medication\"" +
                                            "]" +
                                        "}," +
                                        "\"identifier\": [" +
                                            "{" +
                                                "\"system\" : \"http://sys-ids.kemkes.go.id/medication/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"use\": \"official\"," +
                                                "\"value\" : \""+rs.getString("kode_brng")+"\"" +
                                            "}" +
                                        "]," +
                                        "\"code\": {" +
                                            "\"coding\": [" +
                                                "{" +
                                                    "\"system\": \""+rs.getString("obat_system")+"\"," +
                                                    "\"code\": \""+rs.getString("obat_code")+"\"," +
                                                    "\"display\": \""+rs.getString("obat_display")+"\"" +
                                                "}" +
                                            "]" +
                                        "}," +
                                        "\"status\": \""+rs.getString("status").replaceAll("0","inactive").replaceAll("1","active")+"\"," +
                                        "\"form\": {" +
                                            "\"coding\": [" +
                                                "{" +
                                                    "\"system\": \""+rs.getString("form_system")+"\"," +
                                                    "\"code\": \""+rs.getString("form_code")+"\"," +
                                                    "\"display\": \""+rs.getString("form_display")+"\"" +
                                                "}" +
                                            "]" +
                                        "}," +
                                        "\"extension\": [" +
                                            "{" +
                                                "\"url\": \"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType\"," +
                                                    "\"valueCodeableConcept\": {" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.kemkes.go.id/CodeSystem/medication-type\"," +
                                                            "\"code\": \"NC\"," +
                                                            "\"display\": \"Non-compound\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "}" +
                                        "]" +
                                    "}";
                            TeksArea.append("URL : "+link+"/Medication/"+rs.getString("id_medication"));
                            TeksArea.append("Request JSON : "+json);
                            requestEntity = new HttpEntity(json,headers);
                            json=api.getRest().exchange(link+"/Medication/"+rs.getString("id_medication"), HttpMethod.PUT, requestEntity, String.class).getBody();
                            TeksArea.append("Result JSON : "+json);
                        }catch(Exception e){
                            TeksArea.append("Notifikasi Bridging : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void medicationrequest(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,resep_dokter.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter.aturan_pakai,resep_dokter.no_resep,ifnull(satu_sehat_medicationrequest.id_medicationrequest,'') as id_medicationrequest "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter on resep_dokter.no_resep=resep_obat.no_resep "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationrequest on satu_sehat_medicationrequest.no_resep=resep_dokter.no_resep and satu_sehat_medicationrequest.kode_brng=resep_dokter.kode_brng "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/medicationrequest-category\"," +
                                                            "\"code\": \"outpatient\"," +
                                                            "\"display\": \"Outpatient\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"authoredOn\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"patientInstruction\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dispenseRequest\": {" +
                                                "\"quantity\": {" +
                                                    "\"value\": "+rs.getString("jml")+"," +
                                                    "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                    "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                    "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                "}," +
                                                "\"performer\": {" +
                                                    "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                                "}" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationrequest","?,?,?","Obat/Alkes",3,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,resep_dokter.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter.aturan_pakai,resep_dokter.no_resep,ifnull(satu_sehat_medicationrequest.id_medicationrequest,'') as id_medicationrequest "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter on resep_dokter.no_resep=resep_obat.no_resep "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationrequest on satu_sehat_medicationrequest.no_resep=resep_dokter.no_resep and satu_sehat_medicationrequest.kode_brng=resep_dokter.kode_brng "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/medicationrequest-category\"," +
                                                            "\"code\": \"inpatient\"," +
                                                            "\"display\": \"Inpatient\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"authoredOn\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"patientInstruction\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dispenseRequest\": {" +
                                                "\"quantity\": {" +
                                                    "\"value\": "+rs.getString("jml")+"," +
                                                    "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                    "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                    "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                "}," +
                                                "\"performer\": {" +
                                                    "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                                "}" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationrequest","?,?,?","Obat/Alkes",3,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter_racikan_detail.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,resep_dokter_racikan_detail.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter_racikan.aturan_pakai,resep_dokter_racikan.no_resep,ifnull(satu_sehat_medicationrequest_racikan.id_medicationrequest,'') as id_medicationrequest, "+
                   "resep_dokter_racikan_detail.no_racik from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter_racikan on resep_dokter_racikan.no_resep=resep_obat.no_resep "+
                   "inner join resep_dokter_racikan_detail on resep_dokter_racikan_detail.no_resep=resep_dokter_racikan.no_resep and resep_dokter_racikan_detail.no_racik=resep_dokter_racikan.no_racik "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter_racikan_detail.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationrequest_racikan on satu_sehat_medicationrequest_racikan.no_resep=resep_dokter_racikan_detail.no_resep and "+
                   "satu_sehat_medicationrequest_racikan.kode_brng=resep_dokter_racikan_detail.kode_brng and satu_sehat_medicationrequest_racikan.no_racik=resep_dokter_racikan_detail.no_racik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"-"+rs.getString("no_racik")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/medicationrequest-category\"," +
                                                            "\"code\": \"outpatient\"," +
                                                            "\"display\": \"Outpatient\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"authoredOn\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"patientInstruction\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dispenseRequest\": {" +
                                                "\"quantity\": {" +
                                                    "\"value\": "+rs.getString("jml")+"," +
                                                    "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                    "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                    "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                "}," +
                                                "\"performer\": {" +
                                                    "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                                "}" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationrequest_racikan","?,?,?,?","Obat/Alkes",4,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),rs.getString("no_racik"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter_racikan_detail.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,resep_dokter_racikan_detail.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter_racikan.aturan_pakai,resep_dokter_racikan.no_resep,ifnull(satu_sehat_medicationrequest_racikan.id_medicationrequest,'') as id_medicationrequest, "+
                   "resep_dokter_racikan_detail.no_racik from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter_racikan on resep_dokter_racikan.no_resep=resep_obat.no_resep "+
                   "inner join resep_dokter_racikan_detail on resep_dokter_racikan_detail.no_resep=resep_dokter_racikan.no_resep and resep_dokter_racikan_detail.no_racik=resep_dokter_racikan.no_racik "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter_racikan_detail.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationrequest_racikan on satu_sehat_medicationrequest_racikan.no_resep=resep_dokter_racikan_detail.no_resep and "+
                   "satu_sehat_medicationrequest_racikan.kode_brng=resep_dokter_racikan_detail.kode_brng and satu_sehat_medicationrequest_racikan.no_racik=resep_dokter_racikan_detail.no_racik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/prescription-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"-"+rs.getString("no_racik")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/medicationrequest-category\"," +
                                                            "\"code\": \"inpatient\"," +
                                                            "\"display\": \"Inpatient\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"authoredOn\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"patientInstruction\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dispenseRequest\": {" +
                                                "\"quantity\": {" +
                                                    "\"value\": "+rs.getString("jml")+"," +
                                                    "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                    "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                    "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                "}," +
                                                "\"performer\": {" +
                                                    "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"" +
                                                "}" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationrequest_racikan","?,?,?,?","Obat/Alkes",4,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),rs.getString("no_racik"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void medicationdispense(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "detail_pemberian_obat.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,detail_pemberian_obat.jml,satu_sehat_medication.id_medication,"+
                   "aturan_pakai.aturan,resep_obat.no_resep,ifnull(satu_sehat_medicationdispense.id_medicationdispanse,'') as id_medicationdispanse,detail_pemberian_obat.no_batch,"+
                   "detail_pemberian_obat.no_faktur,detail_pemberian_obat.tgl_perawatan,detail_pemberian_obat.jam,satu_sehat_mapping_lokasi_depo_farmasi.id_lokasi_satusehat,"+
                   "bangsal.nm_bangsal from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join detail_pemberian_obat on detail_pemberian_obat.no_rawat=resep_obat.no_rawat and "+
                   "detail_pemberian_obat.tgl_perawatan=resep_obat.tgl_perawatan and detail_pemberian_obat.jam=resep_obat.jam "+
                   "inner join aturan_pakai on detail_pemberian_obat.no_rawat=aturan_pakai.no_rawat and "+
                   "detail_pemberian_obat.tgl_perawatan=aturan_pakai.tgl_perawatan and detail_pemberian_obat.jam=aturan_pakai.jam and "+
                   "detail_pemberian_obat.kode_brng=aturan_pakai.kode_brng "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join bangsal on bangsal.kd_bangsal=detail_pemberian_obat.kd_bangsal "+
                   "inner join satu_sehat_mapping_lokasi_depo_farmasi on satu_sehat_mapping_lokasi_depo_farmasi.kd_bangsal=bangsal.kd_bangsal "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationdispense on satu_sehat_medicationdispense.no_rawat=detail_pemberian_obat.no_rawat and "+
                   "satu_sehat_medicationdispense.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and "+
                   "satu_sehat_medicationdispense.jam=detail_pemberian_obat.jam and "+
                   "satu_sehat_medicationdispense.kode_brng=detail_pemberian_obat.kode_brng and "+
                   "satu_sehat_medicationdispense.no_batch=detail_pemberian_obat.no_batch and "+
                   "satu_sehat_medicationdispense.no_faktur=detail_pemberian_obat.no_faktur "+
                   "where reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationdispanse").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idrequest=Sequel.cariIsi("select satu_sehat_medicationrequest.id_medicationrequest from satu_sehat_medicationrequest where satu_sehat_medicationrequest.no_resep='"+rs.getString("no_resep")+"' and satu_sehat_medicationrequest.kode_brng='"+rs.getString("kode_brng")+"'");
                            arrSplit = rs.getString("aturan").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationDispense\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationdispense/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationdispense-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/fhir/CodeSystem/medicationdispense-category\"," +
                                                        "\"code\": \"outpatient\"," +
                                                        "\"display\": \"Outpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medication")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"actor\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                        "\"display\": \""+rs.getString("nama")+"\"" +
                                                    "}" +
                                                "}" +
                                            "],"+
                                            "\"location\": {" +
                                                "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                "\"display\": \""+rs.getString("nm_bangsal")+"\"" +
                                            "},"+
                                            (idrequest.equals("")?"":
                                                "\"authorizingPrescription\": [{" +
                                                    "\"reference\": \"MedicationRequest/"+idrequest+"\"" +
                                                "}],"
                                            )+
                                            "\"quantity\": {" +
                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                "\"code\": \""+rs.getString("denominator_code")+"\"," +
                                                "\"value\": "+rs.getString("jml")+
                                            "}," +
                                            "\"whenPrepared\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"Z\"," +
                                            "\"whenHandedOver\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"Z\","+
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"text\": \""+rs.getString("aturan")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationDispense");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationDispense", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                   Sequel.menyimpan2("satu_sehat_medicationdispense","?,?,?,?,?,?,?","Obat/Alkes",7,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam"),rs.getString("kode_brng"),rs.getString("no_batch"),rs.getString("no_faktur"),response.asText()
                                   });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "detail_pemberian_obat.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_peresepan,resep_obat.jam_peresepan,detail_pemberian_obat.jml,satu_sehat_medication.id_medication,"+
                   "aturan_pakai.aturan,resep_obat.no_resep,ifnull(satu_sehat_medicationdispense.id_medicationdispanse,'') as id_medicationdispanse,detail_pemberian_obat.no_batch,"+
                   "detail_pemberian_obat.no_faktur,detail_pemberian_obat.tgl_perawatan,detail_pemberian_obat.jam,satu_sehat_mapping_lokasi_depo_farmasi.id_lokasi_satusehat,"+
                   "bangsal.nm_bangsal from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join pegawai on resep_obat.kd_dokter=pegawai.nik "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join detail_pemberian_obat on detail_pemberian_obat.no_rawat=resep_obat.no_rawat and "+
                   "detail_pemberian_obat.tgl_perawatan=resep_obat.tgl_perawatan and detail_pemberian_obat.jam=resep_obat.jam "+
                   "inner join aturan_pakai on detail_pemberian_obat.no_rawat=aturan_pakai.no_rawat and "+
                   "detail_pemberian_obat.tgl_perawatan=aturan_pakai.tgl_perawatan and detail_pemberian_obat.jam=aturan_pakai.jam and "+
                   "detail_pemberian_obat.kode_brng=aturan_pakai.kode_brng "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=detail_pemberian_obat.kode_brng "+
                   "inner join bangsal on bangsal.kd_bangsal=detail_pemberian_obat.kd_bangsal "+
                   "inner join satu_sehat_mapping_lokasi_depo_farmasi on satu_sehat_mapping_lokasi_depo_farmasi.kd_bangsal=bangsal.kd_bangsal "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationdispense on satu_sehat_medicationdispense.no_rawat=detail_pemberian_obat.no_rawat and "+
                   "satu_sehat_medicationdispense.tgl_perawatan=detail_pemberian_obat.tgl_perawatan and "+
                   "satu_sehat_medicationdispense.jam=detail_pemberian_obat.jam and "+
                   "satu_sehat_medicationdispense.kode_brng=detail_pemberian_obat.kode_brng and "+
                   "satu_sehat_medicationdispense.no_batch=detail_pemberian_obat.no_batch and "+
                   "satu_sehat_medicationdispense.no_faktur=detail_pemberian_obat.no_faktur "+
                   "where reg_periksa.tgl_registrasi between ? and ?");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationdispanse").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idrequest=Sequel.cariIsi("select satu_sehat_medicationrequest.id_medicationrequest from satu_sehat_medicationrequest where satu_sehat_medicationrequest.no_resep='"+rs.getString("no_resep")+"' and satu_sehat_medicationrequest.kode_brng='"+rs.getString("kode_brng")+"'");
                            arrSplit = rs.getString("aturan").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationDispense\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationdispense/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"\"" +
                                                "}," +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationdispense-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/fhir/CodeSystem/medicationdispense-category\"," +
                                                        "\"code\": \"inpatient\"," +
                                                        "\"display\": \"Inpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medication")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"actor\": {" +
                                                        "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                        "\"display\": \""+rs.getString("nama")+"\"" +
                                                    "}" +
                                                "}" +
                                            "],"+
                                            "\"location\": {" +
                                                "\"reference\": \"Location/"+rs.getString("id_lokasi_satusehat")+"\"," +
                                                "\"display\": \""+rs.getString("nm_bangsal")+"\"" +
                                            "},"+
                                            (idrequest.equals("")?"":
                                                "\"authorizingPrescription\": [{" +
                                                    "\"reference\": \"MedicationRequest/"+idrequest+"\"" +
                                                "}],"
                                            )+
                                            "\"quantity\": {" +
                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                "\"code\": \""+rs.getString("denominator_code")+"\"," +
                                                "\"value\": "+rs.getString("jml")+
                                            "}," +
                                            "\"whenPrepared\": \""+rs.getString("tgl_peresepan")+"T"+rs.getString("jam_peresepan")+"Z\"," +
                                            "\"whenHandedOver\": \""+rs.getString("tgl_perawatan")+"T"+rs.getString("jam")+"Z\","+
                                            "\"dosageInstruction\": [" +
                                                "{" +
                                                    "\"sequence\": 1," +
                                                    "\"text\": \""+rs.getString("aturan")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationDispense");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationDispense", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                   Sequel.menyimpan2("satu_sehat_medicationdispense","?,?,?,?,?,?,?","Obat/Alkes",7,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam"),rs.getString("kode_brng"),rs.getString("no_batch"),rs.getString("no_faktur"),response.asText()
                                   });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void servicerequestradiologi() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_radiologi.noorder,permintaan_radiologi.tgl_permintaan,permintaan_radiologi.jam_permintaan,permintaan_radiologi.diagnosa_klinis,"+
                   "jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,"+
                   "ifnull(satu_sehat_servicerequest_radiologi.id_servicerequest,'') as id_servicerequest,permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"363679005\"," +
                                                            "\"display\": \"Imaging\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("nm_perawatan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("nm_perawatan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Radiologi/Petugas Radiologi\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_radiologi","?,?,?","No.Rawat",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_radiologi.noorder,permintaan_radiologi.tgl_permintaan,permintaan_radiologi.jam_permintaan,permintaan_radiologi.diagnosa_klinis,"+
                   "jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,"+
                   "ifnull(satu_sehat_servicerequest_radiologi.id_servicerequest,'') as id_servicerequest,permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"363679005\"," +
                                                            "\"display\": \"Imaging\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("nm_perawatan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("nm_perawatan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Radiologi/Petugas Radiologi\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_radiologi","?,?,?","No.Rawat",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void specimenradiologi() {
        try{
            ps=koneksi.prepareStatement(
                   "select pasien.nm_pasien,pasien.no_ktp,permintaan_radiologi.noorder,permintaan_radiologi.tgl_sampel,permintaan_radiologi.jam_sampel,"+
                   "satu_sehat_mapping_radiologi.sampel_code,satu_sehat_mapping_radiologi.sampel_system,satu_sehat_mapping_radiologi.sampel_display,satu_sehat_servicerequest_radiologi.id_servicerequest,"+
                   "permintaan_pemeriksaan_radiologi.kd_jenis_prw,ifnull(satu_sehat_specimen_radiologi.id_specimen,'') as id_specimen "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_specimen_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_specimen_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_specimen_radiologi.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_radiologi","?,?,?","No.Rawat",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select pasien.nm_pasien,pasien.no_ktp,permintaan_radiologi.noorder,permintaan_radiologi.tgl_sampel,permintaan_radiologi.jam_sampel,"+
                   "satu_sehat_mapping_radiologi.sampel_code,satu_sehat_mapping_radiologi.sampel_system,satu_sehat_mapping_radiologi.sampel_display,satu_sehat_servicerequest_radiologi.id_servicerequest,"+
                   "permintaan_pemeriksaan_radiologi.kd_jenis_prw,ifnull(satu_sehat_specimen_radiologi.id_specimen,'') as id_specimen "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_specimen_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_specimen_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_specimen_radiologi.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_radiologi","?,?,?","No.Rawat",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void observationradiologi() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_radiologi.noorder,"+
                   "permintaan_radiologi.tgl_hasil,permintaan_radiologi.jam_hasil,jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,"+
                   "satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,hasil_radiologi.hasil,permintaan_pemeriksaan_radiologi.kd_jenis_prw,"+
                   "satu_sehat_specimen_radiologi.id_specimen,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_radiologi.id_observation,'') as id_observation "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_radiologi on satu_sehat_specimen_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join periksa_radiologi on periksa_radiologi.no_rawat=permintaan_radiologi.no_rawat and periksa_radiologi.tgl_periksa=permintaan_radiologi.tgl_hasil "+
                   "and periksa_radiologi.jam=permintaan_radiologi.jam_hasil and periksa_radiologi.dokter_perujuk=permintaan_radiologi.dokter_perujuk "+
                   "inner join hasil_radiologi on periksa_radiologi.no_rawat=hasil_radiologi.no_rawat and periksa_radiologi.tgl_periksa=hasil_radiologi.tgl_periksa "+
                   "and periksa_radiologi.jam=hasil_radiologi.jam "+
                   "left join satu_sehat_observation_radiologi on satu_sehat_specimen_radiologi.noorder=satu_sehat_observation_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=satu_sehat_observation_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_radiologi.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"imaging\"," +
                                                            "\"display\": \"Imaging\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Radiologi "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+rs.getString("hasil").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_radiologi","?,?,?","No.Order",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_radiologi.noorder,"+
                   "permintaan_radiologi.tgl_hasil,permintaan_radiologi.jam_hasil,jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,"+
                   "satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,hasil_radiologi.hasil,permintaan_pemeriksaan_radiologi.kd_jenis_prw,"+
                   "satu_sehat_specimen_radiologi.id_specimen,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_radiologi.id_observation,'') as id_observation "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_radiologi on satu_sehat_specimen_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join periksa_radiologi on periksa_radiologi.no_rawat=permintaan_radiologi.no_rawat and periksa_radiologi.tgl_periksa=permintaan_radiologi.tgl_hasil "+
                   "and periksa_radiologi.jam=permintaan_radiologi.jam_hasil and periksa_radiologi.dokter_perujuk=permintaan_radiologi.dokter_perujuk "+
                   "inner join hasil_radiologi on periksa_radiologi.no_rawat=hasil_radiologi.no_rawat and periksa_radiologi.tgl_periksa=hasil_radiologi.tgl_periksa "+
                   "and periksa_radiologi.jam=hasil_radiologi.jam "+
                   "left join satu_sehat_observation_radiologi on satu_sehat_specimen_radiologi.noorder=satu_sehat_observation_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=satu_sehat_observation_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_radiologi.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"imaging\"," +
                                                            "\"display\": \"Imaging\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Radiologi "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+rs.getString("hasil").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_radiologi","?,?,?","No.Order",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void diagnosticreportradiologi() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_radiologi.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_radiologi.noorder,permintaan_radiologi.tgl_hasil,permintaan_radiologi.jam_hasil,permintaan_radiologi.diagnosa_klinis,"+
                   "jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,"+
                   "satu_sehat_servicerequest_radiologi.id_servicerequest,permintaan_pemeriksaan_radiologi.kd_jenis_prw,satu_sehat_specimen_radiologi.id_specimen,"+
                   "satu_sehat_observation_radiologi.id_observation,ifnull(satu_sehat_diagnosticreport_radiologi.id_diagnosticreport,'') as id_diagnosticreport,hasil_radiologi.hasil "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_specimen_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_specimen_radiologi.kd_jenis_prw "+
                   "inner join periksa_radiologi on periksa_radiologi.no_rawat=permintaan_radiologi.no_rawat and periksa_radiologi.tgl_periksa=permintaan_radiologi.tgl_hasil "+
                   "and periksa_radiologi.jam=permintaan_radiologi.jam_hasil and periksa_radiologi.dokter_perujuk=permintaan_radiologi.dokter_perujuk "+
                   "inner join hasil_radiologi on periksa_radiologi.no_rawat=hasil_radiologi.no_rawat and periksa_radiologi.tgl_periksa=hasil_radiologi.tgl_periksa "+
                   "and periksa_radiologi.jam=hasil_radiologi.jam "+
                   "inner join satu_sehat_observation_radiologi on satu_sehat_specimen_radiologi.noorder=satu_sehat_observation_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=satu_sehat_observation_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_diagnosticreport_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_diagnosticreport_radiologi.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_radiologi.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/rad\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"RAD\"," +
                                                            "\"display\": \"Radiology\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("hasil").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_radiologi","?,?,?","No.Order",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_radiologi.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_radiologi.noorder,permintaan_radiologi.tgl_hasil,permintaan_radiologi.jam_hasil,permintaan_radiologi.diagnosa_klinis,"+
                   "jns_perawatan_radiologi.nm_perawatan,satu_sehat_mapping_radiologi.code,satu_sehat_mapping_radiologi.system,satu_sehat_mapping_radiologi.display,"+
                   "satu_sehat_servicerequest_radiologi.id_servicerequest,permintaan_pemeriksaan_radiologi.kd_jenis_prw,satu_sehat_specimen_radiologi.id_specimen,"+
                   "satu_sehat_observation_radiologi.id_observation,ifnull(satu_sehat_diagnosticreport_radiologi.id_diagnosticreport,'') as id_diagnosticreport,hasil_radiologi.hasil "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_radiologi on permintaan_radiologi.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_pemeriksaan_radiologi on permintaan_pemeriksaan_radiologi.noorder=permintaan_radiologi.noorder "+
                   "inner join jns_perawatan_radiologi on jns_perawatan_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_mapping_radiologi on satu_sehat_mapping_radiologi.kd_jenis_prw=jns_perawatan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_servicerequest_radiologi on satu_sehat_servicerequest_radiologi.noorder=permintaan_pemeriksaan_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=permintaan_pemeriksaan_radiologi.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_specimen_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_specimen_radiologi.kd_jenis_prw "+
                   "inner join periksa_radiologi on periksa_radiologi.no_rawat=permintaan_radiologi.no_rawat and periksa_radiologi.tgl_periksa=permintaan_radiologi.tgl_hasil "+
                   "and periksa_radiologi.jam=permintaan_radiologi.jam_hasil and periksa_radiologi.dokter_perujuk=permintaan_radiologi.dokter_perujuk "+
                   "inner join hasil_radiologi on periksa_radiologi.no_rawat=hasil_radiologi.no_rawat and periksa_radiologi.tgl_periksa=hasil_radiologi.tgl_periksa "+
                   "and periksa_radiologi.jam=hasil_radiologi.jam "+
                   "inner join satu_sehat_observation_radiologi on satu_sehat_specimen_radiologi.noorder=satu_sehat_observation_radiologi.noorder "+
                   "and satu_sehat_specimen_radiologi.kd_jenis_prw=satu_sehat_observation_radiologi.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_radiologi on satu_sehat_servicerequest_radiologi.noorder=satu_sehat_diagnosticreport_radiologi.noorder "+
                   "and satu_sehat_servicerequest_radiologi.kd_jenis_prw=satu_sehat_diagnosticreport_radiologi.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_radiologi.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/rad\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("kd_jenis_prw")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"RAD\"," +
                                                            "\"display\": \"Radiology\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("hasil").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_radiologi","?,?,?","No.Order",3,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void servicerequestlabpk() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,reg_periksa.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_lab.noorder,permintaan_lab.tgl_permintaan,permintaan_lab.jam_permintaan,permintaan_lab.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "ifnull(satu_sehat_servicerequest_lab.id_servicerequest,'') as id_servicerequest,permintaan_detail_permintaan_lab.id_template,permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "left join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"108252007\"," +
                                                            "\"display\": \"Laboratory procedure\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("Pemeriksaan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("Pemeriksaan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Laborat/Petugas Laborat\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,reg_periksa.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_lab.noorder,permintaan_lab.tgl_permintaan,permintaan_lab.jam_permintaan,permintaan_lab.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "ifnull(satu_sehat_servicerequest_lab.id_servicerequest,'') as id_servicerequest,permintaan_detail_permintaan_lab.id_template,permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "left join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"108252007\"," +
                                                            "\"display\": \"Laboratory procedure\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("Pemeriksaan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("Pemeriksaan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Laborat/Petugas Laborat\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void servicerequestlabmb() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,reg_periksa.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_labmb.noorder,permintaan_labmb.tgl_permintaan,permintaan_labmb.jam_permintaan,permintaan_labmb.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "ifnull(satu_sehat_servicerequest_lab_mb.id_servicerequest,'') as id_servicerequest,permintaan_detail_permintaan_labmb.id_template,permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "left join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"108252007\"," +
                                                            "\"display\": \"Laboratory procedure\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("Pemeriksaan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("Pemeriksaan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Laborat/Petugas Laborat\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,reg_periksa.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_labmb.noorder,permintaan_labmb.tgl_permintaan,permintaan_labmb.jam_permintaan,permintaan_labmb.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "ifnull(satu_sehat_servicerequest_lab_mb.id_servicerequest,'') as id_servicerequest,permintaan_detail_permintaan_labmb.id_template,permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join pegawai on pegawai.nik=reg_periksa.kd_dokter "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "left join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_servicerequest").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"ServiceRequest\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/servicerequest/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"active\"," +
                                            "\"intent\": \"order\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://snomed.info/sct\"," +
                                                            "\"code\": \"108252007\"," +
                                                            "\"display\": \"Laboratory procedure\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "],"+
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]," +
                                                "\"text\": \""+rs.getString("Pemeriksaan")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Permintaan "+rs.getString("Pemeriksaan")+" atas nama pasien "+rs.getString("nm_pasien")+" No.RM "+rs.getString("no_rkm_medis")+" No.Rawat "+rs.getString("no_rawat")+", pada tanggal "+rs.getString("tgl_permintaan")+" "+rs.getString("jam_permintaan")+"\"" +
                                            "}," +
                                            "\"authoredOn\" : \""+rs.getString("tgl_permintaan")+"T"+rs.getString("jam_permintaan")+"+07:00\"," +
                                            "\"requester\": {" +
                                                "\"reference\": \"Practitioner/"+iddokter+"\"," +
                                                "\"display\": \""+rs.getString("nama")+"\"" +
                                            "}," +
                                            "\"performer\": [{" +
                                                "\"reference\": \"Organization/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"display\": \"Ruang Laborat/Petugas Laborat\"" +
                                            "}]," +
                                            "\"reasonCode\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("diagnosa_klinis")+"\"" +
                                                "}" +
                                            "]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/ServiceRequest");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/ServiceRequest", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_servicerequest_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void specimenlabpk() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_lab.noorder,"+
                   "permintaan_lab.tgl_sampel,permintaan_lab.jam_sampel,template_laboratorium.Pemeriksaan,"+
                   "satu_sehat_mapping_lab.sampel_code,satu_sehat_mapping_lab.sampel_system,satu_sehat_mapping_lab.sampel_display,satu_sehat_servicerequest_lab.id_servicerequest,"+
                   "permintaan_detail_permintaan_lab.id_template,ifnull(satu_sehat_specimen_lab.id_specimen,'') as id_specimen,permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "left join satu_sehat_specimen_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_specimen_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_specimen_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_specimen_lab.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_lab.noorder,"+
                   "permintaan_lab.tgl_sampel,permintaan_lab.jam_sampel,template_laboratorium.Pemeriksaan,"+
                   "satu_sehat_mapping_lab.sampel_code,satu_sehat_mapping_lab.sampel_system,satu_sehat_mapping_lab.sampel_display,satu_sehat_servicerequest_lab.id_servicerequest,"+
                   "permintaan_detail_permintaan_lab.id_template,ifnull(satu_sehat_specimen_lab.id_specimen,'') as id_specimen,permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "left join satu_sehat_specimen_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_specimen_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_specimen_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_specimen_lab.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_lab","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void specimenlabmb() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_labmb.noorder,"+
                   "permintaan_labmb.tgl_sampel,permintaan_labmb.jam_sampel,template_laboratorium.Pemeriksaan,"+
                   "satu_sehat_mapping_lab.sampel_code,satu_sehat_mapping_lab.sampel_system,satu_sehat_mapping_lab.sampel_display,satu_sehat_servicerequest_lab_mb.id_servicerequest,"+
                   "permintaan_detail_permintaan_labmb.id_template,ifnull(satu_sehat_specimen_lab_mb.id_specimen,'') as id_specimen,permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "left join satu_sehat_specimen_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_specimen_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_specimen_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_specimen_lab_mb.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_lab_mb","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_labmb.noorder,"+
                   "permintaan_labmb.tgl_sampel,permintaan_labmb.jam_sampel,template_laboratorium.Pemeriksaan,"+
                   "satu_sehat_mapping_lab.sampel_code,satu_sehat_mapping_lab.sampel_system,satu_sehat_mapping_lab.sampel_display,satu_sehat_servicerequest_lab_mb.id_servicerequest,"+
                   "permintaan_detail_permintaan_labmb.id_template,ifnull(satu_sehat_specimen_lab_mb.id_specimen,'') as id_specimen,permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "left join satu_sehat_specimen_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_specimen_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_specimen_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_specimen_lab_mb.kd_jenis_prw "+
                   ""+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&rs.getString("id_specimen").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Specimen\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/specimen/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"available\"," +
                                            "\"type\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("sampel_system")+"\"," +
                                                        "\"code\": \""+rs.getString("sampel_code")+"\"," +
                                                        "\"display\": \""+rs.getString("sampel_display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"request\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"receivedTime\": \""+rs.getString("tgl_sampel")+"T"+rs.getString("jam_sampel")+"+07:00\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/Specimen");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Specimen", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_specimen_lab_mb","?,?,?,?","No.Rawat",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void observationlabpk() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_lab.noorder,"+
                   "permintaan_lab.tgl_hasil,permintaan_lab.jam_hasil,template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,"+
                   "satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,detail_periksa_lab.nilai,detail_periksa_lab.nilai_rujukan,"+
                   "detail_periksa_lab.keterangan,permintaan_detail_permintaan_lab.id_template,satu_sehat_specimen_lab.id_specimen,"+
                   "periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_lab.id_observation,'') as id_observation,detail_periksa_lab.kd_jenis_prw,template_laboratorium.satuan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_specimen_lab on satu_sehat_specimen_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_lab.no_rawat and periksa_lab.tgl_periksa=permintaan_lab.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_lab.jam_hasil and periksa_lab.dokter_perujuk=permintaan_lab.dokter_perujuk "+
                   "inner join detail_periksa_lab on periksa_lab.no_rawat=detail_periksa_lab.no_rawat and periksa_lab.tgl_periksa=detail_periksa_lab.tgl_periksa "+
                   "and periksa_lab.jam=detail_periksa_lab.jam "+
                   "left join satu_sehat_observation_lab on satu_sehat_specimen_lab.noorder=satu_sehat_observation_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=satu_sehat_observation_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=satu_sehat_observation_lab.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"laboratory\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Lab "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+("Hasil Lab : "+rs.getString("nilai")+" "+rs.getString("satuan")+", Nilai Rujukan : "+rs.getString("nilai_rujukan")+(rs.getString("keterangan").equals("")?"":", Keterangan : "+rs.getString("keterangan"))).replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_lab.noorder,"+
                   "permintaan_lab.tgl_hasil,permintaan_lab.jam_hasil,template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,"+
                   "satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,detail_periksa_lab.nilai,detail_periksa_lab.nilai_rujukan,"+
                   "detail_periksa_lab.keterangan,permintaan_detail_permintaan_lab.id_template,satu_sehat_specimen_lab.id_specimen,"+
                   "periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_lab.id_observation,'') as id_observation,detail_periksa_lab.kd_jenis_prw,template_laboratorium.satuan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_specimen_lab on satu_sehat_specimen_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_lab.no_rawat and periksa_lab.tgl_periksa=permintaan_lab.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_lab.jam_hasil and periksa_lab.dokter_perujuk=permintaan_lab.dokter_perujuk "+
                   "inner join detail_periksa_lab on periksa_lab.no_rawat=detail_periksa_lab.no_rawat and periksa_lab.tgl_periksa=detail_periksa_lab.tgl_periksa "+
                   "and periksa_lab.jam=detail_periksa_lab.jam "+
                   "left join satu_sehat_observation_lab on satu_sehat_specimen_lab.noorder=satu_sehat_observation_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=satu_sehat_observation_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=satu_sehat_observation_lab.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"laboratory\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Lab "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+("Hasil Lab : "+rs.getString("nilai")+" "+rs.getString("satuan")+", Nilai Rujukan : "+rs.getString("nilai_rujukan")+(rs.getString("keterangan").equals("")?"":", Keterangan : "+rs.getString("keterangan"))).replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void observationlabmb() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_labmb.noorder,"+
                   "permintaan_labmb.tgl_hasil,permintaan_labmb.jam_hasil,template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,"+
                   "satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,detail_periksa_lab.nilai,detail_periksa_lab.nilai_rujukan,"+
                   "detail_periksa_lab.keterangan,permintaan_detail_permintaan_labmb.id_template,satu_sehat_specimen_lab_mb.id_specimen,"+
                   "periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_lab_mb.id_observation,'') as id_observation,detail_periksa_lab.kd_jenis_prw,template_laboratorium.satuan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_specimen_lab_mb on satu_sehat_specimen_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_labmb.no_rawat and periksa_lab.tgl_periksa=permintaan_labmb.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_labmb.jam_hasil and periksa_lab.dokter_perujuk=permintaan_labmb.dokter_perujuk "+
                   "inner join detail_periksa_lab on periksa_lab.no_rawat=detail_periksa_lab.no_rawat and periksa_lab.tgl_periksa=detail_periksa_lab.tgl_periksa "+
                   "and periksa_lab.jam=detail_periksa_lab.jam "+
                   "left join satu_sehat_observation_lab_mb on satu_sehat_specimen_lab_mb.noorder=satu_sehat_observation_lab_mb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=satu_sehat_observation_lab_mb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=satu_sehat_observation_lab_mb.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"laboratory\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Lab "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+("Hasil Lab : "+rs.getString("nilai")+" "+rs.getString("satuan")+", Nilai Rujukan : "+rs.getString("nilai_rujukan")+(rs.getString("keterangan").equals("")?"":", Keterangan : "+rs.getString("keterangan"))).replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_lab_mb","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,permintaan_labmb.noorder,"+
                   "permintaan_labmb.tgl_hasil,permintaan_labmb.jam_hasil,template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,"+
                   "satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,detail_periksa_lab.nilai,detail_periksa_lab.nilai_rujukan,"+
                   "detail_periksa_lab.keterangan,permintaan_detail_permintaan_labmb.id_template,satu_sehat_specimen_lab_mb.id_specimen,"+
                   "periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktppraktisi,satu_sehat_encounter.id_encounter,"+
                   "ifnull(satu_sehat_observation_lab_mb.id_observation,'') as id_observation,detail_periksa_lab.kd_jenis_prw,template_laboratorium.satuan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_specimen_lab_mb on satu_sehat_specimen_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_labmb.no_rawat and periksa_lab.tgl_periksa=permintaan_labmb.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_labmb.jam_hasil and periksa_lab.dokter_perujuk=permintaan_labmb.dokter_perujuk "+
                   "inner join detail_periksa_lab on periksa_lab.no_rawat=detail_periksa_lab.no_rawat and periksa_lab.tgl_periksa=detail_periksa_lab.tgl_periksa "+
                   "and periksa_lab.jam=detail_periksa_lab.jam "+
                   "left join satu_sehat_observation_lab_mb on satu_sehat_specimen_lab_mb.noorder=satu_sehat_observation_lab_mb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=satu_sehat_observation_lab_mb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=satu_sehat_observation_lab_mb.kd_jenis_prw "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_observation").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"Observation\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/observation/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\"," +
                                                            "\"code\": \"laboratory\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \""+rs.getString("system")+"\"," +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"," +
                                                "\"display\": \"Hasil Pemeriksaan Lab "+rs.getString("nm_perawatan")+" No.Rawat "+rs.getString("no_rawat")+", Atas Nama Pasien "+rs.getString("nm_pasien")+", No.RM "+rs.getString("no_rkm_medis")+", Pada Tanggal "+rs.getString("tgl_hasil")+" "+rs.getString("jam_hasil")+"\"" +
                                            "}," +
                                            "\"specimen\": {" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"valueString\": \""+("Hasil Lab : "+rs.getString("nilai")+" "+rs.getString("satuan")+", Nilai Rujukan : "+rs.getString("nilai_rujukan")+(rs.getString("keterangan").equals("")?"":", Keterangan : "+rs.getString("keterangan"))).replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                       "}";
                                TeksArea.append("URL : "+link+"/Observation");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/Observation", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_observation_lab_mb","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void diagnosticreportlabpk() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_lab.noorder,permintaan_lab.tgl_hasil,permintaan_lab.jam_hasil,permintaan_lab.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "satu_sehat_servicerequest_lab.id_servicerequest,permintaan_detail_permintaan_lab.id_template,satu_sehat_specimen_lab.id_specimen,"+
                   "satu_sehat_observation_lab.id_observation,ifnull(satu_sehat_diagnosticreport_lab.id_diagnosticreport,'') as id_diagnosticreport,saran_kesan_lab.kesan,"+
                   "template_laboratorium.kd_jenis_prw from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_specimen_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_specimen_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_specimen_lab.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_lab.no_rawat and periksa_lab.tgl_periksa=permintaan_lab.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_lab.jam_hasil and periksa_lab.dokter_perujuk=permintaan_lab.dokter_perujuk "+
                   "inner join saran_kesan_lab on periksa_lab.no_rawat=saran_kesan_lab.no_rawat and periksa_lab.tgl_periksa=saran_kesan_lab.tgl_periksa "+
                   "and periksa_lab.jam=saran_kesan_lab.jam "+
                   "inner join satu_sehat_observation_lab on satu_sehat_specimen_lab.noorder=satu_sehat_observation_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=satu_sehat_observation_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=satu_sehat_observation_lab.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_diagnosticreport_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_diagnosticreport_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_diagnosticreport_lab.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/lab\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"LAB\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("kesan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_lab.noorder,permintaan_lab.tgl_hasil,permintaan_lab.jam_hasil,permintaan_lab.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "satu_sehat_servicerequest_lab.id_servicerequest,permintaan_detail_permintaan_lab.id_template,satu_sehat_specimen_lab.id_specimen,"+
                   "satu_sehat_observation_lab.id_observation,ifnull(satu_sehat_diagnosticreport_lab.id_diagnosticreport,'') as id_diagnosticreport,saran_kesan_lab.kesan,"+
                   "template_laboratorium.kd_jenis_prw from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_lab on permintaan_lab.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_lab on permintaan_detail_permintaan_lab.noorder=permintaan_lab.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab on satu_sehat_servicerequest_lab.noorder=permintaan_detail_permintaan_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=permintaan_detail_permintaan_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=permintaan_detail_permintaan_lab.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_specimen_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_specimen_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_specimen_lab.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_lab.no_rawat and periksa_lab.tgl_periksa=permintaan_lab.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_lab.jam_hasil and periksa_lab.dokter_perujuk=permintaan_lab.dokter_perujuk "+
                   "inner join saran_kesan_lab on periksa_lab.no_rawat=saran_kesan_lab.no_rawat and periksa_lab.tgl_periksa=saran_kesan_lab.tgl_periksa "+
                   "and periksa_lab.jam=saran_kesan_lab.jam "+
                   "inner join satu_sehat_observation_lab on satu_sehat_specimen_lab.noorder=satu_sehat_observation_lab.noorder "+
                   "and satu_sehat_specimen_lab.id_template=satu_sehat_observation_lab.id_template "+
                   "and satu_sehat_specimen_lab.kd_jenis_prw=satu_sehat_observation_lab.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_lab on satu_sehat_servicerequest_lab.noorder=satu_sehat_diagnosticreport_lab.noorder "+
                   "and satu_sehat_servicerequest_lab.id_template=satu_sehat_diagnosticreport_lab.id_template "+
                   "and satu_sehat_servicerequest_lab.kd_jenis_prw=satu_sehat_diagnosticreport_lab.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/lab\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"LAB\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("kesan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void diagnosticreportlabmb() {
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_labmb.noorder,permintaan_labmb.tgl_hasil,permintaan_labmb.jam_hasil,permintaan_labmb.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "satu_sehat_servicerequest_lab_mb.id_servicerequest,permintaan_detail_permintaan_labmb.id_template,satu_sehat_specimen_lab_mb.id_specimen,"+
                   "satu_sehat_observation_lab_mb.id_observation,ifnull(satu_sehat_diagnosticreport_lab_mb.id_diagnosticreport,'') as id_diagnosticreport,saran_kesan_lab.kesan,"+
                   "template_laboratorium.kd_jenis_prw from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_specimen_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_specimen_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_specimen_lab_mb.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_labmb.no_rawat and periksa_lab.tgl_periksa=permintaan_labmb.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_labmb.jam_hasil and periksa_lab.dokter_perujuk=permintaan_labmb.dokter_perujuk "+
                   "inner join saran_kesan_lab on periksa_lab.no_rawat=saran_kesan_lab.no_rawat and periksa_lab.tgl_periksa=saran_kesan_lab.tgl_periksa "+
                   "and periksa_lab.jam=saran_kesan_lab.jam "+
                   "inner join satu_sehat_observation_lab_mb on satu_sehat_specimen_lab_mb.noorder=satu_sehat_observation_lab_mb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=satu_sehat_observation_lab_mb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=satu_sehat_observation_lab_mb.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_diagnosticreport_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_diagnosticreport_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_diagnosticreport_lab_mb.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/lab\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"LAB\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("kesan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
        
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,periksa_lab.kd_dokter,pegawai.nama,pegawai.no_ktp as ktpdokter,"+
                   "satu_sehat_encounter.id_encounter,permintaan_labmb.noorder,permintaan_labmb.tgl_hasil,permintaan_labmb.jam_hasil,permintaan_labmb.diagnosa_klinis,"+
                   "template_laboratorium.Pemeriksaan,satu_sehat_mapping_lab.code,satu_sehat_mapping_lab.system,satu_sehat_mapping_lab.display,"+
                   "satu_sehat_servicerequest_lab_mb.id_servicerequest,permintaan_detail_permintaan_labmb.id_template,satu_sehat_specimen_lab_mb.id_specimen,"+
                   "satu_sehat_observation_lab_mb.id_observation,ifnull(satu_sehat_diagnosticreport_lab_mb.id_diagnosticreport,'') as id_diagnosticreport,saran_kesan_lab.kesan,"+
                   "template_laboratorium.kd_jenis_prw from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat inner join permintaan_labmb on permintaan_labmb.no_rawat=reg_periksa.no_rawat "+
                   "inner join permintaan_detail_permintaan_labmb on permintaan_detail_permintaan_labmb.noorder=permintaan_labmb.noorder "+
                   "inner join template_laboratorium on template_laboratorium.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "inner join satu_sehat_mapping_lab on satu_sehat_mapping_lab.id_template=template_laboratorium.id_template "+
                   "inner join satu_sehat_servicerequest_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=permintaan_detail_permintaan_labmb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=permintaan_detail_permintaan_labmb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=permintaan_detail_permintaan_labmb.kd_jenis_prw "+
                   "inner join satu_sehat_specimen_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_specimen_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_specimen_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_specimen_lab_mb.kd_jenis_prw "+
                   "inner join periksa_lab on periksa_lab.no_rawat=permintaan_labmb.no_rawat and periksa_lab.tgl_periksa=permintaan_labmb.tgl_hasil "+
                   "and periksa_lab.jam=permintaan_labmb.jam_hasil and periksa_lab.dokter_perujuk=permintaan_labmb.dokter_perujuk "+
                   "inner join saran_kesan_lab on periksa_lab.no_rawat=saran_kesan_lab.no_rawat and periksa_lab.tgl_periksa=saran_kesan_lab.tgl_periksa "+
                   "and periksa_lab.jam=saran_kesan_lab.jam "+
                   "inner join satu_sehat_observation_lab_mb on satu_sehat_specimen_lab_mb.noorder=satu_sehat_observation_lab_mb.noorder "+
                   "and satu_sehat_specimen_lab_mb.id_template=satu_sehat_observation_lab_mb.id_template "+
                   "and satu_sehat_specimen_lab_mb.kd_jenis_prw=satu_sehat_observation_lab_mb.kd_jenis_prw "+
                   "left join satu_sehat_diagnosticreport_lab_mb on satu_sehat_servicerequest_lab_mb.noorder=satu_sehat_diagnosticreport_lab_mb.noorder "+
                   "and satu_sehat_servicerequest_lab_mb.id_template=satu_sehat_diagnosticreport_lab_mb.id_template "+
                   "and satu_sehat_servicerequest_lab_mb.kd_jenis_prw=satu_sehat_diagnosticreport_lab_mb.kd_jenis_prw "+
                   ""+
                   "inner join pegawai on periksa_lab.kd_dokter=pegawai.nik "+
                   "where reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktpdokter").equals(""))&&rs.getString("id_diagnosticreport").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktpdokter"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"DiagnosticReport\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/diagnostic/"+koneksiDB.IDSATUSEHAT()+"/lab\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("noorder")+"."+rs.getString("id_template")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"final\"," +
                                            "\"category\": [" +
                                                "{" +
                                                    "\"coding\": [" +
                                                        "{" +
                                                            "\"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\"," +
                                                            "\"code\": \"LAB\"," +
                                                            "\"display\": \"Laboratory\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"code\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"code\": \""+rs.getString("code")+"\"," +
                                                        "\"display\": \""+rs.getString("display")+"\"," +
                                                        "\"system\": \""+rs.getString("system")+"\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"" +
                                            "}," +
                                            "\"encounter\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"effectiveDateTime\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"issued\": \""+rs.getString("tgl_hasil")+"T"+rs.getString("jam_hasil")+"+07:00\"," +
                                            "\"performer\": [" +
                                                "{" +
                                                    "\"reference\": \"Practitioner/"+iddokter+"\"" +
                                                "}" +
                                            "]," +
                                            "\"specimen\": [{" +
                                                "\"reference\": \"Specimen/"+rs.getString("id_specimen")+"\"" +
                                            "}]," +
                                            "\"result\": [" +
                                                "{" +
                                                    "\"reference\": \"Observation/"+rs.getString("id_observation")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"basedOn\": [" +
                                                "{" +
                                                    "\"reference\": \"ServiceRequest/"+rs.getString("id_servicerequest")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"conclusion\": \""+rs.getString("kesan").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"" +
                                        "}";
                                TeksArea.append("URL : "+link+"/DiagnosticReport");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/DiagnosticReport", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_diagnosticreport_lab","?,?,?,?","No.Order",4,new String[]{
                                        rs.getString("noorder"),rs.getString("kd_jenis_prw"),rs.getString("id_template"),response.asText()
                                    });
                                }
                            }catch(Exception ea){
                                TeksArea.append("Notifikasi Bridging : "+ea);
                            }
                        } catch (Exception ef) {
                            System.out.println("Notifikasi : "+ef);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void careplan(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,"+
                   "pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pemeriksaan_ralan.rtl,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ralan.tgl_perawatan,pemeriksaan_ralan.jam_rawat,"+
                   "ifnull(satu_sehat_careplan.id_careplan,'') as satu_sehat_careplan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pemeriksaan_ralan on pemeriksaan_ralan.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ralan.nip=pegawai.nik "+
                   "left join satu_sehat_careplan on satu_sehat_careplan.no_rawat=pemeriksaan_ralan.no_rawat "+
                   "and satu_sehat_careplan.tgl_perawatan=pemeriksaan_ralan.tgl_perawatan and satu_sehat_careplan.jam_rawat=pemeriksaan_ralan.jam_rawat "+
                   "where pemeriksaan_ralan.rtl<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText()+" ");
                ps.setString(2,Tanggal2.getText()+" ");
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_careplan").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\" : \"CarePlan\"," +
                                            "\"identifier\" : {" +
                                                "\"system\" : \"http://sys-ids.kemkes.go.id/careplan/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"value\" : \""+rs.getString("no_rawat")+"\"" +
                                            "}," +
                                            "\"title\" : \"Instruksi Medik dan Keperawatan Pasien\"," +
                                            "\"status\" : \"active\"," +
                                            "\"category\" : [" +
                                                "{" +
                                                    "\"coding\" : [" +
                                                        "{" +
                                                            "\"system\" : \"http://snomed.info/sct\"," +
                                                            "\"code\" : \"736271009\"," +
                                                            "\"display\" : \"Outpatient care plan\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"intent\" : \"plan\"," +
                                            "\"description\" : \""+rs.getString("rtl").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"," +
                                            "\"subject\" : {" +
                                                "\"reference\" : \"Patient/"+idpasien+"\"," +
                                                "\"display\" : \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\" : {" +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\","+
                                                "\"display\" : \"Kunjungan "+rs.getString("nm_pasien")+" pada tanggal "+rs.getString("tgl_registrasi")+" dengan nomor kunjungan "+rs.getString("no_rawat")+"\""+
                                            "}," +
                                            "\"created\" : \""+rs.getString("tgl_perawatan").replaceAll(" ","T")+"+07:00\"," +
                                            "\"author\" : {" +
                                                "\"reference\" : \"Practitioner/"+iddokter+"\"," +
                                                "\"display\" : \""+rs.getString("nama")+"\"" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/CarePlan");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/CarePlan", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_careplan","?,?,?,?,?","Rencana Perawatan",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ralan",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,"+
                   "pasien.nm_pasien,pasien.no_ktp,satu_sehat_encounter.id_encounter,pemeriksaan_ranap.rtl,"+
                   "pegawai.nama,pegawai.no_ktp as ktppraktisi,pemeriksaan_ranap.tgl_perawatan,pemeriksaan_ranap.jam_rawat,"+
                   "ifnull(satu_sehat_careplan.id_careplan,'') as satu_sehat_careplan "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   ""+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join pemeriksaan_ranap on pemeriksaan_ranap.no_rawat=reg_periksa.no_rawat "+
                   "inner join pegawai on pemeriksaan_ranap.nip=pegawai.nik "+
                   "left join satu_sehat_careplan on satu_sehat_careplan.no_rawat=pemeriksaan_ranap.no_rawat "+
                   "and satu_sehat_careplan.tgl_perawatan=pemeriksaan_ranap.tgl_perawatan and satu_sehat_careplan.jam_rawat=pemeriksaan_ranap.jam_rawat "+
                   "where pemeriksaan_ranap.rtl<>'' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText()+" ");
                ps.setString(2,Tanggal2.getText()+" ");
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("satu_sehat_careplan").equals("")){
                        try {
                            iddokter=cekViaSatuSehat.tampilIDParktisi(rs.getString("ktppraktisi"));
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\" : \"CarePlan\"," +
                                            "\"identifier\" : {" +
                                                "\"system\" : \"http://sys-ids.kemkes.go.id/careplan/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                "\"value\" : \""+rs.getString("no_rawat")+"\"" +
                                            "}," +
                                            "\"title\" : \"Instruksi Medik dan Keperawatan Pasien\"," +
                                            "\"status\" : \"active\"," +
                                            "\"category\" : [" +
                                                "{" +
                                                    "\"coding\" : [" +
                                                        "{" +
                                                            "\"system\" : \"http://snomed.info/sct\"," +
                                                            "\"code\" : \"736353004\"," +
                                                            "\"display\" : \"Inpatient care plan\"" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"intent\" : \"plan\"," +
                                            "\"description\" : \""+rs.getString("rtl").replaceAll("(\r\n|\r|\n|\n\r)","<br>").replaceAll("\t", " ")+"\"," +
                                            "\"subject\" : {" +
                                                "\"reference\" : \"Patient/"+idpasien+"\"," +
                                                "\"display\" : \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"encounter\" : {" +
                                                "\"reference\" : \"Encounter/"+rs.getString("id_encounter")+"\","+
                                                "\"display\" : \"Kunjungan "+rs.getString("nm_pasien")+" pada tanggal "+rs.getString("tgl_registrasi")+" dengan nomor kunjungan "+rs.getString("no_rawat")+"\""+
                                            "}," +
                                            "\"created\" : \""+rs.getString("tgl_perawatan").replaceAll(" ","T")+"+07:00\"," +
                                            "\"author\" : {" +
                                                "\"reference\" : \"Practitioner/"+iddokter+"\"," +
                                                "\"display\" : \""+rs.getString("nama")+"\"" +
                                            "}" +
                                        "}";
                                TeksArea.append("URL : "+link+"/CarePlan");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/CarePlan", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_careplan","?,?,?,?,?","Rencana Perawatan",5,new String[]{
                                        rs.getString("no_rawat"),rs.getString("tgl_perawatan"),rs.getString("jam_rawat"),"Ranap",response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
    
    private void medicationstatement(){
        try{
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_penyerahan,resep_obat.jam_penyerahan,resep_dokter.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter.aturan_pakai,resep_dokter.no_resep,ifnull(satu_sehat_medicationstatement.id_medicationstatement,'') as id_medicationstatement "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter on resep_dokter.no_resep=resep_obat.no_resep "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationstatement on satu_sehat_medicationstatement.no_resep=resep_dokter.no_resep and satu_sehat_medicationstatement.kode_brng=resep_dokter.kode_brng "+
                   "where resep_obat.tgl_penyerahan<>'0000-00-00' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationStatement\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationstatement-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"-"+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/medication-statement-category\"," +
                                                        "\"code\": \"outpatient\"," +
                                                        "\"display\": \"Outpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"dosage\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dateAsserted\": \""+rs.getString("tgl_penyerahan")+"T"+rs.getString("jam_penyerahan")+"+07:00\"," +
                                            "\"informationSource\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"note\": [{\"text\": \"Sudah dilakukan proses telaah obat oleh petugas dan obat sudah diserahkan ke pasien\"}]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationStatement");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationStatement", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationstatement","?,?,?","Obat/Alkes",3,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_penyerahan,resep_obat.jam_penyerahan,resep_dokter.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter.aturan_pakai,resep_dokter.no_resep,ifnull(satu_sehat_medicationstatement.id_medicationstatement,'') as id_medicationstatement "+
                   "from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter on resep_dokter.no_resep=resep_obat.no_resep "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationstatement on satu_sehat_medicationstatement.no_resep=resep_dokter.no_resep and satu_sehat_medicationstatement.kode_brng=resep_dokter.kode_brng "+
                   "where resep_obat.tgl_penyerahan<>'0000-00-00' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationStatement\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationstatement-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"-"+rs.getString("kode_brng")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/medication-statement-category\"," +
                                                        "\"code\": \"inpatient\"," +
                                                        "\"display\": \"Inpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"dosage\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dateAsserted\": \""+rs.getString("tgl_penyerahan")+"T"+rs.getString("jam_penyerahan")+"+07:00\"," +
                                            "\"informationSource\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"note\": [{\"text\": \"Sudah dilakukan proses telaah obat oleh petugas dan obat sudah diserahkan ke pasien\"}]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationStatement");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationStatement", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationstatement","?,?,?","Obat/Alkes",3,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter_racikan_detail.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_penyerahan,resep_obat.jam_penyerahan,resep_dokter_racikan_detail.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter_racikan.aturan_pakai,resep_dokter_racikan.no_resep,ifnull(satu_sehat_medicationstatement_racikan.id_medicationstatement,'') as id_medicationstatement, "+
                   "resep_dokter_racikan_detail.no_racik from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter_racikan on resep_dokter_racikan.no_resep=resep_obat.no_resep "+
                   "inner join resep_dokter_racikan_detail on resep_dokter_racikan_detail.no_resep=resep_dokter_racikan.no_resep and resep_dokter_racikan_detail.no_racik=resep_dokter_racikan.no_racik "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter_racikan_detail.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationstatement_racikan on satu_sehat_medicationstatement_racikan.no_resep=resep_dokter_racikan_detail.no_resep and "+
                   "satu_sehat_medicationstatement_racikan.kode_brng=resep_dokter_racikan_detail.kode_brng and satu_sehat_medicationstatement_racikan.no_racik=resep_dokter_racikan_detail.no_racik "+
                   "where resep_obat.tgl_penyerahan<>'0000-00-00' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationStatement\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationstatement-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"-"+rs.getString("kode_brng")+"-"+rs.getString("no_racik")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/medication-statement-category\"," +
                                                        "\"code\": \"outpatient\"," +
                                                        "\"display\": \"Outpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"dosage\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dateAsserted\": \""+rs.getString("tgl_penyerahan")+"T"+rs.getString("jam_penyerahan")+"+07:00\"," +
                                            "\"informationSource\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"note\": [{\"text\": \"Sudah dilakukan proses telaah obat oleh petugas dan obat sudah diserahkan ke pasien\"}]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationStatement");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationStatement", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationstatement_racikan","?,?,?,?","Obat/Alkes",4,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),rs.getString("no_racik"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
            
            ps=koneksi.prepareStatement(
                   "select reg_periksa.tgl_registrasi,reg_periksa.jam_reg,reg_periksa.no_rawat,reg_periksa.no_rkm_medis,pasien.nm_pasien,pasien.no_ktp,"+
                   "satu_sehat_encounter.id_encounter,satu_sehat_mapping_obat.obat_code,satu_sehat_mapping_obat.obat_system,"+
                   "resep_dokter_racikan_detail.kode_brng,satu_sehat_mapping_obat.obat_display,satu_sehat_mapping_obat.form_code,satu_sehat_mapping_obat.form_system,satu_sehat_mapping_obat.form_display,"+
                   "satu_sehat_mapping_obat.route_code,satu_sehat_mapping_obat.route_system,satu_sehat_mapping_obat.route_display,satu_sehat_mapping_obat.denominator_code,"+
                   "satu_sehat_mapping_obat.denominator_system,resep_obat.tgl_penyerahan,resep_obat.jam_penyerahan,resep_dokter_racikan_detail.jml,satu_sehat_medication.id_medication,"+
                   "resep_dokter_racikan.aturan_pakai,resep_dokter_racikan.no_resep,ifnull(satu_sehat_medicationstatement_racikan.id_medicationstatement,'') as id_medicationstatement, "+
                   "resep_dokter_racikan_detail.no_racik from reg_periksa inner join pasien on reg_periksa.no_rkm_medis=pasien.no_rkm_medis "+
                   "inner join resep_obat on reg_periksa.no_rawat=resep_obat.no_rawat "+
                   "inner join satu_sehat_encounter on satu_sehat_encounter.no_rawat=reg_periksa.no_rawat "+
                   "inner join resep_dokter_racikan on resep_dokter_racikan.no_resep=resep_obat.no_resep "+
                   "inner join resep_dokter_racikan_detail on resep_dokter_racikan_detail.no_resep=resep_dokter_racikan.no_resep and resep_dokter_racikan_detail.no_racik=resep_dokter_racikan.no_racik "+
                   "inner join satu_sehat_mapping_obat on satu_sehat_mapping_obat.kode_brng=resep_dokter_racikan_detail.kode_brng "+
                   "inner join satu_sehat_medication on satu_sehat_medication.kode_brng=satu_sehat_mapping_obat.kode_brng "+
                   ""+
                   "left join satu_sehat_medicationstatement_racikan on satu_sehat_medicationstatement_racikan.no_resep=resep_dokter_racikan_detail.no_resep and "+
                   "satu_sehat_medicationstatement_racikan.kode_brng=resep_dokter_racikan_detail.kode_brng and satu_sehat_medicationstatement_racikan.no_racik=resep_dokter_racikan_detail.no_racik "+
                   "where resep_obat.tgl_penyerahan<>'0000-00-00' and reg_periksa.tgl_registrasi between ? and ? ");
            try {
                ps.setString(1,Tanggal1.getText());
                ps.setString(2,Tanggal2.getText());
                rs=ps.executeQuery();
                while(rs.next()){
                    if((!rs.getString("no_ktp").equals(""))&&(!rs.getString("ktppraktisi").equals(""))&&rs.getString("id_medicationrequest").equals("")){
                        try {
                            idpasien=cekViaSatuSehat.tampilIDPasien(rs.getString("no_ktp"));
                            arrSplit = rs.getString("aturan_pakai").toLowerCase().split("x");
                            signa1="1";
                            try {
                                if(!arrSplit[0].replaceAll("[^0-9.]+", "").equals("")){
                                    signa1=arrSplit[0].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa1="1";
                            }
                            signa2="1";
                            try {
                                if(!arrSplit[1].replaceAll("[^0-9.]+", "").equals("")){
                                    signa2=arrSplit[1].replaceAll("[^0-9.]+", "");
                                }
                            } catch (Exception e) {
                                signa2="1";
                            } 
                            try{
                                headers = new HttpHeaders();
                                headers.setContentType(MediaType.APPLICATION_JSON);
                                headers.add("Authorization", "Bearer "+api.TokenSatuSehat());
                                json = "{" +
                                            "\"resourceType\": \"MedicationStatement\"," +
                                            "\"identifier\": [" +
                                                "{" +
                                                    "\"system\": \"http://sys-ids.kemkes.go.id/medicationstatement-item/"+koneksiDB.IDSATUSEHAT()+"\"," +
                                                    "\"use\": \"official\"," +
                                                    "\"value\": \""+rs.getString("no_resep")+"-"+rs.getString("kode_brng")+"-"+rs.getString("no_racik")+"\"" +
                                                "}" +
                                            "]," +
                                            "\"status\": \"completed\"," +
                                            "\"category\": {" +
                                                "\"coding\": [" +
                                                    "{" +
                                                        "\"system\": \"http://terminology.hl7.org/CodeSystem/medication-statement-category\"," +
                                                        "\"code\": \"inpatient\"," +
                                                        "\"display\": \"Inpatient\"" +
                                                    "}" +
                                                "]" +
                                            "}," +
                                            "\"medicationReference\": {" +
                                                "\"reference\": \"Medication/"+rs.getString("id_medicationrequest")+"\"," +
                                                "\"display\": \""+rs.getString("obat_display")+"\"" +
                                            "}," +
                                            "\"subject\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"dosage\": [" +
                                                "{" +
                                                    "\"text\": \""+rs.getString("aturan_pakai")+"\"," +
                                                    "\"timing\": {" +
                                                        "\"repeat\": {" +
                                                            "\"frequency\": "+signa2+"," +
                                                            "\"period\": 1," +
                                                            "\"periodUnit\": \"d\"" +
                                                        "}" +
                                                    "}," +
                                                    "\"route\": {" +
                                                        "\"coding\": [" +
                                                            "{" +
                                                                "\"system\": \""+rs.getString("route_system")+"\"," +
                                                                "\"code\": \""+rs.getString("route_code")+"\"," +
                                                                "\"display\": \""+rs.getString("route_display")+"\"" +
                                                            "}" +
                                                        "]" +
                                                    "}," +
                                                    "\"doseAndRate\": [" +
                                                        "{" +
                                                            "\"doseQuantity\": {" +
                                                                "\"value\": "+signa1+"," +
                                                                "\"unit\": \""+rs.getString("denominator_code")+"\"," +
                                                                "\"system\": \""+rs.getString("denominator_system")+"\"," +
                                                                "\"code\": \""+rs.getString("denominator_code")+"\"" +
                                                            "}" +
                                                        "}" +
                                                    "]" +
                                                "}" +
                                            "]," +
                                            "\"dateAsserted\": \""+rs.getString("tgl_penyerahan")+"T"+rs.getString("jam_penyerahan")+"+07:00\"," +
                                            "\"informationSource\": {" +
                                                "\"reference\": \"Patient/"+idpasien+"\"," +
                                                "\"display\": \""+rs.getString("nm_pasien")+"\"" +
                                            "}," +
                                            "\"context\": {" +
                                                "\"reference\": \"Encounter/"+rs.getString("id_encounter")+"\"" +
                                            "}," +
                                            "\"note\": [{\"text\": \"Sudah dilakukan proses telaah obat oleh petugas dan obat sudah diserahkan ke pasien\"}]" +
                                        "}";
                                TeksArea.append("URL : "+link+"/MedicationStatement");
                                TeksArea.append("Request JSON : "+json);
                                requestEntity = new HttpEntity(json,headers);
                                json=api.getRest().exchange(link+"/MedicationStatement", HttpMethod.POST, requestEntity, String.class).getBody();
                                TeksArea.append("Result JSON : "+json);
                                root = mapper.readTree(json);
                                response = root.path("id");
                                if(!response.asText().equals("")){
                                    Sequel.menyimpan2("satu_sehat_medicationstatement_racikan","?,?,?,?","Obat/Alkes",4,new String[]{
                                        rs.getString("no_resep"),rs.getString("kode_brng"),rs.getString("no_racik"),response.asText()
                                    });
                                }
                            }catch(Exception e){
                                TeksArea.append("Notifikasi Bridging : "+e);
                            }
                        } catch (Exception e) {
                            System.out.println("Notifikasi : "+e);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Notif : "+e);
            } finally{
                if(rs!=null){
                    rs.close();
                }
                if(ps!=null){
                    ps.close();
                }
            }
        }catch(Exception e){
            System.out.println("Notifikasi : "+e);
        }
    }
}
