refactor reference repository
This commit is contained in:
@@ -3,10 +3,10 @@ package antrianoperasi
|
||||
import (
|
||||
"log"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
func (req CreatePasienOperasiRequest) DataValidation(c *gin.Context, handler AntrianOperasiHandler) (bool, []string) {
|
||||
func (req CreatePasienOperasiRequest) DataValidation(c context.Context, handler AntrianOperasiHandler) (bool, []string) {
|
||||
isValid := false
|
||||
var errValidation []string
|
||||
|
||||
|
||||
@@ -24,7 +24,9 @@ func NewDiagnosaHandler(repo IDiagnosaRepository) DiagnosaHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/diagnosa/ [get]
|
||||
func (h DiagnosaHandler) ListDiagnosa(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListDiagnosa(c)
|
||||
search := c.Query("search")
|
||||
|
||||
list, err := h.repo.SearchableListDiagnosa(c, search)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -8,15 +8,15 @@ import (
|
||||
|
||||
"errors"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_simrs"
|
||||
const TBL_NAME = "icd"
|
||||
|
||||
type IDiagnosaRepository interface {
|
||||
SearchableListDiagnosa(c *gin.Context) (ListDiagnosaModel, error)
|
||||
GetDiagnosaByKode(c *gin.Context, kode string) (DiagnosaModel, error)
|
||||
SearchableListDiagnosa(c context.Context, search string) (ListDiagnosaModel, error)
|
||||
GetDiagnosaByKode(c context.Context, kode string) (DiagnosaModel, error)
|
||||
}
|
||||
|
||||
type diagnosaRepo struct {
|
||||
@@ -37,9 +37,8 @@ func NewRepository(dbService database.Service) IDiagnosaRepository {
|
||||
}
|
||||
}
|
||||
|
||||
func (r diagnosaRepo) SearchableListDiagnosa(c *gin.Context) (ListDiagnosaModel, error) {
|
||||
func (r diagnosaRepo) SearchableListDiagnosa(c context.Context, search string) (ListDiagnosaModel, error) {
|
||||
var result ListDiagnosaModel
|
||||
search := c.Query("search")
|
||||
|
||||
query := queryUtils.DynamicQuery{
|
||||
From: TBL_NAME,
|
||||
@@ -74,7 +73,7 @@ func (r diagnosaRepo) SearchableListDiagnosa(c *gin.Context) (ListDiagnosaModel,
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r diagnosaRepo) GetDiagnosaByKode(c *gin.Context, kode string) (DiagnosaModel, error) {
|
||||
func (r diagnosaRepo) GetDiagnosaByKode(c context.Context, kode string) (DiagnosaModel, error) {
|
||||
var resultQuery []DiagnosaModel
|
||||
var result DiagnosaModel
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package dokter
|
||||
|
||||
import (
|
||||
"antrian-operasi/internal/shared"
|
||||
baseResponse "antrian-operasi/internal/shared"
|
||||
"log"
|
||||
"net/http"
|
||||
|
||||
baseResponse "antrian-operasi/internal/shared"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
@@ -27,7 +27,11 @@ func NewDokterHandler(repo IDokterRepository) DokterHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/dokter/ [get]
|
||||
func (h DokterHandler) ListDokter(c *gin.Context) {
|
||||
result, err := h.repo.SearchableListDokter(c)
|
||||
limit := shared.ParseQueryLimit(c)
|
||||
offset := shared.ParseQueryOffset(c)
|
||||
search := c.Query("search")
|
||||
|
||||
result, err := h.repo.SearchableListDokter(c, search, limit, offset)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -2,21 +2,21 @@ package dokter
|
||||
|
||||
import (
|
||||
"antrian-operasi/internal/database"
|
||||
"antrian-operasi/internal/shared"
|
||||
|
||||
"errors"
|
||||
"log"
|
||||
|
||||
queryUtils "antrian-operasi/internal/utils/query"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_antrian"
|
||||
const TBL_NAME = "data_pegawai"
|
||||
|
||||
type IDokterRepository interface {
|
||||
SearchableListDokter(c *gin.Context) (ListDokterModelPaginate, error)
|
||||
GetDokterById(c *gin.Context, id string) (DokterModel, error)
|
||||
SearchableListDokter(c context.Context, search string, limit int, offset int) (ListDokterModelPaginate, error)
|
||||
GetDokterById(c context.Context, id string) (DokterModel, error)
|
||||
}
|
||||
|
||||
type dokterRepo struct {
|
||||
@@ -74,11 +74,8 @@ func baseSelectQuery() queryUtils.DynamicQuery {
|
||||
return query
|
||||
}
|
||||
|
||||
func (r dokterRepo) SearchableListDokter(c *gin.Context) (ListDokterModelPaginate, error) {
|
||||
func (r dokterRepo) SearchableListDokter(c context.Context, search string, limit int, offset int) (ListDokterModelPaginate, error) {
|
||||
var result ListDokterModelPaginate
|
||||
limit := shared.ParseQueryLimit(c)
|
||||
offset := shared.ParseQueryOffset(c)
|
||||
search := c.Query("search")
|
||||
|
||||
// base query
|
||||
query := baseSelectQuery()
|
||||
@@ -134,7 +131,7 @@ func (r dokterRepo) SearchableListDokter(c *gin.Context) (ListDokterModelPaginat
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r dokterRepo) GetDokterById(c *gin.Context, id string) (DokterModel, error) {
|
||||
func (r dokterRepo) GetDokterById(c context.Context, id string) (DokterModel, error) {
|
||||
var resultQuery []DokterModel
|
||||
var result DokterModel
|
||||
|
||||
|
||||
@@ -24,7 +24,8 @@ func NewKategoriHandler(repo IKategoriRepository) KategoriHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/kategori/ [get]
|
||||
func (h KategoriHandler) ListKategoriOperasi(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListKategori(c)
|
||||
search := c.Query("search")
|
||||
list, err := h.repo.SearchableListKategori(c, search)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -6,15 +6,15 @@ import (
|
||||
|
||||
queryUtils "antrian-operasi/internal/utils/query"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_antrian"
|
||||
const TBL_NAME = "daftar_kategori_operasi"
|
||||
|
||||
type IKategoriRepository interface {
|
||||
SearchableListKategori(c *gin.Context) ([]KategoriOperasiModel, error)
|
||||
GetKategoriById(c *gin.Context, id int) (KategoriOperasiModel, error)
|
||||
SearchableListKategori(c context.Context, search string) ([]KategoriOperasiModel, error)
|
||||
GetKategoriById(c context.Context, id int) (KategoriOperasiModel, error)
|
||||
}
|
||||
|
||||
type kategoriRepo struct {
|
||||
@@ -55,9 +55,8 @@ func baseSelectQuery() queryUtils.DynamicQuery {
|
||||
}
|
||||
}
|
||||
|
||||
func (r kategoriRepo) SearchableListKategori(c *gin.Context) ([]KategoriOperasiModel, error) {
|
||||
func (r kategoriRepo) SearchableListKategori(c context.Context, search string) ([]KategoriOperasiModel, error) {
|
||||
var result []KategoriOperasiModel
|
||||
search := c.Query("search")
|
||||
|
||||
query := baseSelectQuery()
|
||||
|
||||
@@ -84,7 +83,7 @@ func (r kategoriRepo) SearchableListKategori(c *gin.Context) ([]KategoriOperasiM
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r kategoriRepo) GetKategoriById(c *gin.Context, id int) (KategoriOperasiModel, error) {
|
||||
func (r kategoriRepo) GetKategoriById(c context.Context, id int) (KategoriOperasiModel, error) {
|
||||
var resultQuery []KategoriOperasiModel
|
||||
var result KategoriOperasiModel
|
||||
|
||||
|
||||
@@ -24,7 +24,9 @@ func NewPasienHandler(repo IPasienRepository) PasienHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/pasien/ [get]
|
||||
func (h PasienHandler) ListPasienOperasi(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListPasien(c)
|
||||
search := c.Query("search")
|
||||
|
||||
list, err := h.repo.SearchableListPasien(c, search)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -6,15 +6,15 @@ import (
|
||||
|
||||
queryUtils "antrian-operasi/internal/utils/query"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_simrs"
|
||||
const TBL_NAME = "m_pasien"
|
||||
|
||||
type IPasienRepository interface {
|
||||
SearchableListPasien(c *gin.Context) (ListPasienModel, error)
|
||||
GetPasienByNoMr(c *gin.Context, noMr string) (PasienModel, error)
|
||||
SearchableListPasien(c context.Context, search string) (ListPasienModel, error)
|
||||
GetPasienByNoMr(c context.Context, noMr string) (PasienModel, error)
|
||||
}
|
||||
|
||||
type pasienRepo struct {
|
||||
@@ -61,9 +61,8 @@ func baseSelectQuery() queryUtils.DynamicQuery {
|
||||
}
|
||||
}
|
||||
|
||||
func (r pasienRepo) SearchableListPasien(c *gin.Context) (ListPasienModel, error) {
|
||||
func (r pasienRepo) SearchableListPasien(c context.Context, search string) (ListPasienModel, error) {
|
||||
var result ListPasienModel
|
||||
search := c.Query("search")
|
||||
|
||||
query := baseSelectQuery()
|
||||
query.Limit = 10 // default limit
|
||||
@@ -93,7 +92,7 @@ func (r pasienRepo) SearchableListPasien(c *gin.Context) (ListPasienModel, error
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r pasienRepo) GetPasienByNoMr(c *gin.Context, noMr string) (PasienModel, error) {
|
||||
func (r pasienRepo) GetPasienByNoMr(c context.Context, noMr string) (PasienModel, error) {
|
||||
var resultQuery ListPasienModel
|
||||
var result PasienModel
|
||||
|
||||
|
||||
@@ -24,7 +24,8 @@ func NewSpesialisHandler(repo ISpesialisRepository) SpesialisHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/spesialis/ [get]
|
||||
func (h SpesialisHandler) ListSpesialis(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListSpesialis(c)
|
||||
search := c.Query("search")
|
||||
list, err := h.repo.SearchableListSpesialis(c, search)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
@@ -49,7 +50,10 @@ func (h SpesialisHandler) ListSpesialis(c *gin.Context) {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/sub-spesialis/ [get]
|
||||
func (h SpesialisHandler) ListSubSpesialis(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListSubSpesialis(c)
|
||||
search := c.Query("search")
|
||||
idSpesialis := c.Query("id_spesialis")
|
||||
|
||||
list, err := h.repo.SearchableListSubSpesialis(c, search, idSpesialis)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -6,16 +6,16 @@ import (
|
||||
|
||||
queryUtils "antrian-operasi/internal/utils/query"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_antrian"
|
||||
|
||||
type ISpesialisRepository interface {
|
||||
SearchableListSpesialis(c *gin.Context) ([]SpesialisModel, error)
|
||||
SearchableListSubSpesialis(c *gin.Context) ([]SubSpesialisModel, error)
|
||||
GetSpesialisById(c *gin.Context, id int) (SpesialisModel, error)
|
||||
GetSubSpesialisById(c *gin.Context, id int) (SubSpesialisModel, error)
|
||||
SearchableListSpesialis(c context.Context, search string) ([]SpesialisModel, error)
|
||||
SearchableListSubSpesialis(c context.Context, search string, idSpesialis string) ([]SubSpesialisModel, error)
|
||||
GetSpesialisById(c context.Context, id int) (SpesialisModel, error)
|
||||
GetSubSpesialisById(c context.Context, id int) (SubSpesialisModel, error)
|
||||
}
|
||||
|
||||
type spesialisRepo struct {
|
||||
@@ -83,9 +83,8 @@ func baseQueryListSubSpesialis() queryUtils.DynamicQuery {
|
||||
return query
|
||||
}
|
||||
|
||||
func (r spesialisRepo) SearchableListSpesialis(c *gin.Context) ([]SpesialisModel, error) {
|
||||
func (r spesialisRepo) SearchableListSpesialis(c context.Context, search string) ([]SpesialisModel, error) {
|
||||
var result []SpesialisModel
|
||||
search := c.Query("search")
|
||||
|
||||
query := baseQueryListSpesialis()
|
||||
|
||||
@@ -113,10 +112,10 @@ func (r spesialisRepo) SearchableListSpesialis(c *gin.Context) ([]SpesialisModel
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r spesialisRepo) SearchableListSubSpesialis(c *gin.Context) ([]SubSpesialisModel, error) {
|
||||
func (r spesialisRepo) SearchableListSubSpesialis(c context.Context, search string, idSpesialis string) ([]SubSpesialisModel, error) {
|
||||
var result []SubSpesialisModel
|
||||
search := c.Query("search")
|
||||
idSpesialis := c.Query("id_spesialis")
|
||||
// search := c.Query("search")
|
||||
// idSpesialis := c.Query("id_spesialis")
|
||||
|
||||
query := baseQueryListSubSpesialis()
|
||||
|
||||
@@ -153,7 +152,7 @@ func (r spesialisRepo) SearchableListSubSpesialis(c *gin.Context) ([]SubSpesiali
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r spesialisRepo) GetSpesialisById(c *gin.Context, id int) (SpesialisModel, error) {
|
||||
func (r spesialisRepo) GetSpesialisById(c context.Context, id int) (SpesialisModel, error) {
|
||||
var resultQuery []SpesialisModel
|
||||
var result SpesialisModel
|
||||
|
||||
@@ -182,7 +181,7 @@ func (r spesialisRepo) GetSpesialisById(c *gin.Context, id int) (SpesialisModel,
|
||||
return resultQuery[0], nil
|
||||
}
|
||||
|
||||
func (r spesialisRepo) GetSubSpesialisById(c *gin.Context, id int) (SubSpesialisModel, error) {
|
||||
func (r spesialisRepo) GetSubSpesialisById(c context.Context, id int) (SubSpesialisModel, error) {
|
||||
var resultQuery []SubSpesialisModel
|
||||
var result SubSpesialisModel
|
||||
|
||||
|
||||
@@ -24,7 +24,9 @@ func NewTindakanHandler(repo ITindakanRepository) TindakanHandler {
|
||||
// @Failure 500 {object} shared.BaseErrorResponse
|
||||
// @Router /reference/tindakan/ [get]
|
||||
func (h TindakanHandler) ListDiagnosa(c *gin.Context) {
|
||||
list, err := h.repo.SearchableListTindakan(c)
|
||||
search := c.Query("search")
|
||||
|
||||
list, err := h.repo.SearchableListTindakan(c, search)
|
||||
if err != nil {
|
||||
errorResponse := baseResponse.BaseErrorResponse{
|
||||
Success: false,
|
||||
|
||||
@@ -7,15 +7,15 @@ import (
|
||||
|
||||
"errors"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"context"
|
||||
)
|
||||
|
||||
const DB_NAME = "db_simrs"
|
||||
const TBL_NAME = "icd_cm"
|
||||
|
||||
type ITindakanRepository interface {
|
||||
SearchableListTindakan(c *gin.Context) (ListTindakanModel, error)
|
||||
GetTindakanByKode(c *gin.Context, kode string) (TindakanModel, error)
|
||||
SearchableListTindakan(c context.Context, search string) (ListTindakanModel, error)
|
||||
GetTindakanByKode(c context.Context, kode string) (TindakanModel, error)
|
||||
}
|
||||
|
||||
type tindakanRepo struct {
|
||||
@@ -36,9 +36,8 @@ func NewRepository(dbService database.Service) ITindakanRepository {
|
||||
}
|
||||
}
|
||||
|
||||
func (r tindakanRepo) SearchableListTindakan(c *gin.Context) (ListTindakanModel, error) {
|
||||
func (r tindakanRepo) SearchableListTindakan(c context.Context, search string) (ListTindakanModel, error) {
|
||||
var result ListTindakanModel
|
||||
search := c.Query("search")
|
||||
|
||||
query := queryUtils.DynamicQuery{
|
||||
From: TBL_NAME,
|
||||
@@ -71,7 +70,7 @@ func (r tindakanRepo) SearchableListTindakan(c *gin.Context) (ListTindakanModel,
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (r tindakanRepo) GetTindakanByKode(c *gin.Context, kode string) (TindakanModel, error) {
|
||||
func (r tindakanRepo) GetTindakanByKode(c context.Context, kode string) (TindakanModel, error) {
|
||||
var resultQuery []TindakanModel
|
||||
var result TindakanModel
|
||||
|
||||
|
||||
Reference in New Issue
Block a user