93 lines
3.1 KiB
Go
93 lines
3.1 KiB
Go
package handler
|
|
|
|
import (
|
|
"ego/internal/service"
|
|
"ego/pkg/logger"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
// SysDeployProjectHandler 部署项目处理器
|
|
type SysDeployProjectHandler struct {
|
|
deployProjectService *service.SysDeployProjectService
|
|
}
|
|
|
|
// NewSysDeployProjectHandler 构建部署项目处理器
|
|
func NewSysDeployProjectHandler(deployProjectService *service.SysDeployProjectService) *SysDeployProjectHandler {
|
|
return &SysDeployProjectHandler{
|
|
deployProjectService: deployProjectService,
|
|
}
|
|
}
|
|
|
|
// Create 创建部署项目记录
|
|
// @Summary 创建部署项目记录
|
|
// @Description 创建新的部署项目记录
|
|
// @Tags 部署项目管理
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param deployProject body model.SysDeployProject true "部署项目信息"
|
|
// @Success 200 {object} serializer.Response
|
|
// @Router /deploy-projects [post]
|
|
func (h *SysDeployProjectHandler) Create(c *gin.Context) {
|
|
logger.Info(c, "创建部署项目记录")
|
|
c.JSON(200, h.deployProjectService.Create(c))
|
|
}
|
|
|
|
// GetByID 根据ID获取部署项目记录
|
|
// @Summary 获取部署项目记录
|
|
// @Description 根据ID获取部署项目记录详情
|
|
// @Tags 部署项目管理
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param id path string true "部署ID"
|
|
// @Success 200 {object} serializer.Response
|
|
// @Router /deploy-projects/{id} [get]
|
|
func (h *SysDeployProjectHandler) GetByID(c *gin.Context) {
|
|
logger.Info(c, "获取部署项目记录", zap.String("id", c.Param("id")))
|
|
c.JSON(200, h.deployProjectService.GetByID(c))
|
|
}
|
|
|
|
// UpdateByID 根据ID更新部署项目记录
|
|
// @Summary 更新部署项目记录
|
|
// @Description 根据ID更新部署项目记录
|
|
// @Tags 部署项目管理
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param id path string true "部署ID"
|
|
// @Param deployProject body model.SysDeployProject true "部署项目信息"
|
|
// @Success 200 {object} serializer.Response
|
|
// @Router /deploy-projects/{id} [put]
|
|
func (h *SysDeployProjectHandler) UpdateByID(c *gin.Context) {
|
|
logger.Info(c, "更新部署项目记录", zap.String("id", c.Param("id")))
|
|
c.JSON(200, h.deployProjectService.UpdateByID(c))
|
|
}
|
|
|
|
// DeleteByID 根据ID删除部署项目记录
|
|
// @Summary 删除部署项目记录
|
|
// @Description 根据ID删除部署项目记录
|
|
// @Tags 部署项目管理
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param id path string true "部署ID"
|
|
// @Success 200 {object} serializer.Response
|
|
// @Router /deploy-projects/{id} [delete]
|
|
func (h *SysDeployProjectHandler) DeleteByID(c *gin.Context) {
|
|
logger.Info(c, "删除部署项目记录", zap.String("id", c.Param("id")))
|
|
c.JSON(200, h.deployProjectService.DeleteByID(c))
|
|
}
|
|
|
|
// GetByCondition 条件查询部署项目记录
|
|
// @Summary 条件查询部署项目记录
|
|
// @Description 根据条件分页查询部署项目记录
|
|
// @Tags 部署项目管理
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param params query types.Params true "查询参数"
|
|
// @Success 200 {object} serializer.Response
|
|
// @Router /deploy-projects [get]
|
|
func (h *SysDeployProjectHandler) GetByCondition(c *gin.Context) {
|
|
logger.Info(c, "条件查询部署项目记录")
|
|
c.JSON(200, h.deployProjectService.GetByCondition(c))
|
|
}
|