All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m24s
- 新增套餐系列管理 (CRUD + 状态切换) - 新增套餐管理 (CRUD + 启用/禁用 + 上架/下架双状态) - 清理 8 个废弃分佣模型及对应数据库表 - Package 模型新增建议成本价、建议售价、上架状态字段 - 完整的 Store/Service/Handler 三层实现 - 包含单元测试和集成测试 - 归档 add-package-module change - 新增多个 OpenSpec changes (订单支付、店铺套餐分配、一次性分佣、卡设备系列绑定)
60 lines
3.0 KiB
Go
60 lines
3.0 KiB
Go
package dto
|
|
|
|
// CreatePackageSeriesRequest 创建套餐系列请求
|
|
type CreatePackageSeriesRequest struct {
|
|
SeriesCode string `json:"series_code" validate:"required,min=1,max=100" required:"true" minLength:"1" maxLength:"100" description:"系列编码"`
|
|
SeriesName string `json:"series_name" validate:"required,min=1,max=255" required:"true" minLength:"1" maxLength:"255" description:"系列名称"`
|
|
Description string `json:"description" validate:"omitempty,max=500" maxLength:"500" description:"描述"`
|
|
}
|
|
|
|
// UpdatePackageSeriesRequest 更新套餐系列请求
|
|
type UpdatePackageSeriesRequest struct {
|
|
SeriesName *string `json:"series_name" validate:"omitempty,min=1,max=255" minLength:"1" maxLength:"255" description:"系列名称"`
|
|
Description *string `json:"description" validate:"omitempty,max=500" maxLength:"500" description:"描述"`
|
|
}
|
|
|
|
// PackageSeriesListRequest 套餐系列列表请求
|
|
type PackageSeriesListRequest struct {
|
|
Page int `json:"page" query:"page" validate:"omitempty,min=1" minimum:"1" description:"页码"`
|
|
PageSize int `json:"page_size" query:"page_size" validate:"omitempty,min=1,max=100" minimum:"1" maximum:"100" description:"每页数量"`
|
|
SeriesName *string `json:"series_name" query:"series_name" validate:"omitempty,max=255" maxLength:"255" description:"系列名称(模糊搜索)"`
|
|
Status *int `json:"status" query:"status" validate:"omitempty,oneof=1 2" description:"状态 (1:启用, 2:禁用)"`
|
|
}
|
|
|
|
// UpdatePackageSeriesStatusRequest 更新套餐系列状态请求
|
|
type UpdatePackageSeriesStatusRequest struct {
|
|
Status int `json:"status" validate:"required,oneof=1 2" required:"true" description:"状态 (1:启用, 2:禁用)"`
|
|
}
|
|
|
|
// PackageSeriesResponse 套餐系列响应
|
|
type PackageSeriesResponse struct {
|
|
ID uint `json:"id" description:"系列ID"`
|
|
SeriesCode string `json:"series_code" description:"系列编码"`
|
|
SeriesName string `json:"series_name" description:"系列名称"`
|
|
Description string `json:"description" description:"描述"`
|
|
Status int `json:"status" description:"状态 (1:启用, 2:禁用)"`
|
|
CreatedAt string `json:"created_at" description:"创建时间"`
|
|
UpdatedAt string `json:"updated_at" description:"更新时间"`
|
|
}
|
|
|
|
// UpdatePackageSeriesParams 更新套餐系列聚合参数
|
|
type UpdatePackageSeriesParams struct {
|
|
IDReq
|
|
UpdatePackageSeriesRequest
|
|
}
|
|
|
|
// UpdatePackageSeriesStatusParams 更新套餐系列状态聚合参数
|
|
type UpdatePackageSeriesStatusParams struct {
|
|
IDReq
|
|
UpdatePackageSeriesStatusRequest
|
|
}
|
|
|
|
// PackageSeriesPageResult 套餐系列分页结果
|
|
type PackageSeriesPageResult struct {
|
|
List []*PackageSeriesResponse `json:"list" description:"套餐系列列表"`
|
|
Total int64 `json:"total" description:"总数"`
|
|
Page int `json:"page" description:"当前页"`
|
|
PageSize int `json:"page_size" description:"每页数量"`
|
|
TotalPages int `json:"total_pages" description:"总页数"`
|
|
}
|