feat: swag.
This commit is contained in:
@@ -36,6 +36,15 @@ func NewProductSuiteAdminController() *ProductSuiteAdminController {
|
||||
return &ProductSuiteAdminController{DB: config.DB}
|
||||
}
|
||||
|
||||
// @Summary 获取产品套件列表
|
||||
// @Description 查询产品套件列表,含套件下的库存明细
|
||||
// @Tags 产品套件管理
|
||||
// @Produce json
|
||||
// @Param keyword query string false "关键词(代码/名称/备注模糊搜索)"
|
||||
// @Param projectTypeCode query string false "项目类型代码筛选"
|
||||
// @Security BearerAuth
|
||||
// @Success 200 {object} SwagAPIResponse "查询成功"
|
||||
// @Router /admin/product-suites [get]
|
||||
func (pc *ProductSuiteAdminController) List(c *gin.Context) {
|
||||
var suites []models.ProductSuite
|
||||
query := pc.DB.Model(&models.ProductSuite{}).Order("updated_at DESC, id DESC")
|
||||
@@ -69,6 +78,16 @@ func (pc *ProductSuiteAdminController) List(c *gin.Context) {
|
||||
writeSuccess(c, http.StatusOK, "query success", result)
|
||||
}
|
||||
|
||||
// @Summary 创建产品套件
|
||||
// @Description 创建新的产品套件,可选关联库存记录
|
||||
// @Tags 产品套件管理
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param suite body productSuitePayload true "套件信息"
|
||||
// @Security BearerAuth
|
||||
// @Success 201 {object} SwagAPIResponse "创建成功"
|
||||
// @Failure 400 {object} SwagAPIResponse "请求参数错误"
|
||||
// @Router /admin/product-suites [post]
|
||||
func (pc *ProductSuiteAdminController) Create(c *gin.Context) {
|
||||
var payload productSuitePayload
|
||||
if err := c.ShouldBindJSON(&payload); err != nil {
|
||||
@@ -107,6 +126,18 @@ func (pc *ProductSuiteAdminController) Create(c *gin.Context) {
|
||||
writeSuccess(c, http.StatusCreated, "create success", record)
|
||||
}
|
||||
|
||||
// @Summary 更新产品套件
|
||||
// @Description 更新指定产品套件的信息和关联库存
|
||||
// @Tags 产品套件管理
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param id path int true "套件ID"
|
||||
// @Param suite body productSuitePayload true "更新信息"
|
||||
// @Security BearerAuth
|
||||
// @Success 200 {object} SwagAPIResponse "更新成功"
|
||||
// @Failure 400 {object} SwagAPIResponse "请求参数错误"
|
||||
// @Failure 404 {object} SwagAPIResponse "套件不存在"
|
||||
// @Router /admin/product-suites/{id} [put]
|
||||
func (pc *ProductSuiteAdminController) Update(c *gin.Context) {
|
||||
record, err := pc.findByID(c.Param("id"))
|
||||
if err != nil {
|
||||
@@ -149,6 +180,15 @@ func (pc *ProductSuiteAdminController) Update(c *gin.Context) {
|
||||
writeSuccess(c, http.StatusOK, "update success", record)
|
||||
}
|
||||
|
||||
// @Summary 删除产品套件
|
||||
// @Description 删除指定产品套件,自动解除关联库存的绑定
|
||||
// @Tags 产品套件管理
|
||||
// @Produce json
|
||||
// @Param id path int true "套件ID"
|
||||
// @Security BearerAuth
|
||||
// @Success 200 {object} SwagAPIResponse "删除成功"
|
||||
// @Failure 404 {object} SwagAPIResponse "套件不存在"
|
||||
// @Router /admin/product-suites/{id} [delete]
|
||||
func (pc *ProductSuiteAdminController) Delete(c *gin.Context) {
|
||||
record, err := pc.findByID(c.Param("id"))
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user