feat/authentication

+ moved pkg/auth-helper to internal/lib/auth
+ update AuthInfo
+ cleaning
This commit is contained in:
2025-10-26 21:29:41 +07:00
parent b5b0a8183d
commit 2c432a7bef
33 changed files with 227 additions and 121 deletions
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/adime"
u "simrs-vx/internal/use-case/main-use-case/adime"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -10,7 +10,7 @@ import (
m "simrs-vx/internal/domain/main-entities/user"
s "simrs-vx/internal/use-case/main-use-case/authentication"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
)
func Login(w http.ResponseWriter, r *http.Request) {
@@ -14,7 +14,7 @@ import (
u "simrs-vx/internal/use-case/main-use-case/chemo"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/consultation"
u "simrs-vx/internal/use-case/main-use-case/consultation"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -9,7 +9,7 @@ import (
e "simrs-vx/internal/domain/main-entities/device-order"
u "simrs-vx/internal/use-case/main-use-case/device-order"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -12,7 +12,7 @@ import (
u "simrs-vx/internal/use-case/main-use-case/encounter"
erc "simrs-vx/internal/domain/references/common"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -36,7 +36,12 @@ func (obj myBase) Create(w http.ResponseWriter, r *http.Request) {
}
func (obj myBase) GetList(w http.ResponseWriter, r *http.Request) {
authInfo, err := pa.GetAuthInfo(r)
if err != nil {
rw.WriteJSON(w, http.StatusUnauthorized, d.IS{"message": err.Error()}, nil)
}
dto := e.ReadListDto{}
dto.AuthInfo = *authInfo
sf.UrlQueryParam(&dto, *r.URL)
res, err := u.ReadList(dto)
rw.DataResponse(w, res, err)
+16 -15
View File
@@ -135,6 +135,19 @@ func SetRoutes() http.Handler {
hc.RegCrud(r, "/v1/prescription-item", prescriptionitem.O)
hc.RegCrud(r, "/v1/device-order-item", deviceorderitem.O)
hc.RegCrud(r, "/v1/material-order-item", materialorderitem.O)
hk.GroupRoutes("/v1/encounter", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": encounter.O.GetList,
"GET /{id}": encounter.O.GetDetail,
"POST /": encounter.O.Create,
"PATCH /{id}": encounter.O.Update,
"DELETE /{id}": encounter.O.Delete,
"PATCH /{id}/checkout": encounter.O.CheckOut,
"PATCH /{id}/proccess": encounter.O.Process,
"PATCH /{id}/cancel": encounter.O.Cancel,
"PATCH /{id}/reject": encounter.O.Reject,
"PATCH /{id}/skip": encounter.O.Skip,
})
hk.GroupRoutes("/v1/mcu-order", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": mcuorder.O.GetList,
"GET /{id}": mcuorder.O.GetDetail,
@@ -153,7 +166,7 @@ func SetRoutes() http.Handler {
"PATCH /{id}/complete": mcuorderitem.O.Complete,
"PATCH /{id}/set-schedule": mcuorderitem.O.SetSchedule,
})
hk.GroupRoutes("/v1/prescription", r, hk.MapHandlerFunc{
hk.GroupRoutes("/v1/prescription", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": prescription.O.GetList,
"GET /{id}": prescription.O.GetDetail,
"POST /": prescription.O.Create,
@@ -161,7 +174,7 @@ func SetRoutes() http.Handler {
"DELETE /{id}": prescription.O.Delete,
"PATCH /{id}/approve": prescription.O.Approve,
})
hk.GroupRoutes("/v1/mcu-order-sub-item", r, hk.MapHandlerFunc{
hk.GroupRoutes("/v1/mcu-order-sub-item", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": mcuordersubitem.O.GetList,
"GET /{id}": mcuordersubitem.O.GetDetail,
"POST /": mcuordersubitem.O.Create,
@@ -169,18 +182,6 @@ func SetRoutes() http.Handler {
"DELETE /{id}": mcuordersubitem.O.Delete,
"PATCH /{id}/complete": mcuordersubitem.O.Complete,
})
hk.GroupRoutes("/v1/encounter", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": encounter.O.GetList,
"GET /{id}": encounter.O.GetDetail,
"POST /": encounter.O.Create,
"PATCH /{id}": encounter.O.Update,
"DELETE /{id}": encounter.O.Delete,
"PATCH /{id}/checkout": encounter.O.CheckOut,
"PATCH /{id}/proccess": encounter.O.Process,
"PATCH /{id}/cancel": encounter.O.Cancel,
"PATCH /{id}/reject": encounter.O.Reject,
"PATCH /{id}/skip": encounter.O.Skip,
})
hk.GroupRoutes("/v1/medication", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": medication.O.GetList,
"GET /{id}": medication.O.GetDetail,
@@ -190,7 +191,7 @@ func SetRoutes() http.Handler {
"PATCH /{id}/complete": medication.O.Complete,
})
hk.GroupRoutes("/v1/medication-item", r, hk.MapHandlerFunc{
hk.GroupRoutes("/v1/medication-item", r, auth.GuardMW, hk.MapHandlerFunc{
"GET /": medicationitem.O.GetList,
"GET /{id}": medicationitem.O.GetDetail,
"POST /": medicationitem.O.Create,
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/material-order"
u "simrs-vx/internal/use-case/main-use-case/material-order"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/mcu-order"
u "simrs-vx/internal/use-case/main-use-case/mcu-order"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -6,7 +6,7 @@ import (
rw "github.com/karincake/risoles"
sf "github.com/karincake/semprit"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
e "simrs-vx/internal/domain/main-entities/medication-item-dist"
u "simrs-vx/internal/use-case/main-use-case/medication-item-dist"
@@ -6,7 +6,7 @@ import (
rw "github.com/karincake/risoles"
sf "github.com/karincake/semprit"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
e "simrs-vx/internal/domain/main-entities/medication"
u "simrs-vx/internal/use-case/main-use-case/medication"
@@ -7,6 +7,9 @@ import (
sf "github.com/karincake/semprit"
// ua "github.com/karincake/tumpeng/auth/svc"
d "github.com/karincake/dodol"
pa "simrs-vx/internal/lib/auth"
e "simrs-vx/internal/domain/main-entities/prescription"
u "simrs-vx/internal/use-case/main-use-case/prescription"
@@ -21,6 +24,11 @@ func (obj myBase) Create(w http.ResponseWriter, r *http.Request) {
if res := rw.ValidateStructByIOR(w, r.Body, &dto); !res {
return
}
authInfo, err := pa.GetAuthInfo(r)
if err != nil {
rw.WriteJSON(w, http.StatusUnauthorized, d.IS{"message": err.Error()}, nil)
}
dto.AuthInfo = *authInfo
res, err := u.Create(dto)
rw.DataResponse(w, res, err)
}
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/sbar"
u "simrs-vx/internal/use-case/main-use-case/sbar"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)
@@ -11,7 +11,7 @@ import (
e "simrs-vx/internal/domain/main-entities/soapi"
u "simrs-vx/internal/use-case/main-use-case/soapi"
pa "simrs-vx/pkg/auth-helper"
pa "simrs-vx/internal/lib/auth"
d "github.com/karincake/dodol"
)