fix response jadwal dokter

This commit is contained in:
2024-10-07 09:50:47 +07:00
parent 30851f56ab
commit 1c76a2c1b8
3 changed files with 31 additions and 35 deletions
+10 -10
View File
@@ -19,19 +19,19 @@ func GetJadwalDokterByDPJP(dpjp string) (string, error) {
return id, nil
}
func GetJadwalSpesialisDokterByID(id string) (string, error) {
var spesialis string
errSelect := config.SatuDataDB.Debug().Raw(`select "Spesialis" from "daftar_jadwal_dokter" where "Dokter" = ? order by "Spesialis"`, id).First(&spesialis).Error
if errSelect != nil {
log.Printf("Failed get data : %v", errSelect)
return "", errSelect
}
return spesialis, nil
}
// func GetJadwalSpesialisDokterByID(id string) (string, error) {
// var spesialis string
// errSelect := config.SatuDataDB.Debug().Raw(`select "Spesialis" from "daftar_jadwal_dokter" where "Dokter" = ? order by "Spesialis"`, id).First(&spesialis).Error
// if errSelect != nil {
// log.Printf("Failed get data : %v", errSelect)
// return "", errSelect
// }
// return spesialis, nil
// }
func GetJadwalHariDokterBySpesialis(id string) ([]jadwal_dokter.ListHari, error) {
var hari []jadwal_dokter.ListHari
errSelect := config.SatuDataDB.Debug().Raw(`select "id", "Hari", "Nama_hari", "Waktu", "Dokter", "Spesialis" from "daftar_jadwal_dokter" where "Spesialis" = ? order by "id"`, id).Scan(&hari).Error
errSelect := config.SatuDataDB.Debug().Raw(`select "id", "Hari", "Nama_hari", "Waktu", "Dokter", "Spesialis" from "daftar_jadwal_dokter" where "Dokter" = ? order by "id"`, id).Scan(&hari).Error
if errSelect != nil {
log.Printf("Failed get data : %v", errSelect)
return nil, errSelect
+16 -16
View File
@@ -141,32 +141,34 @@ func GetDokterByDPJP(c *gin.Context) {
return
}
spesialis, err := dokter.GetJadwalSpesialisDokterByID(idDokter)
if err != nil {
c.JSON(http.StatusInternalServerError, err)
return
}
// spesialis, err := dokter.GetJadwalSpesialisDokterByID(idDokter)
// if err != nil {
// c.JSON(http.StatusInternalServerError, err)
// return
// }
listHari, err := dokter.GetJadwalHariDokterBySpesialis(spesialis)
listHari, err := dokter.GetJadwalHariDokterBySpesialis(idDokter)
if err != nil {
c.JSON(http.StatusInternalServerError, err)
return
}
log.Println("listHari: ", listHari)
var listIDDokter []string
var IDDokter []string
var idSpesialis []string
for _, v := range listHari {
listIDDokter = append(listIDDokter, v.IDDokter)
IDDokter = append(IDDokter, v.IDDokter)
spesialis := strconv.Itoa(v.Spesialis)
idSpesialis = append(idSpesialis, spesialis)
break
}
namaDokter, err := dokter.GetNamaLengkapDokter(listIDDokter)
namaDokter, err := dokter.GetNamaLengkapDokter(IDDokter)
if err != nil {
c.JSON(http.StatusInternalServerError, err)
return
}
var idSpesialis []string
idSpesialis = append(idSpesialis, spesialis)
listSpesialis, err := dokter.GetSpesialisByID(idSpesialis)
if err != nil {
c.JSON(http.StatusInternalServerError, err)
@@ -192,16 +194,14 @@ func GetDokterByDPJP(c *gin.Context) {
NamaHari: key.NamaHari,
KodeHari: key.KodeHari,
Waktu: key.Waktu,
DataDokter: jadwal_dokter.DataDokter{
NamaLengkap: namaLengkap,
HFISCode: k.HFISCode,
},
})
res = append(res, &jadwal_dokter.ResponseListHari{
IDSpesialis: v.ID,
Kode: v.Kode,
Spesialis: v.Spesialis,
NamaHari: key.NamaHari,
NamaLengkap: namaLengkap,
HFISCode: k.HFISCode,
JadwalDokter: jadwalDokter,
})
}
+5 -9
View File
@@ -57,19 +57,15 @@ type ResponseListHari struct {
Kode string `json:"Kode"`
Spesialis string `json:"Spesialis"`
NamaHari string `json:"Nama_hari"`
NamaLengkap string `json:"nama_lengkap"`
HFISCode string `json:"HFIS_code"`
JadwalDokter []ListJadwalDokter `json:"Jadwal_dokter"`
}
type ListJadwalDokter struct {
NamaHari string `json:"Nama_hari"`
KodeHari int `json:"Kode_hari"`
Waktu string `json:"Waktu"`
DataDokter DataDokter `json:"Data_dokter"`
}
type DataDokter struct {
NamaLengkap string `json:"nama_lengkap"`
HFISCode string `json:"HFIS_code"`
NamaHari string `json:"Nama_hari"`
KodeHari int `json:"Kode_hari"`
Waktu string `json:"Waktu"`
}
type ListHari struct {