Files
assets/controller/asset/private_sku_controller.go
2026-06-10 15:40:17 +08:00

119 lines
4.3 KiB
Go

package controller
import (
dto "assets/model/dto/asset"
service "assets/service/asset"
"context"
"gitea.redpowerfuture.com/red-future/common/beans"
)
type privateSku struct{}
// PrivateSku 私域SKU控制器
var PrivateSku = new(privateSku)
// CreatePrivateSku 创建私域SKU
// @Summary 创建私域SKU
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param body body asset.CreatePrivateSkuReq true "创建私域SKU请求"
// @Success 200 {object} asset.CreatePrivateSkuRes
// @Router /privateSku/createPrivateSku [post]
func (c *privateSku) CreatePrivateSku(ctx context.Context, req *dto.CreatePrivateSkuReq) (res *dto.CreatePrivateSkuRes, err error) {
return service.PrivateSku.CreatePrivateSku(ctx, req)
}
// BatchCreatePrivateSku 批量创建私域SKU
// @Summary 批量创建私域SKU
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param body body asset.BatchCreatePrivateSkuReq true "批量创建私域SKU请求"
// @Success 200 {object} asset.BatchCreatePrivateSkuRes
// @Router /privateSku/batchCreatePrivateSku [post]
func (c *privateSku) BatchCreatePrivateSku(ctx context.Context, req *dto.BatchCreatePrivateSkuReq) (res *dto.BatchCreatePrivateSkuRes, err error) {
return service.PrivateSku.BatchCreatePrivateSku(ctx, req)
}
// UpdatePrivateSku 更新私域SKU
// @Summary 更新私域SKU
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param body body asset.UpdatePrivateSkuReq true "更新私域SKU请求"
// @Success 200 {object} beans.ResponseEmpty
// @Router /privateSku/updatePrivateSku [put]
func (c *privateSku) UpdatePrivateSku(ctx context.Context, req *dto.UpdatePrivateSkuReq) (res *beans.ResponseEmpty, err error) {
err = service.PrivateSku.UpdatePrivateSku(ctx, req)
return
}
// DeletePrivateSku 删除私域SKU
// @Summary 删除私域SKU
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param id query string true "私域SKU ID"
// @Success 200 {object} beans.ResponseEmpty
// @Router /privateSku/deletePrivateSku [delete]
func (c *privateSku) DeletePrivateSku(ctx context.Context, req *dto.DeletePrivateSkuReq) (res *beans.ResponseEmpty, err error) {
err = service.PrivateSku.DeletePrivateSku(ctx, req.ID)
return
}
// GetPrivateSku 获取私域SKU详情
// @Summary 获取私域SKU详情
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param id query string true "私域SKU ID"
// @Success 200 {object} asset.GetPrivateSkuRes
// @Router /privateSku/getPrivateSku [get]
func (c *privateSku) GetPrivateSku(ctx context.Context, req *dto.GetPrivateSkuReq) (res *dto.GetPrivateSkuRes, err error) {
return service.PrivateSku.GetPrivateSku(ctx, req.ID)
}
// ListPrivateSku 获取私域SKU列表
// @Summary 获取私域SKU列表
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param skuName query string false "SKU名称"
// @Param privateCategoryPath query string false "分类路径"
// @Param minPrice query int false "最低价格"
// @Param maxPrice query int false "最高价格"
// @Param pageNum query int false "页码" default(1)
// @Param pageSize query int false "每页大小" default(10)
// @Success 200 {object} asset.ListPrivateSkuRes
// @Router /privateSku/listPrivateSku [get]
func (c *privateSku) ListPrivateSku(ctx context.Context, req *dto.ListPrivateSkuReq) (res *dto.ListPrivateSkuRes, err error) {
return service.PrivateSku.ListPrivateSku(ctx, req)
}
// UpdatePrivateSkuStock 更新私域SKU库存
// @Summary 更新私域SKU库存
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Param body body asset.UpdatePrivateSkuStockReq true "更新库存请求"
// @Success 200 {object} beans.ResponseEmpty
// @Router /privateSku/updatePrivateSkuStock [put]
func (c *privateSku) UpdatePrivateSkuStock(ctx context.Context, req *dto.UpdatePrivateSkuStockReq) (res *beans.ResponseEmpty, err error) {
err = service.PrivateSku.UpdatePrivateSkuStock(ctx, req.ID, req.StockChange)
return
}
// GenerateTestData 生成测试数据
// @Summary 生成测试数据
// @Tags 私域SKU管理
// @Accept json
// @Produce json
// @Success 200 {object} beans.ResponseEmpty
// @Router /privateSku/generateTestData [post]
func (c *privateSku) GenerateTestData(ctx context.Context, req *dto.GeneratePrivateSkuTestDataReq) (res *beans.ResponseEmpty, err error) {
err = service.PrivateSku.GenerateTestData(ctx)
return
}