first commit
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
package dto
|
||||
|
||||
// GoodsListRequest 商品列表请求。
|
||||
type GoodsListRequest struct {
|
||||
PageRequest
|
||||
GoodsType int8 `form:"goods_type" binding:"omitempty,oneof=1 2 3 4 5"`
|
||||
Status int8 `form:"status" binding:"omitempty,oneof=1 2"` // 1=上架 2=下架;不传=全部
|
||||
Keyword string `form:"keyword"`
|
||||
}
|
||||
|
||||
// GoodsItem 商品信息。
|
||||
type GoodsItem struct {
|
||||
ID int64 `json:"id"`
|
||||
GoodsCode string `json:"goods_code"`
|
||||
GoodsName string `json:"goods_name"`
|
||||
GoodsType int8 `json:"goods_type"` // 1=会员包 2=上传包 3=AI 推荐包 4=衣柜分享包 5=搭配分享包
|
||||
Price int64 `json:"price"` // 原价(分)
|
||||
DiscountPrice int64 `json:"discount_price"`
|
||||
MemberDays int64 `json:"member_days"`
|
||||
UploadQuota int64 `json:"upload_quota"` // 上传额度(对应业务表 cos_quota)
|
||||
AIRecommendQuota int64 `json:"ai_recommend_quota"` // AI 推荐额度
|
||||
ClosetShareQuota int64 `json:"closet_share_quota"` // 衣柜分享额度
|
||||
OutfitShareQuota int64 `json:"outfit_share_quota"` // 搭配分享额度
|
||||
ValidDays int64 `json:"valid_days"` // 赠送额度有效期天数(加量包;会员包 0=跟随 VIP)
|
||||
Description string `json:"description"`
|
||||
Status int8 `json:"status"` // 1=上架 2=下架
|
||||
ProductID string `json:"product_id"` // 虚拟支付道具ID(只读,空=未发布)
|
||||
ProductStatus int8 `json:"product_status"` // 虚拟支付道具发布状态 0=未发布 1=发布中 2=已发布 3=发布失败(只读)
|
||||
CreatedAt int64 `json:"created_at"`
|
||||
UpdatedAt int64 `json:"updated_at"`
|
||||
}
|
||||
|
||||
// GoodsListResponse 商品列表响应。
|
||||
type GoodsListResponse struct {
|
||||
PageResponse
|
||||
List []GoodsItem `json:"list"`
|
||||
}
|
||||
|
||||
// GoodsCreateRequest 创建商品请求。
|
||||
type GoodsCreateRequest struct {
|
||||
GoodsCode string `json:"goods_code" binding:"required,max=64"`
|
||||
GoodsName string `json:"goods_name" binding:"required,max=64"`
|
||||
GoodsType int8 `json:"goods_type" binding:"required,oneof=1 2 3 4 5"`
|
||||
Price int64 `json:"price" binding:"required,min=0,max=100000000"`
|
||||
DiscountPrice int64 `json:"discount_price" binding:"required,min=0,max=100000000"`
|
||||
MemberDays int64 `json:"member_days" binding:"omitempty,min=0"`
|
||||
UploadQuota int64 `json:"upload_quota" binding:"omitempty,min=0"`
|
||||
AIRecommendQuota int64 `json:"ai_recommend_quota" binding:"omitempty,min=0"`
|
||||
ClosetShareQuota int64 `json:"closet_share_quota" binding:"omitempty,min=0"`
|
||||
OutfitShareQuota int64 `json:"outfit_share_quota" binding:"omitempty,min=0"`
|
||||
ValidDays int64 `json:"valid_days" binding:"omitempty,min=0,max=3650"`
|
||||
Description string `json:"description" binding:"omitempty,max=500"`
|
||||
Status int8 `json:"status" binding:"omitempty,oneof=1 2"`
|
||||
}
|
||||
|
||||
// GoodsUpdateRequest 更新商品请求(传什么改什么)。
|
||||
type GoodsUpdateRequest struct {
|
||||
GoodsName *string `json:"goods_name" binding:"omitempty,max=64"`
|
||||
Price *int64 `json:"price" binding:"omitempty,min=0,max=100000000"`
|
||||
DiscountPrice *int64 `json:"discount_price" binding:"omitempty,min=0,max=100000000"`
|
||||
MemberDays *int64 `json:"member_days" binding:"omitempty,min=0"`
|
||||
UploadQuota *int64 `json:"upload_quota" binding:"omitempty,min=0"`
|
||||
AIRecommendQuota *int64 `json:"ai_recommend_quota" binding:"omitempty,min=0"`
|
||||
ClosetShareQuota *int64 `json:"closet_share_quota" binding:"omitempty,min=0"`
|
||||
OutfitShareQuota *int64 `json:"outfit_share_quota" binding:"omitempty,min=0"`
|
||||
ValidDays *int64 `json:"valid_days" binding:"omitempty,min=0,max=3650"`
|
||||
Description *string `json:"description" binding:"omitempty,max=500"`
|
||||
}
|
||||
|
||||
// GoodsStatusRequest 商品上下架请求。
|
||||
type GoodsStatusRequest struct {
|
||||
Status int8 `json:"status" binding:"required,oneof=1 2"` // 1=上架 2=下架
|
||||
}
|
||||
Reference in New Issue
Block a user