From c4e95e61a9ff404a68df0177d406ff6cee8592f1 Mon Sep 17 00:00:00 2001 From: renaldybrada Date: Wed, 25 Feb 2026 11:34:07 +0700 Subject: [PATCH] fixing role-permission docs --- docs/docs.go | 100 +++++++++++++++++++++++++++++- docs/swagger.json | 100 +++++++++++++++++++++++++++++- docs/swagger.yaml | 64 +++++++++++++++++++ internal/domain/access/handler.go | 4 +- 4 files changed, 264 insertions(+), 4 deletions(-) diff --git a/docs/docs.go b/docs/docs.go index dd4d6f3..ff397e0 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -51,7 +51,7 @@ const docTemplate = `{ "tags": [ "Access Role" ], - "summary": "Get List Role Page Settings", + "summary": "Get List User And Role", "parameters": [ { "type": "string", @@ -93,6 +93,50 @@ const docTemplate = `{ } } }, + "/access/role-permission": { + "get": { + "tags": [ + "Access Role" + ], + "summary": "Get List Role Page Settings", + "parameters": [ + { + "type": "string", + "description": "Search Keyword", + "name": "search", + "in": "query" + }, + { + "type": "string", + "default": "10", + "description": "Limit", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "default": "0", + "description": "Offset", + "name": "offset", + "in": "query" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/access.ListRolePermissionPaginateResponse" + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/shared.BaseErrorResponse" + } + } + } + } + }, "/access/sync-keycloak-role": { "post": { "tags": [ @@ -901,6 +945,34 @@ const docTemplate = `{ } }, "definitions": { + "access.ListRolePermissionPaginateResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/access.RolePermissionModel" + } + }, + "paging": { + "$ref": "#/definitions/shared.PaginationInfo" + } + } + }, + "access.RolePermissionModel": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "isActive": { + "type": "boolean" + }, + "name": { + "type": "string" + } + } + }, "access.SyncKeycloakRoleRequest": { "type": "object", "required": [ @@ -1537,6 +1609,32 @@ const docTemplate = `{ } } }, + "shared.PaginationInfo": { + "type": "object", + "properties": { + "currentPage": { + "type": "integer" + }, + "hasNext": { + "type": "boolean" + }, + "hasPrev": { + "type": "boolean" + }, + "limit": { + "type": "integer" + }, + "offset": { + "type": "integer" + }, + "total": { + "type": "integer" + }, + "totalPages": { + "type": "integer" + } + } + }, "spesialis.SpesialisModel": { "type": "object", "properties": { diff --git a/docs/swagger.json b/docs/swagger.json index e59f100..21b0de3 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -45,7 +45,7 @@ "tags": [ "Access Role" ], - "summary": "Get List Role Page Settings", + "summary": "Get List User And Role", "parameters": [ { "type": "string", @@ -87,6 +87,50 @@ } } }, + "/access/role-permission": { + "get": { + "tags": [ + "Access Role" + ], + "summary": "Get List Role Page Settings", + "parameters": [ + { + "type": "string", + "description": "Search Keyword", + "name": "search", + "in": "query" + }, + { + "type": "string", + "default": "10", + "description": "Limit", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "default": "0", + "description": "Offset", + "name": "offset", + "in": "query" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/access.ListRolePermissionPaginateResponse" + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/shared.BaseErrorResponse" + } + } + } + } + }, "/access/sync-keycloak-role": { "post": { "tags": [ @@ -895,6 +939,34 @@ } }, "definitions": { + "access.ListRolePermissionPaginateResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/access.RolePermissionModel" + } + }, + "paging": { + "$ref": "#/definitions/shared.PaginationInfo" + } + } + }, + "access.RolePermissionModel": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "isActive": { + "type": "boolean" + }, + "name": { + "type": "string" + } + } + }, "access.SyncKeycloakRoleRequest": { "type": "object", "required": [ @@ -1531,6 +1603,32 @@ } } }, + "shared.PaginationInfo": { + "type": "object", + "properties": { + "currentPage": { + "type": "integer" + }, + "hasNext": { + "type": "boolean" + }, + "hasPrev": { + "type": "boolean" + }, + "limit": { + "type": "integer" + }, + "offset": { + "type": "integer" + }, + "total": { + "type": "integer" + }, + "totalPages": { + "type": "integer" + } + } + }, "spesialis.SpesialisModel": { "type": "object", "properties": { diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 7cc5433..98fbe40 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -1,5 +1,23 @@ basePath: /api definitions: + access.ListRolePermissionPaginateResponse: + properties: + data: + items: + $ref: '#/definitions/access.RolePermissionModel' + type: array + paging: + $ref: '#/definitions/shared.PaginationInfo' + type: object + access.RolePermissionModel: + properties: + id: + type: string + isActive: + type: boolean + name: + type: string + type: object access.SyncKeycloakRoleRequest: properties: client_role: @@ -422,6 +440,23 @@ definitions: success: type: boolean type: object + shared.PaginationInfo: + properties: + currentPage: + type: integer + hasNext: + type: boolean + hasPrev: + type: boolean + limit: + type: integer + offset: + type: integer + total: + type: integer + totalPages: + type: integer + type: object spesialis.SpesialisModel: properties: id: @@ -510,6 +545,35 @@ paths: description: Internal Server Error schema: $ref: '#/definitions/shared.BaseErrorResponse' + summary: Get List User And Role + tags: + - Access Role + /access/role-permission: + get: + parameters: + - description: Search Keyword + in: query + name: search + type: string + - default: "10" + description: Limit + in: query + name: limit + type: string + - default: "0" + description: Offset + in: query + name: offset + type: string + responses: + "200": + description: OK + schema: + $ref: '#/definitions/access.ListRolePermissionPaginateResponse' + "500": + description: Internal Server Error + schema: + $ref: '#/definitions/shared.BaseErrorResponse' summary: Get List Role Page Settings tags: - Access Role diff --git a/internal/domain/access/handler.go b/internal/domain/access/handler.go index 6665fbf..fb53a9f 100644 --- a/internal/domain/access/handler.go +++ b/internal/domain/access/handler.go @@ -143,9 +143,9 @@ func (h AccessHandler) ListUserRole(c *gin.Context) { // @Param search query string false "Search Keyword" // @Param limit query string false "Limit" default(10) // @Param offset query string false "Offset" default(0) -// @Success 200 {object} []UserRoleResponse +// @Success 200 {object} ListRolePermissionPaginateResponse // @Failure 500 {object} shared.BaseErrorResponse -// @Router /access/list-user [get] +// @Router /access/role-permission [get] func (h AccessHandler) ListRolePageSettings(c *gin.Context) { var query QueryListRolePermission if err := c.ShouldBindQuery(&query); err != nil {