amocrm/internal/controllers/middleware.go
skeris b554d9f475
All checks were successful
Deploy / CreateImage (push) Successful in 2m7s
Deploy / DeployService (push) Successful in 19s
ci gitea
2025-02-08 01:06:18 +03:00

38 lines
727 B
Go

package controllers
import (
"github.com/gofiber/fiber/v2"
"gitea.pena/SQuiz/common/model"
"strconv"
)
func extractParams(ctx *fiber.Ctx) (*model.PaginationReq, error) {
pageStr := ctx.Query("page")
sizeStr := ctx.Query("size")
page := 1
size := 25
if pageStr != "" {
pageNew, err := strconv.Atoi(pageStr)
if err != nil {
return nil, ctx.Status(fiber.StatusBadRequest).SendString("Invalid page parameter")
}
page = pageNew
}
if sizeStr != "" {
sizeNew, err := strconv.Atoi(sizeStr)
if err != nil {
return nil, ctx.Status(fiber.StatusBadRequest).SendString("Invalid size parameter")
}
size = sizeNew
}
req := model.PaginationReq{
Page: page,
Size: int32(size),
}
return &req, nil
}