Documentation
¶
Index ¶
- func NewProjectHandler(g *echo.Group, middManager *middlewares.MiddlewareManager, ...)
- type ProjectHandler
- func (h *ProjectHandler) Create(c echo.Context) wrapper.Response
- func (h *ProjectHandler) Delete(c echo.Context) wrapper.Response
- func (h *ProjectHandler) Fetch(c echo.Context) wrapper.Response
- func (h *ProjectHandler) GetByID(c echo.Context) wrapper.Response
- func (h *ProjectHandler) Update(c echo.Context) wrapper.Response
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewProjectHandler ¶
func NewProjectHandler(g *echo.Group, middManager *middlewares.MiddlewareManager, projectUsecase usecases.ProjectUsecase)
NewProjectHandler will initialize the project resources endpoint
Types ¶
type ProjectHandler ¶
type ProjectHandler struct {
ProjectUC usecases.ProjectUsecase
}
func (*ProjectHandler) Create ¶
func (h *ProjectHandler) Create(c echo.Context) wrapper.Response
CreateProject godoc @Summary Create a new project @Description Create a new project under an organization @Tags projects @Accept json @Produce json @Param body body dto.CreateProjectReq true "Project creation request" @Success 201 {object} wrapper.SuccessResponse{data=domains.Project} @Failure 400 {object} wrapper.FailResponse @Failure 401 {object} wrapper.FailResponse @Failure 403 {object} wrapper.FailResponse @Failure 500 {object} wrapper.FailResponse @Security XFirebaseBearer @Router /admin/projects [post]
func (*ProjectHandler) Delete ¶
func (h *ProjectHandler) Delete(c echo.Context) wrapper.Response
DeleteProject godoc @Summary Delete project @Description Delete project by ID @Tags projects @Accept json @Produce json @Param projectId path int true "Project ID" @Success 200 {object} wrapper.SuccessResponse{} @Failure 400 {object} wrapper.FailResponse @Failure 401 {object} wrapper.FailResponse @Failure 403 {object} wrapper.FailResponse @Failure 404 {object} wrapper.FailResponse @Failure 500 {object} wrapper.FailResponse @Security XFirebaseBearer @Router /admin/projects/{projectId} [delete]
func (*ProjectHandler) Fetch ¶
func (h *ProjectHandler) Fetch(c echo.Context) wrapper.Response
ListProjects godoc @Summary List projects @Description Get list of projects @Tags projects @Accept json @Produce json @Param limit query int false "Number of records should be returned" @Param page query int false "Page" @Success 200 {object} wrapper.SuccessResponse{data=[]domains.Project} @Failure 400 {object} wrapper.FailResponse @Failure 401 {object} wrapper.FailResponse @Failure 403 {object} wrapper.FailResponse @Security XFirebaseBearer @Router /admin/projects [get]
func (*ProjectHandler) GetByID ¶
func (h *ProjectHandler) GetByID(c echo.Context) wrapper.Response
GetProjectInfo godoc @Summary Get project info @Description Get project by ID @Tags projects @Accept json @Produce json @Param projectId path int true "Project ID" @Success 200 {object} wrapper.SuccessResponse{data=domains.Project} @Failure 401 {object} wrapper.FailResponse @Failure 403 {object} wrapper.FailResponse @Failure 404 {object} wrapper.FailResponse @Security XFirebaseBearer @Router /admin/projects/{projectId} [get]
func (*ProjectHandler) Update ¶
func (h *ProjectHandler) Update(c echo.Context) wrapper.Response
UpdateProject godoc @Summary Update project @Description Update project by ID @Tags projects @Accept json @Produce json @Param projectId path int true "Project ID" @Param body body dto.UpdateProjectReq true "Project update request" @Success 200 {object} wrapper.SuccessResponse{} @Failure 400 {object} wrapper.FailResponse @Failure 401 {object} wrapper.FailResponse @Failure 403 {object} wrapper.FailResponse @Failure 404 {object} wrapper.FailResponse @Failure 500 {object} wrapper.FailResponse @Security XFirebaseBearer @Router /admin/projects/{projectId} [put]