diff --git a/database/satu_data/surat_kontrol/surat_kontrol.go b/database/satu_data/surat_kontrol/surat_kontrol.go index 1e9a7b2..03c58a2 100644 --- a/database/satu_data/surat_kontrol/surat_kontrol.go +++ b/database/satu_data/surat_kontrol/surat_kontrol.go @@ -174,7 +174,7 @@ func GetAllDataSuratKontrol(idSurKon string) (*suratkontrol.DataSuratKontrol, er return dataSurKon, nil } -func GetDataSurKonByNoRM(req suratkontrol.RequestCariPasien, query string, condition string) ([]*suratkontrol.GetDataSuratKontrol, error) { +func SearchDataSurKon(req suratkontrol.RequestCariPasien, query string, args []interface{}) ([]*suratkontrol.GetDataSuratKontrol, error) { var dataSurKon []*suratkontrol.GetDataSuratKontrol query += ` and date(dsk."Tanggal_rencana_kontrol") between ? and ?` querySelect := `select dsk."id", dsk."Tanggal_cetak_surat_kontrol", dsk."Tanggal_rencana_kontrol", @@ -206,7 +206,7 @@ func GetDataSurKonByNoRM(req suratkontrol.RequestCariPasien, query string, condi left join daftar_subspesialis ds on dp."Subspesialis" = ds."id" where dsk."Status_surat_kontrol" = '1' ` querySelect += query - err := config.SatuDataDB.Debug().Raw(querySelect, condition, req.TanggalAwal, req.TanggalAkhir).Find(&dataSurKon).Error + err := config.SatuDataDB.Debug().Raw(querySelect, args...).Find(&dataSurKon).Error if err != nil { log.Println(err) return nil, err diff --git a/handlers/bpjs/surat_kontrol/surat_kontrol.go b/handlers/bpjs/surat_kontrol/surat_kontrol.go index df568a0..f3e5cc4 100644 --- a/handlers/bpjs/surat_kontrol/surat_kontrol.go +++ b/handlers/bpjs/surat_kontrol/surat_kontrol.go @@ -551,10 +551,12 @@ func CariPasienTPP(c *gin.Context) { log.Println("request :", req) query := `` + var args []interface{} var data []*sk.GetDataSuratKontrol if req.NoRM != "" { query += `and dkp2."NOMR" = ?` - data, err = suratkontrol.GetDataSurKonByNoRM(req, query, req.NoRM) + args = append(args, req.NoRM, req.TanggalAwal, req.TanggalAkhir) + data, err = suratkontrol.SearchDataSurKon(req, query, args) if err != nil { log.Println(err) c.JSON(http.StatusInternalServerError, err) @@ -562,7 +564,8 @@ func CariPasienTPP(c *gin.Context) { } } else if req.NoSEP != "" { query += `and dkp2."Nomor_sep" = ?` - data, err = suratkontrol.GetDataSurKonByNoRM(req, query, req.NoSEP) + args = append(args, req.NoSEP, req.TanggalAwal, req.TanggalAkhir) + data, err = suratkontrol.SearchDataSurKon(req, query, args) if err != nil { log.Println(err) c.JSON(http.StatusInternalServerError, err) @@ -570,14 +573,16 @@ func CariPasienTPP(c *gin.Context) { } } else if req.PoliKlinik != "" { query += `and ds."id" = ?` - data, err = suratkontrol.GetDataSurKonByNoRM(req, query, req.PoliKlinik) + args = append(args, req.PoliKlinik, req.TanggalAwal, req.TanggalAkhir) + data, err = suratkontrol.SearchDataSurKon(req, query, args) if err != nil { log.Println(err) c.JSON(http.StatusInternalServerError, err) return } } else { - data, err = suratkontrol.GetDataSurKonByNoRM(req, query, req.PoliKlinik) + args = append(args, req.TanggalAwal, req.TanggalAkhir) + data, err = suratkontrol.SearchDataSurKon(req, query, args) if err != nil { log.Println(err) c.JSON(http.StatusInternalServerError, err)