package controllers import ( "amocrm/internal/models" "amocrm/internal/service" "github.com/gofiber/fiber/v2" ) type DifferentController struct { DifferentService *service.DifferentService } func NewDifferentController(service *service.DifferentService) *DifferentController { return &DifferentController{ DifferentService: service, } } func (c *DifferentController) Register(router fiber.Router) { router.Get("/steps", c.Gettingstepsfromcash) router.Patch("/steps", c.Updateliststeps) router.Get("/webhook/create", c.Webhookcreate) router.Get("/webhook/delete", c.Webhookdelete) router.Patch("/pipelines", c.Updatelistpipelines) router.Get("/pipelines", c.Gettingpipelinesfromcash) router.Patch("/rules", c.Changequizsettings) router.Post("/rules", c.Setquizsettings) router.Get("/rules/{quizID}", c.Gettingquizrules) router.Get("/tags", c.Gettingtagsfromcash) router.Patch("/tags", c.Updatelisttags) router.Get("/fields", c.Gettingfieldsfromcash) router.Patch("/fields", c.Updatelistcustom) } func (c *DifferentController) Name() string { return "" } func (c *DifferentController) Gettingstepsfromcash(ctx *fiber.Ctx) error { // Обработчик для метода Gettingstepsfromcash response, err := c.DifferentService.Gettingstepsfromcash(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) } func (c *DifferentController) Updateliststeps(ctx *fiber.Ctx) error { // Обработчик для метода Updateliststeps err := c.DifferentService.Updateliststeps(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Webhookcreate(ctx *fiber.Ctx) error { // Обработчик для метода Webhookcreate err := c.DifferentService.Webhookcreate(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Webhookdelete(ctx *fiber.Ctx) error { // Обработчик для метода Webhookdelete err := c.DifferentService.Webhookdelete(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Updatelistpipelines(ctx *fiber.Ctx) error { // Обработчик для метода Updatelistpipelines err := c.DifferentService.Updatelistpipelines(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Gettingpipelinesfromcash(ctx *fiber.Ctx) error { // Обработчик для метода Gettingpipelinesfromcash response, err := c.DifferentService.Gettingpipelinesfromcash(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) } func (c *DifferentController) Changequizsettings(ctx *fiber.Ctx) error { // Обработчик для метода Changequizsettings var request models.RulesReq if err := ctx.BodyParser(&request); err != nil { return ctx.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "Invalid request payload"}) } err := c.DifferentService.Changequizsettings(ctx.Context(), &request) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Setquizsettings(ctx *fiber.Ctx) error { // Обработчик для метода Setquizsettings var request models.RulesReq if err := ctx.BodyParser(&request); err != nil { return ctx.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "Invalid request payload"}) } err := c.DifferentService.Setquizsettings(ctx.Context(), &request) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Gettingquizrules(ctx *fiber.Ctx) error { // Обработчик для метода Gettingquizrules response, err := c.DifferentService.Gettingquizrules(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) } func (c *DifferentController) Gettingtagsfromcash(ctx *fiber.Ctx) error { // Обработчик для метода Gettingtagsfromcash response, err := c.DifferentService.Gettingtagsfromcash(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) } func (c *DifferentController) Updatelisttags(ctx *fiber.Ctx) error { // Обработчик для метода Updatelisttags err := c.DifferentService.Updatelisttags(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *DifferentController) Gettingfieldsfromcash(ctx *fiber.Ctx) error { // Обработчик для метода Gettingfieldsfromcash response, err := c.DifferentService.Gettingfieldsfromcash(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) } func (c *DifferentController) Updatelistcustom(ctx *fiber.Ctx) error { // Обработчик для метода Updatelistcustom err := c.DifferentService.Updatelistcustom(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) }