package dokter import ( "log" "net/http" baseResponse "antrian-operasi/internal/shared" "github.com/gin-gonic/gin" ) type DokterHandler struct { repo IDokterRepository } func NewDokterHandler(repo IDokterRepository) DokterHandler { return DokterHandler{repo} } func (h DokterHandler) ListDokter(c *gin.Context) { var list ListDokterModel list, err := h.repo.SearchableListDokter(c) if err != nil { c.JSON(http.StatusInternalServerError, err) } response := baseResponse.ToBaseResponse( list.ToResponseList(), true, 200, "success get doctor's list") c.JSON(http.StatusOK, response) } // Test repository GetDokterById, soon to be deleted func (h DokterHandler) GetDokterById(c *gin.Context) { var result DokterModel idDokter := c.Param("id") result, err := h.repo.GetDokterById(c, idDokter) if err != nil { log.Printf("something went wrong : %s", err) c.JSON(http.StatusInternalServerError, err) return } response := baseResponse.ToBaseResponse( result.ToResponse(), true, 200, "success get doctor's list") c.JSON(http.StatusOK, response) }