80 lines
2.7 KiB
Go
80 lines
2.7 KiB
Go
package bpjshandler
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
/******************** main / transaction ********************/
|
|
reference "simrs-vx/internal/interface/bpjs-handler/reference"
|
|
vclaimsep "simrs-vx/internal/interface/bpjs-handler/vclaim-sep"
|
|
vclaimsephist "simrs-vx/internal/interface/bpjs-handler/vclaim-sep-hist"
|
|
vclaimsepprint "simrs-vx/internal/interface/bpjs-handler/vclaim-sep-print"
|
|
|
|
/******************** actor ********************/
|
|
|
|
/******************** external ********************/
|
|
a "github.com/karincake/apem"
|
|
hk "github.com/karincake/hongkue"
|
|
|
|
/******************** infra ********************/
|
|
ibpjs "simrs-vx/internal/infra/bpjs"
|
|
gs "simrs-vx/internal/infra/gorm-setting"
|
|
|
|
/******************** pkg ********************/
|
|
cmw "simrs-vx/pkg/cors-manager-mw"
|
|
lh "simrs-vx/pkg/lang-helper"
|
|
handlerlogger "simrs-vx/pkg/middleware/handler-logger"
|
|
zlc "simrs-vx/pkg/zerolog-ctx"
|
|
|
|
/******************** sources ********************/
|
|
///// Internal
|
|
validation "simrs-vx/internal/interface/main-handler/helper/validation"
|
|
"simrs-vx/internal/interface/main-handler/home"
|
|
)
|
|
|
|
// One place route to relatively easier to manage, ESPECIALLY in tracking
|
|
func SetRoutes() http.Handler {
|
|
/////
|
|
a.RegisterExtCall(gs.Adjust)
|
|
a.RegisterExtCall(zlc.Adjust)
|
|
a.RegisterExtCall(lh.Populate)
|
|
a.RegisterExtCall(ibpjs.SetConfig)
|
|
a.RegisterExtCall(validation.RegisterValidation)
|
|
|
|
r := http.NewServeMux()
|
|
|
|
/******************** Main ********************/
|
|
r.HandleFunc("/", home.Home)
|
|
|
|
hk.GroupRoutes("/v1/vclaim-sep", r, hk.MapHandlerFunc{
|
|
"POST /": vclaimsep.O.Create,
|
|
"PATCH /{id}": vclaimsep.O.Update,
|
|
"DELETE /{id}": vclaimsep.O.Delete,
|
|
})
|
|
|
|
hk.GroupRoutes("/v1/vclaim-sep-hist", r, hk.MapHandlerFunc{
|
|
"GET /": vclaimsephist.O.GetList,
|
|
})
|
|
|
|
hk.GroupRoutes("/v1/vclaim-sep-print", r, hk.MapHandlerFunc{
|
|
"POST /": vclaimsepprint.O.Create,
|
|
})
|
|
|
|
hk.GroupRoutes("/v1/reference", r, hk.MapHandlerFunc{
|
|
"GET /province": reference.GetListProvince,
|
|
"GET /regency/{provinceCode}": reference.GetListCities,
|
|
"GET /district/{regencyCode}": reference.GetListDistrict,
|
|
"GET /diagnose/{keyword}": reference.GetListDiagnose,
|
|
"GET /diagnose-prb": reference.GetListDiagnosePrb,
|
|
"GET /medicine-prb/{keyword}": reference.GetListMedicinePrb,
|
|
"GET /unit/{unitCode}": reference.GetListUnit,
|
|
"GET /healthcare/{healthcare}/{healthcareType}": reference.GetListHealthcare,
|
|
"GET /responsible-doctor/{serviceType}/{serviceDate}/{specialistCode}": reference.GetListDoctor,
|
|
})
|
|
|
|
/******************** actor ********************/
|
|
|
|
/******************** sources ********************/
|
|
|
|
return cmw.SetCors(handlerlogger.SetLog(r))
|
|
}
|