bitrix/internal/controllers/initial.go
2025-02-25 13:13:00 +03:00

82 lines
2.1 KiB
Go

package controllers
import (
"gitea.pena/PenaSide/common/encrypt"
"github.com/gofiber/fiber/v2"
"go.uber.org/zap"
"penahub.gitlab.yandexcloud.net/backend/quiz/bitrix/internal/service"
)
type Deps struct {
Service *service.Service
Logger *zap.Logger
Encrypt *encrypt.Encrypt
RedirectURL string
}
type Controller struct {
service *service.Service
logger *zap.Logger
}
func NewController(deps Deps) *Controller {
return &Controller{
service: deps.Service,
logger: deps.Logger,
}
}
func (c *Controller) Register(router fiber.Router) {
router.Patch("/users", c.UpdateListUsers)
router.Get("/users", c.GettingUserWithPagination)
router.Delete("/account", c.SoftDeleteAccount)
router.Get("/account", c.GetCurrentAccount)
router.Post("/account", c.ConnectAccount)
router.Get("/steps", c.GetStepsWithPagination)
router.Patch("/steps", c.UpdateListSteps)
router.Patch("/pipelines", c.UpdateListPipelines)
router.Get("/pipelines", c.GetPipelinesWithPagination)
router.Patch("/rules/:quizID", c.ChangeQuizSettings)
router.Post("/rules/:quizID", c.SetQuizSettings)
router.Get("/rules/:quizID", c.GettingQuizRules)
//router.Get("/tags", c.GetTagsWithPagination)
//router.Patch("/tags", c.UpdateListTags)
router.Get("/fields", c.GetFieldsWithPagination)
router.Patch("/fields", c.UpdateListCustom)
router.Get("/", c.Bitrix)
}
func (c *Controller) Name() string {
return "bitrix"
}
type WebhookController struct {
service *service.Service
logger *zap.Logger
encrypt *encrypt.Encrypt
redirectURL string
}
func NewWebhookController(deps Deps) *WebhookController {
return &WebhookController{
service: deps.Service,
logger: deps.Logger,
encrypt: deps.Encrypt,
redirectURL: deps.RedirectURL,
}
}
func (c *WebhookController) Register(router fiber.Router) {
router.Get("/create", c.WebhookCreate)
//router.Delete("/delete", c.WebhookDelete)
}
func (c *WebhookController) Name() string {
return "webhook"
}
// todo check для чего
func (c *Controller) Bitrix(ctx *fiber.Ctx) error {
return ctx.Status(fiber.StatusOK).JSON("OK")
}