add status filter

This commit is contained in:
Aditya Siregar 2025-10-13 07:55:29 +07:00
parent e67b9a357f
commit 1a9cc40c7f
2 changed files with 17 additions and 10 deletions

View File

@ -30,6 +30,10 @@ type ContextInfo struct {
UserName string
}
func (c *ContextInfo) IsSuperAdmin() bool {
return c.UserRole == "superadmin" || c.UserRole == "admin"
}
type ctxKeyType struct{}
var ctxKey = ctxKeyType(struct{}{})

View File

@ -163,7 +163,6 @@ func (h *AdminApprovalFlowHandler) ListApprovalFlows(c *gin.Context) {
page, _ := strconv.Atoi(c.DefaultQuery("page", "1"))
limit, _ := strconv.Atoi(c.DefaultQuery("limit", "10"))
// Parse department_id
var departmentID *uuid.UUID
if departmentIDStr := c.Query("department_id"); departmentIDStr != "" {
if id, err := uuid.Parse(departmentIDStr); err == nil {
@ -171,7 +170,12 @@ func (h *AdminApprovalFlowHandler) ListApprovalFlows(c *gin.Context) {
}
}
// Parse is_active
appCtx := appcontext.FromGinContext(c.Request.Context())
if !appCtx.IsSuperAdmin() {
departmentID = &appCtx.DepartmentID
}
var isActive *bool
if isActiveStr := c.Query("is_active"); isActiveStr != "" {
if active, err := strconv.ParseBool(isActiveStr); err == nil {
@ -179,7 +183,6 @@ func (h *AdminApprovalFlowHandler) ListApprovalFlows(c *gin.Context) {
}
}
// Parse search
var search *string
if searchStr := c.Query("search"); searchStr != "" {
search = &searchStr