2023-11-12 17:43:23 +03:00
|
|
|
package routes
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gofiber/fiber/v2"
|
2024-07-24 01:15:37 +03:00
|
|
|
"github.com/ngn13/website/api/database"
|
2023-11-12 17:43:23 +03:00
|
|
|
"github.com/ngn13/website/api/util"
|
|
|
|
)
|
|
|
|
|
2024-10-06 17:30:25 +03:00
|
|
|
func GET_Services(c *fiber.Ctx) error {
|
2024-07-24 01:15:37 +03:00
|
|
|
var (
|
2024-10-06 17:30:25 +03:00
|
|
|
services []database.Service
|
2025-01-04 00:00:10 +03:00
|
|
|
service database.Service
|
2024-07-24 01:15:37 +03:00
|
|
|
)
|
|
|
|
|
2025-01-04 00:00:10 +03:00
|
|
|
db := c.Locals("database").(*database.Type)
|
|
|
|
name := c.Query("name")
|
2024-10-06 17:30:25 +03:00
|
|
|
|
2025-01-04 00:00:10 +03:00
|
|
|
if name != "" {
|
|
|
|
if s, err := db.ServiceFind(name); err != nil {
|
|
|
|
return util.ErrInternal(c, err)
|
|
|
|
} else if s != nil {
|
|
|
|
return util.JSON(c, 200, fiber.Map{
|
|
|
|
"result": s,
|
|
|
|
})
|
2024-07-24 01:15:37 +03:00
|
|
|
}
|
2024-10-06 17:30:25 +03:00
|
|
|
|
2025-01-04 00:00:10 +03:00
|
|
|
return util.ErrNotExist(c)
|
|
|
|
}
|
|
|
|
|
|
|
|
for db.ServiceNext(&service) {
|
2024-07-24 01:15:37 +03:00
|
|
|
services = append(services, service)
|
|
|
|
}
|
|
|
|
|
2025-01-04 00:00:10 +03:00
|
|
|
return util.JSON(c, 200, fiber.Map{
|
2024-07-24 01:15:37 +03:00
|
|
|
"result": services,
|
|
|
|
})
|
2023-11-12 17:43:23 +03:00
|
|
|
}
|