handler.*Handler.InitRoutes   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 12
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 8
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 11
nop 1
dl 0
loc 12
ccs 8
cts 8
cp 1
crap 1
rs 9.85
c 0
b 0
f 0
1
package handler
2
3
import (
4
	"github.com/architectv/estate-task/pkg/service"
5
	"github.com/gofiber/fiber/v2"
6
	"github.com/sirupsen/logrus"
7
)
8
9
type Handler struct {
10
	services *service.Service
11
}
12
13
func NewHandler(services *service.Service) *Handler {
14
	return &Handler{services: services}
15
}
16
17
func (h *Handler) InitRoutes(router fiber.Router) {
18 1
	rooms := router.Group("/rooms")
19
	{
20 1
		rooms.Post("/", h.createRoom)
21 1
		rooms.Delete("/:id", h.deleteRoom)
22 1
		rooms.Get("/", h.getAllRooms)
23
	}
24 1
	bookings := router.Group("/bookings")
25
	{
26 1
		bookings.Post("/", h.createBooking)
27 1
		bookings.Delete("/:id", h.deleteBooking)
28 1
		bookings.Get("/", h.getBookingsByRoomId)
29
	}
30
}
31
32
func sendError(ctx *fiber.Ctx, status int, err error) error {
33 1
	logrus.Error(err.Error())
34 1
	ctx.Status(status)
35 1
	return ctx.JSON(fiber.Map{"error": err.Error()})
36
}
37