package menu import ( v1 "management/internal/erpserver/service/v1" "management/internal/pkg/mid" "management/internal/pkg/render" "management/internal/pkg/session" "management/internal/tasks" "github.com/drhin/logger" "github.com/go-chi/chi/v5" ) type Config struct { Log *logger.Logger Sm session.Manager Render render.Renderer TaskDistributor tasks.TaskDistributor MenuService v1.MenuService } func Routes(r chi.Router, cfg Config) { app := newApp(cfg.Render, cfg.MenuService) r.Get("/menus", app.menus) r.Route("/menu", func(r chi.Router) { r.Use(mid.Audit(cfg.Sm, cfg.Log, cfg.TaskDistributor)) r.Get("/list", app.list) r.Post("/list", app.list) r.Get("/add", app.add) r.Get("/add_children", app.addChildren) r.Get("/edit", app.edit) r.Post("/save", app.save) r.Post("/data", app.data) r.Post("/refresh_cache", app.refreshCache) }) }