fix response

This commit is contained in:
2024-10-07 09:38:00 +07:00
parent cff6639073
commit 30851f56ab
4 changed files with 66 additions and 20 deletions

No files matched your search

+1 -1
View File
@@ -31,7 +31,7 @@ func GetJadwalSpesialisDokterByID(id string) (string, error) {
func GetJadwalHariDokterBySpesialis(id string) ([]jadwal_dokter.ListHari, error) {
var hari []jadwal_dokter.ListHari
errSelect := config.SatuDataDB.Debug().Raw(`select distinct "id", "Spesialis", "Nama_hari" 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 "Spesialis" = ? order by "id"`, id).Scan(&hari).Error
if errSelect != nil {
log.Printf("Failed get data : %v", errSelect)
return nil, errSelect
+43 -13
View File
@@ -152,6 +152,17 @@ func GetDokterByDPJP(c *gin.Context) {
c.JSON(http.StatusInternalServerError, err)
return
}
log.Println("listHari: ", listHari)
var listIDDokter []string
for _, v := range listHari {
listIDDokter = append(listIDDokter, v.IDDokter)
}
namaDokter, err := dokter.GetNamaLengkapDokter(listIDDokter)
if err != nil {
c.JSON(http.StatusInternalServerError, err)
return
}
var idSpesialis []string
idSpesialis = append(idSpesialis, spesialis)
@@ -161,23 +172,42 @@ func GetDokterByDPJP(c *gin.Context) {
c.JSON(http.StatusInternalServerError, err)
}
var res *jadwal_dokter.ResponseListHari
var res []*jadwal_dokter.ResponseListHari
for _, v := range listSpesialis {
for _, key := range listHari {
res = &jadwal_dokter.ResponseListHari{
IDSpesialis: v.ID,
Kode: v.Kode,
Spesialis: v.Spesialis,
NamaHari: key.NamaHari,
for _, key := range listHari {
for _, v := range listSpesialis {
for _, k := range namaDokter {
if key.IDDokter != k.ID {
log.Println("Skip Proses")
continue
}
gelarDepan := utils.ReplaceGelar(k.GelarDepan)
gelarBelakang := utils.ReplaceGelar(k.GelarBelakang)
namaLengkap := gelarDepan + " " + k.NamaLengkap + " " + gelarBelakang
namaLengkap = strings.TrimPrefix(namaLengkap, " ")
namaLengkap = strings.TrimSuffix(namaLengkap, " ")
var jadwalDokter []jadwal_dokter.ListJadwalDokter
jadwalDokter = append(jadwalDokter, jadwal_dokter.ListJadwalDokter{
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,
JadwalDokter: jadwalDokter,
})
}
}
}
// listSpesialis, err := dokter.GetSpesialisByID(listHari)
// if err != nil {
// c.JSON(http.StatusInternalServerError, err)
// return
// }
c.JSON(http.StatusOK, res)
}
+2 -2
View File
@@ -65,8 +65,8 @@ func main() {
AllowHeaders: []string{"Origin", "Content-Type"},
AllowCredentials: true,
}))
log.Println("JALAN DI PORT : 8080")
err = r.Run(":8080")
log.Println("JALAN DI PORT : 8081")
err = r.Run(":8081")
if err != nil {
log.Fatal(err)
}
+20 -4
View File
@@ -53,14 +53,30 @@ type JadwalDokterTempSatuData struct {
}
type ResponseListHari struct {
IDSpesialis int `json:"id_spesialis"`
Kode string `json:"Kode"`
Spesialis string `json:"Spesialis"`
NamaHari string `json:"Nama_hari"`
IDSpesialis int `json:"id_spesialis"`
Kode string `json:"Kode"`
Spesialis string `json:"Spesialis"`
NamaHari string `json:"Nama_hari"`
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"`
}
type ListHari struct {
ID int `gorm:"column:id" json:"id"`
Spesialis int `gorm:"column:Spesialis" json:"Spesialis"`
KodeHari int `gorm:"column:Hari" json:"Kode_hari"`
NamaHari string `gorm:"column:Nama_hari" json:"Nama_hari"`
Waktu string `gorm:"column:Waktu" json:"Waktu"`
IDDokter string `gorm:"column:Dokter" json:"Dokter"`
}